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