[Home] [Help]
PACKAGE BODY: APPS.IEC_IH_HLPR_PVT
Source
1 PACKAGE BODY IEC_IH_HLPR_PVT AS
2 /* $Header: IECVIHB.pls 115.26 2004/05/24 20:39:49 minwang noship $ */
3
4 PROCEDURE Log
5 (
6 p_method_name IN VARCHAR2,
7 p_sql_errmsg IN VARCHAR2
8 )
9 IS
10 l_error_msg VARCHAR2(2048);
11 BEGIN
12
13 IEC_OCS_LOG_PVT.LOG_INTERNAL_PLSQL_ERROR
14 (
15 'IEC_IH_HLPR_PVT',
16 p_method_name,
17 '',
18 p_sql_errmsg,
19 l_error_msg
20 );
21
22 END Log;
23
24 -- Sub-Program Unit Declarations
25 -----------------------------++++++-------------------------------
26 --
27 -- API name : CREATE_INTERACTION
28 -- Type : Private
29 -- Pre-reqs : None
30 -- Function : Called by dial server to record IH related information
31 -- for Advanced Outbound Predicitive dialing.
32 --
33 -- Version : Initial version 1.0
34 --
35 -----------------------------++++++-------------------------------
36 PROCEDURE CREATE_INTERACTION
37 (
38 P_MEDIA_ID IN NUMBER,
39 P_PARTY_ID IN NUMBER,
40 P_START_TIME IN DATE,
41 P_END_TIME IN DATE,
42 P_OUTCOME_ID IN NUMBER,
43 P_REASON_ID IN NUMBER,
44 P_RESULT_ID IN NUMBER
45 )
46 IS
47 PRAGMA AUTONOMOUS_TRANSACTION;
48 l_api_version CONSTANT NUMBER := 1.0;
49 l_init_msg_list VARCHAR2(1);
50 l_commit VARCHAR2(1);
51 l_user_id NUMBER;
52 l_return_status VARCHAR2(1);
53 l_msg_count NUMBER;
54 l_msg_data VARCHAR2(2000);
55
56 l_resource_id NUMBER := 0;
57
58 BEGIN
59 l_init_msg_list :=FND_API.G_TRUE;
60 l_commit :=FND_API.G_TRUE;
61 l_user_id := NVL(FND_GLOBAL.user_id,-1);
62
63 IF(L_INTERACTION_INITIAL = 0 ) THEN
64
65 l_interaction_rec.interaction_id := NULL;
66 l_interaction_rec.reference_form := NULL;
67 l_interaction_rec.follow_up_action := NULL;
68 l_interaction_rec.inter_interaction_duration := NULL;
69 l_interaction_rec.non_productive_time_amount := NULL;
70 l_interaction_rec.preview_time_amount := NULL;
71 l_interaction_rec.productive_time_amount := NULL;
72 l_interaction_rec.wrapUp_time_amount := NULL;
73 l_interaction_rec.handler_id := 545;
74 l_interaction_rec.script_id := NULL;
75
76 begin
77 select resource_id into l_resource_id
78 from jtf_rs_resource_extns
79 where user_name = 'IECAOUSER';
80
81 Exception
82 When NO_DATA_FOUND then
83 l_resource_id := 0;
84 End;
85
86 l_interaction_rec.resource_id := l_resource_id;
87
88 l_interaction_rec.parent_id := NULL;
89 l_interaction_rec.object_id := NULL;
90 l_interaction_rec.object_type := NULL;
91 l_interaction_rec.source_code_id := NULL;
92 l_interaction_rec.source_code := NULL;
93 l_interaction_rec.attribute1 := NULL;
94 l_interaction_rec.attribute2 := NULL;
95 l_interaction_rec.attribute3 := NULL;
96 l_interaction_rec.attribute4 := NULL;
97 l_interaction_rec.attribute5 := NULL;
98 l_interaction_rec.attribute6 := NULL;
99 l_interaction_rec.attribute7 := NULL;
100 l_interaction_rec.attribute8 := NULL;
101 l_interaction_rec.attribute9 := NULL;
102 l_interaction_rec.attribute10 := NULL;
103 l_interaction_rec.attribute11 := NULL;
104 l_interaction_rec.attribute12 := NULL;
105 l_interaction_rec.attribute13 := NULL;
106 l_interaction_rec.attribute14 := NULL;
107 l_interaction_rec.attribute15 := NULL;
108 l_interaction_rec.attribute_category := NULL;
109 l_activities_tbl(1).activity_id := NULL;
110 l_activities_tbl(1).cust_account_id := NULL;
111 l_activities_tbl(1).cust_org_id := NULL;
112 l_activities_tbl(1).role := NULL;
113 l_activities_tbl(1).task_id := NULL;
114 l_activities_tbl(1).doc_id := NULL;
115 l_activities_tbl(1).doc_ref := NULL;
116 l_activities_tbl(1).doc_source_object_name := NULL;
117 l_activities_tbl(1).media_id := NULL;
118 l_activities_tbl(1).interaction_id := NULL;
119 l_activities_tbl(1).description := NULL;
120 l_activities_tbl(1).action_id := 51;
121 l_activities_tbl(1).interaction_action_type := NULL;
122 l_activities_tbl(1).object_id := NULL;
123 l_activities_tbl(1).object_type := NULL;
124 l_activities_tbl(1).source_code_id := NULL;
125 l_activities_tbl(1).source_code := NULL;
126 l_activities_tbl(1).script_trans_id := NULL;
127
128 L_INTERACTION_INITIAL := 1;
129
130 END IF;
131
132 l_interaction_rec.duration := null;
133 l_interaction_rec.end_date_time := p_end_time;
134 l_interaction_rec.start_date_time := p_start_time;
135 l_interaction_rec.outcome_id := p_outcome_id;
136 l_interaction_rec.result_id := p_result_id;
137 l_interaction_rec.reason_id := p_reason_id;
138
139 l_interaction_rec.party_id := p_party_id;
140 l_activities_tbl(1).duration := null;
141 l_activities_tbl(1).end_date_time := p_end_time;
142 l_activities_tbl(1).start_date_time := p_start_time;
143 l_activities_tbl(1).action_item_id := 25;
144 l_activities_tbl(1).outcome_id := p_outcome_id;
145 l_activities_tbl(1).result_id := p_result_id;
146 l_activities_tbl(1).reason_id := p_reason_id;
147 l_activities_tbl(1).media_id := P_MEDIA_ID;
148
149 JTF_IH_PUB.Create_Interaction
150 (
151 p_api_version => l_api_version,
152 p_init_msg_list => l_init_msg_list,
153 p_commit => l_commit,
154 p_user_id => l_user_id,
155 x_return_status => l_return_status,
156 x_msg_count => l_msg_count,
157 x_msg_data => l_msg_data,
158 p_interaction_rec => l_interaction_rec,
159 p_activities => l_activities_tbl
160 );
161
162 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
163
164 -- No point in trying to create the others.
165 -- the only thing we can do here is to log an error message
166 LOG('CREATE_INTERACTION', l_msg_data);
167
168 END IF;
169
170 commit;
171
172 END CREATE_INTERACTION;
173
174 -----------------------------++++++-------------------------------
175 --
176 -- API name : CREATE_MILCS
177 -- Type : Private
178 --
179 -- Version : Initial version 1.0
180 --
181 -----------------------------++++++-------------------------------
182
183 PROCEDURE CREATE_MILCS
184 (
185 P_MEDIA_ID IN NUMBER,
186 P_MILCS_TYPE IN NUMBER,
187 P_START_TIME IN DATE,
188 P_END_TIME IN DATE
189 )
190 IS
191 PRAGMA AUTONOMOUS_TRANSACTION;
192 l_api_version CONSTANT NUMBER := 1.0;
193 l_init_msg_list VARCHAR2(1);
194 l_commit VARCHAR2(1);
195 l_user_id NUMBER;
196 l_return_status VARCHAR2(1);
197 l_msg_count NUMBER;
198 l_msg_data VARCHAR2(2000);
199
200 l_resource_id NUMBER := 0;
201
202 BEGIN
203 l_init_msg_list := FND_API.G_TRUE;
204 l_commit := FND_API.G_TRUE;
205 l_user_id := NVL(FND_GLOBAL.user_id,-1);
206
207 IF (L_MEDIA_LC_INITIAL = 0) THEN
208
209 begin
210 select resource_id into l_resource_id
211 from jtf_rs_resource_extns
212 where user_name = 'IECAOUSER';
213
214 Exception
215 When NO_DATA_FOUND then
216 l_resource_id := 0;
217 End;
218
219 l_media_lc_rec.type_type := 'TELEPHONY, OUTBOUND';
220 l_media_lc_rec.type_id := NULL;
221 l_media_lc_rec.milcs_id := NULL;
222 l_media_lc_rec.handler_id := 545;
223 l_media_lc_rec.resource_id := l_resource_id;
224 l_media_lc_rec.milcs_code := NULL;
225
226 L_MEDIA_LC_INITIAL := 1;
227
228 END IF;
229
230 l_media_lc_rec.media_id := P_MEDIA_ID;
231 l_media_lc_rec.milcs_type_id := P_MILCS_TYPE;
232 l_media_lc_rec.start_date_time := P_START_TIME;
233 l_media_lc_rec.end_date_time := P_END_TIME;
234 l_media_lc_rec.duration := null;
235
236 JTF_IH_PUB.Create_MediaLifecycle
237 (
238 p_api_version => l_api_version,
239 p_init_msg_list => l_init_msg_list,
240 p_commit => l_commit,
241 p_user_id => l_user_id,
242 x_return_status => l_return_status,
243 x_msg_count => l_msg_count,
244 x_msg_data => l_msg_data,
245 p_media_lc_rec => l_media_lc_rec
246 );
247
248 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
249
250 -- No point in trying to create the others.
251 -- the only thing we can do here is to log an error message
252 LOG('CREATE_MILCS', l_msg_data);
253
254 END IF;
255
256 commit;
257
258 END CREATE_MILCS;
259
260 -----------------------------++++++-------------------------------
261 --
262 -- API name : UPDATE_CLOSE_MEDIA_ITEM
263 -- Type : Private
264 --
265 -- Version : Initial version 1.0
266 --
267 -----------------------------++++++-------------------------------
268 PROCEDURE UPDATE_CLOSE_MEDIA_ITEM
269 (
270 P_MEDIA_ID IN NUMBER,
271 P_SUBSET_ID IN NUMBER,
272 P_SVR_GROUP_ID IN NUMBER,
273 P_START_TIME IN DATE,
274 P_END_TIME IN DATE,
275 P_ADDRESS IN VARCHAR2,
276 P_ABANDON_FLAG IN VARCHAR2,
277 P_HARD_CLOSE IN VARCHAR2
278 )
279 IS
280 PRAGMA AUTONOMOUS_TRANSACTION;
281 l_commit VARCHAR2(1);
282
283 l_return_status VARCHAR2(1);
284 l_msg_count NUMBER;
285 l_msg_data VARCHAR2(2000);
286
287 BEGIN
288 l_commit := FND_API.G_TRUE;
289
290 JTF_IH_IEC_PVT.CLOSE_AO_CALL
291 (
292 p_Media_id => P_MEDIA_ID,
293 p_Hard_Close =>P_HARD_CLOSE,
294 p_source_item_id => P_SUBSET_ID,
295 p_address => P_ADDRESS,
296 p_start_date_time => P_START_TIME,
297 p_end_date_time => P_END_TIME,
298 p_duration => null,
299 p_media_abandon_flag => P_ABANDON_FLAG,
300 p_Server_Group_ID => P_SVR_GROUP_ID,
301 x_Commit => l_commit,
302 x_return_status => l_return_status,
303 x_msg_count => l_msg_count,
304 x_msg_data => l_msg_data
305 );
306
307 IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
308
309 -- dbms_output.put_line(l_msg_data);
310
311 -- No point in trying to create the others.
312 -- the only thing we can do here is to log an error message
313 LOG('UPDATE_CLOSE_MEDIA_ITEM', l_msg_data);
314
315 END IF;
316
317 commit;
318
319 END UPDATE_CLOSE_MEDIA_ITEM;
320
321
322 END IEC_IH_HLPR_PVT;