[Home] [Help]
PACKAGE BODY: APPS.OKC_K_TERM_ASMBLR_PVT
Source
1 PACKAGE BODY OKC_K_TERM_ASMBLR_PVT AS
2 /* $Header: OKCRKTAB.pls 120.0 2005/05/26 09:27:24 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_k_number IN VARCHAR2,
16 p_k_nbr_mod IN VARCHAR2,
17 p_k_subclass IN VARCHAR2,
18 p_k_status_code IN VARCHAR2,
19 p_estimated_amount IN NUMBER,
20 p_term_date IN DATE,
21 p_term_reason IN VARCHAR2 ) 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 = 'KTERM' ;
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 := 'KTERM' ;
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_ID' 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_id;
71 ELSIF corr_rec.element_name = 'K_NUMBER' THEN
72 l_msg_tbl.extend;
73 l_msg_tbl(i).element_name := corr_rec.element_name;
74 l_msg_tbl(i).element_value := P_k_number;
75 ELSIF corr_rec.element_name = 'K_NBR_MOD' THEN
76 l_msg_tbl.extend;
77 l_msg_tbl(i).element_name := corr_rec.element_name;
78 l_msg_tbl(i).element_value := P_k_nbr_mod;
79 ELSIF corr_rec.element_name = 'K_SUBCLASS' THEN
80 l_msg_tbl.extend;
81 l_msg_tbl(i).element_name := corr_rec.element_name;
82 l_msg_tbl(i).element_value := P_k_subclass;
83 ELSIF corr_rec.element_name = 'K_STATUS_CODE' 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_k_status_code;
87 ELSIF corr_rec.element_name = 'ESTIMATED_AMOUNT' 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_estimated_amount;
91 ELSIF corr_rec.element_name = 'TERM_DATE' 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_term_date;
95 IF corr_rec.format_mask IS NOT NULL THEN
96 l_msg_tbl(i).element_value := to_char(p_term_date,
97 corr_rec.format_mask);
98 ELSE
99 l_msg_tbl(i).element_value := to_char(p_term_date,'DD-MON-YY');
100 END IF;
101 ELSIF corr_rec.element_name = 'TERM_REASON' 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_term_reason;
105 END IF;
106
107 i := i + 1;
108 END LOOP;
109
110
111
112
113 OKC_AQ_PUB.send_message(p_api_version =>1.0
114 ,x_msg_count => l_msg_count
115 ,x_msg_data => l_msg_data
116 ,x_return_status => l_return_status
117 ,p_corrid_rec => l_corrid_rec
118 ,p_msg_tab => l_msg_tbl
119 ,p_queue_name => okc_aq_pvt.g_event_queue_name);
120
121 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
122 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
123 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
124 RAISE OKC_API.G_EXCEPTION_ERROR;
125 END IF;
126 END IF; -- OKC_K_SIGN_ASMBLR_PVT.isActionEnabled
127 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
128
129 EXCEPTION
130 WHEN OKC_API.G_EXCEPTION_ERROR THEN
131 x_return_status := OKC_API.HANDLE_EXCEPTIONS
132 (l_api_name,
133 G_PKG_NAME,
134 'OKC_API.G_RET_STS_ERROR',
135 x_msg_count,
136 x_msg_data,
137 '_PROCESS');
138 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
139 x_return_status := OKC_API.HANDLE_EXCEPTIONS
140 (l_api_name,
141 G_PKG_NAME,
142 'OKC_API.G_RET_STS_UNEXP_ERROR',
143 x_msg_count,
144 x_msg_data,
145 '_PROCESS');
146 WHEN OTHERS THEN
147 x_return_status := OKC_API.HANDLE_EXCEPTIONS
148 (l_api_name,
149 G_PKG_NAME,
150 'OTHERS',
151 x_msg_count,
152 x_msg_data,
153 '_PROCESS');
154 END acn_assemble;
155
156 END OKC_K_TERM_ASMBLR_PVT;