1: PACKAGE BODY qa_plans_api AS
2: /* $Header: qltplanb.plb 120.1 2006/01/31 04:51:08 saugupta noship $ */
3:
4: --
5: -- Type definition. These are tables used to create internal
6: -- cache to improve performance. Any records retrieved will be
7: -- temporarily saved into these tables.
8: --
9:
10: TYPE qa_plans_table IS TABLE OF qa_plans%ROWTYPE INDEX BY BINARY_INTEGER;
11:
12: x_qa_plans_array qa_plans_table;
13:
14: FUNCTION exists_qa_plans(plan_id IN NUMBER)
8: --
9:
10: TYPE qa_plans_table IS TABLE OF qa_plans%ROWTYPE INDEX BY BINARY_INTEGER;
11:
12: x_qa_plans_array qa_plans_table;
13:
14: FUNCTION exists_qa_plans(plan_id IN NUMBER)
15: RETURN BOOLEAN IS
16:
10: TYPE qa_plans_table IS TABLE OF qa_plans%ROWTYPE INDEX BY BINARY_INTEGER;
11:
12: x_qa_plans_array qa_plans_table;
13:
14: FUNCTION exists_qa_plans(plan_id IN NUMBER)
15: RETURN BOOLEAN IS
16:
17: BEGIN
18:
15: RETURN BOOLEAN IS
16:
17: BEGIN
18:
19: RETURN x_qa_plans_array.EXISTS(plan_id);
20:
21: END exists_qa_plans;
22:
23:
17: BEGIN
18:
19: RETURN x_qa_plans_array.EXISTS(plan_id);
20:
21: END exists_qa_plans;
22:
23:
24: PROCEDURE fetch_qa_plans (plan_id IN NUMBER) IS
25:
20:
21: END exists_qa_plans;
22:
23:
24: PROCEDURE fetch_qa_plans (plan_id IN NUMBER) IS
25:
26: CURSOR C1 (p_id NUMBER) IS
27: SELECT *
28: FROM qa_plans
24: PROCEDURE fetch_qa_plans (plan_id IN NUMBER) IS
25:
26: CURSOR C1 (p_id NUMBER) IS
27: SELECT *
28: FROM qa_plans
29: WHERE plan_id = p_id;
30:
31: BEGIN
32:
29: WHERE plan_id = p_id;
30:
31: BEGIN
32:
33: IF NOT exists_qa_plans(plan_id) THEN
34: OPEN C1(plan_id);
35: FETCH C1 INTO x_qa_plans_array(plan_id);
36: CLOSE C1;
37: END IF;
31: BEGIN
32:
33: IF NOT exists_qa_plans(plan_id) THEN
34: OPEN C1(plan_id);
35: FETCH C1 INTO x_qa_plans_array(plan_id);
36: CLOSE C1;
37: END IF;
38:
39: END fetch_qa_plans;
35: FETCH C1 INTO x_qa_plans_array(plan_id);
36: CLOSE C1;
37: END IF;
38:
39: END fetch_qa_plans;
40:
41:
42: FUNCTION org_id(plan_id IN NUMBER)
43: RETURN NUMBER IS
43: RETURN NUMBER IS
44:
45: BEGIN
46:
47: fetch_qa_plans(plan_id);
48: IF NOT exists_qa_plans(plan_id) THEN
49: RETURN NULL;
50: END IF;
51: RETURN x_qa_plans_array(plan_id).organization_id;
44:
45: BEGIN
46:
47: fetch_qa_plans(plan_id);
48: IF NOT exists_qa_plans(plan_id) THEN
49: RETURN NULL;
50: END IF;
51: RETURN x_qa_plans_array(plan_id).organization_id;
52:
47: fetch_qa_plans(plan_id);
48: IF NOT exists_qa_plans(plan_id) THEN
49: RETURN NULL;
50: END IF;
51: RETURN x_qa_plans_array(plan_id).organization_id;
52:
53: END org_id;
54:
55:
57: RETURN VARCHAR2 IS
58:
59: BEGIN
60:
61: fetch_qa_plans(plan_id);
62: IF NOT exists_qa_plans(plan_id) THEN
63: RETURN NULL;
64: END IF;
65: RETURN x_qa_plans_array(plan_id).name;
58:
59: BEGIN
60:
61: fetch_qa_plans(plan_id);
62: IF NOT exists_qa_plans(plan_id) THEN
63: RETURN NULL;
64: END IF;
65: RETURN x_qa_plans_array(plan_id).name;
66:
61: fetch_qa_plans(plan_id);
62: IF NOT exists_qa_plans(plan_id) THEN
63: RETURN NULL;
64: END IF;
65: RETURN x_qa_plans_array(plan_id).name;
66:
67: END plan_name;
68:
69:
71: RETURN BOOLEAN IS
72:
73: BEGIN
74:
75: fetch_qa_plans(plan_id);
76: IF exists_qa_plans(plan_id) THEN
77: RETURN TRUE;
78: ELSE
79: RETURN FALSE;
72:
73: BEGIN
74:
75: fetch_qa_plans(plan_id);
76: IF exists_qa_plans(plan_id) THEN
77: RETURN TRUE;
78: ELSE
79: RETURN FALSE;
80: END IF;
86: RETURN NUMBER IS
87:
88: CURSOR c IS
89: SELECT plan_id
90: FROM qa_plans
91: WHERE name = plan_name;
92:
93: l_plan_id NUMBER;
94:
156:
157: END get_plan_type;
158:
159:
160: END qa_plans_api;