ORA-06512

user_exp
Дата: 27.11.2009 18:06:21
Народ! помогите.

Есть процедура которая генерирует скрипт и запускает,
но при выполнении, когда доходит до :

DBMS_SQL.PARSE(c, SQLsource, DBMS_SQL.native);

выдает ошибку

ORA-06540: PL/SQL: compilation error
ORA-06553: PLS-906: Compilation is not possible
ORA-06512: at "SYS.DBMS_SYS_SQL", line 826
ORA-06512: at "SYS.DBMS_SQL", line 32
ORA-06512: at line 124

Хотя то что сгинерировано в SQLsource РАБОТАЕТ!

в чем может быть ошибка?
_Alex_SMIRNOV_
Дата: 27.11.2009 18:08:38
покажите что у вас в SQLsource?
user_exp
Дата: 27.11.2009 18:22:46
_Alex_SMIRNOV_
покажите что у вас в SQLsource?


declare
p_sum number default 0;
p_sum_ret number default 0;
DATA1 ob_pkg.R_HUMAN_DATA;
DATA2 ob_pkg.r_AccountDataCalc;
begin
DATA1.id := :g_oid;
DATA1.filed1 := :g_param1;
DATA1.filed2 := :g_param2;
DATA1.filed3 := :g_param3;
DATA1.filed4 := :g_param4;
DATA1.filed5 := :g_param5;

DATA2.id := :dt_oid;
DATA2.parent := :dt_param1;
DATA2.filed1 := :dt_param2;
DATA2.filed2 := :dt_param3;
DATA2.filed3 := :dt_param4;
DATA2.filed4 := :dt_param5;
DATA2.filed5 := :dt_param6;
DATA2.filed6 := :dt_param7;

begin
p_sum := ((DATA2.filed3 * 5) / DATA1.filed2) * DATA1.filed3;
exception
when others then null;
end;

:Suma_pay := p_sum;
:Suma_ret := p_sum_ret;
end;