Oracle Apex 5.1 - PL/SQL 动态操作错误
Oracle Apex 5.1 - PL/SQL in Dynamic Action Error
我有一个 plsql 代码,当我 运行 从按钮单击的动态操作中,给我这个错误“Ajax 调用返回服务器错误 ORA-06502: PL/SQL:执行 PL/SQL 代码的数字或值错误。",但如果在页面处理 -> 处理下创建相同的代码,运行s 没有任何错误。无法弄清楚是什么导致了动态操作中的错误。这是代码
DECLARE
I_VCNAME VARCHAR2(200);
I_LPARAMS PK_JRXML2PDF_REPGEN.TPARAMLIST;
I_VCDIR VARCHAR2(200);
I_VCFILENAME VARCHAR2(200);
bl BLOB;
BEGIN
I_VCNAME:='Fundraiser_Stats';
I_VCDIR := 'FUNDAMENTAL_FTP';
I_LPARAMS(1).vcName:='date_from';
I_LPARAMS(1).vcValue:=:R1_FROM_DATE;
I_LPARAMS(2).vcName:='date_to';
I_LPARAMS(2).vcValue:=:R1_TO_DATE;
I_LPARAMS(3).vcName:='fundraiser';
FOR fundraiser_name IN (SELECT DISTINCT B.FUNDRAISER fundraiser FROM WAYSACT_SRC_VW A, PLEDGE_EXT B WHERE A.PLEDGE_ID = B.PLEDGE_ID
AND (NVL(:R1_FROM_DATE,'0') = '0' OR NVL(:R1_TO_DATE,'0') = '0' OR A.PLEDGE_DATE BETWEEN :R1_FROM_DATE AND :R1_TO_DATE))
LOOP
I_LPARAMS(3).vcValue:= fundraiser_name.fundraiser;
I_VCFILENAME := fundraiser_name.fundraiser||'-'||to_char(sysdate,'dd-Mon-yyyy')||'.pdf';
PK_JRXML2PDF_REPGEN.PR_RUN_TO_FILE(I_VCNAME => I_VCNAME, I_LPARAMS => I_LPARAMS, I_VCDIR => I_VCDIR,I_VCFILENAME => I_VCFILENAME);
END LOOP fundraiser_name;
APEX_APPLICATION.STOP_APEX_ENGINE;
END;
ORA-06502 的原因:PL/SQL:数字或值错误是:-
1-你向后端存储过程传递了空值,检查日志是否传递了值。
2- 当您发送无效的数据类型时。
我有一个 plsql 代码,当我 运行 从按钮单击的动态操作中,给我这个错误“Ajax 调用返回服务器错误 ORA-06502: PL/SQL:执行 PL/SQL 代码的数字或值错误。",但如果在页面处理 -> 处理下创建相同的代码,运行s 没有任何错误。无法弄清楚是什么导致了动态操作中的错误。这是代码
DECLARE
I_VCNAME VARCHAR2(200);
I_LPARAMS PK_JRXML2PDF_REPGEN.TPARAMLIST;
I_VCDIR VARCHAR2(200);
I_VCFILENAME VARCHAR2(200);
bl BLOB;
BEGIN
I_VCNAME:='Fundraiser_Stats';
I_VCDIR := 'FUNDAMENTAL_FTP';
I_LPARAMS(1).vcName:='date_from';
I_LPARAMS(1).vcValue:=:R1_FROM_DATE;
I_LPARAMS(2).vcName:='date_to';
I_LPARAMS(2).vcValue:=:R1_TO_DATE;
I_LPARAMS(3).vcName:='fundraiser';
FOR fundraiser_name IN (SELECT DISTINCT B.FUNDRAISER fundraiser FROM WAYSACT_SRC_VW A, PLEDGE_EXT B WHERE A.PLEDGE_ID = B.PLEDGE_ID
AND (NVL(:R1_FROM_DATE,'0') = '0' OR NVL(:R1_TO_DATE,'0') = '0' OR A.PLEDGE_DATE BETWEEN :R1_FROM_DATE AND :R1_TO_DATE))
LOOP
I_LPARAMS(3).vcValue:= fundraiser_name.fundraiser;
I_VCFILENAME := fundraiser_name.fundraiser||'-'||to_char(sysdate,'dd-Mon-yyyy')||'.pdf';
PK_JRXML2PDF_REPGEN.PR_RUN_TO_FILE(I_VCNAME => I_VCNAME, I_LPARAMS => I_LPARAMS, I_VCDIR => I_VCDIR,I_VCFILENAME => I_VCFILENAME);
END LOOP fundraiser_name;
APEX_APPLICATION.STOP_APEX_ENGINE;
END;
ORA-06502 的原因:PL/SQL:数字或值错误是:-
1-你向后端存储过程传递了空值,检查日志是否传递了值。
2- 当您发送无效的数据类型时。