DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKC_CHG_REJ_ASMBLR_PVT

Source


1 PACKAGE BODY OKC_CHG_REJ_ASMBLR_PVT AS
2 /* $Header: OKCRCHRB.pls 120.0 2005/05/25 18:28:51 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_change_id		IN NUMBER,
14   p_k_class		IN VARCHAR2,
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_chrej_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 = 'CH_REJECT' ;
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  l_corrid_rec.corrid := 'CH_REJECT' ;
53  -- check if action is enabled
54  IF OKC_K_SIGN_ASMBLR_PVT.isActionEnabled(l_corrid_rec.corrid) = 'Y' THEN
55     l_msg_tbl := okc_aq_pvt.msg_tab_typ();
56  FOR corr_rec IN cur_corr_csr
57  LOOP
58 
59  IF corr_rec.element_name = 'CHANGE_ID' THEN
60   l_msg_tbl.extend;
61   l_msg_tbl(i).element_name     := corr_rec.element_name;
62   l_msg_tbl(i).element_value    := P_change_id;
63  ELSIF 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 = 'CHREJ_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_chrej_date;
95   IF corr_rec.format_mask IS NOT NULL THEN
96        l_msg_tbl(i).element_value := to_char(p_chrej_date,
97 		      corr_rec.format_mask);
98   ELSE
99        l_msg_tbl(i).element_value := to_char(p_chrej_date,'DD-MON-YY');
100   END IF;
101  END IF;
102 
103   i := i + 1;
104  END LOOP;
105 
106 
107 
108 
109   OKC_AQ_PUB.send_message(p_api_version     =>1.0
110                          ,x_msg_count       => l_msg_count
111                          ,x_msg_data        => l_msg_data
112                          ,x_return_status   => l_return_status
113                          ,p_corrid_rec      => l_corrid_rec
114                          ,p_msg_tab         => l_msg_tbl
115                          ,p_queue_name      => okc_aq_pvt.g_event_queue_name);
116 
117     IF l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR THEN
118         RAISE OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
119     ELSIF l_return_status = OKC_API.G_RET_STS_ERROR THEN
120         RAISE OKC_API.G_EXCEPTION_ERROR;
121     END IF;
122 END IF; -- isActionEnabled
123  OKC_API.END_ACTIVITY(x_msg_count, x_msg_data);
124 
125 EXCEPTION
126  WHEN OKC_API.G_EXCEPTION_ERROR THEN
127   x_return_status := OKC_API.HANDLE_EXCEPTIONS
128                        (l_api_name,
129                         G_PKG_NAME,
130                       'OKC_API.G_RET_STS_ERROR',
131                         x_msg_count,
132                         x_msg_data,
133                         '_PROCESS');
134  WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
135   x_return_status := OKC_API.HANDLE_EXCEPTIONS
136                        (l_api_name,
137                         G_PKG_NAME,
138                        'OKC_API.G_RET_STS_UNEXP_ERROR',
139                         x_msg_count,
140                         x_msg_data,
141                         '_PROCESS');
142  WHEN OTHERS THEN
143   x_return_status := OKC_API.HANDLE_EXCEPTIONS
144                        (l_api_name,
145                         G_PKG_NAME,
146                         'OTHERS',
147                         x_msg_count,
148                         x_msg_data,
149                         '_PROCESS');
150 END acn_assemble;
151 
152 END OKC_CHG_REJ_ASMBLR_PVT;