DBA Data[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;