La version Oracle 10g permet la jointure (ex : LEFT OUTER JOIN).
Je suis sur une appli en cobol sur Unix avec le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
 
     EXEC SQL DECLARE C-RECH-STR-PLUS CURSOR FOR                 
               SELECT  C2WACT_IDT        ,                       
                       C2WACT_LIB_LON    ,                       
                       C2WACT_DAT_MAJ    ,                       
                       C2WACT_HEU_MAJ    ,                       
                       C2WACT_DAT_DER_MEP,                       
                       C2WACT_HEU_DER_MEP,                       
                       C2WACT_DAT_DEM_MEP,                       
                       C2WACT_HEU_DEM_MEP,                       
                       C2WACT_FLG_SPS    ,                       
                       C2WACT_NBR_STX_MAJ,                       
                       C2WACT_NBR_STX_ATT,                       
                       C2WACT_DAT_FIN_XPL                        
                  FROM TC2WACT AS T1 LEFT OUTER JOIN             
                          (SELECT DISTINCT C2WSTR_ACT_IDT,       
                                    C2WSTR_SEN, C2WSTR_INC_FED   
                           FROM TC2WSTR                          
                           WHERE                                 
                              ( C2WSTR_INC_GRP = :W-USR-GRP      
                                 AND 'O' = :W-RCM6A07G           
                              )                                  
                              OR                                 
                              ( C2WSTR_INC_FED = :W-USR-FED      
                                AND ('O' = :W-RCM6A06G           
                                          or 'O' = :W-RCM6A03V)  
                              )                                  
                              OR                                 
                              (                                  
                                 'O' = :W-RCM6A08G               
                              )                                  
                          ) AS T2                                
                       ON T1.C2WACT_IDT = T2.C2WSTR_ACT_IDT      
               WHERE C2WACT_FLG_SPS = 'N'                        
               AND   T2.C2WSTR_SEN = '+'                         
               AND T2.C2WSTR_INC_FED = RTRIM(:W-FLT-STR-VAL)     
               AND ((T2.C2WSTR_ACT_IDT IS NULL AND               
                        C2WACT_UTT_CRE = UCASE(:W-UTT-CRE))      
                OR (T2.C2WSTR_ACT_IDT IS NOT NULL))              
               ORDER BY C2WACT_DAT_CRE DESC                      
     END-EXEC.
* 803-S****************************************************************( 13)**
** Integrated preprocessor message
** 000400:Encountered the symbol "OUTER" when expecting one of the
** followin
* 803-I****************************************************************( 13)**
** Integrated preprocessor message
** 000556:Unrecoverable error. Fix previous errors and re-precompile
Ne serait-ce pas un pb de pré-compilateur cobol qui n'évoluerait pas en même temps que la version d'Oracle ?
Merci