When debugging a procedure with a Boolean in the declaration, the process immediately fails.
Declaration from package spec:
PROCEDURE dynInitialize
(ztxSQL IN VARCHAR2, -- SQL string to run
ztxRecordSpec IN VARCHAR2, -- Key to dyn_extract_detail table
ztxStyle IN VARCHAR2, -- FIXED / CSV
ztxSeparator IN VARCHAR2, -- for CSV, to separate fields
ztxQuoteCharacter IN VARCHAR2, -- for CSV, to surround alpha fields
zynHeadings IN BOOLEAN)
When running we get the following error in Script Output
ZYNHEADINGS PL/SQL BOOLEAN;
*
ERROR at line 7: ORA-06550: line 7, column 17:
PLS-00103: Encountered the symbol "/" when expecting one of the following:
:= . ( @ % ; not null range default character
Code from View PL/SQL screen:
-- runner for MYSCHEMA.DYN_EXTRACT
SET SERVEROUTPUT ON
DECLARE
ZTXSQL VARCHAR2(200);
ZTXRECORDSPEC VARCHAR2(200);
ZTXSTYLE VARCHAR2(200);
ZTXSEPARATOR VARCHAR2(200);
ZTXQUOTECHARACTER VARCHAR2(200);
ZYNHEADINGS PL/SQL BOOLEAN;
BEGIN
ZTXSQL := NULL;
ZTXRECORDSPEC := NULL;
ZTXSTYLE := NULL;
ZTXSEPARATOR := NULL;
ZTXQUOTECHARACTER := NULL;
ZYNHEADINGS := NULL;
EDOADMIN.DYN_EXTRACT.DYNINITIALIZE(
ZTXSQL => ZTXSQL,
ZTXRECORDSPEC => ZTXRECORDSPEC,
ZTXSTYLE => ZTXSTYLE,
ZTXSEPARATOR => ZTXSEPARATOR,
ZTXQUOTECHARACTER => ZTXQUOTECHARACTER,
ZYNHEADINGS => ZYNHEADINGS);
-- Rollback;
end;
We have to edit the PL/SQL using view PL/SQL to remove the errant characters PL/SQL from before the type Boolean.
We do not have that issue when we debug in Legacy SQL Developer as it doesn't add the “PL/SQL”