OPALE - 10.0 - Utilisation - Récupérer en critère d'archivage la date du spool d'origine

Différence entre versions

De MappingDoc
 
(Une révision intermédiaire par le même utilisateur non affichée)
Ligne 25 : Ligne 25 :
 
*Générer le mapping et l'importer sur l'IBM i
 
*Générer le mapping et l'importer sur l'IBM i
 
*Modifier le CL de remplacement spécifique (voir la procédure ci dessous)
 
*Modifier le CL de remplacement spécifique (voir la procédure ci dessous)
*Ajouter la commande MAPRTVNFO dans le traitement du spool (voir la procédure ci dessous)
+
*Ajouter la commande <code>MAPRTVNFO</code> dans le traitement du spool (voir la procédure ci dessous)
 
<br>
 
<br>
  
Ligne 35 : Ligne 35 :
  
 
<!--T:10-->
 
<!--T:10-->
*Sur une ligne de commande taper STRPDM
+
*Sur une ligne de commande taper <code>STRPDM</code>
 
*Choisissez l'option 3 Gestion des Membres
 
*Choisissez l'option 3 Gestion des Membres
 
*Sélectionnez le fichier QSPECIF de Opale
 
*Sélectionnez le fichier QSPECIF de Opale
 
*Copier le membre MAPSPECIF sous un autre nom (ex MAPSPEC_S)
 
*Copier le membre MAPSPECIF sous un autre nom (ex MAPSPEC_S)
*Taper 2 (Editer) devant le membre MAP_SPECIF
+
*Taper <kbd>2</kbd> (Editer) devant le membre MAP_SPECIF
 
*Déclarer les variables de travail comme suit :
 
*Déclarer les variables de travail comme suit :
    DCL       VAR(&DATE   ) TYPE(*CHAR) LEN(10)
+
DCL   VAR(&DATE) TYPE(*CHAR) LEN(10)
 
*Ajouter dans le corps du programme (attention à l'endroit où vous l'ajouter) :  
 
*Ajouter dans le corps du programme (attention à l'endroit où vous l'ajouter) :  
  
      <!--T:11-->
+
<!--T:11-->
IF         COND(%SST(&ZONNAM 1 4) *EQ 'DATE') THEN(DO)
+
IF COND(%SST(&ZONNAM 1 4) *EQ 'DATE') THEN(DO)
      RTVDTAARA DTAARA(QTEMP/DATE (1 10)) RTNVAR(&DATE)
+
    RTVDTAARA DTAARA(QTEMP/DATE (1 10)) RTNVAR(&DATE)
      CHGVAR    VAR(&STRVAL) VALUE(&DATE)             
+
    CHGVAR    VAR(&STRVAL) VALUE(&DATE)             
      CHGVAR    VAR(%BIN(&STRLEN)) VALUE(9)             
+
    CHGVAR    VAR(%BIN(&STRLEN)) VALUE(9)             
      GOTO FIN                                           
+
    GOTO FIN                                           
      ENDDO
+
ENDDO
  
  
Ligne 59 : Ligne 59 :
  
 
<!--T:13-->
 
<!--T:13-->
Ajouter la commande MAPRTVNFO dans le traitement du spool
+
Ajouter la commande <code>MAPRTVNFO</code> dans le traitement du spool
  
 
<!--T:14-->
 
<!--T:14-->
Ligne 67 : Ligne 67 :
 
*Choisir l'option 14 du menu Mapping de l'IBM i : Menu d'exploitation
 
*Choisir l'option 14 du menu Mapping de l'IBM i : Menu d'exploitation
 
*Choisir l'option 2 Gérer les Actions et lignes de commande / Action
 
*Choisir l'option 2 Gérer les Actions et lignes de commande / Action
*Taper F6 Création d'une nouvelle action et nommer la nouvelle action (ex: DATEMAP)
+
*Taper <kbd>F6</kbd> Création d'une nouvelle action et nommer la nouvelle action (ex: DATEMAP)
 
*5 (Lignes de commande) devant la nouvelle action
 
*5 (Lignes de commande) devant la nouvelle action
*Taper F6 Création puis MAPRTVNFO et F4
+
*Taper <kbd>F6</kbd> Création puis <code>MAPRTVNFO</code> et <kbd>F4</kbd>
 
*Remplir les paramètres comme suit :
 
*Remplir les paramètres comme suit :
 
  
 
<!--T:16-->
 
<!--T:16-->
 
[[File:Maprtvnfo.PNG|738x738px|alt=|centré|sans_cadre]]
 
[[File:Maprtvnfo.PNG|738x738px|alt=|centré|sans_cadre]]
 
  
 
<!--T:17-->
 
<!--T:17-->
*Valider puis créer une nouvelle ligne de commande : F6
+
*Valider puis créer une nouvelle ligne de commande : <kbd>F6</kbd>
*Remettez ici la même ligne de commande qui vous permettez de remapper le spool : MAPCPYSPLF...
+
*Remettez ici la même ligne de commande qui vous permettez de remapper le spool : <code>MAPCPYSPLF</code>...
 
 
  
 
<!--T:18-->
 
<!--T:18-->
Ligne 87 : Ligne 84 :
 
<!--T:19-->
 
<!--T:19-->
 
Pour récupérer l'heure du spool, procéder de la même manière, avec une autre zone de type remplacement spécifique (ex : TIME) et une modification du CL MAP_SPECIF de la manière suivante :
 
Pour récupérer l'heure du spool, procéder de la même manière, avec une autre zone de type remplacement spécifique (ex : TIME) et une modification du CL MAP_SPECIF de la manière suivante :
 
  
 
<!--T:20-->
 
<!--T:20-->
Ligne 93 : Ligne 89 :
  
 
<!--T:21-->
 
<!--T:21-->
DCL        VAR(&HEURE ) TYPE(*CHAR) LEN(6)
+
DCL        VAR(&HEURE) TYPE(*CHAR) LEN(6)
 
+
DCL        VAR(&HH   ) TYPE(*CHAR) LEN(2)
<!--T:22-->
+
DCL        VAR(&MM   ) TYPE(*CHAR) LEN(2)
DCL        VAR(&HH     ) TYPE(*CHAR) LEN(2)
+
DCL        VAR(&SS   ) TYPE(*CHAR) LEN(2)
 
+
DCL        VAR(&SEP ) TYPE(*CHAR) LEN(1)
<!--T:23-->
 
DCL        VAR(&MM     ) TYPE(*CHAR) LEN(2)
 
 
 
<!--T:24-->
 
DCL        VAR(&SS     ) TYPE(*CHAR) LEN(2)
 
 
 
<!--T:25-->
 
DCL        VAR(&SEP   ) TYPE(*CHAR) LEN(1)
 
 
 
  
 
<!--T:26-->
 
<!--T:26-->
 
''' Partie de programme à ajouter'''
 
''' Partie de programme à ajouter'''
  
        <!--T:27-->
+
<!--T:27-->
IF         COND(%SST(&ZONNAM 1 4) *EQ 'TIME') THEN(DO)  
+
IF COND(%SST(&ZONNAM 1 4) *EQ 'TIME') THEN(DO)  
        RTVDTAARA DTAARA(QTEMP/TIME (1 6)) RTNVAR(&HEURE)
+
    RTVDTAARA DTAARA(QTEMP/TIME (1 6)) RTNVAR(&HEURE)
        CHGVAR &HH (%SST(&HEURE 1 2))                           
+
    CHGVAR &HH (%SST(&HEURE 1 2))                           
        CHGVAR &MM (%SST(&HEURE 3 2))                           
+
    CHGVAR &MM (%SST(&HEURE 3 2))                           
        CHGVAR &SS (%SST(&HEURE 5 2))                           
+
    CHGVAR &SS (%SST(&HEURE 5 2))                           
        CHGVAR    VAR(&STRVAL) VALUE(&HH *CAT &SEP *CAT &MM +  
+
    CHGVAR    VAR(&STRVAL) VALUE(&HH *CAT &SEP *CAT &MM +  
          *CAT &SEP *CAT &SS)                       
+
                *CAT &SEP *CAT &SS)                       
        CHGVAR    VAR(%BIN(&STRLEN)) VALUE(8)                 
+
    CHGVAR    VAR(%BIN(&STRLEN)) VALUE(8)                 
        GOTO FIN                                               
+
    GOTO FIN                                               
        ENDDO
+
  ENDDO
 
