Bonjour,
Je voudrais faire une requête que je "fabrique" moi même, car je rajoute des zones selon les cas.
Je ne veux pas du dynamique mais construire ma requête pour l'exécuter ensuite.
J'ai don voulu essayer avec un call QCMDEXC, mais j'ai un message ou il ne trouve pas la commande.
Que dois je faire? Merci d'avance.
Vola le code
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 * Execution OS400E CDE 1 11 30 E TC 110 1 * IPCDE DS I 1 110 TC * .... C CALL 'QCMDEXC' C PARM PCDE C PARM LNG C SETON LR * ** CDE INSERT INTO AATPCR/AFS SELECT ORG,AMTPER01, AMTPER02, FROM AFS0 WHERE ORG ='
Je forme ma requête via un tableau puis qui alimente la zone PCDE
La requête au finale est la suivante :
Ma table AFS est définie comme celaCode:
1
2 PCDE = INSERT INTO AATPCR/AFS SELECT ORG,AMTPER01, AMTPER02, AMTPER01+ AMTPER02 (zone variable) FROM AFS0 WHERE ORG =' SOC' (zone variable)
Zone données zone tampon tampon zone
ORG ALPHA 6 6 1 E/S
AMTPER01 CONDEN 18 2 10 7 E/S
AMTPER02 CONDEN 18 2 10 17 E/S
SEL0004 CONDEN 19 2 10 27 E/S
Quand je réalise le CALL 'QCMDEXC', j'ai ce message:
Citation:
ID message . . . . . . : CPD0030 Gravité . . . . . . . : 30
Type de message . . . : Diagnostic
Date d'envoi . . . . . : 18/03/15 Heure d'envoi . . . . : 13:32:42
Message . . . . : Commande INSERT non trouvée dans la bibliothèque *LIBL.
Cause . . . . . : Si aucune bibliothèque n'est indiquée, la commande n'a pas
été trouvée dans les bibliothèques de la liste. Si une bibliothèque a été
indiquée, la commande n'a pas été trouvée. L'une des valeurs spéciales
suivantes a peut-être été utilisée pour indiquer la bibliothèque :
*LIBL - La commande n'a été trouvée dans aucune des bibliothèque de la
liste.
*NLVLIBL - La commande n'a été trouvée dans aucune bibliothèque de langue de
la liste des bibliothèques système.
*SYSTEM - La commande n'a pas été trouvée dans la bibliothèque QSYS.
Que faire . . . : Modifiez le nom de commande ou de bibliothèque, puis
relancez la commande.