SQLCBL : probleme avec la fonction Sequence
Bonjour,
Je suis actuellement en train de travailler sur un programme CobolSQL sous AS/400, qui prend des données d'un fichiers et les place dans un autre fichier (jusque la tout va bien)
La ou tout se complique est lorsqu'en plus des données (normales) il m'a fallu insérer dans le fichier "résultat" une clef unique : un code pays suivi d'un numéro incrémenté au fur et a mesure.
J'ai découvert alors l'utilisation des séquences, qui répond à mon attente.
sous STRSQL, j'arrive à créer ma séquence, l'utiliser, etc.
Mais dans le SQLCBL, ma requête de création de séquence sort en erreur et fait planter mon programme :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| MOVE SPACE TO W-REQUETE-SQL
STRING
"CREATE SEQUENCE SEQSWIFT "
"AS INTEGER "
" START WITH "
WW-COMPTAGE-debut (cette donnée est à 01)
" INCREMENT BY 1 "
"NO MINVALUE "
"MAXVALUE 999999 "
"NO CYCLE "
"CACHE 50 "
"ORDER " DELIMITED BY SIZE
INTO W-REQUETE-SQL.
EXEC SQL
EXECUTE IMMEDIATE :W-REQUETE-SQL
END-EXEC. |
Si je copie la string ainsi définie telle quelle dans STRSQL la séquence se crée, mais pas dans le programme.
J'ai cherché sur le net le code erreur (-7017 si je ne me suis pas trompé) et l'explication ne m'est pas très utile...
Code:
Explanation: Commitment control is already active to a DDM target.
Est ce que quelqu'un a déjà utilisé cette fonction dans un programme?
Merci d'avance,
P.S.
Je ne sais pas exactement ou placer ce post, parce qu'il pourrait se promener entre DB2, AS400... Prière de le déplacer en cas de besoin.