DBA Data[Home] [Help]

PACKAGE BODY: APPS.EGO_ITEM_AML_GRP

Source


1 PACKAGE BODY EGO_ITEM_AML_GRP AS
2 /* $Header: EGOGAMLB.pls 120.0 2005/06/28 01:56:59 srajapar noship $ */
3 
4 -- ==========================================================================
5 --                         Package variables and cursors
6 -- ==========================================================================
7 
8   G_FILE_NAME                  VARCHAR2(12);
9   G_PKG_NAME                   VARCHAR2(30);
10 
11   G_USER_ID                    NUMBER;
12   G_LOGIN_ID                   NUMBER;
13   G_SYSDATE                    DATE;
14 
15   G_DEBUG_LEVEL_UNEXPECTED     NUMBER;
16   G_DEBUG_LEVEL_ERROR          NUMBER;
17   G_DEBUG_LEVEL_EXCEPTION      NUMBER;
18   G_DEBUG_LEVEL_EVENT          NUMBER;
19   G_DEBUG_LEVEL_PROCEDURE      NUMBER;
20   G_DEBUG_LEVEL_STATEMENT      NUMBER;
21   G_DEBUG_LOG_HEAD             VARCHAR2(30);
22 
23 -- ==========================================================================
24 --                     Private Functions and Procedures
25 -- ==========================================================================
26 --
27 -- write to debug into concurrent log
28 --
29 PROCEDURE log_now (p_log_level  IN NUMBER
30                   ,p_module     IN VARCHAR2
31                   ,p_message    IN VARCHAR2
32                   ) IS
33 BEGIN
34   IF (p_log_level >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN
35     fnd_log.string(log_level => p_log_level
36                   ,module    => G_DEBUG_LOG_HEAD||p_module
37                   ,message   => p_message
38                   );
39   END IF;
40 --  sri_debug(G_PKG_NAME||' - '||p_message);
41 NULL;
42 EXCEPTION
43   WHEN OTHERS THEN
44     RAISE;
45 END log_now;
46 
47 --
48 -- Set Global Variables that will be used by the programs
49 --
50 PROCEDURE SetGobals IS
51 BEGIN
52   --
53   -- fine names
54   --
55   G_FILE_NAME  := NVL(G_FILE_NAME,'EGOAMGRB.pls');
56   G_PKG_NAME   := NVL(G_PKG_NAME,'EGO_ITEM_AML_GRP');
57   --
58   -- user values
59   --
60   G_USER_ID    := NVL(G_USER_ID,FND_GLOBAL.user_id);
61   G_LOGIN_ID   := NVL(G_LOGIN_ID,FND_GLOBAL.login_id);
62   G_SYSDATE    := NVL(G_SYSDATE,SYSDATE);
63   --
64   -- debug parameter constants
65   --
66   G_DEBUG_LEVEL_UNEXPECTED := FND_LOG.LEVEL_UNEXPECTED;
67   G_DEBUG_LEVEL_ERROR      := FND_LOG.LEVEL_ERROR;
68   G_DEBUG_LEVEL_EXCEPTION  := FND_LOG.LEVEL_EXCEPTION;
69   G_DEBUG_LEVEL_EVENT      := FND_LOG.LEVEL_EVENT;
70   G_DEBUG_LEVEL_PROCEDURE  := FND_LOG.LEVEL_PROCEDURE;
71   G_DEBUG_LEVEL_STATEMENT  := FND_LOG.LEVEL_STATEMENT;
72   G_DEBUG_LOG_HEAD         := 'fnd.plsql.'||G_PKG_NAME||'.';
73 
74 EXCEPTION
75   WHEN OTHERS THEN
76     log_now (p_log_level => G_DEBUG_LEVEL_UNEXPECTED
77             ,p_module    => 'SetGlobals'
78             ,p_message   => 'Unable to intialize Globals'
79             );
80 END SetGobals;
81 
82 
83 -- ==========================================================================
84 --                     Public Functions and Procedures
85 -- ==========================================================================
86 
87 Procedure Populate_Intf_With_Proddata (
88     p_api_version            IN  NUMBER
89    ,p_commit                 IN  VARCHAR2
90    ,p_data_set_id            IN  NUMBER
91    ,p_pf_to_process          IN  NUMBER
92    ,p_pf_after_population    IN  NUMBER
93    ,x_return_status         OUT  NOCOPY VARCHAR2
94    ,x_msg_count             OUT  NOCOPY NUMBER
95    ,x_msg_data              OUT  NOCOPY VARCHAR2
96    ) IS
97 
98   l_api_version    NUMBER;
99   l_api_name       VARCHAR2(50);
100 
101   NO_ROWS_IN_INTF_TABLE     EXCEPTION;
102 
103   l_delete_line_type        NUMBER;
104   l_mode                    VARCHAR2(30);
105   l_perform_security_check  BOOLEAN;
106   l_prog_mode_history       BOOLEAN;
107 
108   l_pend_data_row  EGO_MFG_PART_NUM_CHGS%ROWTYPE;
109   l_prod_data_row  MTL_MFG_PART_NUMBERS%ROWTYPE;
110 
111   l_msg_data       VARCHAR2(4000);
112   l_msg_count      NUMBER;
113   l_return_status  VARCHAR2(1);
114 
115 BEGIN
116   l_api_version := 1.0;
117   l_api_name    := 'POPULATE_INTF_WITH_PRODDATA';
118   SetGobals();
119   log_now (p_log_level => G_DEBUG_LEVEL_PROCEDURE
120           ,p_module    => l_api_name
121           ,p_message   => 'All globals initialized'
122           );
123   IF (p_data_set_id IS NULL) THEN
124     fnd_message.set_name('EGO', 'EGO_DATA_SET_ID');
125     l_msg_data := fnd_msg_pub.get();
126     fnd_message.set_name('EGO','EGO_PKG_MAND_VALUES_MISS1');
127     fnd_message.set_token('PACKAGE', G_PKG_NAME ||'.'|| l_api_name);
128     fnd_message.set_token('VALUE', l_msg_data);
129     x_msg_data  := fnd_message.get();
130     x_msg_count := 1;
131     x_return_status := FND_API.G_RET_STS_ERROR;
132     RETURN;
133   END IF;
134 
135   IF (p_pf_to_process IS NULL) THEN
136     fnd_message.set_name('EGO', 'EGO_PROCESS_FLAG');
137     l_msg_data := fnd_msg_pub.get();
138     fnd_message.set_name('EGO','EGO_PKG_MAND_VALUES_MISS1');
139     fnd_message.set_token('PACKAGE', G_PKG_NAME ||'.'|| l_api_name);
140     fnd_message.set_token('VALUE', l_msg_data);
141     x_msg_data  := fnd_message.get();
142     x_msg_count := 1;
143     x_return_status := FND_API.G_RET_STS_ERROR;
144     RETURN;
145   END IF;
146 
147   log_now (p_log_level => G_DEBUG_LEVEL_STATEMENT
148           ,p_module    => l_api_name
149           ,p_message   => 'Mand param check successful'
150           );
151 
152   BEGIN
153     SELECT 'S' INTO l_return_status
154     FROM EGO_AML_INTF
155     WHERE DATA_SET_ID = p_data_set_id
156     AND PROCESS_FLAG = p_pf_to_process
157     AND ROWNUM = 1;
158   EXCEPTION
159     WHEN NO_DATA_FOUND THEN
160       fnd_message.set_name('EGO','EGO_IPI_NO_LINES');
161       x_msg_count := 1;
162       x_msg_data :=  fnd_message.get();
163       x_return_status := FND_API.G_RET_STS_SUCCESS;
164       RAISE NO_ROWS_IN_INTF_TABLE;
165   END;
166   log_now (p_log_level => G_DEBUG_LEVEL_STATEMENT
167           ,p_module    => l_api_name
168           ,p_message   => 'Found Interface Lines to be processed'
169           );
170 
171   IF FND_API.TO_BOOLEAN(p_commit) THEN
172     -- create save point
173     SAVEPOINT POPULATE_INTF_WITH_PRODDATA_SP;
174   END IF;
175 
176   UPDATE ego_aml_intf
177   SET  mrp_planning_code =
178              DECODE(mrp_planning_code,EGO_ITEM_PUB.G_INTF_NULL_NUM,NULL,
179                                       mrp_planning_code),
180        description =
181              DECODE(description,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
182                                       description),
183        attribute_category =
184              DECODE(attribute_category,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
185                                       attribute_category),
186        attribute1 =
187              DECODE(attribute1,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
188                                       attribute1),
189        attribute2 =
190              DECODE(attribute2,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
191                                       attribute2),
192        attribute3 =
193              DECODE(attribute3,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
194                                       attribute3),
195        attribute4 =
196              DECODE(attribute4,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
197                                       attribute4),
198        attribute5 =
199              DECODE(attribute5,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
200                                       attribute5),
201        attribute6 =
202              DECODE(attribute6,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
203                                       attribute6),
204        attribute7 =
205              DECODE(attribute7,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
206                                       attribute7),
207        attribute8 =
208              DECODE(attribute8,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
209                                       attribute8),
210        attribute9 =
211              DECODE(attribute9,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
212                                       attribute9),
213        attribute10 =
214              DECODE(attribute10,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
215                                       attribute10),
216        attribute11 =
217              DECODE(attribute11,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
218                                       attribute11),
219        attribute12 =
220              DECODE(attribute12,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
221                                       attribute12),
222        attribute13 =
223              DECODE(attribute13,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
224                                       attribute13),
225        attribute14 =
226              DECODE(attribute14,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
227                                       attribute14),
228        attribute15 =
229              DECODE(attribute15,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
230                                       attribute15),
231        first_article_status =
232              DECODE(first_article_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
233                                       first_article_status),
234        approval_status =
235              DECODE(approval_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
236                                       approval_status),
237        start_date =
238              DECODE(start_date,EGO_ITEM_PUB.G_INTF_NULL_DATE,NULL,
239                                       start_date),
240        end_date =
241              DECODE(end_date,EGO_ITEM_PUB.G_INTF_NULL_DATE,NULL,
242                                       end_date),
243        process_flag = NVL(p_pf_after_population,process_flag)
244   WHERE data_set_id = p_data_set_id
245   AND process_flag = p_pf_to_process
246   AND transaction_type = EGO_ITEM_PUB.G_TTYPE_CREATE
247   AND (   NVL(mrp_planning_code,EGO_ITEM_PUB.G_INTF_NULL_NUM)
248               <> EGO_ITEM_PUB.G_INTF_NULL_NUM
249           OR
250           NVL(description,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
251               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
252           OR
253           NVL(attribute_category,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
254               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
255           OR
256           NVL(attribute1,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
257               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
258           OR
259           NVL(attribute2,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
260               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
261           OR
262           NVL(attribute3,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
263               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
264           OR
265           NVL(attribute4,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
266               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
267           OR
268           NVL(attribute5,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
269               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
270           OR
271           NVL(attribute6,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
272               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
273           OR
274           NVL(attribute7,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
275               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
276           OR
277           NVL(attribute8,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
278               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
279           OR
280           NVL(attribute9,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
281               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
282           OR
283           NVL(attribute10,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
284               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
285           OR
286           NVL(attribute11,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
287               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
288           OR
289           NVL(attribute12,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
290               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
291           OR
292           NVL(attribute13,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
293               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
294           OR
295           NVL(attribute14,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
296               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
297           OR
298           NVL(attribute15,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
299               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
300           OR
301           NVL(first_article_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
302               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
303           OR
304           NVL(approval_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
305               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
306           OR
307           NVL(start_date,EGO_ITEM_PUB.G_INTF_NULL_DATE)
308               <> EGO_ITEM_PUB.G_INTF_NULL_DATE
309           OR
310           NVL(end_date,EGO_ITEM_PUB.G_INTF_NULL_DATE)
311               <> EGO_ITEM_PUB.G_INTF_NULL_DATE
312        );
313   log_now(p_log_level => G_DEBUG_LEVEL_STATEMENT
314          ,p_module    => l_api_name
315          ,p_message   => 'Changing intf table with NULL during CREATE'
316          );
317 
318   UPDATE ego_aml_intf intf
319   SET     (mrp_planning_code
320           ,description
321           ,attribute_category
322           ,attribute1
323           ,attribute2
324           ,attribute3
325           ,attribute4
326           ,attribute5
327           ,attribute6
328           ,attribute7
329           ,attribute8
330           ,attribute9
331           ,attribute10
332           ,attribute11
336           ,attribute15
333           ,attribute12
334           ,attribute13
335           ,attribute14
337           ,first_article_status
338           ,approval_status
339           ,start_date
340           ,end_date
341           ,process_flag
342           )
343      = (SELECT
344            DECODE(intf.mrp_planning_code,EGO_ITEM_PUB.G_INTF_NULL_NUM,NULL,
345                                          NULL,prod.mrp_planning_code,
346                                          intf.mrp_planning_code),
347            DECODE(intf.description,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
348                                          NULL,prod.description,
349                                          intf.description),
350            DECODE(intf.attribute_category,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
351                                          NULL,prod.attribute_category,
352                                          intf.attribute_category),
353            DECODE(intf.attribute1,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
354                                          NULL,prod.attribute1,
355                                          intf.attribute1),
356            DECODE(intf.attribute2,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
357                                          NULL,prod.attribute2,
358                                          intf.attribute2),
359            DECODE(intf.attribute3,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
360                                          NULL,prod.attribute3,
361                                          intf.attribute3),
362            DECODE(intf.attribute4,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
363                                          NULL,prod.attribute4,
364                                          intf.attribute4),
365            DECODE(intf.attribute5,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
366                                          NULL,prod.attribute5,
367                                          intf.attribute5),
368            DECODE(intf.attribute6,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
369                                          NULL,prod.attribute6,
370                                          intf.attribute6),
371            DECODE(intf.attribute7,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
372                                          NULL,prod.attribute7,
373                                          intf.attribute7),
374            DECODE(intf.attribute8,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
375                                          NULL,prod.attribute8,
376                                          intf.attribute8),
377            DECODE(intf.attribute9,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
378                                          NULL,prod.attribute9,
379                                          intf.attribute9),
380            DECODE(intf.attribute10,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
381                                          NULL,prod.attribute10,
382                                          intf.attribute10),
383            DECODE(intf.attribute11,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
384                                          NULL,prod.attribute11,
385                                          intf.attribute11),
386            DECODE(intf.attribute12,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
387                                          NULL,prod.attribute12,
388                                          intf.attribute12),
389            DECODE(intf.attribute13,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
390                                          NULL,prod.attribute13,
391                                          intf.attribute13),
392            DECODE(intf.attribute14,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
393                                          NULL,prod.attribute14,
394                                          intf.attribute14),
395            DECODE(intf.attribute15,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
396                                          NULL,prod.attribute15,
397                                          intf.attribute15),
398            DECODE(intf.first_article_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
399                                          NULL,prod.first_article_status,
400                                          intf.first_article_status),
401            DECODE(intf.approval_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR,NULL,
402                                          NULL,prod.approval_status,
403                                          intf.approval_status),
404            DECODE(intf.start_date,EGO_ITEM_PUB.G_INTF_NULL_DATE,NULL,
405                                          NULL,prod.start_date,
406                                          intf.start_date),
407            DECODE(intf.end_date,EGO_ITEM_PUB.G_INTF_NULL_DATE,NULL,
408                                          NULL,prod.end_date,
409                                          intf.end_date),
410            NVL(p_pf_after_population,p_pf_to_process)
411         FROM mtl_mfg_part_numbers prod
412         WHERE intf.inventory_item_id = prod.inventory_item_id
413         AND intf.organization_id = prod.organization_id
414         AND intf.manufacturer_id = prod.manufacturer_id
415         AND intf.mfg_part_num    = prod.mfg_part_num
416       )
417   WHERE data_set_id = p_data_set_id
418   AND process_flag = p_pf_to_process
419   AND transaction_type = EGO_ITEM_PUB.G_TTYPE_UPDATE
420   AND (   NVL(mrp_planning_code,EGO_ITEM_PUB.G_INTF_NULL_NUM)
421               <> EGO_ITEM_PUB.G_INTF_NULL_NUM
422           OR
423           NVL(description,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
424               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
425           OR
426           NVL(attribute_category,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
427               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
428           OR
429           NVL(attribute1,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
430               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
431           OR
432           NVL(attribute2,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
433               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
434           OR
435           NVL(attribute3,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
436               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
437           OR
438           NVL(attribute4,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
439               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
440           OR
441           NVL(attribute5,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
442               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
443           OR
444           NVL(attribute6,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
445               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
446           OR
447           NVL(attribute7,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
448               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
449           OR
450           NVL(attribute8,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
451               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
452           OR
453           NVL(attribute9,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
454               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
455           OR
456           NVL(attribute10,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
457               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
458           OR
459           NVL(attribute11,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
460               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
461           OR
462           NVL(attribute12,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
463               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
464           OR
465           NVL(attribute13,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
466               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
467           OR
468           NVL(attribute14,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
469               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
470           OR
471           NVL(attribute15,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
472               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
473           OR
474           NVL(first_article_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
475               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
476           OR
477           NVL(approval_status,EGO_ITEM_PUB.G_INTF_NULL_CHAR)
478               <> EGO_ITEM_PUB.G_INTF_NULL_CHAR
479           OR
480           NVL(start_date,EGO_ITEM_PUB.G_INTF_NULL_DATE)
481               <> EGO_ITEM_PUB.G_INTF_NULL_DATE
482           OR
483           NVL(end_date,EGO_ITEM_PUB.G_INTF_NULL_DATE)
484               <> EGO_ITEM_PUB.G_INTF_NULL_DATE
485        );
486   log_now(p_log_level => G_DEBUG_LEVEL_STATEMENT
487          ,p_module    => l_api_name
488          ,p_message   => 'Populate intf table with prod data for UPDATE done'
489          );
490 
491   IF FND_API.TO_BOOLEAN(p_commit) THEN
492     COMMIT WORK;
493   END IF;
494 
495   x_return_status := FND_API.G_RET_STS_SUCCESS;
496   x_msg_count := 0;
497   x_msg_data := NULL;
498   log_now (p_log_level => G_DEBUG_LEVEL_PROCEDURE
499           ,p_module    => l_api_name
500           ,p_message   => 'Procedure successfully completed'
501           );
502 EXCEPTION
503     WHEN NO_ROWS_IN_INTF_TABLE THEN
504       NULL;
505     WHEN OTHERS THEN
506       IF FND_API.TO_BOOLEAN(p_commit) THEN
507         ROLLBACK TO POPULATE_INTF_WITH_PRODDATA_SP;
508       END IF;
509       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
510       FND_MESSAGE.Set_Name('EGO', 'EGO_PLSQL_ERR');
511       FND_MESSAGE.Set_Token('PKG_NAME', G_PKG_NAME);
512       FND_MESSAGE.Set_Token('API_NAME', l_api_name);
513       FND_MESSAGE.Set_Token('SQL_ERR_MSG', SQLERRM);
514       x_msg_data := FND_MSG_PUB.get();
515       x_msg_count := 1;
516       log_now (p_log_level => G_DEBUG_LEVEL_UNEXPECTED
517               ,p_module    => l_api_name
518               ,p_message   => x_msg_data
519               );
520 END Populate_Intf_With_Proddata;
521 
522 
523 END EGO_ITEM_AML_GRP;