[Home] [Help]
PACKAGE BODY: APPS.JTF_ESC_WF_EVENTS_PVT
Source
1 PACKAGE BODY jtf_esc_wf_events_pvt AS
2 /* $Header: jtfecbeb.pls 115.7 2004/02/13 10:58:16 nselvam noship $ */
3 --Created for Esc BES enh 2660883
4 PROCEDURE publish_create_esc (
5 P_ESC_REC IN jtf_ec_pvt.Esc_Rec_type
6 )
7 IS
8 l_list WF_PARAMETER_LIST_T;
9 l_key varchar2(240);
10 l_event_name varchar2(240) := 'oracle.apps.jtf.cac.escalation.createEscalation';
11 l_esc_record jtf_ec_pvt.Esc_Rec_type := p_esc_rec;
12
13 BEGIN
14 savepoint cr_esc_publish_save;
15 --Get the item key
16 l_list := NULL;
17 l_key := get_item_key(l_event_name);
18 Compare_and_set_attr_to_list('TASK_ID', NULL, l_esc_record.escalation_id,'C', l_list,'N');
19
20 -- Raise the create esc event
21 wf_event.raise(
22 p_event_name => l_event_name
23 ,p_event_key => l_key
24 ,p_parameters => l_list
25 );
26 l_list.DELETE;
27 EXCEPTION when OTHERS then
28 ROLLBACK TO cr_esc_publish_save;
29 END publish_create_esc;
30
31
32
33 PROCEDURE publish_update_esc
34 (
35 P_ESC_REC IN jtf_ec_pvt.Esc_Rec_type
36 ) IS
37 l_list WF_PARAMETER_LIST_T;
38 l_key varchar2(240);
39 l_event_name varchar2(240);
40 l_esc_record jtf_ec_pvt.Esc_Rec_type := p_esc_rec;
41
42 BEGIN
43 savepoint upd_esc_publish_save;
44 l_list := NULL;
45 l_event_name := 'oracle.apps.jtf.cac.escalation.updateEscalation';
46 l_key := get_item_key(l_event_name);
47 Compare_and_set_attr_to_list('TASK_ID',NULL,l_esc_record.escalation_id, 'U', l_list,'N');
48 Compare_and_set_attr_to_list('TASK_AUDIT_ID',NULL,l_esc_record.task_audit_id, 'U', l_list);
49 -- Raise the update esc Event
50 wf_event.raise(
51 p_event_name => l_event_name
52 ,p_event_key => l_key
53 ,p_parameters => l_list
54 );
55 l_list.DELETE;
56 EXCEPTION when OTHERS then
57 ROLLBACK TO upd_esc_publish_save;
58 END publish_update_esc;
59
60
61
62 PROCEDURE publish_delete_esc (
63 P_ESC_REC IN jtf_ec_pvt.Esc_Rec_type
64 )
65 IS
66 l_list WF_PARAMETER_LIST_T;
67 l_key varchar2(240);
68 l_event_name varchar2(240) := 'oracle.apps.jtf.cac.escalation.deleteEscalation';
69 l_esc_record jtf_ec_pvt.Esc_Rec_type := p_esc_rec;
70 BEGIN
71 savepoint del_esc_publish_save;
72 l_list := NULL;
73 --Get the item key
74 l_key := get_item_key(l_event_name);
75 Compare_and_set_attr_to_list('TASK_ID', l_esc_record.escalation_id, NULL, 'D',l_list,'N');
76 -- Raise delete esc Event
77 wf_event.raise(
78 p_event_name => l_event_name
79 ,p_event_key => l_key
80 ,p_parameters => l_list
81 );
82 l_list.DELETE;
83 EXCEPTION when OTHERS then
84 ROLLBACK TO del_esc_publish_save;
85 END publish_delete_esc;
86
87
88
89 PROCEDURE publish_create_escref (
90 P_ESC_REF_REC IN Jtf_ec_references_pvt.Esc_ref_Rec
91 )
92 IS
93 l_list WF_PARAMETER_LIST_T;
94 l_key VARCHAR2(240);
95 l_event_name VARCHAR2(240) := 'oracle.apps.jtf.cac.escalation.createEscReference';
96 l_esc_ref_record Jtf_ec_references_pvt.Esc_ref_Rec := p_esc_ref_rec;
97
98 BEGIN
99 l_list := NULL;
100 l_key := get_item_key(l_event_name);
101
102 Compare_and_set_attr_to_list('TASK_REFERENCE_ID', NULL, l_esc_ref_record.task_reference_id,'C',l_list,'N');
103 Compare_and_set_attr_to_list('OBJECT_TYPE_CODE', NULL, l_esc_ref_record.object_type_code,'C',l_list);
104 Compare_and_set_attr_to_list('REFERENCE_CODE', NULL, l_esc_ref_record.reference_code,'C',l_list);
105 Compare_and_set_attr_to_list('OBJECT_ID',NULL ,l_esc_ref_record.object_id,'C',l_list);
106 -- Added for Bug # 3385990
107 Compare_and_set_attr_to_list('TASK_ID',NULL ,l_esc_ref_record.task_id,'C',l_list,'N');
108
109
110 wf_event.raise (
111 p_event_name => l_event_name,
112 p_event_key => l_key,
113 p_parameters => l_list
114 );
115
116 l_list.DELETE;
117 END publish_create_escref;
118
119
120 PROCEDURE publish_update_escref (
121 P_ESC_REF_REC_OLD IN Jtf_ec_references_pvt.Esc_ref_Rec,
122 P_ESC_REF_REC_NEW IN Jtf_ec_references_pvt.Esc_ref_Rec
123 )
124 IS
125 l_list WF_PARAMETER_LIST_T;
126 l_key VARCHAR2(240);
127 l_event_name VARCHAR2(240) := 'oracle.apps.jtf.cac.escalation.updateEscReference';
128 BEGIN
129 l_key := get_item_key(l_event_name);
130
131 Compare_and_set_attr_to_list('TASK_REFERENCE_ID', P_ESC_REF_REC_OLD.task_reference_id, P_ESC_REF_REC_NEW.task_reference_id, 'U', l_list,'N');
132 Compare_and_set_attr_to_list('OBJECT_TYPE_CODE', P_ESC_REF_REC_OLD.object_type_code,P_ESC_REF_REC_NEW.object_type_code,'U',l_list);
133 Compare_and_set_attr_to_list('REFERENCE_CODE',P_ESC_REF_REC_OLD.reference_code,P_ESC_REF_REC_NEW.reference_code,'U',l_list);
134 Compare_and_set_attr_to_list('OBJECT_ID',P_ESC_REF_REC_OLD.object_id,P_ESC_REF_REC_NEW.object_id,'U',l_list);
135 -- Added for Bug # 3385990
136 Compare_and_set_attr_to_list('TASK_ID',P_ESC_REF_REC_OLD.task_id ,P_ESC_REF_REC_NEW.task_id,'U',l_list, 'N');
137
138 wf_event.raise (
139 p_event_name => l_event_name,
140 p_event_key => l_key,
141 p_parameters => l_list
142 );
143 l_list.DELETE;
144 END publish_update_escref;
145
146 PROCEDURE publish_delete_escref (
147 P_ESC_REF_REC IN Jtf_ec_references_pvt.Esc_ref_Rec
148 )
149 IS
150 l_list WF_PARAMETER_LIST_T;
151 l_key varchar2(240);
152 l_event_name varchar2(240) := 'oracle.apps.jtf.cac.escalation.deleteEscReference';
153 BEGIN
154 l_key := get_item_key(l_event_name);
155
156 -- Code Changes in sync with Task BES API - Swapped OLD and NEW values
157
158 Compare_and_set_attr_to_list('TASK_REFERENCE_ID', P_ESC_REF_REC.task_reference_id, NULL, 'D',l_list,'N');
159 Compare_and_set_attr_to_list('OBJECT_TYPE_CODE', P_ESC_REF_REC.object_type_code, NULL, 'D',l_list,'N');
160 Compare_and_set_attr_to_list('REFERENCE_CODE', P_ESC_REF_REC.reference_code, NULL, 'D',l_list,'N');
161 Compare_and_set_attr_to_list('OBJECT_ID', P_ESC_REF_REC.object_id, NULL, 'D',l_list,'N');
162 -- Added for Bug # 3385990
163 Compare_and_set_attr_to_list('TASK_ID', P_ESC_REF_REC.task_id, NULL, 'D',l_list,'N');
164
165 -- End Changes
166
167 wf_event.raise(
168 p_event_name => l_event_name
169 ,p_event_key => l_key
170 ,p_parameters => l_list
171 );
172 l_list.DELETE;
173 END publish_delete_escref;
174 --End Esc BES enh 2660883
175
176
177
178 FUNCTION get_item_key(p_event_name IN VARCHAR2)
179 RETURN VARCHAR2
180 IS
181 l_key varchar2(240);
182 BEGIN
183 SELECT p_event_name ||'-'|| jtf_ec_wf_events_s.nextval INTO l_key FROM DUAL;
184 RETURN l_key;
185 END get_item_key;
186
187 PROCEDURE compare_and_set_attr_to_list (
188 P_ATTRIBUTE_NAME IN VARCHAR2,
189 P_OLD_VALUE IN VARCHAR2,
190 P_NEW_VALUE IN VARCHAR2,
191 P_ACTION IN VARCHAR2,
192 P_LIST IN OUT NOCOPY WF_PARAMETER_LIST_T,
193 PUBLISH_IF_CHANGE IN VARCHAR2 DEFAULT 'Y'
194 )
195 IS
196 BEGIN
197
198 -- New code updated as per Task BES API jtftkbeb.pls
199 IF (P_ACTION = 'C')
200 THEN
201 IF (P_NEW_VALUE IS NOT NULL)
202 THEN
203 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
204 END IF;
205 ELSIF (P_ACTION = 'U')
206 THEN
207 IF (PUBLISH_IF_CHANGE = 'N')
208 THEN
209 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
210 ELSE IF (PUBLISH_IF_CHANGE = 'Y') AND ((P_NEW_VALUE IS NULL) OR (P_OLD_VALUE IS NULL) OR (P_NEW_VALUE <> P_OLD_VALUE))
211 THEN
212 wf_event.addparametertolist ('NEW_'||P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
213 wf_event.addparametertolist ('OLD_'||P_ATTRIBUTE_NAME, P_OLD_VALUE, P_LIST);
214 ELSE IF (PUBLISH_IF_CHANGE = 'Y') AND (P_NEW_VALUE IS NOT NULL) AND (P_OLD_VALUE IS NOT NULL)
215 AND (P_NEW_VALUE = P_OLD_VALUE)
216 THEN
217 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
218 END IF;
219 END IF;
220 END IF;
221 ELSIF (P_ACTION = 'D')
222 THEN
223 IF (P_OLD_VALUE IS NOT NULL)
224 THEN
225 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_OLD_VALUE, P_LIST);
226 END IF;
227 END IF;
228 -- End Add
229
230 /* IF (P_ACTION = 'C')
231 THEN
232 IF (P_NEW_VALUE IS NOT NULL)
233 THEN
234 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
235 END IF;
236 ELSIF (P_ACTION = 'U')
237 THEN
238 IF (PUBLISH_IF_CHANGE = 'N')
239 THEN
240 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
241 ELSE IF (P_NEW_VALUE <> P_OLD_VALUE) AND (PUBLISH_IF_CHANGE = 'Y')
242 THEN
243 wf_event.addparametertolist ('NEW_'||P_ATTRIBUTE_NAME, P_NEW_VALUE, P_LIST);
244 wf_event.addparametertolist ('OLD_'||P_ATTRIBUTE_NAME, P_OLD_VALUE, P_LIST);
245 END IF;
246 END IF;
247 ELSIF (P_ACTION = 'D')
248 THEN
249 IF (P_OLD_VALUE IS NOT NULL)
250 THEN
251 wf_event.addparametertolist (P_ATTRIBUTE_NAME, P_OLD_VALUE, P_LIST);
252 END IF;
253 END IF; */
254
255 END;
256 PROCEDURE compare_and_set_attr_to_list (
257 P_ATTRIBUTE_NAME IN VARCHAR2,
258 P_OLD_VALUE IN NUMBER,
259 P_NEW_VALUE IN NUMBER,
260 P_ACTION IN VARCHAR2,
261 P_LIST IN OUT NOCOPY WF_PARAMETER_LIST_T,
262 PUBLISH_IF_CHANGE IN VARCHAR2 DEFAULT 'Y'
263 )
264 IS
265 BEGIN
266 compare_and_set_attr_to_list(P_ATTRIBUTE_NAME,to_char(P_OLD_VALUE),to_char(P_NEW_VALUE),
267 P_ACTION,P_LIST,PUBLISH_IF_CHANGE);
268 END;
269 PROCEDURE compare_and_set_attr_to_list (
270 P_ATTRIBUTE_NAME IN VARCHAR2,
271 P_OLD_VALUE IN DATE,
272 P_NEW_VALUE IN DATE,
273 P_ACTION IN VARCHAR2,
274 P_LIST IN OUT NOCOPY WF_PARAMETER_LIST_T,
275 PUBLISH_IF_CHANGE IN VARCHAR2 DEFAULT 'Y'
276 )
277 IS
278 BEGIN
279 compare_and_set_attr_to_list(P_ATTRIBUTE_NAME,to_char(P_OLD_VALUE,'YYYY-MM-DD HH24:MI:SS'),to_char(P_NEW_VALUE,'YYYY-MM-DD HH24:MI:SS'),
280 P_ACTION,P_LIST,PUBLISH_IF_CHANGE);
281 END;
282
283
284
285 END;