| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> c.d.o.server -> Pragma Violation
I'm baffled. What's wrong?
The function works fine when taken out of the package and tested. The problem
is when I try to compile the package body, I get this error:
PLS-00452: SUBPROGRAM 'GET_PROVIDERHASH' violates it's associated pragma
heres the code:
PACKAGE SPEC:
CREATE OR REPLACE PACKAGE JOURNALS AS
FUNCTION GET_PROVIDERHASH(IN_PROVIDER_ID IN NUMBER, IN_BATCH_IDS IN VARCHAR2)
RETURN NUMBER;
PRAGMA RESTRICT_REFERENCES (GET_PROVIDERHASH, WNDS);
END JOURNALS;
PACKAGE BODY:
CREATE OR REPLACE PACKAGE BODY JOURNALS
AS
FUNCTION GET_PROVIDERHASH(IN_PROVIDER_ID IN NUMBER DEFAULT NULL,
IN_BATCH_IDS IN VARCHAR2 DEFAULT NULL)
RETURN NUMBER
IS
-- This function returns a summation
cur INTEGER;
status INTEGER;
rows_processed INTEGER;
v_HASH NUMBER;
sSQL VARCHAR2(1000);
HASH NUMBER;
BEGIN
sSQL := 'SELECT NVL(SUM(MAINT_PROCEDURE_CPT_CD), 0) AS HASH' ;
sSQL := sSQL || ' FROM PAT_PROCEDURE PP, MAINT_PROCEDURE MP,
PAT_PROCEDURE_BALANCE PPB,';
sSQL := sSQL || ' PAT_FINANCIAL_TRANSACTION PFT,
MAINT_FINANCIAL_TRANSACTION MFT';
sSQL := sSQL || ' WHERE PP.PAT_PROCEDURE_ID = PPB.PAT_PROCEDURE_ID';
sSQL := sSQL || ' AND PP.PROVIDER_ID = ' || IN_PROVIDER_ID;
sSQL := sSQL || ' AND MFT.FINANCIAL_TRANSACTION_ID =
PFT.FINANCIAL_TRANSACTION_ID';
sSQL := sSQL || ' AND PFT.PAT_PROCEDURE_BALANCE_ID =
PPB.PAT_PROCEDURE_BALANCE_ID';
IF IN_BATCH_IDS IS NOT NULL THEN
sSQL := sSQL || ' AND PFT.BATCH_ID IN (' || IN_BATCH_IDS || ')';
END IF;
sSQL := sSQL || ' AND PP.PROCEDURE_ID = MP.PROCEDURE_ID';
cur := DBMS_SQL.OPEN_CURSOR;
DBMS_SQL.PARSE(cur, sSQL, DBMS_SQL.v7);
DBMS_SQL.DEFINE_COLUMN(cur, 1, HASH);
rows_processed := DBMS_SQL.EXECUTE(cur);
status := DBMS_SQL.FETCH_ROWS(cur);
DBMS_SQL.COLUMN_VALUE(cur, 1, HASH);
v_HASH := HASH;
RETURN v_HASH;
END GET_PROVIDERHASH;
END JOURNALS;
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
Received on Mon Mar 08 1999 - 12:17:25 CST
![]() |
![]() |