DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKC_CHG_APR_ASMBLR_PVT

Source


1 PACKAGE BODY OKC_CHG_APR_ASMBLR_PVT AS
2 /* $Header: OKCRCAAB.pls 120.0 2005/05/25 22:36:23 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_chapp_date		IN DATE,
14   p_change_id		IN NUMBER,
15   p_k_class		IN VARCHAR2,
16   p_k_id		IN NUMBER,
17   p_k_number		IN VARCHAR2,
18   p_k_nbr_mod		IN VARCHAR2,
19   p_k_subclass		IN VARCHAR2,
20   p_k_status_code		IN VARCHAR2,
21   p_estimated_amount		IN NUMBER  )  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 = 'CH_APP' ;
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 := 'CH_APP' ;
54 
55  -- check if action is enabled
56  IF OKC_K_SIGN_ASMBLR_PVT.isActionEnabled(l_corrid_rec.corrid) = 'Y' THEN
57 
58     l_msg_tbl := okc_aq_pvt.msg_tab_typ();
59   FOR corr_rec IN cur_corr_csr LOOP
60 
61  IF corr_rec.element_name = 'CHAPP_DATE' THEN
62   l_msg_tbl.extend;
63   l_msg_tbl(i).element_name     := corr_rec.element_name;
64   IF corr_rec.format_mask IS NOT NULL THEN
65        l_msg_tbl(i).element_value := to_char(p_chapp_date,
66 		      corr_rec.format_mask);
67   ELSE
68        l_msg_tbl(i).element_value := to_char(p_chapp_date,'DD-MON-YY');
69   END IF;
70   --l_msg_tbl(i).element_value    := P_chapp_date;
71  ELSIF corr_rec.element_name = 'CHANGE_ID' 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_change_id;
75  ELSIF corr_rec.element_name = 'K_CLASS' 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_class;
79  ELSIF corr_rec.element_name = 'K_ID' 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_id;
83  ELSIF corr_rec.element_name = 'K_NUMBER' 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_number;
87  ELSIF corr_rec.element_name = 'K_NBR_MOD' 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_nbr_mod;
91  ELSIF corr_rec.element_name = 'K_SUBCLASS' 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_subclass;
95  ELSIF corr_rec.element_name = 'K_STATUS_CODE' 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_status_code;
99  ELSIF corr_rec.element_name = 'ESTIMATED_AMOUNT' 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_estimated_amount;
103  END IF;
104 
105   i := i + 1;
106  END LOOP;
107 
108 
109 
110 
111   OKC_AQ_PUB.send_message(p_api_version     =>1.0
112                          ,x_msg_count       => l_msg_count
113                          ,x_msg_data        => l_msg_data
114                          ,x_return_status   => l_return_status
115                          ,p_corrid_rec      => l_corrid_rec
116                          ,p_msg_tab         => l_msg_tbl
117                          ,p_queue_name      => okc_aq_pvt.g_event_queue_name);
118 
119     IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
120         RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
121     ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
122         RAISE OKC_API.G_EXCEPTION_ERROR;
123     END IF;
124 END IF; -- isActionEnabled
125  OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
126 
127 EXCEPTION
128  WHEN OKC_API.G_EXCEPTION_ERROR THEN
129   x_return_status := OKC_API.HANDLE_EXCEPTIONS
130                        (l_api_name,
131                         G_PKG_NAME,
132                       'OKC_API.G_RET_STS_ERROR',
133                         x_msg_count,
134                         x_msg_data,
135                         '_PROCESS');
136  WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
137   x_return_status := OKC_API.HANDLE_EXCEPTIONS
138                        (l_api_name,
139                         G_PKG_NAME,
140                        'OKC_API.G_RET_STS_UNEXP_ERROR',
141                         x_msg_count,
142                         x_msg_data,
143                         '_PROCESS');
144  WHEN OTHERS THEN
145   x_return_status := OKC_API.HANDLE_EXCEPTIONS
146                        (l_api_name,
147                         G_PKG_NAME,
148                         'OTHERS',
149                         x_msg_count,
150                         x_msg_data,
151                         '_PROCESS');
152 END acn_assemble;
153 
154 END OKC_CHG_APR_ASMBLR_PVT;