Hola Carlos
 
La variable &FLDUSU no puede ir entre comillas porque es una variable no una constante.
 
OPNQRYF    FILE((&FILE)) OPTION(*ALL) QRYSLT('(' *CAT +
             &FLDUSU *CAT ' *EQ "' *CAT &USER *CAT +  
             '")') KEYFLD((&FLDUSU)) OPNID(&FILE)      

Un saludo
Sonia

Sonia Ram�rez
T�cnica de Sistemas
Burke (Software y Servicios)
E-mail  : [EMAIL PROTECTED]
Phone   : +34 91 571.55.50
Fax     : +34 91 571.56.02


-----Mensaje original-----
De: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]En nombre de Carlos Iglesias
Enviado el: jueves, 06 de marzo de 2003 17:09
Para: [EMAIL PROTECTED]
Asunto: OPNQRYF q no da buen resultado.


Hola,

tengo un CL que pas�ndole como par�metros el fichero y su campo clave y su valor, hace un OVRDBF + OPNQRYF.

Seg�n mis c�lculos, deber�a alterarme temporalmente el archivo y seleccionarme �nicamente aquellos registros que yo estoy acotando.

Pues resulta que este OPNQRYF est� pasando de mi...
4 ojos ven m�s que dos... �alguna sugerencia?

He aqu� mi CL... y gracias por adelantado!!!

PGM        PARM(&USER &FORMATO &FILE &FLDUSU)
                                                     
DCL        VAR(&USER) TYPE(*CHAR) LEN(10)            
DCL        VAR(&FORMATO) TYPE(*CHAR) LEN(30)        
DCL        VAR(&FILE) TYPE(*CHAR) LEN(10)            
DCL        VAR(&FLDUSU) TYPE(*CHAR) LEN(10)          
                                                     
DLTOVR     FILE(&FILE) LVL(*JOB)                    
MONMSG     MSGID(CPF0000)                            
CLOF       OPNID(&FILE)                              
MONMSG     MSGID(CPF0000)                            
                                                     
                                                     
OVRDBF     FILE(&FILE) TOFILE(&FILE) +              
             OVRSCOPE(*JOB) SHARE(*YES) SEQONLY(*YES)

OPNQRYF    FILE((&FILE)) OPTION(*ALL) QRYSLT('"' *CAT +
             &FLDUSU *CAT '" *EQ "' *CAT &USER *CAT +  
             '"') KEYFLD((&FLDUSU)) OPNID(&FILE)      

DLTOVR     FILE(&FILE) LVL(*JOB)
MONMSG     MSGID(CPF0000)          
CLOF       OPNID(&FILE)          
MONMSG     MSGID(CPF0000)          

Responder a