DBA Data[Home] [Help]
Skip to content

PROCEDURE: SYS.APS_VALIDATE

Source


1 PROCEDURE aps_validate IS
2    AWok BOOLEAN;
3    OBJok BOOLEAN;
4    x NUMBER; -- dummy output spot
5    junklob CLOB;
6 BEGIN
7 
8    -- AWs are valid if we can read an option
9    BEGIN
10      junklob := dbms_aw.INTERP('show SESSCACHE');
11      AWok := TRUE;
12    EXCEPTION
13      WHEN OTHERS THEN
14        AWok := FALSE;
15    END;
16 
17    -- supporting object things
18    BEGIN
19      SELECT 0 INTO x FROM DBA_OBJECTS
20        WHERE STATUS = 'INVALID' AND rownum <=1 AND
21          OWNER='SYS' AND OBJECT_NAME IN
22         ('OLAP_TABLE', 'OLAPIMPL_T', 'OLAP_SRF_T', 'OLAP_NUMBER_SRF',
23          'OLAP_EXPRESSION', 'OLAP_TEXT_SRF', 'OLAP_EXPRESSION_TEXT',
24          'OLAP_BOOL_SRF', 'OLAP_EXPRESSION_BOOL');
25      -- at least one object is invalid so component is invalid
26      OBJok := FALSE;
27    EXCEPTION
28    WHEN NO_DATA_FOUND THEN
29      -- no invalid objects were found so component is valid
30      OBJok := TRUE;
31    END;
32 
33    IF AWok AND OBJok THEN
34      dbms_registry.valid('APS');
35    ELSE
36      dbms_registry.invalid('APS');
37    END IF;
38   END;