FCLT#65576 Fouten in flex-expressies heel lastig troubleshooten

svn path=/Database/trunk/; revision=49514
This commit is contained in:
Jos Groot Lipman
2021-01-21 16:31:57 +00:00
parent f52640d707
commit 5eea368030

View File

@@ -676,7 +676,16 @@
IF l_exprtype IS NOT NULL AND l_expr IS NOT NULL
THEN
l_sql_exprval := 'SELECT ' || '(' || l_expr || ')' || ' FROM DUAL';
DBMS_SQL.parse (l_cursor_exprval, l_sql_exprval, DBMS_SQL.native);
BEGIN
DBMS_SQL.parse (l_cursor_exprval, l_sql_exprval, DBMS_SQL.native);
EXCEPTION
WHEN OTHERS THEN
raise_application_error (
-20001,
'Error parsing flex-expression ' || pmodule || ' kenmerkkey:' || expr.fac_kenmwaarden_kenmerk_key
|| CHR(10) || SQLERRM
|| CHR(10) || l_sql_exprval);
END;
--DBMS_SQL.describe_columns(l_cursor_exprval, l_colcnt, l_desctab);
IF expr.fac_kenmwaarden_kenmerktype = 'N'
THEN
@@ -736,7 +745,16 @@
DBMS_SQL.bind_variable (l_cursor_exprval, l_bvar, l_kenmerkwaarde);
END CASE;
END LOOP;
l_rowsprocessed := DBMS_SQL.execute_and_fetch (l_cursor_exprval);
BEGIN
l_rowsprocessed := DBMS_SQL.execute_and_fetch (l_cursor_exprval);
EXCEPTION
WHEN OTHERS THEN
raise_application_error (
-20001,
'Error executing flex-expression ' || pmodule|| ' kkey:' || expr.fac_kenmwaarden_kenmerk_key
|| CHR(10) || SQLERRM
|| CHR(10) || l_sql_exprval);
END;
IF expr.fac_kenmwaarden_kenmerktype = 'N'
THEN
DBMS_SQL.column_value (l_cursor_exprval, 1, l_exprval_num);
@@ -802,11 +820,23 @@
END IF;
END IF;
-- hierboven zijn ##EXPR## berekende kenmerken verwerkt
-- Nu nog eventuele ##SHOW## om voorwaardelijk zichtbaar te maken
-- (JGL: kan dat eigenlijk niet samengenomen worden? Ik zie veel herhaling)
l_expr := flx.getflexshowexpr(pmodule, expr.fac_kenmwaarden_kenmerk_key, expr.fac_kenmwaarden_niveau);
IF l_expr IS NOT NULL
THEN
l_sql_exprval := 'SELECT ' || '(' || l_expr || ')' || ' FROM DUAL';
DBMS_SQL.parse (l_cursor_exprval, l_sql_exprval, DBMS_SQL.native);
BEGIN
DBMS_SQL.parse (l_cursor_exprval, l_sql_exprval, DBMS_SQL.native);
EXCEPTION
WHEN OTHERS THEN
raise_application_error (
-20001,
'Error parsing flex-expression ' || pmodule || ' kenmerkkey:' || expr.fac_kenmwaarden_kenmerk_key
|| CHR(10) || SQLERRM
|| CHR(10) || l_sql_exprval);
END;
--DBMS_SQL.describe_columns(l_cursor_exprval, l_colcnt, l_desctab);
IF expr.fac_kenmwaarden_kenmerktype = 'N'
THEN
@@ -866,7 +896,16 @@
DBMS_SQL.bind_variable (l_cursor_exprval, l_bvar, l_kenmerkwaarde);
END CASE;
END LOOP;
l_rowsprocessed := DBMS_SQL.execute_and_fetch (l_cursor_exprval);
BEGIN
l_rowsprocessed := DBMS_SQL.execute_and_fetch (l_cursor_exprval);
EXCEPTION
WHEN OTHERS THEN
raise_application_error (
-20001,
'Error executing flex-expression ' || pmodule|| ' kkey:' || expr.fac_kenmwaarden_kenmerk_key
|| CHR(10) || SQLERRM
|| CHR(10) || l_sql_exprval);
END;
IF expr.fac_kenmwaarden_kenmerktype = 'N'
THEN
DBMS_SQL.column_value (l_cursor_exprval, 1, l_exprval_num);