The following lines contain the word 'select', 'insert', 'update' or 'delete':
select_statement VARCHAR2(3000);
select_clause VARCHAR2(3000);
select_clause :=
' SELECT SUM(entered_dr),
SUM(entered_cr),
SUM(accounted_dr),
SUM(accounted_cr),
COUNT(DISTINCT currency_code) '||
' FROM '||p_view_name;
select_statement := select_clause||' '||where_clause;
dbms_sql.parse(c,select_statement,dbms_sql.v7);
SELECT v.set_of_books_id, v.sob_type, v.accounting_method,
v.base_currency_code, v.name, sob.short_name,
ap.displayed_field
FROM ap_sob_info_v v, gl_sets_of_books sob, ap_lookup_codes ap
WHERE v.set_of_books_id <> -1
AND sob.set_of_books_id = v.set_of_books_id
AND v.accounting_method = ap.lookup_code
AND ap.lookup_type = 'ACCOUNTING BASIS METHOD';
SELECT sob1.set_of_books_id set_of_books_id,
'Primary' sob_type,
sp1.accounting_method_option accounting_method,
sp1.base_currency_code base_currency_code,
sob1.name name ,
sob1.short_name short_name,
ap1.displayed_field displayed_field
FROM gl_sets_of_books sob1, ap_system_parameters sp1,
ap_lookup_codes ap1
WHERE sob1.set_of_books_id <> -1
AND ap1.lookup_code = sp1.accounting_method_option
AND ap1.lookup_type = 'ACCOUNTING BASIS METHOD'
AND sob1.set_of_books_id = sp1.set_of_books_id
UNION
SELECT sob2.set_of_books_id set_of_books_id,
'Secondary' sob_type,
sp2.secondary_accounting_method accounting_method,
sp2.base_currency_code base_currency_code,
sob2.name name ,
sob2.short_name short_name,
ap2.displayed_field displayed_field
FROM gl_sets_of_books sob2, ap_system_parameters sp2,
ap_lookup_codes ap2
WHERE sob2.set_of_books_id <> -1
AND ap2.lookup_code = sp2.secondary_accounting_method
AND ap2.lookup_type = 'ACCOUNTING BASIS METHOD'
AND sob2.set_of_books_id = sp2.secondary_set_of_books_id;