buenas, no he leido todos los correos que han respondido, por lo que
probablemente todo lo que acote ya sido dicho, pero que le vamo a hacer.

1. cambiar el opnqryf al siguiente formato
CHGVAR &QRYSLT (&FLDUSU *BCAT '*EQ "' *TCAT &USER *TCAT '"')
OPNQRYF    FILE((&FILE)) OPTION(*ALL) QRYSLT(&QRYSLT) KEYFLD((&FLDUSU))

2. no se si esta completo el codigo que pasaste, pero si el cl lo llamas
desde un cl ppal y el pgm para el cual quieres obtener el filtro lo llamas
del cl ppal no te va a funcionar, para ello el programa debe ejecutar en el
mismo nivel de activacion que el cl del filtro, si son programas distintos
por eso el cl de filtro generico este, agrega un parametro mas donde le
pases el comando a ejecutar y lo ejecutas QCMDEXC,
por mas que suene obvio, la ejecucion del pgm debe ir entre el OPNQRYF y el
CLOF posterior

3. en el pgm que nombre tienes que tener declarado el archivo con el nombre
que pasas en &FILE si no tienes que cambiarle el opnid... deben ser los
mismos...

4. por defecto el opnqryf prepara el archivo para un acceso secuencial,
fijate que lo estes procesando asi, si no cambia las opciones de apertura a
las que necesites.

5. veo que no tienes monmsg asi que si tuvieras un error en la sentencia
cancelaria, si la tienes sacala hasta que tengas pulido el pgm.

6. si no funciona esto asegurate que el opnqryf esta haciendo lo que
necesitas, para ello ponle un debug al cl y luego de ejecutada la linea que
realiza el opnqryf ejecutas en comando CPYFRMQRYF pa ver si anda o no anda
vio.

7. si el opnqryf anda bien, ponle un debug al pgm que ejecutas y fijate en
los archivos abiertos que el &FILE deberia figurar con dos vias de acceso
abiertas, una por el opnqryf y otra por el programa, si no es asi, revisa
nuevamente el punto 2 por que debes tener un problema ahi...

8. si todo esto no funciona lo llamamos al mago cacarulo a ver que puede
estar pasando, o mejor manda un mail a la lista con tus observaciones y lo
analizamos.


----- Original Message -----
From: "Carlos Iglesias" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, March 06, 2003 1:09 PM
Subject: 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)


_____________________________________________________
Forum.HELP400 es un servicio m�s de NEWS/400.
� Publicaciones Help400, S.L. - Todos los derechos reservados
http://www.help400.es
_____________________________________________________

Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]

Responder a