Parametros en Reports

marex
18 de Julio del 2002
He realizado un reporte el cual le coloque dos parametros, pero quisiera que en el momento de ejecutar el reporte me permitiera escojer una de los dos parametros, o los dos a la vez.
Cómo puedo lograr esto (que en algunos casos me valide uno de los dos parametros o los dos)?
Agradezco vuestra colaboración.

Eva
18 de Julio del 2002
En el AfterPForm

Ejemplo:

function AfterPForm return boolean is

v_sucursal varchar2(3);
v_ramo varchar2(3);
v_poliza varchar2(3);
v_certificado varchar2(3);
v_endoso varchar2(3);
v_fecha_desde varchar2(3);
v_nacionalidad varchar2(1);
v_cedula_rif varchar2(9);
v_cd_compania varchar2(3);

BEGIN


if :p_sucursal is not null then
v_sucursal:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_CD_SUCURSAL='||''''||:p_sucursal||'''');
elsif :p_sucursal is null then
v_sucursal :='';
end if;

if :p_ramo is not null then
v_ramo:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_CD_RAMOL='||''''||:p_ramo||'''');
elsif :p_ramo is null then
v_ramo :='';
end if;

if :p_poliza is not null then
v_poliza:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_NU_POLIZA='||''''||:p_poliza||'''');
elsif :p_poliza is null then
v_poliza :='';
end if;

if :p_certificado is not null then
v_certificado:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_NU_CERTIFICADO='||''''||:p_certificado||'''');
elsif :p_certificado is null then
v_certificado :='';
end if;

if :p_endoso is not null then
v_endoso:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_NU_ENDOSO='||''''||:p_endoso||'''');
elsif :p_endoso is null then
v_endoso :='';
end if;


if :p_fecha_desde is not null then
v_fecha_desde:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_FE_DESDE='||''''||:p_fecha_desde||'''');
elsif :p_fecha_desde is null then
v_fecha_desde :='';
end if;

if :p_nacionalidad is not null then
v_nacionalidad:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_CD_NACIONALIDAD='||''''||:p_nacionalidad ||'''');
elsif :p_nacionalidad is null then
v_nacionalidad :='';
end if;

if :p_cedula_rif is not null then
v_cedula_rif:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_NU_CEDULA_RIF='||''''||:p_cedula_rif||'''');
elsif :p_cedula_rif is null then
v_cedula_rif :='';
end if;

if :p_cd_compania is not null then
v_cd_compania:= ('and CART_REASEGURO_CESION_PRIMAS.CACP_CASE_CD_COMPANIA='||''''|| :p_cd_compania||'''');
elsif :p_cd_compania is null then
v_cd_compania :='';
end if;


:P_PARAM:= v_sucursal||v_ramo||v_poliza||v_certificado||v_endoso||v_fecha_desde||v_nacionalidad||v_cedula_rif||v_cd_compania;

return (TRUE);

End;