MAKE

page d'accueil
Boite à outils


Contact

Welcome page
Tools box

Depuis l'ILE, les compilations se sont singulièrement complexifiées : modules, programmes et programmes de service, groupes d'activation, bibliothèques d'attachement ... l'option 14 ou 15 de PDM est complètement dépassée.

Cet outil permet de préparer les commandes de compilation de n'importe quel objet compilable. Les options de compilations sont construites à partir des 4 éléments clés d'un source :

  • son type,
  • son nom,
  • son fichier source
  • sa bibliothèque.

Cet outil permet de préparer un plan de compilation pour chaque objet à créer : une pile de commandes AS400. Chaque commande est distinguée par son numéro d'ordre. Associée aux 4 clés précédentes, ces 4 clés permettent de sauvegarder et reconstruire la compilation de chaque objet.

Le lancement d'une compilation se fait sur la base de tous les paramètres que STRPDM est capable de fournir (voir le code de *CMD MAKE), et exploite principalement

  • &S = type de membre source
  • &N = nom du membre source
  • &L = nom de la bibliothèque source
  • &F = nom de fichier source
  • &O = nom de la bibliothèque objet (option PDM F18)
  • &R = *YES/*NO remplacer l'objet (option PDM F18)

Retrouver les options pour un membre à compiler

principe : rechercher dans le fichier des options toutes les lignes qui concernent le membre source à compiler. Chaque ligne manquante a une valeur par defaut

cle de recherche :

  1. sequence
  2. type, descendant
  3. membre
  4. source
  5. library

Au cours de la préparation d'une ligne de commande, le paramètre &1 permet d'utiliser ce qui a déja été préparé. Ainsi la dernière ligne de paramètre peut, en ne reprenant pas ce qui précède, donner une commande de compilation complètement spécifique.

Avec l'expérience, on constate qu'environ 500 lignes suffisent pour définir les paramètres de compilation d'une application entière.

les valeurs recommandées pour la séquence (ou numéro d'ordre) sont

  • s&quence action
  • 100         chgliblist
  • 200         dltf (pour PF, LF)
  • 300         crtdupobj
  • 400         chgobjown/Frame
  • 500         crtxxx (module)
  • 600         crtpgm
  • 650         chgpgm user(*owner)
  • 700         chgobjown ...
  • 800         chgobjatr k9(specifique)
  • 900         grtobjaut ... *all
  • 910         grtobjaut *public *use

chgliblist est obligatoire pour

  • que les LF trouvent leur PF
  • que les *RPG* trouvent leurs copies

chgobjown est obligatoire pour recompiler un programme déclaré en user(*owner)

Since ILE, compilations are singularly more complex : Modules, Programs and Service programs, actvation groups, binding directory, ... The 14 or 15 PDM options are completely obsolete.

This tool permits to prepare the orders of compilation of any object compilable. The options of compilations are constructed from the three elements key of one source

  • it's type
  • its name,
  • its source file
  • its library.

This tool permits to prepare a compilation plan for each object to create: a stack of AS400 orders. Each order is distinguished by its number of order. Associated to the 4 previous keys, these 4 keys permit to save and to rebuild the compilation of each objet.

The launching of a compilation is done on the basis of all parameters that STRPDM is able to provide (see the code of *CMD MAKE below), and exploit mainly 

  • &S = type of source member 
  • &N = name of the source member 
  • &L = name of the source library
  • &F = name of the source file
  • &O = name of the object library (option PDM F18) 
  • &R = *YES/*NO to replace the object (option PDM F18)

Retrieve the options for a member to compile 

principle: search in the options file for all lines that concern the member source to compile. Every missing line has a default value

search key order: 

  1. sequence
  2. type, descendant
  3. membre
  4. source
  5. library


During the preparation of an order line, the parameter &1 permits to use what has already been prepared. So the last line of parameter can, in not taking what precedes, to give a completely different compilation order.

With the experience, I have noted that about 500 lines are sufficient to define the compilation parameters of a whole application. 

the recommended values for the sequence (or order number) are 

  • sequence action 
  • 100         chgliblist
  • 200         dltf (for PF, LF) 
  • 300         crtdupobj 
  • 400         chgobjown/Frame
  • 500         crtxxx (module)
  • 600         crtpgm 
  • 650         chgpgm user(*owner) 
  • 700         chgobjown... 
  • 800         chgobjatr k9(specifique) 
  • 900         grtobjaut... *all 
  • 910         grtobjaut *public *uses 

chgliblist is mandatory for

  • the LF to find their PF
  • the *RPG* to find their /COPY

chgobjown is mandatory to compile a program declared in user(*owner)

*PNLGRP MAKE3RHP (mainhelp est décrit dans TrucAstuceAs400.htm)(mainhelp is described in french into TrucAstuceAs400.htm)

Mode d'emploi

Options classiques :

  • 1 = créer : ajouter une commande
  • 2 = modifier : corriger une commande
  • 3 = copier : ajouter une commande basée sur la copie d'une autre
  • 4 = supprimer : enlever une ligne
  • 5 = afficher : consulter une commande

Sur la page détail; la touche F4 permet d'appeler l'aide le la commande as400

Sur la page principale, la saisie correcte des paramètres d'une compilation dans les critères de sélection permet par F14 d'afficher la pile de commandes générées, comme le fait l'AS400 sur la page d'aide d'une commande

Instructions for use 

Classic Options: 

  • 1 = to create: to add a commande
  • 2 = to modify: to correct an order
  • 3 = to copy: to add an order based on the copy of an other
  • 4 = to suppress: to remove a line 
  • 5 = to display: to consult an order 

On the detail page the F4 key permits to call the as400 command help

On the main page, the correct keying of a compilation parameters in the selection criterias permits by F14 to display the stack of orders generated, as does the AS400 on the command help page 

 
 MAKE3R      Mise à  jour des paramètres de compilation       10/08/21 AMIE74    
                                                            
 10:42:19 JPLTOOLS  
 TYPE OPTIONS, PRESS ENTER                                                      
 
 1=Ajouter 2=Modifier 3=Copier 4=Supprimer 5=Visualiser                        
                                                                                
 OP Seq Attribut   Member     Source     Library    Lin Command                 
    0 SQLRPGLE   MAKE3R                             0                         
    400 *RPGLE     *          FRAME      JPLTOOL*    11 FRAME INFILE(&L/&F    A 
    400 *RPG*      *          FRAME      JPLTOOL*    12 &1 debug(*yes)        * 
    500 SQLRPGLE   *          *          *           16 CRTSQLRPGI OBJ(&L/    * 
    500 SQLRPGLE   *          *          JPLTOOL*    17 CRTSQLRPGI OBJ(&L/    * 
    500 SQLRPGLE   *          FRAME      JPLTOOL*    18 CRTSQLRPGI OBJ(&L/    * 
    600 *LE        *          *          *           89 CRTPGM PGM(&L/&N)     * 
    600 *LE        *          *          JPLTOOL*    90 &1   ACTGRP(jpltoo    * 
    600 *LE        *          *          ZLIB        91 CRTPGM PGM(&L/&N)     * 
                                                                             
 * 
                                                                             
 * 
                                                                             
 * 
                                                                             
 * 
                                                                             
 : 
                                                                             
 V 
 ______________________________________________________________________________ 
 F3=exit F5=refresh F12=cancel F14=prompt F18=clear filter F20=reverse filter   
                                                                                

the filter line (the line that starts with ~) is usually used to set a generic value to be alpplied on the records of file MAKEP to reduce the number of lines displayed. But, here the filter has been reversed (with the key F20) and the filter line contains the name of a source member. Then the lines displayed are the lines that will be used to create the compilation commands. Key F14 now displays the gebnerated commands

 MAKE5R      Confirmation de la pile de commandes            12/04/21 AMIE74    
 MAKE2RB jp                                                  10:05:26 JPLTOOLS  
                                                                                
 5=Visualiser                                                                   
 S Monmsg     Commande                                                      ... 
   ESCAPE     /* 68 */ CRTRPGMOD MODULE(JPLTOOLS/MAKE5R) SRCFILE(JPLTOOLS/qpgms 
   ESCAPE     /* 78 */ /* 77 */ CRTPGM PGM(JPLTOOLS/MAKE5R) MODULE(JPLTOOLS/MAK 
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                             
   
                                                                                
                                                                                
                                                                                
 F3=Quitter F12=Abandonner F5=Rafraichir F10=détails                            
                                                                                

the first one is based on line 68 when the second is based of 77 and 78. line 78 starts with &1, by thuis says it is a continuatiion line.

Détail de la commande de compilation du module module compilation command details
:
 MAKE5R      Confirmation de la pile de commandes            12/04/21 AMIE74    
 MAKE2RC jp                                                  10:07:10 JPLTOOLS  
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
 Commande AS400                                                                 
/* 68 */ CRTRPGMOD MODULE(JPLTOOLS/MAKE5R) SRCFILE(JPLTOOLS/qpgmsrc) OPTION(*NOD
EBUGIO *SRCSTMT *SHOWCPY *SECLVL *EXPDDS) DBGVIEW(*ALL) REPLACE(*YES) TGTRLS(V7R
2M0) ENBPFRCOL(*FULL)                                                           
                                                                                
                                                                                
                                                                                
 Monmsg                  ESCAPE                                                 
                                                                                
                                                                                
                                                                                
                                                                                
 F3=Quitter F12=Abandonner                                                      
                                                                                

Appel de l'aide AS400 The AS400 helper
broken





options PDM :

MK = MAKE E(&E) F(&F) G(&G) H(&H) J('&J') L(&L) N(&N) O(&O) P(&P) R(&R) S(&S) X(&X) C(*YES) 

MM = MAKE S(&S) L(&L) F(&F) N(&N) O(&O) COMPILER(MOD) 
P(&P) G(&G) H(&H) J(&J) E(&E) R(&R) X(&X) C(*YES) 

MP =  MAKEPAR

MK sert à compiler tous les objets "classiques". MM permet de compiler un module

PDM options:

MK = MAKE E(&E) F(&F) G(&G) H(&H) J('&J') L(&L) N(&N) O(&O) P(&P) R(&R) S(&S) X(&X) C(*YES) 

MM = MAKE S(&S) L(&L) F(&F) N(&N) O(&O) COMPILER(MOD) 
P(&P) G(&G) H(&H) J(&J) E(&E) R(&R) X(&X) C(*YES) 

MP = MAKEPAR

MK is used to compile any "classic" object. MM is used to compil  one module

Documentation is not easy for a tool I know very well. Any suggestion is welcome.

last version : The SaveFiles