Oracle - SOY NOVATA

 
Vista:

SOY NOVATA

Publicado por Valle (24 intervenciones) el 24/03/2003 19:46:15
Estoy aprendiendo a utilizar el Form Builder de Oracle y el caso es el siguiente:

Tengo un elemento de lista L_CLIENTE y lo relleno al ejecutarse el disparador WHEN-WINDOW-ACTIVATED con el código siguiente;

DECLARE
CURSOR c_cliente IS SELECT x_cliente, dni FROM pru_clientes;
sel VARCHAR2 (30);
BEGIN
sel := :L_Cliente;
CLEAR_LIST ('L_Cliente');
CLEAR_LIST ('L_Producto');
ABORT_QUERY;
MESSAGE (sel, 1);
--Iniciado de listas:
FOR v_reg IN c_cliente LOOP
ADD_LIST_ELEMENT ('L_Cliente', v_reg.x_cliente, v_reg.dni, v_reg.dni);
END LOOP;

END;

Dá el error de que no puede borrar la lista cuando se minimiza la ventana y se vuelve a maximizar (activar)
¿PORQUE??????????????????????

Gracias
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

El item es de la Base de Datos

Publicado por Byron (300 intervenciones) el 24/03/2003 20:55:45
Saludos....

Si el elemento es de la Base de datos no te dejará hacer clear_list porque la forma detecta que el registro actual ha sido cambiado (changed) o consultado (queried), ver informacion del error FRM-41331.

Si tu haces una consulta de varios registros y dichos registros cargan datos en el list_item no se puede hacer clear_list porque implicaria limpiar o borrar el campo (asignarle null a cada campo de ese item que se haya consultado) . Te recomiendo que hagas clear_list cuando haya la seguridad que no hayan registros cambiados ni consultados. Podria ser en el Key-clrfrm.

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