|
Remarques :
Pour exécuter une requête, il existe plusieurs méthodes : 1. SQL embarqué 2. RUNSQLSTM
Ces deux méthodes ne permettent pas de faire des SELECT
Il existe une troisième méthode qui consiste à utiliser Query Manager.
1) Création du fichier source :
CRTSRCPF FILE(QQMQRYSRC) RCDLEN(79)
Ce fichier contient les requêtes QM à exécuter.
2) Création de la requête :
Par pdm créez un membre REQ dans le fichier QQMQRYSRC
Saisissez une ligne : &REQ0&REQ1&REQ2&REQ3&REQ4&REQ5&REQ6&REQ7&REQ8&REQ9
3) Compilation de la requête :
CRTQMQRY QMQRY(REQ)
4) Exécution de la commande :
STRQMQRY QMQRY(REQ) SETVAR((REQ0 valeur0 ) (REQ1 valeur1) + (REQ2 valeur2) (REQ3 valeur3) + (REQ4 valeur4) (REQ5 valeur5) + (REQ6 valeur6) (REQ7 valeur7) + (REQ8 valeur8) (REQ9 valeur9))
5) Automatisation :
Le programme :
PGM DCL &REQ0 *CHAR 55 DCL &REQ1 *CHAR 55 DCL &REQ2 *CHAR 55 DCL &REQ3 *CHAR 55 DCL &REQ4 *CHAR 55 DCL &REQ5 *CHAR 55 DCL &REQ6 *CHAR 55 DCL &REQ7 *CHAR 55 DCL &REQ8 *CHAR 55 DCL &REQ9 *CHAR 55 DCLF RUNSQLE BOUCLE: SNDRCVF RCDFMT(FMT01) IF (&IN03) GOTO FIN IF (&IN05) THEN(DO) CHGVAR &REQ0 %SST(&REQ 1 55) CHGVAR &REQ1 %SST(&REQ 56 55) CHGVAR &REQ2 %SST(&REQ 111 55) CHGVAR &REQ3 %SST(&REQ 166 55) CHGVAR &REQ4 %SST(&REQ 221 55) CHGVAR &REQ5 %SST(&REQ 276 55) CHGVAR &REQ6 %SST(&REQ 331 55) CHGVAR &REQ7 %SST(&REQ 386 55) CHGVAR &REQ8 %SST(&REQ 441 55) CHGVAR &REQ9 %SST(&REQ 496 55) STRQMQRY QMQRY(REQ) SETVAR((REQ0 &REQ0) (REQ1 &REQ1) + (REQ2 &REQ2) (REQ3 &REQ3) + (REQ4 &REQ4) (REQ5 &REQ5) + (REQ6 &REQ6) (REQ7 &REQ7) + (REQ8 &REQ8) (REQ9 &REQ9)) MONMSG CPF0000 EXEC(DO) DSPJOBLOG ENDDO ENDDO GOTO BOUCLE FIN: ENDPGM
L'écran :
A DSPSIZ(24 80 *DS3) A R FMT01 A CA03(03 'exit') A CF05(05 'Exécuter') A 1 28'Exécution d''une requête SQL' A DSPATR(RI) A 11 1'Requête :' A REQ 550 B 11 11 A CHECK(LC) A 22 2'F3=Exit' A 22 11'F5=Exécuter'
PLB
|