Page 1 sur 1

[SQLRGLE] insert via une data structure impossible ?

Posté : mer. 10 juin 2009, 11:19:24
par claude.mahe
Bonjour,

Je cherche, sans succès, à effectuer un insert sql en utilisant le contenu d'une data structure.

Le code suivant ne passe pas la compilation (V5R3) :
SQL0117 30 397 L'instruction contient un nombre erroné de valeurs

Code : Tout sélectionner

  exec sql Insert INTO ADMA02P0   VALUES(:DS_Fichier);      

ca passe en V6R1

Posté : mer. 10 juin 2009, 15:01:37
par cmasse
soit la table suivante

Code : Tout sélectionner

CREATE TABLE FORMATION/TEST (
NOM CHAR (10 ) NOT NULL WITH DEFAULT, 
PRENOM CHAR (10 ) NOT NULL WITH DEFAULT, 
DATCRT DATE NOT NULL WITH DEFAULT)
                                                            
le pgm RPG qui suit se compile et s'exécute correctement

Code : Tout sélectionner

Dtestds         e ds                  extname('FORMATION/TEST') 
 /free                                                           
  nom = 'Massé';                                                 
  prenom = 'christian';                                          
  datcrt = %date();                                              
  exec sql                                                       
    INSERT INTO FORMATION/TEST VALUES(:testds);                 
  *inlr = *on;                                                   
si ca peut aider....

SQLRGLE] insert via une data structure impossible ?

Posté : mer. 10 juin 2009, 15:30:12
par t.lebec
Exemple de table :
CREATE TABLE TLB/TLB01
(CENVIR CHAR (2 ) NOT NULL WITH DEFAULT
CDPAYS CHAR (3 ) NOT NULL WITH DEFAULT,
CDEVIS CHAR (3 ) NOT NULL WITH DEFAULT)

Code qui fonctionne en V5R4 sans utilisation du mode free:

d WTLB01 E DS extname(TLB01) prefix(T1_)

c eval T1_CENVIR = 'TS'
c eval T1_CDPAYS = 'PA1'
c eval T1_CDEVIS = 'DE6'

c/exec sql
c+ INSERT INTO TLB/TLB01
c+ VALUES(:WTLB01)
c/end-exec

c eval *inlr = *on [/code]

(sans texte)

Posté : mer. 10 juin 2009, 17:17:22
par claude.mahe
Bon, en fait ça marche aussi en V5R3...

Par contre, il faut éviter de faire suivre la DATA STRUCTURE par la définition d'une zone unitaire sans S !!!!
Désolé et merci.

(sans texte)

Posté : ven. 12 juin 2009, 15:44:32
par Philippe
Evidemment, sinon la (ou les) zone définie sans "s" immédiatement à la suite de la DS externe fait partie intégrante de cette DS (Data Structure) .

(sans texte)

Posté : lun. 15 juin 2009, 07:16:36
par claude.mahe
Philippe a écrit :Evidemment, sinon la (ou les) zone définie sans "s" immédiatement à la suite de la DS externe fait partie intégrante de cette DS (Data Structure) .
Oui, inutile d'enfoncer le couteau dans la plaie ! :)

(sans texte)

Posté : lun. 15 juin 2009, 19:45:54
par Philippe
Désolé, je ne voulais vexer personne.

(sans texte)

Posté : mar. 16 juin 2009, 07:16:48
par claude.mahe
Philippe a écrit :Désolé, je ne voulais vexer personne.
Pas de problème !