DBA Data[Home] [Help]

PACKAGE BODY: APPS.BOM_BUSINESS_EVENT_PKG

Source


1 package body Bom_Business_Event_PKG as
2 /* $Header: BOMSBESB.pls 120.9.12010000.4 2009/12/24 08:25:18 gliang ship $ */
3 /*==========================================================================+
4 |   Copyright (c) 1993 Oracle Corporation Belmont, California, USA          |
5 |                          All rights reserved.                             |
6 +===========================================================================+
7 |                                                                           |
8 | File Name    : BOMSBESS.pls                                               |
9 | DESCRIPTION  : Package for raising various BOM Business Events            |
10 |                User of this API would use one of the defined constants    |
11 |                and call the raise event with the necessary parameters     |
12 |                Any Event that requires parameters must first call the     |
13 |          first call the Add_Parameter_To_List and then call the     |
14 |          raise_Event method. wf_parameter_list_t can be initialized |
15 |    as <variable> := wf_parameter_list_t()         |
16 | History:                    |
17 |--------                                                                   |
18 | 02-Sept-2003  Rahul Chitko  Initial Creation          |
19 +==========================================================================*/
20 
21 
22   /*
23   ** Procedure: Raise_Event
24   ** Purpose  : Enables a Business Event to be raised. Any action within the realm of product structure
25   **        can use this api to raise a pre-defined event, with the necessary parameters.
26   ** Parameter: Event_Name - should ideally be one of the pre-defined constants. please refer to the spec.
27   **        Event_Key  - a unique identifier for this event, something like sysdate.
28   **        Parameter List - this is a name/value pair of parameters that will be passed to the event.
29   */
30   PROCEDURE Raise_Event( p_Event_Name IN  VARCHAR2
31            , p_Event_Key  IN  VARCHAR2
32            , p_Parameter_List IN OUT NOCOPY  wf_parameter_list_t
33            )
34   IS
35   BEGIN
36     wf_event.raise( p_Event_Name  => p_Event_Name
37             , p_Event_Key => p_Event_Key
38             , p_parameters  => p_Parameter_List
39              );
40 
41     p_Parameter_List.DELETE;
42  EXCEPTION
43              --Added for bug 8462879
44        WHEN OTHERS THEN
45           ERROR_HANDLER.Add_Error_Message(
46              p_message_name              => 'EGO_EVENT_SUBSCR'
47             ,p_application_id            => 'EGO'
48             ,p_message_type              => FND_API.G_RET_STS_ERROR
49             ,p_addto_fnd_stack           => 'Y');
50           raise Bom_Business_Event_PKG.G_SUBSCRIPTION_EXC;
51 
52  END Raise_Event;
53 
54   /*
55   ** Procedure: Add_Parameter_To_List
56   ** Purpose  : This is a wrappper procedure on top of what workflow provides. This indirection
57   **        is created only to serve as a better extensibility.
58   ** Parameter: p_Parameter_Name - name of the parameter
59   **        p_value - value of the parameter
60   **        parameter_list - returns the new parameter list
61   */
62   PROCEDURE Add_Parameter_To_List( p_Parameter_Name IN  VARCHAR2
63                , p_Value    IN  VARCHAR2
64                , p_parameter_List IN OUT NOCOPY wf_parameter_list_t
65                )
66   IS
67   BEGIN
68 
69     wf_event.AddParameterToList( p_name   => p_Parameter_Name
70              , p_value    => p_Value
71              , p_ParameterList  => p_parameter_List
72               );
73 
74   END Add_Parameter_To_List;
75 
76 
77   /* Utility procedures */
78 
79         PROCEDURE Raise_Item_Event
80         ( p_organization_id     IN  NUMBER
81          ,p_inventory_item_id   IN  NUMBER
82          ,p_item_name           IN  VARCHAR2
83          ,p_item_description    IN  VARCHAR2
84          ,p_Event_Name          IN  VARCHAR2)
85   IS
86     l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
87   BEGIN
88     Bom_Business_Event_PKG.Add_Parameter_To_List
89     ( p_parameter_name => 'INVENTORY_ITEM_ID'
90      ,p_value    => p_inventory_item_id
91      ,p_parameter_list => l_parameter_list);
92 
93     Bom_Business_Event_PKG.Add_Parameter_To_List
94     (p_parameter_name => 'ORGANIZATION_ID'
95     ,p_value    => p_organization_id
96     ,p_parameter_list => l_parameter_list);
97 
98     Bom_Business_Event_PKG.Add_Parameter_To_List
99     (p_parameter_name => 'ITEM_NAME'
100     ,p_value    => p_item_name
101     ,p_parameter_list => l_parameter_list);
102 
103     Bom_Business_Event_PKG.Add_Parameter_To_List
104     (p_parameter_name => 'ITEM_DESCRIPTION'
105     ,p_value    => p_item_description
106     ,p_parameter_list => l_parameter_list);
107 
108     --bug:5245403 Create a file with time precision of fraction of seconds to avoid
109     --overwrite in case of multiple events firing within a second.
110     Bom_Business_Event_PKG.Raise_event
111     ( p_Event_Name     => p_Event_Name
112      ,p_Event_Key    => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
113      ,p_parameter_list => l_parameter_list);
114 
115   END Raise_Item_Event;
116 
117          PROCEDURE Raise_Bill_Event
118          ( p_pk1_value  IN  VARCHAR2
119           ,p_pk2_value  IN  VARCHAR2
120           ,p_obj_name   IN VARCHAR2
121           ,p_structure_name IN VARCHAR2
122           ,p_organization_id IN NUMBER
123           ,p_structure_comment IN VARCHAR2
124           ,p_Event_Name IN  VARCHAR2
125 	  ,p_revised_item_sequence_id IN NUMBER DEFAULT NULL --Added for BUG#8266922
126 	  )
127          IS
128          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
129 
130          BEGIN
131 
132                 Bom_Business_Event_PKG.Add_Parameter_To_List
133                 ( p_parameter_name => 'OBJ_NAME'
134                  ,p_value          =>  p_obj_name
135                  ,p_parameter_list => l_parameter_list);
136 
137                 Bom_Business_Event_PKG.Add_Parameter_To_List
138                 (p_parameter_name => 'PK1_VALUE'
139                 ,p_value          =>   p_pk1_value
140                 ,p_parameter_list => l_parameter_list);
141 
142                 Bom_Business_Event_PKG.Add_Parameter_To_List
143                 (p_parameter_name => 'PK2_VALUE'
144                 ,p_value          =>  p_pk2_value
145                 ,p_parameter_list => l_parameter_list);
146 
147                 Bom_Business_Event_PKG.Add_Parameter_To_List
148                 (p_parameter_name => 'STRUCTURE_NAME'
149                 ,p_value          => nvl(p_structure_name,'PRIMARY')
150                 ,p_parameter_list => l_parameter_list);
151 
152                 Bom_Business_Event_PKG.Add_Parameter_To_List
153                 (p_parameter_name => 'ORGANIZATION_ID'
154                 ,p_value    => p_organization_id
155                 ,p_parameter_list => l_parameter_list);
156 
157 
158                 Bom_Business_Event_PKG.Add_Parameter_To_List        -- Added for bug#8266922
159                 (p_parameter_name => 'REVISED_ITEM_SEQUENCE_ID'
160                 ,p_value    => p_revised_item_sequence_id
161                 ,p_parameter_list => l_parameter_list);
162 
163                 Bom_Business_Event_PKG.Raise_event
164                 ( p_Event_Name     => p_Event_Name
165                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
166                  ,p_parameter_list => l_parameter_list);
167          END;
168 
169          PROCEDURE Raise_Component_Event
170          ( p_bill_sequence_Id IN  NUMBER
171            ,p_pk1_value IN VARCHAR2
172            ,p_pk2_value IN VARCHAR2
173            ,p_obj_name IN VARCHAR2
174            ,p_organization_id IN NUMBER
175            ,p_comp_item_name  IN VARCHAR2
176            ,p_comp_description IN VARCHAR2
177           ,p_Event_Name IN  VARCHAR2)
178           IS
179 
180          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
181 
182          BEGIN
183 
184                 Bom_Business_Event_PKG.Add_Parameter_To_List
185                 ( p_parameter_name => 'OBJ_NAME'
186                  ,p_value          =>  p_obj_name
187                  ,p_parameter_list => l_parameter_list);
188 
189                 Bom_Business_Event_PKG.Add_Parameter_To_List
190                 (p_parameter_name => 'PK1_VALUE'
191                 ,p_value          =>  p_pk1_value
192                 ,p_parameter_list => l_parameter_list);
193 
194                 Bom_Business_Event_PKG.Add_Parameter_To_List
195                 (p_parameter_name => 'PK2_VALUE'
196                 ,p_value          =>  p_pk2_value
197                 ,p_parameter_list => l_parameter_list);
198 
199                 Bom_Business_Event_PKG.Add_Parameter_To_List
200                 (p_parameter_name => 'BILL_SEQUENCE_ID'
201                 ,p_value          =>  p_bill_sequence_id
202                 ,p_parameter_list => l_parameter_list);
203 
204                 Bom_Business_Event_PKG.Add_Parameter_To_List
205                 (p_parameter_name => 'ORGANIZATION_ID'
206                 ,p_value          =>  p_organization_id
207                 ,p_parameter_list => l_parameter_list);
208 
209                 Bom_Business_Event_PKG.Add_Parameter_To_List
210                 (p_parameter_name => 'COMPONENT_ITEM_NAME'
211                 ,p_value          =>  p_comp_item_name
212                 ,p_parameter_list => l_parameter_list);
213 
214                 Bom_Business_Event_PKG.Add_Parameter_To_List
215                 (p_parameter_name => 'COMPONENT_ITEM_DESCRIPTION'
216                 ,p_value          =>  p_comp_description
217                 ,p_parameter_list => l_parameter_list);
218 
219                 Bom_Business_Event_PKG.Raise_event
220                 ( p_Event_Name     => p_Event_Name
221                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
222                  ,p_parameter_list => l_parameter_list);
223          END;
224 
225 
226 
227          -- Modified to add WHO columns
228          PROCEDURE Raise_Bill_Event       --4306013
229          (p_Event_Load_Type IN VARCHAR2
230          ,p_Request_Identifier IN  NUMBER
231          ,p_Batch_Identifier IN NUMBER
232          ,p_Event_Entity_Name IN  VARCHAR2
233          ,p_Event_Entity_Parent_Id IN  NUMBER
234          ,p_Event_Name IN  VARCHAR2
235          ,p_last_update_date IN DATE DEFAULT SYSDATE
236          ,p_last_updated_by IN NUMBER DEFAULT NULL
237          ,p_creation_date IN DATE DEFAULT SYSDATE
238          ,p_created_by  IN NUMBER DEFAULT NULL
239          ,p_last_update_login IN NUMBER DEFAULT NULL
240          )
241          IS
242          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
243          l_common_bill_sequence_id NUMBER;
244          BEGIN
245  SELECT common_bill_sequence_id INTO l_common_bill_sequence_id
246     FROM bom_structures_b
247     WHERE bill_sequence_id =  p_Event_Entity_Parent_Id;
248 
249 Bom_Business_Event_PKG.Add_Parameter_To_List
250                 ( p_parameter_name => 'COMMON_BILL_SEQUENCE_ID'
251                  ,p_value          =>  l_common_bill_sequence_id
252                  ,p_parameter_list => l_parameter_list);
253 
254     Bom_Business_Event_PKG.Add_Parameter_To_List
255                 ( p_parameter_name => 'EVENT_TYPE'
256                  ,p_value          =>  p_Event_Load_Type
257                  ,p_parameter_list => l_parameter_list);
258 
259                 Bom_Business_Event_PKG.Add_Parameter_To_List
260                 (p_parameter_name => 'REQUEST_IDENTIFIER'
261                 ,p_value          =>   p_Request_Identifier
262                 ,p_parameter_list => l_parameter_list);
263 
264                 Bom_Business_Event_PKG.Add_Parameter_To_List
265                 (p_parameter_name => 'BATCH_IDENTIFIER'
266                 ,p_value          =>  p_Batch_Identifier
267                 ,p_parameter_list => l_parameter_list);
268 
269                 Bom_Business_Event_PKG.Add_Parameter_To_List
270                 (p_parameter_name => 'EVENT_ENTITY_NAME'
271                 ,p_value          =>  p_Event_Entity_Name
272                 ,p_parameter_list => l_parameter_list);
273 
274                 Bom_Business_Event_PKG.Add_Parameter_To_List
275                 (p_parameter_name => 'EVENT_ENTITY_PARENT_ID'
276                 ,p_value    => p_Event_Entity_Parent_Id
280                 (p_parameter_name => 'LAST_UPDATE_DATE'
277                 ,p_parameter_list => l_parameter_list);
278 
279                 Bom_Business_Event_PKG.Add_Parameter_To_List
281                 ,p_value    => to_char(p_last_update_date,'dd-mon-yyyy hh24:mi:ss')
282                 ,p_parameter_list => l_parameter_list);
283 
284                 Bom_Business_Event_PKG.Add_Parameter_To_List
285                 (p_parameter_name => 'LAST_UPDATED_BY'
286                 ,p_value    => p_last_updated_by
287                 ,p_parameter_list => l_parameter_list);
288 
289                  IF (p_creation_date IS NOT NULL)
290                  THEN
291                  Bom_Business_Event_PKG.Add_Parameter_To_List
292                  (p_parameter_name => 'CREATION_DATE'
293                  ,p_value    => to_char(p_creation_date,'dd-mon-yyyy hh24:mi:ss')
294                  ,p_parameter_list => l_parameter_list);
295 
296                  Bom_Business_Event_PKG.Add_Parameter_To_List
297                  (p_parameter_name => 'CREATED_BY'
298                   ,p_value    => p_created_by
299                   ,p_parameter_list => l_parameter_list);
300                  END IF;
301 
302                 Bom_Business_Event_PKG.Raise_event
303                 ( p_Event_Name     => p_Event_Name
304                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
305                  ,p_parameter_list => l_parameter_list);
306          END Raise_Bill_Event;
307 
308           -- Modified to add WHO columns
309          PROCEDURE Raise_Bill_Event       --4306013
310          ( p_Event_Load_Type IN VARCHAR2
311           ,p_Request_Identifier IN  NUMBER
312           ,p_Batch_Identifier IN NUMBER
313           ,p_Event_Entity_Name IN  VARCHAR2
314           ,p_Event_Name IN  VARCHAR2
315           ,p_last_update_date IN DATE DEFAULT SYSDATE
316           ,p_last_updated_by IN NUMBER DEFAULT NULL
317           ,p_creation_date IN DATE DEFAULT SYSDATE
318           ,p_created_by  IN NUMBER DEFAULT NULL
319           ,p_last_update_login IN NUMBER DEFAULT NULL
320           )
321          IS
322          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
323          BEGIN
324     Bom_Business_Event_PKG.Add_Parameter_To_List
325                 ( p_parameter_name => 'EVENT_TYPE'
326                  ,p_value          =>  p_Event_Load_Type
327                  ,p_parameter_list => l_parameter_list);
328 
329                 Bom_Business_Event_PKG.Add_Parameter_To_List
330                 (p_parameter_name => 'REQUEST_IDENTIFIER'
331                 ,p_value          =>   p_Request_Identifier
332                 ,p_parameter_list => l_parameter_list);
333 
334                 Bom_Business_Event_PKG.Add_Parameter_To_List
335                 (p_parameter_name => 'BATCH_IDENTIFIER'
336                 ,p_value          =>  p_Batch_Identifier
337                 ,p_parameter_list => l_parameter_list);
338 
339                 Bom_Business_Event_PKG.Add_Parameter_To_List
340                 (p_parameter_name => 'EVENT_ENTITY_NAME'
341                 ,p_value          =>  p_Event_Entity_Name
342                 ,p_parameter_list => l_parameter_list);
343 
344                 Bom_Business_Event_PKG.Add_Parameter_To_List
345                 (p_parameter_name => 'LAST_UPDATE_DATE'
346                 ,p_value          =>  to_char(p_last_update_date,'dd-mon-yyyy hh24:mi:ss')
347                 ,p_parameter_list => l_parameter_list);
348 
349                 Bom_Business_Event_PKG.Add_Parameter_To_List
350                 (p_parameter_name => 'LAST_UPDATED_BY'
351                 ,p_value          =>  p_last_updated_by
352                 ,p_parameter_list => l_parameter_list);
353 
354                  IF (p_creation_date IS NOT NULL)
355                  THEN
356                  Bom_Business_Event_PKG.Add_Parameter_To_List
357                  (p_parameter_name => 'CREATION_DATE'
358                  ,p_value    => to_char(p_creation_date,'dd-mon-yyyy hh24:mi:ss')
359                  ,p_parameter_list => l_parameter_list);
360 
361                  Bom_Business_Event_PKG.Add_Parameter_To_List
362                  (p_parameter_name => 'CREATED_BY'
363                   ,p_value    => p_created_by
364                   ,p_parameter_list => l_parameter_list);
365                  END IF;
366 
367 
368                 Bom_Business_Event_PKG.Raise_event
369                 ( p_Event_Name     => p_Event_Name
370                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
371                  ,p_parameter_list => l_parameter_list);
372          END Raise_Bill_Event;
373 
374 
375  -- Modified to add WHO columns
376  PROCEDURE Raise_Bill_Event
377          (  p_pk1_value IN VARCHAR2,
378             p_pk2_value IN VARCHAR2,
379             p_obj_name  IN VARCHAR2,
380             p_structure_name IN VARCHAR2,
381             p_organization_id IN NUMBER,
382             p_structure_comment  IN VARCHAR2,
383             p_Event_Load_Type IN VARCHAR2,
384             p_Event_Entity_Name IN  VARCHAR2,
385             p_Event_Entity_Parent_Id IN  NUMBER,
386             p_Event_Name IN  VARCHAR2,
387             p_last_update_date IN DATE DEFAULT SYSDATE,
388             p_last_updated_by IN NUMBER DEFAULT NULL,
389             p_creation_date IN DATE DEFAULT SYSDATE,
390             p_created_by  IN NUMBER DEFAULT NULL,
391             p_last_update_login IN NUMBER DEFAULT NULL,
392             p_component_seq_id IN NUMBER DEFAULT NULL
393             )
394 
395    IS
396     l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
397           l_common_bill_sequence_id NUMBER;
398  BEGIN
399 
400  SELECT common_bill_sequence_id INTO l_common_bill_sequence_id
401     FROM bom_structures_b
405                 ( p_parameter_name => 'COMMON_BILL_SEQUENCE_ID'
402     WHERE bill_sequence_id =  p_Event_Entity_Parent_Id;
403 
404 Bom_Business_Event_PKG.Add_Parameter_To_List
406                  ,p_value          =>  l_common_bill_sequence_id
407                  ,p_parameter_list => l_parameter_list);
408 
409     Bom_Business_Event_PKG.Add_Parameter_To_List
410                 ( p_parameter_name => 'OBJ_NAME'
411                  ,p_value          =>  p_obj_name
412                  ,p_parameter_list => l_parameter_list);
413 
414                 Bom_Business_Event_PKG.Add_Parameter_To_List
415                 (p_parameter_name => 'PK1_VALUE'
416                 ,p_value          =>   p_pk1_value
417                 ,p_parameter_list => l_parameter_list);
418 
419                 Bom_Business_Event_PKG.Add_Parameter_To_List
420                 (p_parameter_name => 'PK2_VALUE'
421                 ,p_value          =>  p_pk2_value
422                 ,p_parameter_list => l_parameter_list);
423 
424                 Bom_Business_Event_PKG.Add_Parameter_To_List
425                 (p_parameter_name => 'STRUCTURE_NAME'
426                 ,p_value          =>  nvl(p_structure_name,'PRIMARY')
427                 ,p_parameter_list => l_parameter_list);
428 
429                 Bom_Business_Event_PKG.Add_Parameter_To_List
430                 (p_parameter_name => 'ORGANIZATION_ID'
431                 ,p_value    => p_organization_id
432                 ,p_parameter_list => l_parameter_list);
433 
434                 Bom_Business_Event_PKG.Add_Parameter_To_List
435                 ( p_parameter_name => 'EVENT_TYPE'
436                  ,p_value          =>  p_Event_Load_Type
437                  ,p_parameter_list => l_parameter_list);
438 
439                 Bom_Business_Event_PKG.Add_Parameter_To_List
440                 (p_parameter_name => 'EVENT_ENTITY_NAME'
441                 ,p_value          =>  p_Event_Entity_Name
442                 ,p_parameter_list => l_parameter_list);
443 
444                  Bom_Business_Event_PKG.Add_Parameter_To_List
445                  (p_parameter_name => 'EVENT_ENTITY_PARENT_ID'
446                   ,p_value    => p_Event_Entity_Parent_Id
447                   ,p_parameter_list => l_parameter_list);
448 
449                  IF(p_component_seq_id IS NOT NULL)
450                  THEN
451                  Bom_Business_Event_PKG.Add_Parameter_To_List
452                  (p_parameter_name => 'COMPONENT_SEQUENCE_ID'
453                  ,p_value    => p_component_seq_id
454                  ,p_parameter_list => l_parameter_list);
455                  END IF;
456 
457                  Bom_Business_Event_PKG.Add_Parameter_To_List
458                  (p_parameter_name => 'LAST_UPDATE_DATE'
459                  ,p_value    => to_char(p_last_update_date,'dd-mon-yyyy hh24:mi:ss')
460                  ,p_parameter_list => l_parameter_list);
461 
462                   Bom_Business_Event_PKG.Add_Parameter_To_List
463                   (p_parameter_name => 'LAST_UPDATED_BY'
464                    ,p_value    => p_last_updated_by
465                    ,p_parameter_list => l_parameter_list);
466 
467                  IF (p_creation_date IS NOT NULL)
468                  THEN
469                  Bom_Business_Event_PKG.Add_Parameter_To_List
470                  (p_parameter_name => 'CREATION_DATE'
471                  ,p_value    => to_char(p_creation_date,'dd-mon-yyyy hh24:mi:ss')
472                  ,p_parameter_list => l_parameter_list);
473 
474                  Bom_Business_Event_PKG.Add_Parameter_To_List
475                  (p_parameter_name => 'CREATED_BY'
476                   ,p_value    => p_created_by
477                   ,p_parameter_list => l_parameter_list);
478                  END IF;
479 
480                 Bom_Business_Event_PKG.Raise_event
481                 ( p_Event_Name     => p_Event_Name
482                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
483                  ,p_parameter_list => l_parameter_list);
484          END;
485 
486   /*  **************************************************************************************  */
487    -- Added for bug 8462879
488     PROCEDURE Raise_Bill_Event
489             (  p_pk1_value IN VARCHAR2,
490                p_pk2_value IN VARCHAR2,
491                p_obj_name  IN VARCHAR2,
492                p_structure_name IN VARCHAR2,
493                p_organization_id IN NUMBER,
494                p_structure_comment  IN VARCHAR2,
495                p_Event_Load_Type IN VARCHAR2,
496                p_Event_Entity_Name IN  VARCHAR2,
497                p_Event_Entity_Parent_Id IN  NUMBER,
498                p_Event_Name IN  VARCHAR2,
499                p_last_update_date IN DATE DEFAULT SYSDATE,
500                p_last_updated_by IN NUMBER DEFAULT NULL,
501                p_creation_date IN DATE DEFAULT SYSDATE,
502                p_created_by  IN NUMBER DEFAULT NULL,
503                p_last_update_login IN NUMBER DEFAULT NULL,
504                p_component_seq_id IN NUMBER DEFAULT NULL,
505                p_return_status  OUT NOCOPY VARCHAR2, --Added for bug 8437166
506                p_msg_data  OUT NOCOPY VARCHAR2  --Added for bug 8437166
507                )
508 
509       IS
510             l_message_list          ERROR_HANDLER.Error_Tbl_Type;
511             BEGIN
512             Raise_Bill_Event(p_pk1_value            =>        p_pk1_value
513                             ,p_pk2_value            =>        p_pk2_value
514                             ,p_obj_name             =>       p_obj_name
515                             ,p_structure_name       =>  p_structure_name
516                             ,p_organization_id      =>  p_organization_id
517                             ,p_structure_comment    =>  p_structure_comment
518                             ,p_Event_Load_Type      =>  p_Event_Load_Type
522                             ,p_last_update_date     =>  p_last_update_date
519                             ,p_Event_Entity_Name    =>  p_Event_Entity_Name
520                           ,p_Event_Entity_Parent_Id => p_Event_Entity_Parent_Id
521                             ,p_Event_Name           =>  p_Event_Name
523                             ,p_last_updated_by      =>  p_last_updated_by
524                             ,p_creation_date        =>  p_creation_date
525                             ,p_created_by           =>  p_created_by
526                             ,p_last_update_login    =>  p_last_update_login
527                             ,p_component_seq_id     =>  p_component_seq_id
528                             );
529 
530                    p_msg_data := NULL;
531                    p_return_status :=  FND_API.G_RET_STS_SUCCESS;
532   EXCEPTION
533          WHEN Bom_Business_Event_PKG.G_SUBSCRIPTION_EXC THEN
534               p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
535               ERROR_HANDLER.Get_Message_List(l_message_list);
536               FOR i IN l_message_list.FIRST..l_message_list.LAST
537               LOOP
538               p_msg_data := p_msg_data || l_message_list(i).message_text;
539               END LOOP;
540   END;
541    /*  **************************************************************************************  */
542 
543 
544   PROCEDURE Raise_Component_Event     --4306013
545          (p_Event_Load_Type IN VARCHAR2
546     ,p_Request_Identifier IN  NUMBER
547     ,p_Batch_Identifier IN NUMBER
548     ,p_Event_Entity_Name IN  VARCHAR2
549       ,p_Event_Entity_Parent_Id IN  NUMBER
550           ,p_Event_Name IN  VARCHAR2)
551          IS
552          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
553          BEGIN
554 
555     Bom_Business_Event_PKG.Add_Parameter_To_List
556                 ( p_parameter_name => 'EVENT_TYPE'
557                  ,p_value          =>  p_Event_Load_Type
558                  ,p_parameter_list => l_parameter_list);
559 
560                 Bom_Business_Event_PKG.Add_Parameter_To_List
561                 (p_parameter_name => 'REQUEST_IDENTIFIER'
562                 ,p_value          =>   p_Request_Identifier
563                 ,p_parameter_list => l_parameter_list);
564 
565                 Bom_Business_Event_PKG.Add_Parameter_To_List
566                 (p_parameter_name => 'BATCH_IDENTIFIER'
567                 ,p_value          =>  p_Batch_Identifier
568                 ,p_parameter_list => l_parameter_list);
569 
570                 Bom_Business_Event_PKG.Add_Parameter_To_List
571                 (p_parameter_name => 'EVENT_ENTITY_NAME'
572                 ,p_value          =>  p_Event_Entity_Name
573                 ,p_parameter_list => l_parameter_list);
574 
575     Bom_Business_Event_PKG.Add_Parameter_To_List
576     (p_parameter_name => 'EVENT_ENTITY_PARENT_ID'
577     ,p_value    => p_Event_Entity_Parent_Id
578     ,p_parameter_list => l_parameter_list);
579 
580                 Bom_Business_Event_PKG.Raise_event
581                 ( p_Event_Name     => p_Event_Name
582                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
583                  ,p_parameter_list => l_parameter_list);
584          END Raise_Component_Event;
585 
586 
587  -- Modified to add WHO columns
588   PROCEDURE Raise_Component_Event     --4306013
589          ( p_Event_Load_Type IN VARCHAR2
590           ,p_Request_Identifier IN  NUMBER
591           ,p_Batch_Identifier IN NUMBER
592           ,p_Event_Entity_Name IN  VARCHAR2
593           ,p_Event_Name IN  VARCHAR2
594           ,p_last_update_date IN DATE DEFAULT SYSDATE
595           ,p_last_updated_by IN NUMBER DEFAULT NULL
596           ,p_creation_date IN DATE DEFAULT SYSDATE
597           ,p_created_by  IN NUMBER DEFAULT NULL
598           ,p_last_update_login IN NUMBER DEFAULT NULL
599          )
600          IS
601          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
602          BEGIN
603 
604                 Bom_Business_Event_PKG.Add_Parameter_To_List
605                 ( p_parameter_name => 'EVENT_TYPE'
606                  ,p_value          =>  p_Event_Load_Type
607                  ,p_parameter_list => l_parameter_list);
608 
609                 Bom_Business_Event_PKG.Add_Parameter_To_List
610                 (p_parameter_name => 'REQUEST_IDENTIFIER'
611                 ,p_value          =>   p_Request_Identifier
612                 ,p_parameter_list => l_parameter_list);
613 
614                 Bom_Business_Event_PKG.Add_Parameter_To_List
615                 (p_parameter_name => 'BATCH_IDENTIFIER'
616                 ,p_value          =>  p_Batch_Identifier
617                 ,p_parameter_list => l_parameter_list);
618 
619                 Bom_Business_Event_PKG.Add_Parameter_To_List
620                 (p_parameter_name => 'EVENT_ENTITY_NAME'
621                 ,p_value          =>  p_Event_Entity_Name
622                 ,p_parameter_list => l_parameter_list);
623 
624                 Bom_Business_Event_PKG.Add_Parameter_To_List
625                 (p_parameter_name => 'LAST_UPDATE_DATE'
626                 ,p_value          =>  to_char(p_last_update_date,'dd-mon-yyyy hh24:mi:ss')
627                 ,p_parameter_list => l_parameter_list);
628 
629 
630                 Bom_Business_Event_PKG.Add_Parameter_To_List
631                 (p_parameter_name => 'LAST_UPDATED_BY'
632                 ,p_value          =>  p_last_updated_by
633                 ,p_parameter_list => l_parameter_list);
634 
635                  IF (p_creation_date IS NOT NULL)
636                  THEN
637                  Bom_Business_Event_PKG.Add_Parameter_To_List
638                  (p_parameter_name => 'CREATION_DATE'
639                  ,p_value    => to_char(p_creation_date,'dd-mon-yyyy hh24:mi:ss')
643                  (p_parameter_name => 'CREATED_BY'
640                  ,p_parameter_list => l_parameter_list);
641 
642                  Bom_Business_Event_PKG.Add_Parameter_To_List
644                   ,p_value    => p_created_by
645                   ,p_parameter_list => l_parameter_list);
646                  END IF;
647 
648 
649                 Bom_Business_Event_PKG.Raise_event
650                 ( p_Event_Name     => p_Event_Name
651                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
652                  ,p_parameter_list => l_parameter_list);
653          END Raise_Component_Event;
654 
655 
656 /*  **************************************************************************************  */
657 
658          -- Modified to add WHO columns
659          PROCEDURE Raise_Component_Event
660          ( p_bill_sequence_Id IN  NUMBER,
661            p_pk1_value IN VARCHAR2,
662            p_pk2_value IN VARCHAR2,
663            p_obj_name  IN VARCHAR2,
664            p_organization_id IN NUMBER,
665            p_comp_item_name IN VARCHAR2,
666            p_comp_description in VARCHAR2,
667            p_Event_Load_Type IN VARCHAR2,
668            p_Event_Entity_Name IN  VARCHAR2,
669            p_Event_Entity_Parent_Id IN  NUMBER,
670            p_Event_Name IN  VARCHAR2,
671            p_last_update_date IN DATE DEFAULT SYSDATE,
672            p_last_updated_by IN NUMBER  DEFAULT NULL,
673            p_creation_date IN DATE DEFAULT SYSDATE,
674            p_created_by  IN NUMBER DEFAULT NULL,
675            p_last_update_login IN NUMBER DEFAULT NULL
676            )
677 
678     IS
679            l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
680          BEGIN
681 
682                 Bom_Business_Event_PKG.Add_Parameter_To_List
683                 ( p_parameter_name => 'OBJ_NAME'
684                  ,p_value          =>  p_obj_name
685                  ,p_parameter_list => l_parameter_list);
686 
687                 Bom_Business_Event_PKG.Add_Parameter_To_List
688                 (p_parameter_name => 'PK1_VALUE'
689                 ,p_value          =>  p_pk1_value
690                 ,p_parameter_list => l_parameter_list);
691 
692                 Bom_Business_Event_PKG.Add_Parameter_To_List
693                 (p_parameter_name => 'PK2_VALUE'
694                 ,p_value          =>  p_pk2_value
695                 ,p_parameter_list => l_parameter_list);
696 
697                 Bom_Business_Event_PKG.Add_Parameter_To_List
698                 (p_parameter_name => 'BILL_SEQUENCE_ID'
699                 ,p_value          =>  p_bill_sequence_id
700                 ,p_parameter_list => l_parameter_list);
701 
702                 Bom_Business_Event_PKG.Add_Parameter_To_List
703                 (p_parameter_name => 'ORGANIZATION_ID'
704                 ,p_value          =>  p_organization_id
705                 ,p_parameter_list => l_parameter_list);
706 
707                 Bom_Business_Event_PKG.Add_Parameter_To_List
708                 (p_parameter_name => 'COMPONENT_ITEM_NAME'
709                 ,p_value          =>  p_comp_item_name
710                 ,p_parameter_list => l_parameter_list);
711 
712            /*  bug 5324805
713 	       Bom_Business_Event_PKG.Add_Parameter_To_List
714                 (p_parameter_name => 'COMPONENT_ITEM_DESCRIPTION'
715                 ,p_value          =>  p_comp_description
716                 ,p_parameter_list => l_parameter_list);   */
717 
718                Bom_Business_Event_PKG.Add_Parameter_To_List
719                 ( p_parameter_name => 'EVENT_TYPE'
720                  ,p_value          =>  p_Event_Load_Type
721                  ,p_parameter_list => l_parameter_list);
722 
723                 Bom_Business_Event_PKG.Add_Parameter_To_List
724                 (p_parameter_name => 'EVENT_ENTITY_NAME'
725                 ,p_value          =>  p_Event_Entity_Name
726                 ,p_parameter_list => l_parameter_list);
727 
728                 Bom_Business_Event_PKG.Add_Parameter_To_List
729                 (p_parameter_name => 'EVENT_ENTITY_PARENT_ID'
730                 ,p_value    => p_Event_Entity_Parent_Id
731                 ,p_parameter_list => l_parameter_list);
732 
733                  Bom_Business_Event_PKG.Add_Parameter_To_List
734                  (p_parameter_name => 'LAST_UPDATE_DATE'
735                  ,p_value   => to_char(p_last_update_date,'dd-mon-yyyy hh24:mi:ss')
736                  ,p_parameter_list => l_parameter_list);
737 
738                  Bom_Business_Event_PKG.Add_Parameter_To_List
739                  (p_parameter_name => 'LAST_UPDATED_BY'
740                   ,p_value    => p_last_updated_by
741                   ,p_parameter_list => l_parameter_list);
742 
743                  IF (p_creation_date IS NOT NULL)
744                  THEN
745                  Bom_Business_Event_PKG.Add_Parameter_To_List
746                  (p_parameter_name => 'CREATION_DATE'
747                  ,p_value    => to_char(p_creation_date,'dd-mon-yyyy hh24:mi:ss')
748                  ,p_parameter_list => l_parameter_list);
749 
750                  Bom_Business_Event_PKG.Add_Parameter_To_List
751                  (p_parameter_name => 'CREATED_BY'
752                   ,p_value    => p_created_by
753                   ,p_parameter_list => l_parameter_list);
754                  END IF;
755 
756 
757                 Bom_Business_Event_PKG.Raise_event
758                 ( p_Event_Name     => p_Event_Name
759                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
760                  ,p_parameter_list => l_parameter_list);
761          END;
762 
763 /*  **************************************************************************************  */
764  --Add for bug 9108842, out param for error msg handling
768            p_pk2_value IN VARCHAR2,
765  PROCEDURE Raise_Component_Event
766          ( p_bill_sequence_Id IN  NUMBER,
767            p_pk1_value IN VARCHAR2,
769            p_obj_name  IN VARCHAR2,
770            p_organization_id IN NUMBER,
771            p_comp_item_name IN VARCHAR2,
772            p_comp_description in VARCHAR2,
773            p_Event_Load_Type IN VARCHAR2,
774            p_Event_Entity_Name IN  VARCHAR2,
775            p_Event_Entity_Parent_Id IN  NUMBER,
776            p_Event_Name IN  VARCHAR2,
777            p_last_update_date IN DATE DEFAULT SYSDATE,
778            p_last_updated_by IN NUMBER  DEFAULT NULL,
779            p_creation_date IN DATE DEFAULT SYSDATE,
780            p_created_by  IN NUMBER DEFAULT NULL,
781            p_last_update_login IN NUMBER DEFAULT NULL,
782            p_return_status  OUT NOCOPY VARCHAR2, --Added for bug 9108842
783            p_msg_data  OUT NOCOPY VARCHAR2  --Added for bug 9108842
784           )
785         IS
786      		 l_message_list  	ERROR_HANDLER.Error_Tbl_Type;
787          BEGIN
788            Error_Handler.Initialize; --  Added for bug 9057182 to clear error msg cache before raising BE
789 	         Raise_Component_Event
790 		         ( p_bill_sequence_Id      			  				=>     p_bill_sequence_Id         ,
791 							p_pk1_value             								=>     p_pk1_value                ,
792 							p_pk2_value             								=>     p_pk2_value                ,
793 							p_obj_name              								=>     p_obj_name                 ,
794 							p_organization_id       								=>     p_organization_id          ,
795 							p_comp_item_name        								=>     p_comp_item_name           ,
796 							p_comp_description      								=>     p_comp_description         ,
797 							p_Event_Load_Type       								=>     p_Event_Load_Type          ,
798 							p_Event_Entity_Name     								=>     p_Event_Entity_Name        ,
799 							p_Event_Entity_Parent_Id								=>     p_Event_Entity_Parent_Id   ,
800 							p_Event_Name            								=>     p_Event_Name               ,
801 							p_last_update_date      								=>     p_last_update_date         ,
802 							p_last_updated_by       								=>     p_last_updated_by          ,
803 							p_creation_date         								=>     p_creation_date            ,
804 							p_created_by            								=>     p_created_by               ,
805 							p_last_update_login     								=>     p_last_update_login
806 		          );
807 						p_msg_data := NULL;
808 						p_return_status := 	FND_API.G_RET_STS_SUCCESS;
809 
810 	       EXCEPTION
811   			  WHEN Bom_Business_Event_PKG.G_SUBSCRIPTION_EXC THEN
812   					p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
813 				  	ERROR_HANDLER.Get_Message_List(l_message_list);
814 				    FOR i IN l_message_list.FIRST..l_message_list.LAST
815 				     LOOP
816 				      p_msg_data := p_msg_data || l_message_list(i).message_text;
817 				    END LOOP;
818          END;
819 /*  **************************************************************************************  */
820 
821     PROCEDURE Raise_Bill_Event        --4306013
822          (p_Request_Identifier IN  NUMBER
823     ,p_Event_Name IN  VARCHAR2)
824          IS
825          l_parameter_list      wf_parameter_list_t := wf_parameter_list_t();
826          BEGIN
827 
828                 Bom_Business_Event_PKG.Add_Parameter_To_List
829                 (p_parameter_name => 'REQUEST_IDENTIFIER'
830                 ,p_value          =>   p_Request_Identifier
831                 ,p_parameter_list => l_parameter_list);
832 
833                 Bom_Business_Event_PKG.Raise_event
834                 ( p_Event_Name     => p_Event_Name
835                  ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
836                  ,p_parameter_list => l_parameter_list);
837          END Raise_Bill_Event;
838 
839      -- Bug 5244896
840     PROCEDURE raise_str_cpy_complete_event
841   ( p_copy_request_id IN NUMBER )
842   IS
843   l_parameter_list   wf_parameter_list_t := wf_parameter_list_t();
844     BEGIN
845       bom_business_event_pkg.add_parameter_to_list
846       (p_parameter_name => 'COPY_REQUEST_ID'
847       ,p_value          => p_copy_request_id
848       ,p_parameter_list => l_parameter_list
849     );
850       bom_business_event_pkg.raise_event
851       ( p_Event_Name     => G_STRUCTURE_CPY_COMPLETE_EVENT
852        ,p_Event_Key      => to_char(systimestamp, 'dd-mon-yyyy hh24:mi:ss:ff')
853        ,p_parameter_list => l_parameter_list
854     );
855   END raise_str_cpy_complete_event;
856 
857 END Bom_Business_Event_PKG;