[Home] [Help]
PACKAGE BODY: APPS.OKC_KL_EXTD_ASMBLR_PVT
Source
1 PACKAGE BODY OKC_KL_EXTD_ASMBLR_PVT AS
2 /* $Header: OKCRKLEB.pls 120.0 2005/05/25 18:34:03 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_id IN NUMBER,
15 p_kl_end_date IN DATE,
16 p_kl_id IN NUMBER,
17 p_k_number IN VARCHAR2,
18 p_k_nbr_mod IN VARCHAR2,
19 p_k_subclass IN VARCHAR2,
20 p_kl_status_code IN VARCHAR2,
21 p_estimated_amount IN NUMBER,
22 p_new_kl_end_date IN DATE ) IS
23
24 l_api_name CONSTANT VARCHAR2(30) := 'acn_assemble';
25 l_api_version CONSTANT NUMBER := 1.0;
26 i NUMBER := 1;
27 l_corrid_rec okc_aq_pvt.corrid_rec_typ;
28 l_msg_tbl okc_aq_pvt.msg_tab_typ;
29 l_msg_count number;
30 l_msg_data varchar2(1000);
31 l_return_status varchar2(1);
32
33 CURSOR cur_corr_csr IS
34 SELECT aae.element_name
35 ,aae.format_mask format_mask
36 FROM okc_actions_b acn,okc_action_attributes_b aae
37 WHERE acn.id = aae.acn_id
38 AND acn.correlation = 'KLEXTEND' ;
39
40 BEGIN
41
42 l_return_status := OKC_API.START_ACTIVITY
43 (l_api_name
44 ,p_init_msg_list
45 ,'_PROCESS'
46 ,x_return_status);
47
48 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
49 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
50 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
51 RAISE OKC_API.G_EXCEPTION_ERROR;
52 END IF;
53
54 l_corrid_rec.corrid := 'KLEXTEND' ;
55
56 -- check if action is enabled
57 IF OKC_K_SIGN_ASMBLR_PVT.isActionEnabled(l_corrid_rec.corrid) = 'Y' THEN
58
59
60
61 l_msg_tbl := okc_aq_pvt.msg_tab_typ();
62 FOR corr_rec IN cur_corr_csr
63 LOOP
64
65 IF corr_rec.element_name = 'K_CLASS' THEN
66 l_msg_tbl.extend;
67 l_msg_tbl(i).element_name := corr_rec.element_name;
68 l_msg_tbl(i).element_value := P_k_class;
69 ELSIF corr_rec.element_name = 'K_ID' THEN
70 l_msg_tbl.extend;
71 l_msg_tbl(i).element_name := corr_rec.element_name;
72 l_msg_tbl(i).element_value := P_k_id;
73 ELSIF corr_rec.element_name = 'KL_END_DATE' THEN
74 l_msg_tbl.extend;
75 l_msg_tbl(i).element_name := corr_rec.element_name;
76 --l_msg_tbl(i).element_value := P_kl_end_date;
77 IF corr_rec.format_mask IS NOT NULL THEN
78 l_msg_tbl(i).element_value := to_char(p_kl_end_date,
79 corr_rec.format_mask);
80 ELSE
81 l_msg_tbl(i).element_value := to_char(p_kl_end_date,'DD-MON-YY');
82 END IF;
83 ELSIF corr_rec.element_name = 'KL_ID' THEN
84 l_msg_tbl.extend;
85 l_msg_tbl(i).element_name := corr_rec.element_name;
86 l_msg_tbl(i).element_value := P_kl_id;
87 ELSIF corr_rec.element_name = 'K_NUMBER' THEN
88 l_msg_tbl.extend;
89 l_msg_tbl(i).element_name := corr_rec.element_name;
90 l_msg_tbl(i).element_value := P_k_number;
91 ELSIF corr_rec.element_name = 'K_NBR_MOD' THEN
92 l_msg_tbl.extend;
93 l_msg_tbl(i).element_name := corr_rec.element_name;
94 l_msg_tbl(i).element_value := P_k_nbr_mod;
95 ELSIF corr_rec.element_name = 'K_SUBCLASS' THEN
96 l_msg_tbl.extend;
97 l_msg_tbl(i).element_name := corr_rec.element_name;
98 l_msg_tbl(i).element_value := P_k_subclass;
99 ELSIF corr_rec.element_name = 'KL_STATUS_CODE' THEN
100 l_msg_tbl.extend;
101 l_msg_tbl(i).element_name := corr_rec.element_name;
102 l_msg_tbl(i).element_value := P_kl_status_code;
103 ELSIF corr_rec.element_name = 'ESTIMATED_AMOUNT' THEN
104 l_msg_tbl.extend;
105 l_msg_tbl(i).element_name := corr_rec.element_name;
106 l_msg_tbl(i).element_value := P_estimated_amount;
107 ELSIF corr_rec.element_name = 'NEW_KL_END_DATE' THEN
108 l_msg_tbl.extend;
109 l_msg_tbl(i).element_name := corr_rec.element_name;
110 --l_msg_tbl(i).element_value := P_new_kl_end_date;
111 IF corr_rec.format_mask IS NOT NULL THEN
112 l_msg_tbl(i).element_value := to_char(p_new_kl_end_date,
113 corr_rec.format_mask);
114 ELSE
115 l_msg_tbl(i).element_value := to_char(p_new_kl_end_date,'DD-MON-YY');
116 END IF;
117 END IF;
118
119 i := i + 1;
120 END LOOP;
121
122
123
124
125 OKC_AQ_PUB.send_message(p_api_version =>1.0
126 ,x_msg_count => l_msg_count
127 ,x_msg_data => l_msg_data
128 ,x_return_status => l_return_status
129 ,p_corrid_rec => l_corrid_rec
130 ,p_msg_tab => l_msg_tbl
131 ,p_queue_name => okc_aq_pvt.g_event_queue_name);
132
133 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
134 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
135 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
136 RAISE OKC_API.G_EXCEPTION_ERROR;
137 END IF;
138 END IF; -- OKC_K_SIGN_ASMBLR_PVT.isActionEnabled
139 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
140
141 EXCEPTION
142 WHEN OKC_API.G_EXCEPTION_ERROR THEN
143 x_return_status := OKC_API.HANDLE_EXCEPTIONS
144 (l_api_name,
145 G_PKG_NAME,
146 'OKC_API.G_RET_STS_ERROR',
147 x_msg_count,
148 x_msg_data,
149 '_PROCESS');
150 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
151 x_return_status := OKC_API.HANDLE_EXCEPTIONS
152 (l_api_name,
153 G_PKG_NAME,
154 'OKC_API.G_RET_STS_UNEXP_ERROR',
155 x_msg_count,
156 x_msg_data,
157 '_PROCESS');
158 WHEN OTHERS THEN
159 x_return_status := OKC_API.HANDLE_EXCEPTIONS
160 (l_api_name,
161 G_PKG_NAME,
162 'OTHERS',
163 x_msg_count,
164 x_msg_data,
165 '_PROCESS');
166 END acn_assemble;
167
168 END OKC_KL_EXTD_ASMBLR_PVT;