[Home] [Help]
PACKAGE BODY: APPS.OKC_K_RENEW_ASMBLR_PVT
Source
1 PACKAGE BODY OKC_K_RENEW_ASMBLR_PVT AS
2 /* $Header: OKCRKRAB.pls 120.0 2005/05/26 09:53:21 appldev noship $ */
3
4 l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5
6 PROCEDURE acn_assemble(
7 p_api_version IN NUMBER,
8 p_init_msg_list IN VARCHAR2 ,
9 x_return_status OUT NOCOPY VARCHAR2,
10 x_msg_count OUT NOCOPY NUMBER,
11 x_msg_data OUT NOCOPY VARCHAR2,
12
13 p_k_class IN VARCHAR2,
14 p_k_nbr_mod IN VARCHAR2,
15 p_k_number IN VARCHAR2,
16 p_k_subclass IN VARCHAR2,
17 p_k_status_code IN VARCHAR2,
18 p_estimated_amount IN NUMBER,
19 p_new_k_end_date IN DATE,
20 p_new_k_id IN NUMBER,
21 p_new_k_start_date IN DATE,
22 p_original_k_end_date IN DATE,
23 p_original_kid IN NUMBER,
24 p_original_k_start_date IN DATE ) IS
25
26 l_api_name CONSTANT VARCHAR2(30) := 'acn_assemble';
27 l_api_version CONSTANT NUMBER := 1.0;
28 i NUMBER := 1;
29 l_corrid_rec okc_aq_pvt.corrid_rec_typ;
30 l_msg_tbl okc_aq_pvt.msg_tab_typ;
31 l_msg_count number;
32 l_msg_data varchar2(1000);
33 l_return_status varchar2(1);
34
35 CURSOR cur_corr_csr IS
36 SELECT aae.element_name
37 ,aae.format_mask format_mask
38 FROM okc_actions_b acn,okc_action_attributes_b aae
39 WHERE acn.id = aae.acn_id
40 AND acn.correlation = 'KRENEW' ;
41
42 BEGIN
43
44 l_return_status := OKC_API.START_ACTIVITY
45 (l_api_name
46 ,p_init_msg_list
47 ,'_PROCESS'
48 ,x_return_status);
49
50 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
51 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
52 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
53 RAISE OKC_API.G_EXCEPTION_ERROR;
54 END IF;
55
56 l_corrid_rec.corrid := 'KRENEW' ;
57
58 -- check if action is enabled
59 IF OKC_K_SIGN_ASMBLR_PVT.isActionEnabled(l_corrid_rec.corrid) = 'Y' THEN
60
61
62 l_msg_tbl := okc_aq_pvt.msg_tab_typ();
63 FOR corr_rec IN cur_corr_csr
64 LOOP
65
66 IF corr_rec.element_name = 'K_CLASS' THEN
67 l_msg_tbl.extend;
68 l_msg_tbl(i).element_name := corr_rec.element_name;
69 l_msg_tbl(i).element_value := P_k_class;
70 ELSIF corr_rec.element_name = 'K_NBR_MOD' THEN
71 l_msg_tbl.extend;
72 l_msg_tbl(i).element_name := corr_rec.element_name;
73 l_msg_tbl(i).element_value := P_k_nbr_mod;
74 ELSIF corr_rec.element_name = 'K_NUMBER' THEN
75 l_msg_tbl.extend;
76 l_msg_tbl(i).element_name := corr_rec.element_name;
77 l_msg_tbl(i).element_value := P_k_number;
78 ELSIF corr_rec.element_name = 'K_SUBCLASS' THEN
79 l_msg_tbl.extend;
80 l_msg_tbl(i).element_name := corr_rec.element_name;
81 l_msg_tbl(i).element_value := P_k_subclass;
82 ELSIF corr_rec.element_name = 'K_STATUS_CODE' THEN
83 l_msg_tbl.extend;
84 l_msg_tbl(i).element_name := corr_rec.element_name;
85 l_msg_tbl(i).element_value := P_k_status_code;
86 ELSIF corr_rec.element_name = 'ESTIMATED_AMOUNT' THEN
87 l_msg_tbl.extend;
88 l_msg_tbl(i).element_name := corr_rec.element_name;
89 l_msg_tbl(i).element_value := P_estimated_amount;
90 ELSIF corr_rec.element_name = 'NEW_K_END_DATE' THEN
91 l_msg_tbl.extend;
92 l_msg_tbl(i).element_name := corr_rec.element_name;
93 --l_msg_tbl(i).element_value := P_new_k_end_date;
94 IF corr_rec.format_mask IS NOT NULL THEN
95 l_msg_tbl(i).element_value := to_char(p_new_k_end_date,
96 corr_rec.format_mask);
97 ELSE
98 l_msg_tbl(i).element_value := to_char(p_new_k_end_date,'DD-MON-YY');
99 END IF;
100 ELSIF corr_rec.element_name = 'NEW_K_ID' THEN
101 l_msg_tbl.extend;
102 l_msg_tbl(i).element_name := corr_rec.element_name;
103 l_msg_tbl(i).element_value := P_new_k_id;
104 ELSIF corr_rec.element_name = 'NEW_K_START_DATE' THEN
105 l_msg_tbl.extend;
106 l_msg_tbl(i).element_name := corr_rec.element_name;
107 --l_msg_tbl(i).element_value := P_new_k_start_date;
108 IF corr_rec.format_mask IS NOT NULL THEN
109 l_msg_tbl(i).element_value := to_char(p_new_k_start_date,
110 corr_rec.format_mask);
111 ELSE
112 l_msg_tbl(i).element_value := to_char(p_new_k_start_date,'DD-MON-YY');
113 END IF;
114 ELSIF corr_rec.element_name = 'ORIGINAL_K_END_DATE' THEN
115 l_msg_tbl.extend;
116 l_msg_tbl(i).element_name := corr_rec.element_name;
117 --l_msg_tbl(i).element_value := P_original_k_end_date;
118 IF corr_rec.format_mask IS NOT NULL THEN
119 l_msg_tbl(i).element_value := to_char(p_original_k_end_date,
120 corr_rec.format_mask);
121 ELSE
122 l_msg_tbl(i).element_value := to_char(p_original_k_end_date,'DD-MON-YY');
123 END IF;
124 -- san this change done becuase of bug1352109.
125 --The wrong attribute ORIGINAL_KID was defined in 'KRENEW" action whereas the action assembler was
126 --expecting K_ID
127 --ELSIF corr_rec.element_name = 'ORIGINAL_KID' THEN
128 ELSIF corr_rec.element_name = 'K_ID' THEN
129 l_msg_tbl.extend;
130 l_msg_tbl(i).element_name := corr_rec.element_name;
131 l_msg_tbl(i).element_value := P_original_kid;
132 ELSIF corr_rec.element_name = 'ORIGINAL_K_START_DATE' THEN
133 l_msg_tbl.extend;
134 l_msg_tbl(i).element_name := corr_rec.element_name;
135 --l_msg_tbl(i).element_value := P_original_k_start_date;
136 IF corr_rec.format_mask IS NOT NULL THEN
137 l_msg_tbl(i).element_value := to_char(p_original_k_start_date,
138 corr_rec.format_mask);
139 ELSE
140 l_msg_tbl(i).element_value := to_char(p_original_k_start_date,'DD-MON-YY');
141 END IF;
142 END IF;
143
144 i := i + 1;
145 END LOOP;
146
147
148
149
150 OKC_AQ_PUB.send_message(p_api_version =>1.0
151 ,x_msg_count => l_msg_count
152 ,x_msg_data => l_msg_data
153 ,x_return_status => l_return_status
154 ,p_corrid_rec => l_corrid_rec
155 ,p_msg_tab => l_msg_tbl
156 ,p_queue_name => okc_aq_pvt.g_event_queue_name);
157
158 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
159 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
160 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
161 RAISE OKC_API.G_EXCEPTION_ERROR;
162 END IF;
163 END IF; -- OKC_K_SIGN_ASMBLR_PVT.isActionEnabled
164 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
165
166 EXCEPTION
167 WHEN OKC_API.G_EXCEPTION_ERROR THEN
168 x_return_status := OKC_API.HANDLE_EXCEPTIONS
169 (l_api_name,
170 G_PKG_NAME,
171 'OKC_API.G_RET_STS_ERROR',
172 x_msg_count,
173 x_msg_data,
174 '_PROCESS');
175 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
176 x_return_status := OKC_API.HANDLE_EXCEPTIONS
177 (l_api_name,
178 G_PKG_NAME,
179 'OKC_API.G_RET_STS_UNEXP_ERROR',
180 x_msg_count,
181 x_msg_data,
182 '_PROCESS');
183 WHEN OTHERS THEN
184 x_return_status := OKC_API.HANDLE_EXCEPTIONS
185 (l_api_name,
186 G_PKG_NAME,
187 'OTHERS',
188 x_msg_count,
189 x_msg_data,
190 '_PROCESS');
191 END acn_assemble;
192
193 END OKC_K_RENEW_ASMBLR_PVT;