gracias 
 
Un Saludo,
 
José Bermúdez 
Departamento Informática. 
  
Alcoholes Montplet, S.A. 


  _____  

De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] En nombre de Fernando Pérez
Enviado el: viernes, 14 de septiembre de 2007 13:27
Para: forum.help400
Asunto: Re: SQL en RPG


Solo añadir que además de utilizar la sentencia en un cursor, también puedes
ejecutarla (para deletes, updates, inserts, create table as... ):

c/Exec Sql Prepare prep1 From :SqlPrepare 
c/End-exec                                 
c/Exec Sql execute Prep1     
c/End-Exec      


Saludos.

Fernando Pérez  

Cerámica Saloni. Dpto. Auditoría y Organización



[EMAIL PROTECTED] escribió: 


Debes usar Sql dinámico. no es demasiado complicado, tienes que crearte unas
variables de tipo Varying para preparar las Querys y ejecutar el Sql
prepare. Yo normalmente creo cinco variables Varying que son la SQLSELECT,
SQLWHERE, SQLORDER, SQLGROUP y SQLPREPARE. Cuando acabo de cargar en tiempo
de ejecución los valores de la query en sus respectivas variables, las muevo
todas a la última SQLPREPARE. A partir de ahí poca cosa más, exceptuando el
ejecutar el Sql prepare algo así ..... 

c/Exec Sql Prepare prep1 From :SqlPrepare 
c/End-exec                                 
c/Exec Sql Declare C1 Cursor For Prep1     
c/End-Exec                         

espero te sirva.   

Saludos
Felipe Martínez
[EMAIL PROTECTED]
http://www.tcbcn.com




Jose Bermúdez  <mailto:[EMAIL PROTECTED]> <[EMAIL PROTECTED]> 
Enviado por: [EMAIL PROTECTED] 


14/09/2007 11:50 


Por favor, responda a
"forum.help400"  <mailto:[email protected]>
<[email protected]>



Para
"'forum.help400'"  <mailto:[email protected]>
<[email protected]>       

cc

        

Asunto
SQL en RPG      

Categoría:

        


        
        




Es posible montar la cláusula WHERE o ORDER BY de un sql de Manera variable.

Ir construyéndola en función de una pantalla que el usuario va seleccionando
y ordenando. 
  
Quiero cambiar 
 C/Exec Sql                                     
C+ Declare Lector1 Cursor for                  
C+   SELECT *                                  
C+   FROM "FICHERO"                           
C+   WHERE( 
 C+                 Campo1<=:DESDEP1 and Campo1<= :HASTAP1 
 C+                 Campo2<=:DESDEP2 and Campo2<= :HASTAP2 
 C+  ) ORDER BY Campo1,Campo2     
C+         For Read Only                       
C/End-Exec     
  
Por algo asi 
 C                     if condicion1 then 
 C                     Eval   Sqlstm='Where(campo1<="' + DESDEP1 + '" and
Campo1<="' +HASTAP1) 
 C                     Eval   OrdStm="ORDER BY(Campo1,Campo2)" 
 C                     Else 
 C                     Eval   Sqlstm='Where(campo2<="' + DESDEP2 + '" and
Campo2<="' +HASTAP2) 
 C                     Eval   OrdStm="ORDER BY(Campo2,Campo1)" 
 C                     End 
 C/Exec Sql                                     
C+ Declare Lector1 Cursor for                  
C+   SELECT *                                  
C+   FROM "FICHERO"                           
C+   :Sqlstm                                   
C+   :OrdStm    
C+         For Read Only                       
C/End-Exec     
  
  
                                
  
Un Saludo, 
  
José Bermúdez 
Departamento Informática. 
  
Alcoholes Montplet, S.A. 



 __________________________________________________
Forum.HELP400 es un servicio m&amp;#225;s de NEWS/400.
&amp;#169; Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400 





  _____  


__________________________________________________

Forum.HELP400 es un servicio m&amp;#225;s de NEWS/400.

&amp;#169; Publicaciones Help400, S.L. - Todos los derechos reservados

http://www.help400.es

_____________________________________________________



Para darte de baja visita la siguente URL:

http://listas.combios.es/mailman/listinfo/forum.help400

__________________________________________________
Forum.HELP400 es un servicio m&amp;#225;s de NEWS/400.
&amp;#169; Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

Responder a