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