Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Packages and exceptions-correct syntax
I have an oracle forms package spec listed below
I want to declare exceptions that are global within the package and
available to all the procedures within the package. Where can I put
the code to handle the
exception so I dont have to repeat it within each procedure?
PACKAGE PREPARE IS
PROCEDURE DATA(V_BLOCK VARCHAR2);
PROCEDURE REPORT(V_BLOCK VARCHAR2);
END;
and
PACKAGE BODY PREPARE IS
No_report EXCEPTION;--available globally
PROCEDURE REPORT(V_BLOCK VARCHAR2) IS
bk_id Block;
BEGIN
bk_id := Find_Block(V_BLOCK );
IF NOT ID_NULL( bk_id) THEN
IF V_BLOCK = 'ADRS' THEN
PREPARE_ADRS;
ELSIF V_BLOCK = 'TEAM_MGMT' THEN
PREPARE_TEAM_MGMT;
ELSIF V_BLOCK = 'CASELOAD' THEN
PREPARE_CASELOAD;
ELSIF V_BLOCK = 'INACTIVE' THEN
PREPARE_INACTIVE;
ELSE
raise no_report;
END IF;
ELSE
raise no_report;
END IF;
EXCEPTION
WHEN no_report THEN
--handle the error here
END;
BEGIN
bk_id := Find_Block(V_BLOCK );
IF NOT ID_NULL( bk_id) THEN
IF V_BLOCK = 'ADRS' THEN
PREPARE_ADRS_DATA;
ELSIF V_BLOCK = 'TEAM_MGMT' THEN
PREPARE_TEAM_MGMT_DATA;
ELSIF V_BLOCK = 'CASELOAD' THEN
PREPARE_CASELOAD_DATA;
ELSIF V_BLOCK = 'INACTIVE' THEN
PREPARE_INACTIVE;
ELSE
raise no_report;
END IF;
ELSE
raise no_report;
END IF;
EXCEPTION
--I can repeat the no_report here but it there a better way?
END;--of DATA procedure
END;-- of package
Received on Thu Sep 30 2004 - 13:35:57 CDT
![]() |
![]() |