DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_CSH_ALLCT_RULES_PVT

Source


1 PACKAGE BODY OKL_CSH_ALLCT_RULES_Pvt AS
2 /* $Header: OKLRCSAB.pls 120.2 2006/07/11 09:44:26 dkagrawa noship $ */
3 
4 
5 ---------------------------------------------------------------------------
6 -- PROCEDURE  delete_comb_rule
7 ---------------------------------------------------------------------------
8 
9 PROCEDURE delete_row (p_api_version  IN NUMBER
10        ,p_init_msg_list   IN VARCHAR2 DEFAULT Okc_Api.G_FALSE
11        ,x_return_status   OUT NOCOPY VARCHAR2
12        ,x_msg_count       OUT NOCOPY NUMBER
13        ,x_msg_data        OUT NOCOPY VARCHAR2
14        ,p_cahv_rec        IN cahv_rec_type
15                         ) IS
16 
17 ---------------------------
18 -- DECLARE Local Variables
19 ---------------------------
20 
21     l_api_version        NUMBER          := 1.0;
22     l_init_msg_list      VARCHAR2(1)     := Okc_Api.g_false;
23 
24     l_return_status      VARCHAR2(1);
25     l_msg_count          NUMBER;
26     l_msg_data           VARCHAR2(2000);
27     i                        NUMBER;
28     l_allct_name         OKL_CSH_ALLCT_SRCHS.NAME%TYPE;
29     l_allct_id           OKL_CSH_ALLCT_SRCHS.ID%TYPE;
30     l_del_ext            EXCEPTION;
31 
32 ------------------------------
33 -- DECLARE Record/Table Types
34 ------------------------------
35 
36     --l_cahv_rec     cahv_rec_type;
37     l_cahv_rec     cahv_rec_type   := p_cahv_rec;
38     l_cahv_tbl     cahv_tbl_type;
39 
40     l_sstv_rec     Okl_Sst_Pvt.sstv_rec_type;
41     l_sstv_tbl     Okl_Sst_Pvt.sstv_tbl_type;
42 
43 -------------------
44 -- DECLARE Cursors
45 -------------------
46 --  Get the ID given the name of the rule
47 --  CURSOR c_csh_allct_srchs_id (cp_rule_name IN VARCHAR2) IS
48 --  SELECT cas.ID
49 --  FROM OKL_CSH_ALLCT_SRCHS_V cas
50 --  WHERE cas.NAME = cp_rule_name;
51 
52 --  Get the ID of the combination given the CAH_ID
53     CURSOR c_srch_strm_typs_id (cp_rule_id IN NUMBER) IS
54     SELECT sst.ID
55     FROM OKL_SRCH_STRM_TYPS_V sst
56     WHERE sst.CAH_ID = cp_rule_id;
57 
58     c_srch_strm_typs_id_rec c_srch_strm_typs_id%ROWTYPE;
59 
60     BEGIN
61 
62     l_allct_id    :=  l_cahv_rec.ID;
63     --OPEN c_csh_allct_srchs_id (l_allct_name);
64 
65     --FETCH c_csh_allct_srchs_id INTO l_allct_id;
66     --EXIT WHEN c_csh_allct_srchs_id%NOTFOUND
67     --OR p_allct_name IS NULL;
68 
69     -- dbms_output.put_line('Rule Id for name ' || l_allct_name || ' is '  || l_allct_id);
70 
71 
72     i  := 1;
73 
74     OPEN c_srch_strm_typs_id (l_allct_id);
75     LOOP
76 
77     FETCH c_srch_strm_typs_id INTO c_srch_strm_typs_id_rec;
78     EXIT WHEN c_srch_strm_typs_id%NOTFOUND;
79 
80     l_sstv_tbl(i).ID          := c_srch_strm_typs_id_rec.ID;
81 
82     i := i + 1;
83 
84     END LOOP;
85 
86 
87     Okl_Srch_Strm_Typs_Pub.delete_srch_strm_typs(l_api_version
88                                                     ,l_init_msg_list
89                                                     ,l_return_status
90                                                     ,l_msg_count
91                                                     ,l_msg_data
92                                                     ,l_sstv_tbl
93                                                     );
94 
95     -- dbms_output.put_line ('combinations deleted, About to delete the rule');
96     -- dbms_output.put_line('l_return_status for comb is: ' || l_return_status);
97     -- dbms_output.put_line('l_msg_data for comb is: '      || l_msg_data);
98 
99 
100 
101     l_cahv_rec.ID            := l_allct_id;
102 
103 
104     Okl_Csh_Allct_Srchs_Pub.delete_csh_allct_srchs(l_api_version
105                                                     ,l_init_msg_list
106                                                     ,l_return_status
107                                                     ,l_msg_count
108                                                     ,l_msg_data
109                                                     ,l_cahv_rec
110                                                     );
111 
112 x_return_status := l_return_status ;
113 x_msg_count := l_msg_count ;
114 x_msg_data := l_msg_data ;
115 
116 -- dbms_output.put_line('l_return_status for rule is: ' || l_return_status);
117 -- dbms_output.put_line('l_msg_data fo rule is: '      || l_msg_data);
118 -- dbms_output.put_line ('rule deleted');
119 
120 
121     IF l_return_status = Okl_Api.G_RET_STS_ERROR THEN
122     RAISE L_DEL_EXT;
123     ELSIF l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR THEN
124     RAISE L_DEL_EXT;
125     END IF;
126 
127     EXCEPTION
128 
129     WHEN L_DEL_EXT THEN
130     x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
131     x_msg_count := l_msg_count ;
132     l_msg_data := 'Problems with External Delete';
133     x_msg_data := l_msg_data ;
134 
135 
136     END delete_row;
137 
138 
139     END OKL_CSH_ALLCT_RULES_Pvt;
140