Gracias Emilio

el código esta en el archivo adjunto , al compilarlo me envía error de sintaxis

saludos








De: Emilio G. Burgoa - OSSE - San Juan
Enviado el: ‎miércoles‎, ‎22‎ de ‎abril‎ de ‎2015 ‎01‎:‎08‎ ‎p. m.
Para: forum.help400, [email protected]






Juan…

 

Puedes adjuntar la sentencia con la que estas creando el stored procedure…??

 

SALUDOS.

 

Emilio G. Burgoa

San Juan - Argentina

 



De: [email protected] 
[mailto:[email protected]] En nombre de Juan Gutierrez 
Ruiz
Enviado el: miércoles, 22 de abril de 2015 14:14
Para: forum.help400; [email protected]
Asunto: ERROR DE SINTAXIS

 



Buenas tardes fórum


estoy generando un procedimiento almacenado pero me envía el  error de sintaxis


al final , me dice que no va el ;


 


alguna ayuda de los nidos que me puedan ayudar


si lo corro en interactivo me devuelve 3 datos , matricula, documento y saldo


pero necesito meterlo en un procedimiento para llamarlo desde RPG y recibir los 
datos 


espero puedan echarme una mano


saludos


 


 


 


SELECT  TABLA . MATRICULA , TABLA . DOCUMENTOID , TABLA . SALDODOCUMENTOS
       INTO @MATRICULA , @DOCUMENTO ,@SALDODO 
              FROM  ( SELECT TABLA . MATRICULA , TABLA . DOCUMENTOID , TABLA . 
SALDODOCUMENTOS 
                         FROM   (SELECT MATRICULA , ORIGENDOCUMENTOID AS 
DOCUMENTOID , 
                                           SUM ( CASE TIPODOCUMENTOID 
                                           WHEN 1 THEN IMPORTEGRANTOTAL 
                                            WHEN 2 THEN IMPORTEGRANTOTAL 
                                            WHEN 3 THEN - IMPORTEGRANTOTAL 
                                            WHEN 4 THEN IMPORTEGRANTOTAL     
             ELSE 0 END ) AS IMPORTEDOCUMENTOS , 
                                            SUM ( CASE TIPODOCUMENTOID 
                                             WHEN 1 THEN ( IMPORTEGRANTOTAL - 
IMPORTEPAGADO ) 
                                            WHEN 2 THEN ( IMPORTEGRANTOTAL - 
IMPORTEPAGADO ) 
                                            WHEN 3 THEN - ABS ( 
IMPORTEGRANTOTAL ) 
                                             WHEN 4 THEN ( IMPORTEGRANTOTAL - 
IMPORTEPAGADO ) 
                                              ELSE 0 END ) AS SALDODOCUMENTOS 
                                                FROM SCAPAL . TDOCU 
                                               WHERE MATRICULA = @MATRICULA 
                                                  GROUP BY MATRICULA , 
ORIGENDOCUMENTOID  ) AS TABLA    
                          WHERE TABLA.SALDODOCUMENTOS <> 0 ;
      


---------------------------------------------------------------------------------------


 


Estado de SQL: 42601
Código de proveedor: -104
Mensaje: [SQL0104] Símbolo ; no válido. Símbolos válidos: ) FETCH ORDER UNION 
EXCEPT. Causa . . . . . :   Se ha detectado un error de sintaxis en el símbolo 
;. El símbolo ; no es un símbolo válido. Una lista parcial de símbolos válidos 
es ) FETCH ORDER UNION EXCEPT. Esta lista presupone que la sentencia es 
correcta hasta el símbolo. El error puede estar anteriormente en la sentencia, 
pero la sintaxis de la sentencia aparece como válida hasta este punto. 
Recuperación  . :   Efectúe una o más de las siguientes acciones y vuelva a 
intentar la petición: -- Verifique la sentencia SQL en el área del símbolo ;. 
Corrija la sentencia. El error podría ser la omisión de una coma o comillas; 
podría tratarse de una palabra con errores ortográficos, o podría estar 
relacionado con el orden de las cláusulas. -- Si el símbolo de error es <FIN DE 
SENTENCIA>, corrija la sentencia SQL porque no finaliza con una cláusula válida.


 


El proceso ha finalizado porque la sentencia resaltada no se ha completado 
satisfactoriamente
CREATE PROCEDURE SCAPAL.TDOCU_SDO_MATRICULA ( 
        IN @MATRICULA VARCHAR(7),
                       OUT  @DOCUMENTO INTEGER,
                       OUT @SALDO  DEC(15,2)) 
--      DYNAMIC RESULT SETS 1 
        LANGUAGE SQL 
        SPECIFIC SCAPAL.TDOCU_SDO_MATRICULA 
        NOT DETERMINISTIC 
        MODIFIES SQL DATA 
        CALLED ON NULL INPUT 
        SET OPTION  ALWBLK = *ALLREAD , 
        ALWCPYDTA = *OPTIMIZE , 
        COMMIT = *NONE , 
        CLOSQLCSR = *ENDMOD , 
        DECRESULT = (31, 31, 00) , 
        DFTRDBCOL = *NONE , 
        DYNDFTCOL = *NO , 
        DYNUSRPRF = *USER , 
        SRTSEQ = *HEX   
        BEGIN 

  SELECT  TABLA . MATRICULA , TABLA . DOCUMENTOID , TABLA . SALDODOCUMENTOS
       INTO @MATRICULA , @DOCUMENTO ,@SALDODO 

              FROM  ( SELECT TABLA . MATRICULA , TABLA . DOCUMENTOID , TABLA . 
SALDODOCUMENTOS 
                                   FROM   (SELECT MATRICULA , ORIGENDOCUMENTOID 
AS DOCUMENTOID , 
                                                 SUM ( CASE TIPODOCUMENTOID 
                                                 WHEN 1 THEN IMPORTEGRANTOTAL 
                                                 WHEN 2 THEN IMPORTEGRANTOTAL 
                                                 WHEN 3 THEN - IMPORTEGRANTOTAL 
                                                 WHEN 4 THEN IMPORTEGRANTOTAL   
  
                    ELSE 0 END ) AS IMPORTEDOCUMENTOS , 
                                                SUM ( CASE TIPODOCUMENTOID 
                                                WHEN 1 THEN ( IMPORTEGRANTOTAL 
- IMPORTEPAGADO ) 
                                                WHEN 2 THEN ( IMPORTEGRANTOTAL 
- IMPORTEPAGADO ) 
                                                WHEN 3 THEN - ABS ( 
IMPORTEGRANTOTAL ) 
                                                 WHEN 4 THEN ( IMPORTEGRANTOTAL 
- IMPORTEPAGADO ) 
                                             ELSE 0 END ) AS SALDODOCUMENTOS 
                                                FROM SCAPAL . TDOCU 
                                               WHERE MATRICULA = @MATRICULA    
                                                  GROUP BY MATRICULA , 
ORIGENDOCUMENTOID  ) AS TABLA   
                                  WHERE TABLA.SALDODOCUMENTOS <> 0  ;
____________________________________________________
Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd )
Forum.Help400 © Publicaciones Help400, S.L.

Responder a