PARAMETROS DESDE FORM O REPORT

AUGUSTO no Importa
27 de Mayo del 2010
TENGO UN CODIGO NUMERICO DE UNA PERSONA EN UN TEXT DEL FORM Y QUIERO ABRIR UN REPORTE QUE ME MUESTRE LOS DATOS DE ESA PERSONA TODO POR PARAMETRO.
SIEMPRE TRABAJANDO DESDE EL FORMULARIO. EL REPORTE ANDA, NECESITO "SABER COMO PASAR EL PARAMETRO". GRACIAS

Carlos A. Romero m.
14 de Noviembre del 2010
Hola Tocayo,
para pasar parametros entre forms y report has lo sigioente:

PROCEDURE forma_rep(w_reporte in VARCHAR2) is
lista_p PARAMLIST;
BEGIN
-- w_reporte := 'mireporte';
lista_p := get_parameter_list('l_parametros');
IF NOT ID_NULL(lista_p) THEN
destroy_parameter_list(lista_p);
END IF;
lista_p := create_parameter_list('l_parametros');
-- add_parameter(lista_p,'destype',TEXT_PARAMETER,'SCREEN');
-- add_parameter(lista_p,'desname',TEXT_PARAMETER,P_nomdest);
add_parameter(lista_p,'desformat',TEXT_PARAMETER,w_reporte);
add_parameter(lista_p,'paramform',TEXT_PARAMETER,'NO');
-- add_parameter(lista_p,'NONBLOCKSQL',TEXT_PARAMETER,'NO');
-- add_parameter(lista_p,'orientation',TEXT_PARAMETER,'PORTRAIT'); -- PORTRAIT , LANDSCAPE
-- add_parameter(lista_p,'pagesize',TEXT_PARAMETER,'11');
add_parameter(lista_p,'p_n_persona_en_tu_reporte',TEXT_PARAMETER,:bloque.numpersona); --
RUN_PRODUCT(REPORTS,w_reporte
,SYNCHRONOUS -- ASYNCHRONOUS o SYNCHRONOUS
,RUNTIME -- RUNTIME o BATCH
,FILESYSTEM
,lista_p
,NULL);
IF NOT FORM_SUCCESS THEN
MESSAGE('Atención: El reporte no terminó satisfactoriamente');
END IF;
END;

espero estas lineas te sirvan, saludos.