Téléchargement des produits


Version anglaise


 


ADELIA

VADELIA

SADELIA

WADELIA

EADELIA

(B)

(I/B) (C/S)

(B) (S)

(I/B) (C/S)

(B) (C/S)


Paragraphe d'utilisation

Tous


Syntaxe

TRAITER_CHG MotDirecteurRupture


Description

Cet ordre permet de détecter une rupture au niveau en-tête et déclenche l'exécution de la procédure liée à cette rupture.

Cette rupture doit avoir été créée dans le prototype. Elle est identifiée par son mot directeur MotDirecteurRupture indiqué après l'ordre.


L'instruction "TRAITER_CHG Rupture", lorsqu'elle a détecté une rupture, appelle le paragraphe "TRT_CHANGEMENT Rupture" portant le même mot directeur de rupture. Après l'exécution de ce paragraphe, le programme reprend son déroulement derrière l'instruction "TRAITER_CHG Rupture".


Important : les détections des ruptures de changement sur un même fichier se font dans l'ordre croissant.


Par exemple

* Programme batch pour imprimer des commandes par client

* (ruptures sur code client, puis adresse livraison)

LIRE_AVANT COMMANDES

TANT_QUE COMMANDES EXISTE

TRAITER_CHG RPT_CLIENTS

TRAITER_CHG RPT_ADRLIV

MONTANT_ADRLIV = MONTANT_ADRLIV + MONTANT_LIGNE

IMPRIMER FMT_COMM

LIRE_AVANT COMMANDES

TRAITER_TOTAL RPT_ADRLIV

TRAITER_TOTAL RPT_CLIENTS

REFAIRE

*

Procédure en-tête client

TRT_CHANGEMENT RPT_CLIENTS

LIRE CLIENTS

IMPRIMER FMT_CLIENT

MONTANT_CLIENT = 0

FIN_TRAITEMENT

*

Procédure en-tête adresse de livraison

TRT_CHANGEMENT RPT_ADRLIV

IMPRIMER FMT_ADRESSE

MONTANT_ADRLIV = 0

FIN_TRAITEMENT

*

Procédure total adresse

TRT_TOTAL RPT_ADRLIV

EDITER FMT_TOTADR

MONTANT_CLIENT = MONTANT_CLIENT + MONTANT_ADRLIV

FIN_TRAITEMENT

*

Procédure total client

TRT_TOTAL RPT_CLIENTS

EDITER FMT_TOTCLI

FIN_TRAITEMENT


Autre exemple d'utilisation


* Contexte Visual Adélia

* Le programme suivant permet la recherche et l'affichage dans une liste

* graphique des derniers avenants d'un contrat pour un assuré donné


* Déclaration d'un curseur portant sur les CONTRATS d'un assuré de nom ZANOM_ASS

CURSEUR CURS_CON_NOMASS CONTRAT *COND(CNOM_ASS = :ZANOM_ASS) *TRI(CNUM_CON, CNUM_AVE_CON *ASC)

...

* Dans le programme, ouverture du curseur, lecture des enregistrements

* correspondants, puis fermeture

OUVRIR_SQL_C CURS_CON_NOMASS

INIT_RUPTURE RUPT_AVENANT

LIRE_AV_SQL_C CURS_CON_NOMASS

TANT_QUE *SQLCODE = *NORMAL

TRAITER_CHG RUPT_AVENANT

PRESENTER CONTRAT

LIRE_AV_SQL_C CURS_CON_NOMASS

TRAITER_TOTAL RUPT_AVENANT

REFAIRE

FERMER_SQL_C CURS_CON_NOMASS

...

* La zone CNUM_CONTRAT définit la rupture dans son paragraphe DECLARATION

RUPTURE CNUM_CONTRAT *SQL

...


↑ Haut de page

  • Aucune étiquette