[Home] [Help]
PACKAGE BODY: APPS.OKC_KL_STS_CHG_ASMBLR_PVT
Source
1 PACKAGE BODY OKC_KL_STS_CHG_ASMBLR_PVT AS
2 /* $Header: OKCRLSCB.pls 120.0 2005/05/30 04:15:10 appldev noship $ */
3
4 l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5
6 -- action assembler for contract line status change action
7 PROCEDURE acn_assemble(
8 p_api_version IN NUMBER,
9 p_init_msg_list IN VARCHAR2 ,
10 x_return_status OUT NOCOPY VARCHAR2,
11 x_msg_count OUT NOCOPY NUMBER,
12 x_msg_data OUT NOCOPY VARCHAR2,
13 p_k_id IN NUMBER,
14 p_kl_id IN NUMBER,
15 p_k_number IN VARCHAR2,
16 p_k_nbr_mod IN VARCHAR2,
17 p_kl_number IN VARCHAR2,
18 p_kl_cur_sts_code IN VARCHAR2,
19 p_kl_cur_sts_type IN VARCHAR2,
20 p_kl_pre_sts_code IN VARCHAR2,
21 p_kl_pre_sts_type IN VARCHAR2,
22 p_kl_source_system_code IN VARCHAR2
23 ) IS
24
25 l_api_name CONSTANT VARCHAR2(30) := 'acn_assemble';
26 l_api_version CONSTANT NUMBER := 1.0;
27 i NUMBER := 1;
28 l_corrid_rec okc_aq_pvt.corrid_rec_typ;
29 l_msg_tbl okc_aq_pvt.msg_tab_typ;
30 l_msg_count number;
31 l_msg_data varchar2(1000);
32 l_return_status varchar2(1);
33
34 CURSOR cur_corr_csr IS
35 SELECT aae.element_name
36 ,aae.format_mask format_mask
37 FROM okc_actions_b acn,okc_action_attributes_b aae
38 WHERE acn.id = aae.acn_id
39 AND acn.correlation = 'KL_STS_CHANGE' ;
40
41 BEGIN
42
43 l_return_status := OKC_API.START_ACTIVITY
44 (l_api_name
45 ,p_init_msg_list
46 ,'_PROCESS'
47 ,x_return_status);
48
49 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
50 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
51 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
52 RAISE OKC_API.G_EXCEPTION_ERROR;
53 END IF;
54
55 l_corrid_rec.corrid := 'KL_STS_CHANGE' ;
56
57 -- check if action is enabled
58 IF OKC_K_SIGN_ASMBLR_PVT.isActionEnabled(l_corrid_rec.corrid) = 'Y' THEN
59
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 = 'KL_CUR_STS_CODE' 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_kl_cur_sts_code;
70 ELSIF corr_rec.element_name = 'KL_CUR_STS_TYPE' 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_kl_cur_sts_type;
74 ELSIF corr_rec.element_name = 'K_ID' 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_id;
78 ELSIF corr_rec.element_name = 'KL_ID' 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_kl_id;
82 ELSIF corr_rec.element_name = 'K_NUMBER' 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_number;
86 ELSIF corr_rec.element_name = 'K_NBR_MOD' 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_k_nbr_mod;
90 ELSIF corr_rec.element_name = 'KL_NUMBER' 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_kl_number;
94 ELSIF corr_rec.element_name = 'KL_PRE_STS_CODE' THEN
95 l_msg_tbl.extend;
96 l_msg_tbl(i).element_name := corr_rec.element_name;
97 l_msg_tbl(i).element_value := p_kl_pre_sts_code;
98 ELSIF corr_rec.element_name = 'KL_PRE_STS_TYPE' THEN
99 l_msg_tbl.extend;
100 l_msg_tbl(i).element_name := corr_rec.element_name;
101 l_msg_tbl(i).element_value := p_kl_pre_sts_type;
102 ELSIF corr_rec.element_name = 'KL_SOURCE_SYSTEM_CODE' THEN
103 l_msg_tbl.extend;
104 l_msg_tbl(i).element_name := corr_rec.element_name;
105 l_msg_tbl(i).element_value := p_kl_source_system_code;
106 END IF;
107
108 i := i + 1;
109 END LOOP;
110
111
112
113
114 OKC_AQ_PUB.send_message(p_api_version =>1.0
115 ,x_msg_count => l_msg_count
116 ,x_msg_data => l_msg_data
117 ,x_return_status => l_return_status
118 ,p_corrid_rec => l_corrid_rec
119 ,p_msg_tab => l_msg_tbl
120 ,p_queue_name => okc_aq_pvt.g_event_queue_name);
121
122 IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
123 RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
124 ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
125 RAISE OKC_API.G_EXCEPTION_ERROR;
126 END IF;
127
128 END IF; -- OKC_K_SIGN_ASMBLR_PVT.isActionEnabled
129 OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
130 EXCEPTION
131 WHEN OKC_API.G_EXCEPTION_ERROR THEN
132 x_return_status := OKC_API.HANDLE_EXCEPTIONS
133 (l_api_name,
134 G_PKG_NAME,
135 'OKC_API.G_RET_STS_ERROR',
136 x_msg_count,
137 x_msg_data,
138 '_PROCESS');
139 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
140 x_return_status := OKC_API.HANDLE_EXCEPTIONS
141 (l_api_name,
142 G_PKG_NAME,
143 'OKC_API.G_RET_STS_UNEXP_ERROR',
144 x_msg_count,
145 x_msg_data,
146 '_PROCESS');
147 WHEN OTHERS THEN
148 x_return_status := OKC_API.HANDLE_EXCEPTIONS
149 (l_api_name,
150 G_PKG_NAME,
151 'OTHERS',
152 x_msg_count,
153 x_msg_data,
154 '_PROCESS');
155 END acn_assemble;
156
157 END OKC_KL_STS_CHG_ASMBLR_PVT;