</translate>
 
</translate>

Version actuelle datée du 8 octobre 2019 à 08:52

Autres langues :
English • ‎français

Description

Pour archiver des spools en récupérant en critère d'archivage la date de création du spool d'origine et non pas uniquement celle d'archivage.


Principe

Dans Designer, utiliser dans la maquette, une zone de type remplacement spécifique.

Coté IBM i, utiliser la commande MAPRTVNFO qui permet de récupérer les informations Date et Heure d'un spool. Vous modifierez le CL de remplacement spécifique, pour récupérer ces informations temporelles dans la zone du Mapping et changerez le type de la zone en type Archive.


Procédure

  • Ajouter dans la maquette une zone de type remplacement spécifique (nommée par exemple DATE).
  • Générer le mapping et l'importer sur l'IBM i
  • Modifier le CL de remplacement spécifique (voir la procédure ci dessous)
  • Ajouter la commande MAPRTVNFO dans le traitement du spool (voir la procédure ci dessous)


Conseils

Modifier le CL de remplacement spécifique:

  • Sur une ligne de commande taper STRPDM
  • Choisissez l'option 3 Gestion des Membres
  • Sélectionnez le fichier QSPECIF de Opale
  • Copier le membre MAPSPECIF sous un autre nom (ex MAPSPEC_S)
  • Taper 2 (Editer) devant le membre MAP_SPECIF
  • Déclarer les variables de travail comme suit :
DCL   VAR(&DATE) TYPE(*CHAR) LEN(10)
  • Ajouter dans le corps du programme (attention à l'endroit où vous l'ajouter) :
IF  COND(%SST(&ZONNAM 1 4) *EQ 'DATE') THEN(DO)
    RTVDTAARA DTAARA(QTEMP/DATE (1 10)) RTNVAR(&DATE)
    CHGVAR     VAR(&STRVAL) VALUE(&DATE)             
    CHGVAR     VAR(%BIN(&STRLEN)) VALUE(9)            
    GOTO FIN                                          
ENDDO


  • Attention : DATE signalé en gras correspond au nom de la zone Mapping
  • Sauvegarder, quitter et re-compiler le membre MAP_SPECIF


Ajouter la commande MAPRTVNFO dans le traitement du spool

Modification d'une action du robot :

  • Choisir l'option 14 du menu Mapping de l'IBM i : Menu d'exploitation
  • Choisir l'option 2 Gérer les Actions et lignes de commande / Action
  • Taper F6 Création d'une nouvelle action et nommer la nouvelle action (ex: DATEMAP)
  • 5 (Lignes de commande) devant la nouvelle action
  • Taper F6 Création puis MAPRTVNFO et F4
  • Remplir les paramètres comme suit :
  • Valider puis créer une nouvelle ligne de commande : F6
  • Remettez ici la même ligne de commande qui vous permettez de remapper le spool : MAPCPYSPLF...

Remarque :

Pour récupérer l'heure du spool, procéder de la même manière, avec une autre zone de type remplacement spécifique (ex : TIME) et une modification du CL MAP_SPECIF de la manière suivante :

Déclaration des variables :

DCL        VAR(&HEURE) TYPE(*CHAR) LEN(6)
DCL        VAR(&HH   ) TYPE(*CHAR) LEN(2)
DCL        VAR(&MM   ) TYPE(*CHAR) LEN(2)
DCL        VAR(&SS   ) TYPE(*CHAR) LEN(2)
DCL        VAR(&SEP  ) TYPE(*CHAR) LEN(1)

Partie de programme à ajouter

IF  COND(%SST(&ZONNAM 1 4) *EQ 'TIME') THEN(DO) 
    RTVDTAARA DTAARA(QTEMP/TIME (1 6)) RTNVAR(&HEURE)
    CHGVAR &HH (%SST(&HEURE 1 2))                          
    CHGVAR &MM (%SST(&HEURE 3 2))                          
    CHGVAR &SS (%SST(&HEURE 5 2))                          
    CHGVAR     VAR(&STRVAL) VALUE(&HH *CAT &SEP *CAT &MM + 
               *CAT &SEP *CAT &SS)                       
    CHGVAR     VAR(%BIN(&STRLEN)) VALUE(8)                 
    GOTO FIN                                               
 ENDDO