Yo tengo uno  y funciona desde el año 95,  el problema es que hace poco 
que tuve una problema con un campo que tenia una comilla en medio 
     PGM        PARM(&PARFEC) 
      DCL        VAR(&PARFEC) TYPE(*CHAR) LEN(8) 
      DCL        VAR(&F) TYPE(*CHAR) LEN(8) 
      CHGVAR     VAR(%SST(&F 7 2)) VALUE(%SST(&PARFEC 1 2)) 
      CHGVAR     VAR(%SST(&F 5 2)) VALUE(%SST(&PARFEC 3 2)) 
      CHGVAR     VAR(%SST(&F 1 4)) VALUE(%SST(&PARFEC 5 4)) 

      OVRPRTF    FILE(*PRTF) PAGESIZE(*N 198) CPI(15) 
   STRQMQRY   QMQRY(CARMEN/QRYxxx) OUTPUT(*PRINT) + 
              QMFORM(QRYXXXPT)                         + 
              DATETIME(*NO) PAGNBR(*NO) SETVAR((PARFEC + 
              ('''' *CAT &F *CAT ''''))) 





De:     "Rafael Silva" <[email protected]>
Para:   <[email protected]>
Fecha:  18/02/2010 17:05
Asunto: RE: Para los expertos en STRQMQRY
Enviado por:    [email protected]



Bueno, voy a ser mas especifico y completo.... espero te sirva.......
 
Trabajando con fechas.... Claro esta con faltan algunas instrucciones... 
pero tienes lo mas importante para que te orientes!!!
 
 
            DCL        VAR(&COM) TYPE(*CHAR) LEN(01) VALUE(X'7D') 
            DCL        VAR(&F1) TYPE(*CHAR) LEN(10) 
            DCL        VAR(&F2) TYPE(*CHAR) LEN(10) 
            DCL        VAR(&XI)    TYPE(*CHAR) LEN(08) 
            DCL        VAR(&XF)    TYPE(*CHAR) LEN(08) 
            DCL        VAR(&DD)    TYPE(*CHAR) LEN(02) 
            DCL        VAR(&MM)    TYPE(*CHAR) LEN(02) 
            DCL        VAR(&AA)    TYPE(*CHAR) LEN(04) 
            DCLF       FILE(Biblioteca/PRMP001) RCDFMT(*ALL) 
 
 
 
             SNDRCVF    DEV(*FILE) RCDFMT(FP01) 
 
/* CONVERSION DE FECHAI DEL FORMATO DE PANTALLA  A  AÑO-MES-DIA   */ 
             CHGVAR VAR(&XI) VALUE(&FECHAI) 
             CHGVAR VAR(&DD) VALUE(%SUBSTRING(&XI 1 2)) 
             CHGVAR VAR(&MM) VALUE(%SUBSTRING(&XI 3 2)) 
             CHGVAR VAR(&AA) VALUE(%SUBSTRING(&XI 5 4)) 
             CHGVAR VAR(&XI) VALUE(&AA || &MM || &DD) 
             CHGVAR     VAR(&FECHAI) VALUE(&XI) 
/* CONVERSION DE FECHAF DEL FORMATO DE PANTALLA  A  AÑO-MES-DIA   */ 
             CHGVAR VAR(&XF) VALUE(&FECHAF) 
             CHGVAR VAR(&DD) VALUE(%SUBSTRING(&XF 1 2)) 
             CHGVAR VAR(&MM) VALUE(%SUBSTRING(&XF 3 2)) 
             CHGVAR VAR(&AA) VALUE(%SUBSTRING(&XF 5 4)) 
             CHGVAR VAR(&XF) VALUE(&AA || &MM || &DD) 
             CHGVAR     VAR(&FECHAF) VALUE(&XF) 
 
             CHGVAR     VAR(&F1) VALUE(&COM *TCAT &XI *TCAT &COM) 
             CHGVAR     VAR(&F2) VALUE(&COM *TCAT &XF *TCAT &COM) 
 
/* Ejecutar programa                      */ 
 
             SBMJOB     CMD(STRQMQRY QMQRY(Biblioteca/CTAINV03) + 
                          OUTPUT(*PRINT) QMFORM(*QMQRY) + 
                          ALWQRYDFN(*YES) SETVAR((FEC1 &F1) (FEC2 + 
                          &F2))) 
 
 
 
 
Saludos,
 
Rafael Silva
 


>>> [email protected] 02/18 11:05 a.m. >>>
Hola. Te envio cómo lo hago yo. a ver si te sirve: 
 
 CHGVAR     VAR(&DATADALFA) VALUE(&DATAD) 
 CHGVAR     VAR(&DATAFALFA) VALUE(&DATAF) 
  STRQMQRY   QMQRY(ALBERTQRY/MICKEY) OUTPUT(*PRINT) +     
              QMFORM(*QMQRY) ALWQRYDFN(*YES) +           
              SETVAR((DATADESDE &DATADALFA) (DATAFINS + 
              &DATAFALFA))                               


"VALENCIA Informatique" <[email protected]> 
Enviado por: [email protected] 
18/02/2010 14:10 

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



Para
"forum.help400" <[email protected]> 
cc

Asunto
RE: Para los expertos en STRQMQRY








Tampoco… la verdad es que no se me ocurre nada 
  
? X'060499400F' 
  La sentencia contiene un número erróneo de valores. 
  Se ha producido un error en el mandato SAVE DATA con un SQLCODE -117. 
  El mandato SAVE DATA finalizó debido a un error. 
  Anomalía en mandato STRQMQRY. 
                                                                        
  
  
  
Cordialmente 
De: [email protected] [
mailto:[email protected]] En nombre de Raul Segura 
Torres
Enviado el: jueves, 18 de febrero de 2010 13:55
Para: forum.help400
Asunto: RE: Para los expertos en STRQMQRY 
  
¿Y si pruebas con X'060499400F'?... 

Un Saludo, 

Raúl.




De:        "VALENCIA Informatique" <[email protected]> 
Para:        "forum.help400" <[email protected]> 
Fecha:        18/02/2010 13:49 
Asunto:        RE: Para los expertos en STRQMQRY 
Enviado por:        [email protected] 






No, ya sé que no es coña, creo que va por ahí pero…. : 
1-      Con comillas simples: 
Introduzca un valor para la variable COD2. 
'60499400' 
La sentencia contiene un número erróneo de valores. 
Se ha producido un error en el mandato SAVE DATA con un SQLCODE -117. 
El mandato SAVE DATA finalizó debido a un error.                        
2-      Con dos comillas: 
  ? ''60499400''   
 Símbolo 60499400 no válido. Símbolos válidos: FOR WITH FETCH ORDER UNION 
   EXCEPT OPTIMIZE.                                                      
3-      Con tres comillas: 
 Introduzca un valor para la variable COD2. 
? '''60499400'''                                                        
 La sentencia contiene un número erróneo de valores. 
 Se ha producido un error en el mandato SAVE DATA con un SQLCODE -117. 
 El mandato SAVE DATA finalizó debido a un error.           
 
 
Va cerveza y bocata….          
      
 
 
De: [email protected] [
mailto:[email protected]] En nombre de Marti Riera
Enviado el: jueves, 18 de febrero de 2010 13:25
Para: forum.help400
Asunto: Re: Para los expertos en STRQMQRY 
 
Hola,

Si no recuerdo mal debes pasarle triples comillas por delante y por detrás 
(no es coña) y nos cuentas

Martí Riera

2010/2/18 VALENCIA Informatique <[email protected]> 
 
Hola a todos. 
 
Tengo un problema cuando ejecuto un  STRQMQRY, el problema radica en que 
si declaro la variable como numérica no hay mayor problema p.e. 
STRQMQRY QMQRY(fulanito/RPICCONT) 
           OUTPUT(*OUTFILE)                         
          OUTFILE(fulanito/PICCONT) OUTMBR(*FIRST 
          *ADD) ALWQRYDFN(*YES) SETVAR((COD2 &COD2)) 
 
Pero en el caso que pase una variable alfa (siendo alfa también la del 
query) me aparece el mensaje: 
 
7>> STRQMQRY QMQRY(FULANITO/RPICCONT)                                     
                      OUTPUT(*OUTFILE) 
                           OUTFILE(FULANITO/PICCONT) OUTMBR(*FIRST 
                                 *ADD) ALWQRYDFN(*YES) 
    Consulta derivada del objeto *QRYDFN RPICCONT de OPERADORES, código 
00. 
    Introduzca un valor para la variable COD2. 
  ? '60499400' 
    La sentencia contiene un número erróneo de valores.  
    Se ha producido un error en el mandato SAVE DATA con un SQLCODE -117.  

 
El código de error no me dice gran cosa. Esto aparece pasando también las 
comillas (para alfa), sin comillas aparecería el mensaje de: 
Error de selección u omisión en campo CODFAL miembro FALTAS 
 
Por lo cual deduzco que las comillas son necesarias. El campo alfa es de 
17 y le paso un valor en &COD2 como ‘65432000’. 
 
Hay cerveza para quien lo deduzca 
 
 
Muchas gracias 
 
 

____________________________________________________
© 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 
____________________________________________________
© 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 








MENSAJE MEDIOAMBIENTAL 

Antes de imprimir este mensaje, por favor, compruebe que es necesario. Una 
tonelada de papel implica la tala de 15 árboles y el consumo de 250.000 
litros de agua. 
El Medio Ambiente es cuestión de TODOS. 
ADVERTENCIA LEGAL

"Este mensaje se dirige exclusivamente a su destinatario y puede contener 
información privilegiada o confidencial. Si no es vd. el destinatario 
indicado, queda notificado de que la lectura, utilización, divulgación y/o 
copia sin autorización está prohibida en virtud de la legislación vigente. 
Si ha recibido este mensaje por error, le rogamos que nos lo comunique 
inmediatamente por esta misma vía y proceda a su destrucción. El correo 
electrónico vía Internet no permite asegurar la confidencialidad
de los mensajes que se transmiten ni su integridad o correcta recepción. 
La empresa no asume ninguna responsabilidad por estas circunstancias."

____________________________________________________
© 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 
____________________________________________________
© 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









MENSAJE MEDIOAMBIENTAL 

Antes de imprimir este mensaje, por favor, compruebe que es necesario. Una 
tonelada de papel implica la tala de 15 árboles y el consumo de 250.000 
litros de agua. 
El Medio Ambiente es cuestión de TODOS.

ADVERTENCIA LEGAL

"Este mensaje se dirige exclusivamente a su destinatario y puede contener 
información privilegiada o confidencial. Si no es vd. el destinatario 
indicado, queda notificado de que la lectura, utilización, divulgación y/o 
copia sin autorización está prohibida en virtud de la legislación vigente. 
Si ha recibido este mensaje por error, le rogamos que nos lo comunique 
inmediatamente por esta misma vía y proceda a su destrucción. El correo 
electrónico vía Internet no permite asegurar la confidencialidad
de los mensajes que se transmiten ni su integridad o correcta recepción. 
La empresa no asume ninguna responsabilidad por estas circunstancias."



____________________________________________________
© 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