SDS et INFDS en RPG-IV

BoTTom |    Changer de couleur
      *
      *           DATA STRUCTURES PARTICULIERES EN RPG   
      *
      *
      *          SDS : Data structure d'informations programme 
      *
      *
      *        INFDS : Data structures d'informations fichiers 
      *
      *
     D**********************      ATTENTION la syntaxe overlay(nom-de-DS) 
     D*    SDS             *                 n'est valide qu'en V4R20. 
     D**********************
     D systemeDS      SDS
     d nom_du_pgm                    10     overlay(systemeDS)
     d status_code                    5  0  overlay(systemeDS:11)
     d status_prv                     5  0  overlay(systemeDS:16)
     d numero_ligne                   8  0  overlay(systemeDS:21)
     d routine                        8     overlay(systemeDS:29)
     d nb_de_parm                     3  0  overlay(systemeDS:37)
     d mch_ou_cpf                     3     overlay(systemeDS:40)
     d errorcode                      4     overlay(systemeDS:43)


|    Changer de couleur
     d ligneMI                        4     overlay(systemeDS:47)
     d message                       30     overlay(systemeDS:51)
     d bibli_du_pgm                  10     overlay(systemeDS:81)
      *
     d dernier_fich                  10     overlay(systemeDS:201)
     d infos_fichier                 35     overlay(systemeDS:209)
     d JOB                           10     overlay(systemeDS:244)
     d init_user                     10     overlay(systemeDS:254)
     d jobnbr                         6     overlay(systemeDS:264)
     d dateentree                     6     overlay(systemeDS:270)
     d dateexec                       6     overlay(systemeDS:276)
     d heureexec                      6     overlay(systemeDS:282)
     d date_crt                       6     overlay(systemeDS:288)
     d heure_crt                      6     overlay(systemeDS:294)
     d compilateur                    4     overlay(systemeDS:300)
     d fichier_src                   10     overlay(systemeDS:304)
     d bib_src                       10     overlay(systemeDS:314)
     d mbr_src                       10     overlay(systemeDS:324)
      *
     d current_user                  10     overlay(systemeDS:358)
      *
     d nombre_element_xml            20I 0  overlay(systemeDS:372)


|    Changer de couleur
      *
      **********************
      *    INFDS           *
      **********************
     Ffichier   uf   e           k disk    infds(fichierDS)
     D fichierDS       DS
      *
      ********************* INFOS FICHIER 
      *
     d nomfichier                     8     overlay(fichierDS)
     d f_open                         1     overlay(fichierDS:9)
      * 1 = oui
     d f_eof                          1     overlay(fichierDS:10)
      * 1 = oui
     d f_status                       5s 0  overlay(fichierDS:11)
     d codoperation                   6     overlay(fichierDS:16)
     d routine                        8     overlay(fichierDS:22)
     d no_sequence                    8     overlay(fichierDS:30)
     d format                         8     overlay(fichierDS:38)
      * en externe, nom du format
      * en interne, indicateur d'entrée
     d erreur                         7     overlay(fichierDS:46)


|    Changer de couleur
      ********************** OPEN FEEDBACK AREA 
     d type_odp                       2     overlay(fichierDS:81)
     d* ODP  DS = DEVICE, DB = DataBase, SP = Spool
      *
     d fichier_ouvert                10     overlay(fichierDS:83)
     I* (<> de nomfichier si OVRDBF)
     d bibliotheque                  10     overlay(fichierDS:93)
     D SplNbr                         5I 0  overlay(fichierDS:123)
     D lg_maxi                       10I 0  overlay(fichierDS:125)
     D Membre                        10     overlay(fichierDS:129)
     D nb_de_lignes                   5I 0  overlay(fichierDS:152)
     D nb_de_colonne                  5I 0  overlay(fichierDS:154)
     D nb_enregs                     10I 0  overlay(fichierDS:156)
     d* NB d'enregistrements lors de l'open
     d type_acces                     2     overlay(fichierDS:160)
     d* KU = Keyed Unique, KF = Keyed Fifo, KL = Keyed Lifo, AR =Arrivée
      *
     d cle_dupliquee                  1     overlay(fichierDS:162)
     d*   U (unique) D (dup)
     d source                         1     overlay(fichierDS:163)
     d*   Y = srcpf
     d overflow                       5I 0  overlay(fichierDS:188)


|    Changer de couleur
      *
      ********************** I-O FEEDBACK AREA  (standard) 
      *
     d nb_write                      10I 0  overlay(fichierDS:243)
     d nb_read                       10I 0  overlay(fichierDS:247)
     d nb_exfmt                      10I 0  overlay(fichierDS:251)
     d nb_autreio                    10I 0  overlay(fichierDS:255)
     d dernier_format                10     overlay(fichierDS:261)
     d classe_unite                   2     overlay(fichierDS:271)
     d classe_unite                   2     overlay(fichierDS:271)
     d nom_unite                     10     overlay(fichierDS:273)
     d lg_dernier                    10I 0  overlay(fichierDS:283)
      *
      ********************** I-O FEEDBACK AREA  (ICF et DSPF) 
      *
     d touche                         1     overlay(fichierDS:369)
      * X'31'-X'3C' = F1 à F12,
      * X'B1'-X'BC' = F13 à F24
      * X'BD'       = CLEAR            X'F1'       = Entrée
      * X'F4'/X'F5' = Rolldown/rollup  X'F3'       = Aide
      * X'F6'       = Print            x'F8'       = Home (pos 1)
      * x'70'-x'7F' = EVENT-ID donné par le mot-clé MOUBTN(*xxx E00-E15)


|    Changer de couleur
 
      *
     d lico                           5I 0  overlay(fichierDS:370)
     d*       LICO   DIV   256 --> LIGNE
     d*              MVR     --> COLONNE
      *
 
     d rang_sfl                       5I 0  overlay(fichierDS:376)
     d premier_rang                   5I 0  overlay(fichierDS:378)
     d*      RANG du premier enreg de sous fichier qui était affiché
     d*      lors de la lecture, si l'on place cette valeur
     d*      dans SFLRCDNBR on réaffiche toujours même page !
 
     d nbrcd_sfl                      5I 0  overlay(fichierDS:380)
     d wlico                          5I 0  overlay(fichierDS:382)
      * position curseur mais dans la fenêtre active
 
      *
      ********************** I-O FEEDBACK AREA  (PRTF) 
      *
     d ligne_en_cours                 5I 0  overlay(fichierDS:367)
     d page_en_cours                  5I 0  overlay(fichierDS:369)


|    Changer de couleur
 
      *
      ********************** I-O FEEDBACK AREA  (DATA BASE) 
     d lg_totale                     10I 0  overlay(fichierDS:367)
     d jdftval                        4     overlay(fichierDS:370)
      * chaque bit représente un fichier  0 = utilisé sans JDFTVAL
      *                                   1           avec JDFTVAL
 
     d offset_to_null                 5I 0  overlay(fichierDS:375)
     d nbrcd_lock                     5I 0  overlay(fichierDS:377)
     d nb_de_cles                     5I 0  overlay(fichierDS:387)
     d lg_cle                         5I 0  overlay(fichierDS:393)
     d no_membre                      5I 0  overlay(fichierDS:395)
     d recno                         10I 0  overlay(fichierDS:397)
     d*valeur_cles                  xxx     overlay(fichierDS:400)
     d*cles_nulles                  yyy     overlay(fichierDS:zzz)
      *
      * xxx est donné par "lg_cle"
      * yyy est donné par "offset_to_null
      * zzz est donné par "lg_totale"
    ==*=====================================================================




©AF400