Oracle - ¡¡¡ SIGUE SIN SALIR... !!! ... ¡¡¡ SOS!!!

 
Vista:

¡¡¡ SIGUE SIN SALIR... !!! ... ¡¡¡ SOS!!!

Publicado por Joselito (92 intervenciones) el 31/01/2002 13:00:12
Hola, de nuevo...
Gracias por vuestra ayuda, pero sigue sin salir... ¿Por qué?
A ver... Desde un botón de 1 form, llamo al segundo. En este primer boton digo lo siguiente:

:global.parametro := bloque1.campo1; CALL_FORM 'Form2',HIDE,NO_REPLACE,NO_QUERY_ONLY);

En el When-New-Form-Instance del Form2, pongo esto:

SET_BLOCK_PROPERTY('bloque2',WHERE_CLAUSE,' WHERE CDUNIFIS=:GLOBAL.PARAMETRO');
do_key('Execute_Query');

Pero nada. Me da error que no está definido Where_Clause. Pero en cambio, si le pongo en tiempo de diseño en la propiedad Where Clause la sentencia: WHERE CDUNIFIS = 'ABA1' (Aba1, es la variable Global), que es lo que intento que ejecute, al ejecutar solamente ese segundo form, sin llamarlo desde otro sitio, me lo hace bien... Me salen los datos bien...
¿Qué ocurre? ... ya no se me ocurre nada mas.. ¿Donde tengo el error? ... ¿Tengo que poner un Pre-Form, un When-New-Block-Instance o algo asi? ¿Que diferencia existe entre estos 3 triggers?...
Muchas gracias de nuevo. Espero que me ayuden. Un saludo. Jose.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¡¡¡ SIGUE SIN SALIR... !!! ... ¡¡¡ SOS!!!

Publicado por DACH (258 intervenciones) el 31/01/2002 13:08:44
El problema esta aqui : ' WHERE CDUNIFIS=:GLOBAL.PARAMETRO' debes dejar fuera de las cremillas la :GLOBAL.PARAMETRO, de lo contrario lo que estas diciendo es que cdunifis es igual a la cadena de caracteres llamada :Global.Parametrp y bno su contenido...

SET_BLOCK_PROPERTY('bloque2',WHERE_CLAUSE,' WHERE CDUNIFIS=' :GLOBAL.PARAMETRO);
do_key('Execute_Query');

Salu2.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¡¡¡ SIGUE SIN FUNCIONAR !!!!

Publicado por Joselito (92 intervenciones) el 31/01/2002 13:30:55
No la interpreta.
Me da un error al compilar. Dice que no está definido el Where_Clause, pero si le pongo Default_Where, si que lo acepta....
De todas formas, con Default Where, y lo que me has mandado, tampoco me sale....

En el When-New-Block-Instance tengo:
set_window_property('ROOT_WINDOWY',TITLE,'3');
SET_BLOCK_PROPERTY('PRODUCTOR',DEFAULT_WHERE ,' WHERE CDUNIFIS = ' || :GLOBAL.PARAMETRO);
do_key('EXECUTE_QUERY');

En el When-New-Form-Instance tengo:
set_window_property('ROOT_WINDOWY',WINDOW_STATE,MAXIMIZE);

En el When-Window-Activated tengo:

set_window_property('ROOT_WINDOWY',WINDOW_STATE,MAXIMIZE);
set_window_property('ROOT_WINDOWY',TITLE,'Mantenimiento Unidades Fisicas Productoras');

.... y en el Where Clause, nada, claro, porque se supone que lo hago por código... ¿Entonces por qué no me funciona ?

¿¿¿Hay que ponerlo en el When-New-Form-Instance o en el When-New-Block-Instance o en el Pre-Form ????
... Me pasan cosas muy raras, Dach... Gracias. A ver si me puedes ayudar un poquito... Jose.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¡¡¡ SIGUE SIN SALIR... !!! ... ¡¡¡ SOS!!!

Publicado por Alejandro César (189 intervenciones) el 31/01/2002 17:35:25
Prueba esto en el WHEN-NEW-FORM-INSTANCE:

SET_BLOCK_PROPERTY('bloque2',DEFAULT_WHERE,' WHERE CDUNIFIS= :GLOBAL.PARAMETRO');
do_key('Execute_Query');

Observa que toda la expresión del where esta entre comillas, si no te resulta prueba dejando fuera de las comillas el nombre de la variable global. Te estaba dando error poque la propiedad se llama DEFAULT_WHERE y no WHERE_CLAUSE.

Espero te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

TAMPOCO... NO ES DE ESO..

Publicado por joselito (92 intervenciones) el 31/01/2002 17:51:04
Me estoy desmoralizando un monton... Ya no se qué puede estar pasando... Lo unico que hago es llamar al segundo form de esta manera:
:GLOBAL.PARAMETRO := :UNIDFISICA.CDUNIFIS;
call_form('MantUniProductoras',NO_HIDE,DO_REPLACE,NO_QUERY_ONLY);

Se carga el segundo Form. En el When-New-Form-Instance, he puesto:

set_window_property('ROOT_WINDOWY',WINDOW_STATE,MAXIMIZE);

SET_BLOCK_PROPERTY('PRODUCTOR',DEFAULT_WHERE,' WHERE CDUNIFIS= ' || :GLOBAL.PARAMETRO);
do_key('Execute_Query');

Pero me sigue sin salir... ¿Que esta pasando aqui? ... No tengo ni idea de que hacer ya... No se me ocurre nada mas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¡¡ ESTO SI QUE ES RARO !!

Publicado por Joselito (92 intervenciones) el 31/01/2002 18:06:23
Bueno.... estoy acaparando el foro, pero es que me urge, y no sale nada... Llevo todo el puñetero dia con esto, y no soy capaz...
Acabo de probar una cosa.... (respecto al tema de debajo)... y ya me he desmoralizado del todo...
He probado a poner en tiempo de diseño, a pelo, en la propiedad Where Clause del bloque, lo siguiente:
WHERE CDUNIFIS = 'ABA1' donde ABA1 es la variable global que quiero pasar de un form a otro. Cuando ejecuto este form, sin ser llamado desde ningun sitio, ¡¡¡ SALE LO QUE YO QUIERO QUE SALGA !!! ... Lo que no sale, es cuando es llamado desde el otro puñetero form... ¿¿¿¿ POR QUE ???? ¡¡¡ PERO SI HE CREADO LA VARIABLE GLOBAL !!!... ¿ACASO NO LEE LOS TRIGGERS? ¿¿ QUE TRIGGERS SE EJECUTAN AL LLAMAR DE UN FORM A OTRO ??¿¿ QUE PASA ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¡¡ ESTO SI QUE ES RARO !!

Publicado por Alejandro César (189 intervenciones) el 31/01/2002 20:45:01
Puedes pasarme por mail las 2 formas y los scripts para crear las tablas a las que hacen referencia y simular tu ambiente de desarrollo? o al menos pásame el form 2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar