2011-11-21 13 views
6

Come posso spostare un record da Oracle a un array Cobol? Quando sposto un singolo campo, tutto funziona come previsto. Quando provo a spostare un record in un Oracle VARRAY, non riesco a far funzionare . Il PRO * COBOL precompiler dà il seguente messaggio di errore:Sposta record da Oracle array a Cobol si verifica

Error at line 137, column 12 in file ESF3.ordbso07.PCO 
      EXEC SQL EXECUTE  
...........1 
PCB-S-00576, PLS-382: expression is of wrong type 
Error at line 137, column 12 in file ESF3.ordbso07.PCO 
      EXEC SQL EXECUTE  
...........1 
PCB-S-00576, PLS-0: Statement ignored 

tipi Oracle:

TYPE QDELSSRD_arr IS VARRAY(30) OF QDELSSRD_typ; 

TYPE SODLSSRD_typ IS RECORD (-- DBSO07 SOK 
    QDELSSRD    QDELSSRD_arr -- 30 x QDELSSRD_typ 

OC is SODLSSRD_typ; 
TYPE QDELSSRD_typ IS RECORD (
    ENAMN    arbetssokande.efternamn%type, -- VARCHAR2(30 CHAR) 
    FNAMN    arbetssokande.fornamn%type, -- VARCHAR2(20 CHAR) 
); 

frammento di COBOL ESQL blocco anonimo PL/SQL:

FOR LV IN 1..:RC-ZHITS 
LOOP 
    :QDELSSRD(LV) := OC.QDELSSRD(LV); 
END LOOP; 

COBOL dichiarazione di variabile:

 15  QSODLSSRD. 
      18  QDELSSRD      OCCURS 30. 
        21  ENAMN       PIC X(030). 
        21  FNAMN       PIC X(020). 

risposta

Problemi correlati