DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSL_CSP_REQ_HEADERS_ACC_PKG

Source


1 PACKAGE BODY CSL_CSP_REQ_HEADERS_ACC_PKG AS
2 /* $Header: cslrhacb.pls 120.0 2005/05/25 11:06:42 appldev noship $ */
3 
4 /*** Globals ***/
5 -- CSP_REQUIREMENT_HEADERS
6 g_acc_table_name        CONSTANT VARCHAR2(30) := 'JTM_CSP_REQ_HEADERS_ACC';
7 g_publication_item_name CONSTANT JTM_HOOK_UTIL_PKG.t_publication_item_list :=
8   JTM_HOOK_UTIL_PKG.t_publication_item_list('CSP_REQUIREMENT_HEADERS');
9 g_pk1_name              CONSTANT VARCHAR2(30) := 'REQUIREMENT_HEADER_ID';
10 
11 g_table_name            CONSTANT VARCHAR2(30) := 'CSP_REQUIREMENT_HEADERS';
12 g_debug_level           NUMBER; -- debug level
13 
14 /*** Function that checks if requirement record(s) should be replicated. Returns TRUE if it should ***/
15 FUNCTION Replicate_Record
16   ( p_req_header_id NUMBER
17   )
18 RETURN BOOLEAN
19 IS
20 /*  CURSOR c_req_task_ass( b_req_header_id NUMBER ) IS
21    SELECT jta.resource_id
22    FROM   jtf.jtf_task_assignments jta
23    ,      csp_requirement_headers crh
24    WHERE  crh.task_assignment_id = jta.task_assignment_id
25    AND    jta.assignee_role = 'ASSIGNEE'
26    AND    crh.requirement_header_id = b_req_header_id;*/
27 
28   CURSOR c_req_resource( b_req_header_id NUMBER ) IS
29     SELECT RH.RESOURCE_ID
30     FROM CSP_REQUIREMENT_HEADERS RH
31     WHERE  RH.REQUIREMENT_HEADER_ID = b_req_header_id;
32 
33   l_resource_id NUMBER;
34 BEGIN
35   /*** get debug level ***/
36   g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
37 
38   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
39     jtm_message_log_pkg.Log_Msg
40     ( p_req_header_id
41     , g_table_name
42     , 'Entering Replicate_Record'
43     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
44   END IF;
45 
46   OPEN c_req_resource( p_req_header_id );
47   FETCH c_req_resource INTO l_resource_id;
48   IF c_req_resource%NOTFOUND THEN
49     --OPEN c_req_task_ass( p_req_header_id );
50     --FETCH c_req_task_ass INTO l_resource_id;
51     --IF c_req_task_ass%NOTFOUND THEN
52       l_resource_id := -1;
53     --END IF;
54     --CLOSE c_req_task_ass;
55   END IF;
56   CLOSE c_req_resource;
57 
58   IF l_resource_id < 0 THEN
59     IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
60       jtm_message_log_pkg.Log_Msg
61       ( p_req_header_id
62       , g_table_name
63       , 'Replicate_Record error: Could not find resource for requirement '|| p_req_header_id
64       , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
65     END IF;
66     RETURN FALSE;
67   END IF;
68 
69   /*** is resource a mobile user? ***/
70   IF NOT JTM_HOOK_UTIL_PKG.isMobileFSresource( l_resource_id ) THEN
71     /*** No -> exit ***/
72     IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
73       jtm_message_log_pkg.Log_Msg
74       ( p_req_header_id
75       , g_table_name
76       , 'Replicate_Record returned FALSE' || fnd_global.local_chr(10) ||
77         'Resource_id ' || l_resource_id || ' is not a mobile user.'
78       , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
79     END IF;
80 
81     RETURN FALSE;
82   END IF;
83 
84   IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
85     jtm_message_log_pkg.Log_Msg
86     ( p_req_header_id
87     , g_table_name
88     , 'Replicate_Record returned TRUE'
89     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
90   END IF;
91 
92   /** Record matched criteria -> return true ***/
93   RETURN TRUE;
94 END Replicate_Record;
95 
96 /*** Private procedure that replicates given requierment related data for resource ***/
97 PROCEDURE Insert_ACC_Record
98   ( p_req_header_id        IN NUMBER
99   )
100 IS
101   /*CURSOR c_req_task_ass( b_req_header_id NUMBER ) IS
102    SELECT jta.resource_id
103    FROM   jtf.jtf_task_assignments jta
104    ,      csp_requirement_headers crh
105    WHERE  crh.task_assignment_id = jta.task_assignment_id
106    AND    jta.assignee_role = 'ASSIGNEE'
107    AND    crh.requirement_header_id = b_req_header_id;*/
108 
109   CURSOR c_req_resource( b_req_header_id NUMBER ) IS
110     SELECT RH.RESOURCE_ID
111     FROM CSP_REQUIREMENT_HEADERS RH
112     WHERE  RH.REQUIREMENT_HEADER_ID = b_req_header_id;
113 
114   l_resource_id NUMBER;
115 BEGIN
116   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
117     jtm_message_log_pkg.Log_Msg
118     ( p_req_header_id
119     , g_table_name
120     , 'Entering Insert_ACC_Record'
121     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
122   END IF;
123 
124   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
125     jtm_message_log_pkg.Log_Msg
126     ( p_req_header_id
127     , g_table_name
128     , 'Inserting ACC record'
129     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
130   END IF;
131 
132   OPEN c_req_resource( p_req_header_id );
133   FETCH c_req_resource INTO l_resource_id;
134   IF c_req_resource%NOTFOUND THEN
135 --    OPEN c_req_task_ass( p_req_header_id );
136 --    FETCH c_req_task_ass INTO l_resource_id;
137 --    IF c_req_task_ass%NOTFOUND THEN
138       l_resource_id := -1;
139 --    END IF;
140 --    CLOSE c_req_task_ass;
141   END IF;
142   CLOSE c_req_resource;
143 
144   IF l_resource_id < 0 THEN
145     IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
146       jtm_message_log_pkg.Log_Msg
147       ( p_req_header_id
148       , g_table_name
149       , 'Insert ACC Record error: Could not find a resource for requirement ' || p_req_header_id
150       , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
151     END IF;
152   ELSE
153     JTM_HOOK_UTIL_PKG.Insert_Acc
154     (  P_PUBLICATION_ITEM_NAMES => g_publication_item_name
155      , P_ACC_TABLE_NAME         => g_acc_table_name
156      , P_PK1_NAME               => g_pk1_name
157      , P_PK1_NUM_VALUE          => p_req_header_id
158      , P_RESOURCE_ID            => l_resource_id
159     );
160   END IF;
161 
162   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
163     jtm_message_log_pkg.Log_Msg
164     ( p_req_header_id
165     , g_table_name
166     , 'Leaving Insert_ACC_Record'
167     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
168   END IF;
169 END Insert_ACC_Record;
170 
171 /*** Private procedure that re-sends given requirement to mobile ***/
172 PROCEDURE Update_ACC_Record
173   ( p_req_header_id        IN NUMBER
174   )
175 IS
176 /*  CURSOR c_req_task_ass( b_req_header_id NUMBER ) IS
177    SELECT jta.resource_id
178    FROM   jtf.jtf_task_assignments jta
179    ,      csp_requirement_headers crh
180    WHERE  crh.task_assignment_id = jta.task_assignment_id
181    AND    jta.assignee_role = 'ASSIGNEE'
182    AND    crh.requirement_header_id = b_req_header_id;*/
183 
184   CURSOR c_req_resource( b_req_header_id NUMBER ) IS
185     SELECT RH.RESOURCE_ID
186     FROM CSP_REQUIREMENT_HEADERS RH
187     WHERE  RH.REQUIREMENT_HEADER_ID = b_req_header_id;
188 
189   l_resource_id NUMBER;
190 BEGIN
191   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
192     jtm_message_log_pkg.Log_Msg
193     ( p_req_header_id
194     , g_table_name
195     , 'Entering Update_ACC_Record'
196     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
197   END IF;
198 
199   IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
200     jtm_message_log_pkg.Log_Msg
201     ( p_req_header_id
202     , g_table_name
203     , 'Updating ACC record(s)'
204     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
205   END IF;
206 
207   OPEN c_req_resource( p_req_header_id );
208   FETCH c_req_resource INTO l_resource_id;
209   IF c_req_resource%NOTFOUND THEN
210 --    OPEN c_req_task_ass( p_req_header_id );
211 --    FETCH c_req_task_ass INTO l_resource_id;
212 --    IF c_req_task_ass%NOTFOUND THEN
213       l_resource_id := -1;
214 --    END IF;
215 --    CLOSE c_req_task_ass;
216   END IF;
217   CLOSE c_req_resource;
218 
219   IF l_resource_id < 0 THEN
220     IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
221       jtm_message_log_pkg.Log_Msg
222       ( p_req_header_id
223       , g_table_name
224       , 'Update ACC Record error: Could not find resource for requirement '|| p_req_header_id
225       , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
226     END IF;
227   ELSE
228     JTM_HOOK_UTIL_PKG.Update_Acc
229      (  P_PUBLICATION_ITEM_NAMES => g_publication_item_name
230       , P_ACC_TABLE_NAME         => g_acc_table_name
231       , P_RESOURCE_ID            => l_resource_id
232       , P_ACCESS_ID              => p_req_header_id
233      );
234   END IF;
235 
236   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
237     jtm_message_log_pkg.Log_Msg
238     ( p_req_header_id
239     , g_table_name
240     , 'Leaving Update_ACC_Record'
241     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
242   END IF;
243 END Update_ACC_Record;
244 
245 /*** Private procedure that deletes requirement for resource from acc table ***/
246 PROCEDURE Delete_ACC_Record
247   ( p_req_header_id IN NUMBER
248    ,p_resource_id   IN NUMBER
249   )
250 IS
251 BEGIN
252   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
253     jtm_message_log_pkg.Log_Msg
254     ( p_req_header_id
255     , g_table_name
256     , 'Entering Delete_ACC_Record'
257     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
258   END IF;
259 
260   IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM THEN
261     jtm_message_log_pkg.Log_Msg
262     ( p_req_header_id
263     , g_table_name
264     , 'Deleting ACC record for resource_id = ' || p_resource_id
265     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_MEDIUM);
266   END IF;
267 
268   -- No delete of the requirement is possible
269   JTM_HOOK_UTIL_PKG.Delete_Acc
270    (  P_PUBLICATION_ITEM_NAMES => g_publication_item_name
271     , P_ACC_TABLE_NAME         => g_acc_table_name
272     , P_PK1_NAME               => g_pk1_name
273     , P_PK1_NUM_VALUE          => p_req_header_id
274     , P_RESOURCE_ID            => p_resource_id
275    );
276 
277   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
278     jtm_message_log_pkg.Log_Msg
279     ( p_req_header_id
280     , g_table_name
281     , 'Leaving Delete_ACC_Record'
282     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
283   END IF;
284 END Delete_ACC_Record;
285 
286 /*** Called before requirement Insert ***/
287 PROCEDURE PRE_INSERT_REQ_HEADER
288   ( x_return_status OUT NOCOPY varchar2
289   )
290 IS
291 BEGIN
292   x_return_status := FND_API.G_RET_STS_SUCCESS;
293 END PRE_INSERT_REQ_HEADER;
294 
295 /*** Called after requirement Insert ***/
296 PROCEDURE POST_INSERT_REQ_HEADER( x_return_status OUT NOCOPY varchar2 )
297 IS
298   l_req_header_id  NUMBER;
299   l_enabled_flag         VARCHAR2(30);
300 BEGIN
301   l_enabled_flag := JTM_PROFILE_UTL_PKG.GET_ENABLE_FLAG_AT_RESP( P_APP_SHORT_NAME => 'CSL' );
302   IF l_enabled_flag <> 'Y' THEN
303    x_return_status := FND_API.G_RET_STS_SUCCESS;
304    RETURN;
305   END IF;
306   /*** get debug level ***/
307   g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
308   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
309     jtm_message_log_pkg.Log_Msg
310     ( l_req_header_id
311     , g_table_name
312     , 'Entering POST_INSERT hook'
313     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
314   END IF;
315 
316   l_req_header_id := CSP_REQUIREMENT_HEADERS_PKG.user_hooks_rec.REQUIREMENT_HEADER_ID;
317 
318   /*** Insert record if applicable ***/
319   IF Replicate_Record(l_req_header_id) THEN
320     Insert_ACC_Record(l_req_header_id);
321   END IF;
322 
323   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
324     jtm_message_log_pkg.Log_Msg
325     ( l_req_header_id
326     , g_table_name
327     , 'Leaving POST_INSERT hook'
328     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
329   END IF;
330 
331   x_return_status := FND_API.G_RET_STS_SUCCESS;
332   RETURN;
333 
334 EXCEPTION WHEN OTHERS THEN
335   /*** hook failed -> log error ***/
336   IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
337     jtm_message_log_pkg.Log_Msg
338     ( l_req_header_id
339     , g_table_name
340     , 'Caught exception in POST_INSERT hook:' || fnd_global.local_chr(10) || sqlerrm
341     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
342   END IF;
343   fnd_msg_pub.Add_Exc_Msg('CSL_CSP_REQ_HEADERS_ACC_PKG','POST_INSERT_REQ_HEADER',sqlerrm);
344 --  x_return_status := FND_API.G_RET_STS_ERROR;
345   x_return_status := FND_API.G_RET_STS_SUCCESS;
346 END POST_INSERT_REQ_HEADER;
347 
348 /* Called before requirement Update */
349 PROCEDURE PRE_UPDATE_REQ_HEADER
350   ( x_return_status OUT NOCOPY varchar2
351   )
352 IS
353 BEGIN
354   x_return_status := FND_API.G_RET_STS_SUCCESS;
355 
356 EXCEPTION WHEN OTHERS THEN
357   /*** hook failed -> log error ***/
358   fnd_msg_pub.Add_Exc_Msg('CSL_CSP_REQ_HEADERS_ACC_PKG','PRE_UPDATE_REQ_HEADER',sqlerrm);
359 --  x_return_status := FND_API.G_RET_STS_ERROR;
360   x_return_status := FND_API.G_RET_STS_SUCCESS;
361 END PRE_UPDATE_REQ_HEADER;
362 
363 /* Called after requirement Update */
364 PROCEDURE POST_UPDATE_REQ_HEADER( x_return_status OUT NOCOPY varchar2 )
365 IS
366   l_req_header_id        NUMBER;
367   l_enabled_flag         VARCHAR2(30);
368 BEGIN
369   l_enabled_flag := JTM_PROFILE_UTL_PKG.GET_ENABLE_FLAG_AT_RESP( P_APP_SHORT_NAME => 'CSL' );
370   IF l_enabled_flag <> 'Y' THEN
371    x_return_status := FND_API.G_RET_STS_SUCCESS;
372    RETURN;
373   END IF;
374   /*** get debug level ***/
375   g_debug_level := JTM_HOOK_UTIL_PKG.Get_Debug_Level;
376 
377   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
378     jtm_message_log_pkg.Log_Msg
379     ( l_req_header_id
380     , g_table_name
381     , 'Entering POST_UPDATE hook'
382     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
383   END IF;
384 
385   l_req_header_id := CSP_REQUIREMENT_HEADERS_PKG.user_hooks_rec.REQUIREMENT_HEADER_ID;
386 
387   IF Replicate_Record( l_req_header_id ) THEN
388     Update_ACC_Record(l_req_header_id);
389   END IF;
390 
391   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
392     jtm_message_log_pkg.Log_Msg
393     ( l_req_header_id
394     , g_table_name
395     , 'Leaving POST_UPDATE hook'
396     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
397   END IF;
398 
399   x_return_status := FND_API.G_RET_STS_SUCCESS;
400 EXCEPTION WHEN OTHERS THEN
401   /*** hook failed -> log error ***/
402   IF g_debug_level >= JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR THEN
403     jtm_message_log_pkg.Log_Msg
404     ( l_req_header_id
405     , g_table_name
406     , 'Caught exception in POST_UPDATE hook:' || fnd_global.local_chr(10) || sqlerrm
407     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_ERROR);
408   END IF;
409   fnd_msg_pub.Add_Exc_Msg('CSL_CSP_REQ_HEADERS_ACC_PKG','POST_UPDATE_REQ_HEADER',sqlerrm);
410 --  x_return_status := FND_API.G_RET_STS_ERROR;
411   x_return_status := FND_API.G_RET_STS_SUCCESS;
412 END POST_UPDATE_REQ_HEADER;
413 
414 /* Called before req header Delete */
415 PROCEDURE PRE_DELETE_REQ_HEADER
416   ( x_return_status OUT NOCOPY varchar2
417   )
418 IS
419 BEGIN
420   x_return_status := FND_API.G_RET_STS_SUCCESS;
421 END PRE_DELETE_REQ_HEADER;
422 
423 /* Called after req header Delete */
424 PROCEDURE POST_DELETE_REQ_HEADER
425   ( x_return_status OUT NOCOPY varchar2
426   )
427 IS
428 BEGIN
429 
430   x_return_status := FND_API.G_RET_STS_SUCCESS;
431 
432 EXCEPTION WHEN OTHERS THEN
433   /*** hook failed -> log error ***/
434   fnd_msg_pub.Add_Exc_Msg('CSL_CSP_REQ_HEADERS_ACC_PKG','POST_DELETE_REQ_HEADER',sqlerrm);
435 --  x_return_status := FND_API.G_RET_STS_ERROR;
436   x_return_status := FND_API.G_RET_STS_SUCCESS;
437 END POST_DELETE_REQ_HEADER;
438 
439 /* Remove all ACC records of a mobile user */
440 PROCEDURE Delete_All_ACC_Records
441   ( p_resource_id in NUMBER
442   , x_return_status OUT NOCOPY varchar2
443   )
444 IS
445   CURSOR c_req_header (b_resource_id NUMBER) IS
446    SELECT REQUIREMENT_HEADER_ID
447    FROM   CSP_REQUIREMENT_HEADERS RH
448    WHERE  RH.RESOURCE_ID = b_resource_id;
449 
450 /* CURSOR c_req_task_ass (b_resource_id NUMBER) IS
451   SELECT crh.requirement_header_id
452    FROM   jtf.jtf_task_assignments jta
453    ,      csp_requirement_headers crh
454    WHERE  crh.task_assignment_id = jta.task_assignment_id
455    AND    jta.assignee_role = 'ASSIGNEE'
456    AND    jta.resource_id = b_resource_id; */
457 
458 BEGIN
459 
460   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
461     jtm_message_log_pkg.Log_Msg
462     ( p_resource_id
463     , g_table_name
464     , 'Entering Delete_All_ACC_Records procedure for user: ' || p_resource_id
465     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
466   END IF;
467 
468   /*First all resource created requirements*/
469   FOR r_req_header IN c_req_header( p_resource_id ) LOOP
470     Delete_Acc_Record( r_req_header.requirement_header_id, p_resource_id );
471   END LOOP;
472 
473   /*Second all task assignment created requirements*/
474 --  FOR r_req_task_ass IN c_req_task_ass( p_resource_id ) LOOP
475 --    Delete_Acc_Record( r_req_task_ass.requirement_header_id, p_resource_id );
476 --  END LOOP;
477 
478   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
479     jtm_message_log_pkg.Log_Msg
480     ( p_resource_id
481     , g_table_name
482     , 'Leaving Delete_All_ACC_Records procedure for user: ' || p_resource_id
483     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
484   END IF;
485 
486   x_return_status := FND_API.G_RET_STS_SUCCESS;
487 EXCEPTION WHEN OTHERS THEN
488   /*** hook failed -> log error ***/
489   fnd_msg_pub.Add_Exc_Msg('CSL_CSP_REQ_HEADERS_ACC_PKG','Delete_All_ACC_Records',sqlerrm);
490 --  x_return_status := FND_API.G_RET_STS_ERROR;
491   x_return_status := FND_API.G_RET_STS_SUCCESS;
492 END Delete_All_ACC_Records;
493 
494 /* Full synch for a mobile user */
495 PROCEDURE Insert_All_ACC_Records
496   ( p_resource_id in NUMBER
497   , x_return_status OUT NOCOPY varchar2
498   )
499 IS
500   CURSOR c_req_header (b_resource_id NUMBER) IS
501    SELECT REQUIREMENT_HEADER_ID
502    FROM   CSP_REQUIREMENT_HEADERS RH
503    WHERE  RH.RESOURCE_ID = b_resource_id;
504 
505 /* CURSOR c_req_task_ass (b_resource_id NUMBER) IS
506   SELECT crh.requirement_header_id
507    FROM   jtf.jtf_task_assignments jta
508    ,      csp_requirement_headers crh
509    WHERE  crh.task_assignment_id = jta.task_assignment_id
510    AND    jta.assignee_role = 'ASSIGNEE'
511    AND    jta.resource_id = b_resource_id; */
512 
513 BEGIN
514 
515   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
516     jtm_message_log_pkg.Log_Msg
517     ( p_resource_id
518     , g_table_name
519     , 'Entering Insert_All_ACC_Records procedure for user: ' || p_resource_id
520     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
521   END IF;
522 
523   /*First all resource based requirements*/
524   FOR r_req_header IN c_req_header( p_resource_id ) LOOP
525     IF Replicate_Record( r_req_header.requirement_header_id ) THEN
526       Insert_Acc_Record( r_req_header.requirement_header_id );
527     END IF;
528   END LOOP;
529 
530   /*Second all task assignmnet based requirements*/
531 --  FOR r_req_task_ass IN c_req_task_ass( p_resource_id ) LOOP
532 --    IF Replicate_Record( r_req_task_ass.requirement_header_id ) THEN
533 --      Insert_Acc_Record( r_req_task_ass.requirement_header_id );
534 --    END IF;
535 --  END LOOP;
536 
537   IF g_debug_level = JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL THEN
538     jtm_message_log_pkg.Log_Msg
539     ( p_resource_id
540     , g_table_name
541     , 'Leaving Insert_All_ACC_Records procedure for user: ' || p_resource_id
542     , JTM_HOOK_UTIL_PKG.G_DEBUG_LEVEL_FULL);
543   END IF;
544 
545   x_return_status := FND_API.G_RET_STS_SUCCESS;
546 EXCEPTION WHEN OTHERS THEN
547   /*** hook failed -> log error ***/
548   fnd_msg_pub.Add_Exc_Msg('CSL_CSP_REQ_HEADERS_ACC_PKG','Insert_All_ACC_Records',sqlerrm);
549 --  x_return_status := FND_API.G_RET_STS_ERROR;
550   x_return_status := FND_API.G_RET_STS_SUCCESS;
551 END Insert_All_ACC_Records;
552 
553 END CSL_CSP_REQ_HEADERS_ACC_PKG;