DBA Data[Home] [Help]

PACKAGE BODY: APPS.FINANCIALS_PURGES_PKG

Source


1 PACKAGE BODY FINANCIALS_PURGES_PKG as
2 /* $Header: apifipub.pls 120.3.12020000.2 2012/07/06 09:50:48 kpasikan ship $ */
3 
4   PROCEDURE Insert_Row(X_Rowid                   IN OUT NOCOPY VARCHAR2,
5 
6                        X_Purge_Name                     VARCHAR2,
7                        X_Creation_Date                  DATE,
8                        X_Created_By                     NUMBER,
9                        X_Last_Update_Date               DATE,
10                        X_Last_Updated_By                NUMBER,
11                        X_Last_Update_Login              NUMBER,
12                        X_Category                       VARCHAR2,
13                        X_Status                         VARCHAR2,
14                        X_Activity_Date                  DATE DEFAULT NULL,
15                        X_Approx_Rows                    NUMBER DEFAULT NULL, -- Bug 14237038 (11i-9268290)
16 
17                        X_Ap_Checks                      NUMBER DEFAULT NULL,
18                        X_Ap_Invoice_Payments            NUMBER DEFAULT NULL,
19                        X_Ap_Payment_Schedules           NUMBER DEFAULT NULL,
20                        X_Ap_Recurring_Payments          NUMBER DEFAULT NULL,
21                        X_Ap_Trial_Balance               NUMBER DEFAULT NULL,
22                        X_Ap_Holds                       NUMBER DEFAULT NULL,
23                        X_Ap_Invoice_Distributions       NUMBER DEFAULT NULL,
24                        X_Ap_Batches                     NUMBER DEFAULT NULL,
25                        X_Ap_Invoices                    NUMBER DEFAULT NULL,
26                        X_Po_Requisition_Headers         NUMBER DEFAULT NULL,
27                        X_Po_Requisition_Lines           NUMBER DEFAULT NULL,
28                        X_Po_Req_Distributions           NUMBER DEFAULT NULL,
29                        X_Po_Approvals                   NUMBER DEFAULT NULL,
30                        X_Po_Headers                     NUMBER DEFAULT NULL,
31                        X_Po_Lines                       NUMBER DEFAULT NULL,
32                        X_Po_Line_Locations              NUMBER DEFAULT NULL,
33                        X_Po_Distributions               NUMBER DEFAULT NULL,
34                        X_Po_Releases                    NUMBER DEFAULT NULL,
35                        X_Po_Item_History                NUMBER DEFAULT NULL,
36                        X_Po_Acceptances                 NUMBER DEFAULT NULL,
37                        X_Po_Notes                       NUMBER DEFAULT NULL,
38                        X_Po_Note_References             NUMBER DEFAULT NULL,
39                        X_Po_Receipts                    NUMBER DEFAULT NULL,
40                        X_Po_Deliveries                  NUMBER DEFAULT NULL,
41                        X_Po_Quality_Inspections         NUMBER DEFAULT NULL,
42                        X_Po_Vendors                     NUMBER DEFAULT NULL,
43                        X_Po_Vendor_Sites                NUMBER DEFAULT NULL,
44                        X_Po_Vendor_Contacts             NUMBER DEFAULT NULL,
45                        X_Po_Headers_Archive             NUMBER DEFAULT NULL,
46                        X_Po_Lines_Archive               NUMBER DEFAULT NULL,
47                        X_Po_Line_Locations_Archive      NUMBER DEFAULT NULL,
48                        X_Po_Vendor_List_Headers         NUMBER DEFAULT NULL,
49                        X_Po_Vendor_List_Entries         NUMBER DEFAULT NULL,
50                        X_Po_Notifications               NUMBER DEFAULT NULL,
51                        X_Po_Accrual_Reconcile_Temp      NUMBER DEFAULT NULL,
52                        X_Po_Blanket_Items               NUMBER DEFAULT NULL,
53                        X_Po_Receipt_Headers             NUMBER DEFAULT NULL,
54                        X_Organization_Id                NUMBER DEFAULT NULL,
55                        X_Po_Approved_Supplier_List      NUMBER DEFAULT NULL,
56                        X_Po_Asl_Attributes              NUMBER DEFAULT NULL,
57                        X_Po_Asl_Documents               NUMBER DEFAULT NULL,
58                        X_Chv_Authorizations             NUMBER DEFAULT NULL,
59                        X_Chv_Cum_Adjustments            NUMBER DEFAULT NULL,
60                        X_Chv_Cum_Periods                NUMBER DEFAULT NULL,
61                        X_Chv_Cum_Period_Items           NUMBER DEFAULT NULL,
62                        X_Chv_Horizontal_Schedules       NUMBER DEFAULT NULL,
63                        X_Chv_Item_Orders                NUMBER DEFAULT NULL,
64                        X_Chv_Schedule_Headers           NUMBER DEFAULT NULL,
65                        X_Chv_Schedule_Items             NUMBER DEFAULT NULL,
66                        X_Mrp_Sr_Source_Org              NUMBER DEFAULT NULL,
67                        X_Mrp_Item_Sourcing              NUMBER DEFAULT NULL,
68                        X_Action                         VARCHAR2 DEFAULT NULL,
69 		       X_calling_sequence	IN	VARCHAR2,
70                        X_Org_Id                         NUMBER,
71                        X_Pay_Alone                      VARCHAR2 DEFAULT NULL --bug 14237038 (11i)
72   ) IS
73     CURSOR C IS SELECT rowid FROM FINANCIALS_PURGES
74                  WHERE purge_name = X_Purge_Name;
75     current_calling_sequence	VARCHAR2(2000);
76     debug_info			VARCHAR2(100);
77    BEGIN
78 
79 --     Update the calling sequence
80 --
81        current_calling_sequence := 'FINANCIALS_PURGES_PKG.INSERT_ROW<-' ||
82                                     X_calling_sequence;
83 
84 
85        debug_info := 'Insert into FINANCIALS_PURGES';
86 
87        INSERT INTO FINANCIALS_PURGES(
88 
89               purge_name,
90               creation_date,
91               created_by,
92               last_update_date,
93               last_updated_by,
94               last_update_login,
95               category,
96               status,
97               activity_date,
98               approx_rows, -- Bug 14237038 (11i-9268290)
99               ap_checks,
100               ap_invoice_payments,
101               ap_payment_schedules,
102               ap_recurring_payments,
103               ap_trial_balance,
104               ap_holds,
105               ap_invoice_distributions,
106               ap_batches,
107               ap_invoices,
108               po_requisition_headers,
109               po_requisition_lines,
110               po_req_distributions,
111               po_approvals,
112               po_headers,
113               po_lines,
114               po_line_locations,
115               po_distributions,
116               po_releases,
117               po_item_history,
118               po_acceptances,
119               po_notes,
120               po_note_references,
121               po_receipts,
122               po_deliveries,
123               po_quality_inspections,
124               po_vendors,
125               po_vendor_sites,
126               po_vendor_contacts,
127               po_headers_archive,
128               po_lines_archive,
129               po_line_locations_archive,
130               po_vendor_list_headers,
131               po_vendor_list_entries,
132               po_notifications,
133               po_accrual_reconcile_temp,
134               po_blanket_items,
135               po_receipt_headers,
136               Organization_Id,
137               Po_Approved_Supplier_List,
138               Po_Asl_Attributes,
139               Po_Asl_Documents,
140               Chv_Authorizations,
141               Chv_Cum_Adjustments,
142               Chv_Cum_Periods,
143               Chv_Cum_Period_Items,
144               Chv_Horizontal_Schedules,
145               Chv_Item_Orders,
146               Chv_Schedule_Headers,
147               Chv_Schedule_Items,
148               Mrp_Sr_Source_Org,
149               Mrp_Item_Sourcing,
150               action,
151               org_id,
152               pay_alone -- bug 14237038
153              ) VALUES (
154 
155               X_Purge_Name,
156               X_Creation_Date,
157               X_Created_By,
158               X_Last_Update_Date,
159               X_Last_Updated_By,
160               X_Last_Update_Login,
161               X_Category,
162               X_Status,
163               X_Activity_Date,
167               X_Ap_Payment_Schedules,
164               X_Approx_Rows,  -- Bug 14237038 (11i-9268290)
165               X_Ap_Checks,
166               X_Ap_Invoice_Payments,
168               X_Ap_Recurring_Payments,
169               X_Ap_Trial_Balance,
170               X_Ap_Holds,
171               X_Ap_Invoice_Distributions,
172               X_Ap_Batches,
173               X_Ap_Invoices,
174               X_Po_Requisition_Headers,
175               X_Po_Requisition_Lines,
176               X_Po_Req_Distributions,
177               X_Po_Approvals,
178               X_Po_Headers,
179               X_Po_Lines,
180               X_Po_Line_Locations,
181               X_Po_Distributions,
182               X_Po_Releases,
183               X_Po_Item_History,
184               X_Po_Acceptances,
185               X_Po_Notes,
186               X_Po_Note_References,
187               X_Po_Receipts,
188               X_Po_Deliveries,
189               X_Po_Quality_Inspections,
190               X_Po_Vendors,
191               X_Po_Vendor_Sites,
192               X_Po_Vendor_Contacts,
193               X_Po_Headers_Archive,
194               X_Po_Lines_Archive,
195               X_Po_Line_Locations_Archive,
196               X_Po_Vendor_List_Headers,
197               X_Po_Vendor_List_Entries,
198               X_Po_Notifications,
199               X_Po_Accrual_Reconcile_Temp,
200               X_Po_Blanket_Items,
201               X_Po_Receipt_Headers,
202               X_Organization_Id,
203               X_Po_Approved_Supplier_List,
204               X_Po_Asl_Attributes,
205               X_Po_Asl_Documents,
206               X_Chv_Authorizations,
207               X_Chv_Cum_Adjustments,
208               X_Chv_Cum_Periods,
209               X_Chv_Cum_Period_Items,
210               X_Chv_Horizontal_Schedules,
211               X_Chv_Item_Orders,
212               X_Chv_Schedule_Headers,
213               X_Chv_Schedule_Items,
214               X_Mrp_Sr_Source_Org,
215               X_Mrp_Item_Sourcing,
216               X_Action,
217               X_Org_Id,
218               nvl(X_Pay_Alone,'A') -- bug 14237038
219              );
220 
221     debug_info := 'Open cursor C';
222     OPEN C;
223 
224     debug_info := 'Fetch cursor C';
225     FETCH C INTO X_Rowid;
226     if (C%NOTFOUND) then
227       debug_info := 'Close cursor C - DATA NOTFOUND';
228       CLOSE C;
229       Raise NO_DATA_FOUND;
230     end if;
231     debug_info := 'Close cursor C';
232     CLOSE C;
233 
234 
235     EXCEPTION
236         WHEN OTHERS THEN
237            IF (SQLCODE <> -20001) THEN
238               FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
239               FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
240               FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
241               FND_MESSAGE.SET_TOKEN('PARAMETERS','ROWID = ' || X_Rowid ||
242                                     ', PURGE_NAME = ' || X_Purge_name);
243               FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
244            END IF;
245            APP_EXCEPTION.RAISE_EXCEPTION;
246 
247   END Insert_Row;
248 
249   PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
250 
251                      X_Purge_Name                       VARCHAR2,
252                      X_Category                         VARCHAR2,
253                      X_Status                           VARCHAR2,
254                      X_Activity_Date                    DATE DEFAULT NULL,
255                      X_Approx_Rows                      NUMBER DEFAULT NULL, -- Bug 14237038 (11i-9268290)
256                      X_Ap_Checks                        NUMBER DEFAULT NULL,
257                      X_Ap_Invoice_Payments              NUMBER DEFAULT NULL,
258                      X_Ap_Payment_Schedules             NUMBER DEFAULT NULL,
259                      X_Ap_Recurring_Payments            NUMBER DEFAULT NULL,
260                      X_Ap_Trial_Balance                 NUMBER DEFAULT NULL,
261                      X_Ap_Holds                         NUMBER DEFAULT NULL,
262                      X_Ap_Invoice_Distributions         NUMBER DEFAULT NULL,
263                      X_Ap_Batches                       NUMBER DEFAULT NULL,
264                      X_Ap_Invoices                      NUMBER DEFAULT NULL,
265                      X_Po_Requisition_Headers           NUMBER DEFAULT NULL,
266                      X_Po_Requisition_Lines             NUMBER DEFAULT NULL,
267                      X_Po_Req_Distributions             NUMBER DEFAULT NULL,
268                      X_Po_Approvals                     NUMBER DEFAULT NULL,
269                      X_Po_Headers                       NUMBER DEFAULT NULL,
270                      X_Po_Lines                         NUMBER DEFAULT NULL,
271                      X_Po_Line_Locations                NUMBER DEFAULT NULL,
272                      X_Po_Distributions                 NUMBER DEFAULT NULL,
273                      X_Po_Releases                      NUMBER DEFAULT NULL,
274                      X_Po_Item_History                  NUMBER DEFAULT NULL,
275                      X_Po_Acceptances                   NUMBER DEFAULT NULL,
276                      X_Po_Notes                         NUMBER DEFAULT NULL,
280                      X_Po_Quality_Inspections           NUMBER DEFAULT NULL,
277                      X_Po_Note_References               NUMBER DEFAULT NULL,
278                      X_Po_Receipts                      NUMBER DEFAULT NULL,
279                      X_Po_Deliveries                    NUMBER DEFAULT NULL,
281                      X_Po_Vendors                       NUMBER DEFAULT NULL,
282                      X_Po_Vendor_Sites                  NUMBER DEFAULT NULL,
283                      X_Po_Vendor_Contacts               NUMBER DEFAULT NULL,
284                      X_Po_Headers_Archive               NUMBER DEFAULT NULL,
285                      X_Po_Lines_Archive                 NUMBER DEFAULT NULL,
286                      X_Po_Line_Locations_Archive        NUMBER DEFAULT NULL,
287                      X_Po_Vendor_List_Headers           NUMBER DEFAULT NULL,
288                      X_Po_Vendor_List_Entries           NUMBER DEFAULT NULL,
289                      X_Po_Notifications                 NUMBER DEFAULT NULL,
290                      X_Po_Accrual_Reconcile_Temp        NUMBER DEFAULT NULL,
291                      X_Po_Blanket_Items                 NUMBER DEFAULT NULL,
292                      X_Po_Receipt_Headers               NUMBER DEFAULT NULL,
293                      X_Organization_Id			NUMBER DEFAULT NULL,
294                      X_Po_Approved_Supplier_List	NUMBER DEFAULT NULL,
295                      X_Po_Asl_Attributes		NUMBER DEFAULT NULL,
296                      X_Po_Asl_Documents			NUMBER DEFAULT NULL,
297                      X_Chv_Authorizations		NUMBER DEFAULT NULL,
298                      X_Chv_Cum_Adjustments		NUMBER DEFAULT NULL,
299                      X_Chv_Cum_Periods			NUMBER DEFAULT NULL,
300                      X_Chv_Cum_Period_Items		NUMBER DEFAULT NULL,
301                      X_Chv_Horizontal_Schedules		NUMBER DEFAULT NULL,
302                      X_Chv_Item_Orders			NUMBER DEFAULT NULL,
303                      X_Chv_Schedule_Headers		NUMBER DEFAULT NULL,
304                      X_Chv_Schedule_Items		NUMBER DEFAULT NULL,
305                      X_Mrp_Sr_Source_Org		NUMBER DEFAULT NULL,
306                      X_Mrp_Item_Sourcing		NUMBER DEFAULT NULL,
307                      X_Action                           VARCHAR2 DEFAULT NULL,
308                      X_calling_sequence			VARCHAR2,
309                      X_Org_Id                           NUMBER
310   ) IS
311     CURSOR C IS
312         SELECT *
313         FROM   FINANCIALS_PURGES
314         WHERE  rowid = X_Rowid
315         FOR UPDATE of Purge_Name NOWAIT;
316     Recinfo C%ROWTYPE;
317 
318     current_calling_sequence	VARCHAR2(2000);
319     debug_info			VARCHAR2(100);
320 
321   BEGIN
322 --  Update the calling sequence
323 --
324     current_calling_sequence := 'FINANCIALS_PURGES_PKG.LOCK_ROW<-' ||
325                                  X_calling_sequence;
326 
327     debug_info := 'Open cursor C';
328     OPEN C;
329 
330     debug_info := 'Fetch cursor C';
331     FETCH C INTO Recinfo;
332 
333     if (C%NOTFOUND) then
334       debug_info := 'Close cursor C - DATA NOTFOUND';
335       CLOSE C;
336       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
337       APP_EXCEPTION.Raise_Exception;
338     end if;
339     debug_info := 'Close cursor C';
340     CLOSE C;
341     if (
342 
343                (Recinfo.purge_name =  X_Purge_Name)
344            AND (Recinfo.category =  X_Category)
345            AND (Recinfo.status =  X_Status)
346            AND (Recinfo.org_id =  X_Org_Id)
347            AND (   (Recinfo.activity_date =  X_Activity_Date)
348                 OR (    (Recinfo.activity_date IS NULL)
349                     AND (X_Activity_Date IS NULL)))
350            AND (   (Recinfo.approx_rows =  X_Approx_Rows) -- Bug 14237038 (11i-9268290)
351                 OR (    (Recinfo.approx_rows IS NULL)
352                     AND (X_approx_rows IS NULL)))
353            AND (   (Recinfo.ap_checks =  X_Ap_Checks)
354                 OR (    (Recinfo.ap_checks IS NULL)
355                     AND (X_Ap_Checks IS NULL)))
356            AND (   (Recinfo.ap_invoice_payments =  X_Ap_Invoice_Payments)
357                 OR (    (Recinfo.ap_invoice_payments IS NULL)
358                     AND (X_Ap_Invoice_Payments IS NULL)))
359            AND (   (Recinfo.ap_payment_schedules =  X_Ap_Payment_Schedules)
360                 OR (    (Recinfo.ap_payment_schedules IS NULL)
361                     AND (X_Ap_Payment_Schedules IS NULL)))
362            AND (   (Recinfo.ap_recurring_payments =  X_Ap_Recurring_Payments)
363                 OR (    (Recinfo.ap_recurring_payments IS NULL)
364                     AND (X_Ap_Recurring_Payments IS NULL)))
365            AND (   (Recinfo.ap_trial_balance =  X_Ap_Trial_Balance)
366                 OR (    (Recinfo.ap_trial_balance IS NULL)
367                     AND (X_Ap_Trial_Balance IS NULL)))
368            AND (   (Recinfo.ap_holds =  X_Ap_Holds)
369                 OR (    (Recinfo.ap_holds IS NULL)
370                     AND (X_Ap_Holds IS NULL)))
371            AND (   (Recinfo.ap_invoice_distributions =
372 						X_Ap_Invoice_Distributions)
373                 OR (    (Recinfo.ap_invoice_distributions IS NULL)
374                     AND (X_Ap_Invoice_Distributions IS NULL)))
375            AND (   (Recinfo.ap_batches =  X_Ap_Batches)
376                 OR (    (Recinfo.ap_batches IS NULL)
377                     AND (X_Ap_Batches IS NULL)))
378            AND (   (Recinfo.ap_invoices =  X_Ap_Invoices)
379                 OR (    (Recinfo.ap_invoices IS NULL)
380                     AND (X_Ap_Invoices IS NULL)))
381            AND (   (Recinfo.po_requisition_headers =  X_Po_Requisition_Headers)
382                 OR (    (Recinfo.po_requisition_headers IS NULL)
383                     AND (X_Po_Requisition_Headers IS NULL)))
384            AND (   (Recinfo.po_requisition_lines =  X_Po_Requisition_Lines)
385                 OR (    (Recinfo.po_requisition_lines IS NULL)
386                     AND (X_Po_Requisition_Lines IS NULL)))
387            AND (   (Recinfo.po_req_distributions =  X_Po_Req_Distributions)
388                 OR (    (Recinfo.po_req_distributions IS NULL)
389                     AND (X_Po_Req_Distributions IS NULL)))
390            AND (   (Recinfo.po_approvals =  X_Po_Approvals)
391                 OR (    (Recinfo.po_approvals IS NULL)
392                     AND (X_Po_Approvals IS NULL)))
393            AND (   (Recinfo.po_headers =  X_Po_Headers)
394                 OR (    (Recinfo.po_headers IS NULL)
395                     AND (X_Po_Headers IS NULL)))
396            AND (   (Recinfo.po_lines =  X_Po_Lines)
397                 OR (    (Recinfo.po_lines IS NULL)
398                     AND (X_Po_Lines IS NULL)))
399            AND (   (Recinfo.po_line_locations =  X_Po_Line_Locations)
400                 OR (    (Recinfo.po_line_locations IS NULL)
401                     AND (X_Po_Line_Locations IS NULL)))
402            AND (   (Recinfo.po_distributions =  X_Po_Distributions)
403                 OR (    (Recinfo.po_distributions IS NULL)
404                     AND (X_Po_Distributions IS NULL)))
405            AND (   (Recinfo.po_releases =  X_Po_Releases)
406                 OR (    (Recinfo.po_releases IS NULL)
407                     AND (X_Po_Releases IS NULL)))
408            AND (   (Recinfo.po_item_history =  X_Po_Item_History)
409                 OR (    (Recinfo.po_item_history IS NULL)
410                     AND (X_Po_Item_History IS NULL)))
411            AND (   (Recinfo.po_acceptances =  X_Po_Acceptances)
412                 OR (    (Recinfo.po_acceptances IS NULL)
413                     AND (X_Po_Acceptances IS NULL)))
414            AND (   (Recinfo.po_notes =  X_Po_Notes)
415                 OR (    (Recinfo.po_notes IS NULL)
416                     AND (X_Po_Notes IS NULL)))
417            AND (   (Recinfo.po_note_references =  X_Po_Note_References)
418                 OR (    (Recinfo.po_note_references IS NULL)
419                     AND (X_Po_Note_References IS NULL)))
420            AND (   (Recinfo.po_receipts =  X_Po_Receipts)
421                 OR (    (Recinfo.po_receipts IS NULL)
422                     AND (X_Po_Receipts IS NULL)))
423            AND (   (Recinfo.po_deliveries =  X_Po_Deliveries)
424                 OR (    (Recinfo.po_deliveries IS NULL)
425                     AND (X_Po_Deliveries IS NULL)))
426            AND (   (Recinfo.po_quality_inspections =  X_Po_Quality_Inspections)
427                 OR (    (Recinfo.po_quality_inspections IS NULL)
428                     AND (X_Po_Quality_Inspections IS NULL)))
429            AND (   (Recinfo.po_vendors =  X_Po_Vendors)
430                 OR (    (Recinfo.po_vendors IS NULL)
431                     AND (X_Po_Vendors IS NULL)))
432            AND (   (Recinfo.po_vendor_sites =  X_Po_Vendor_Sites)
433                 OR (    (Recinfo.po_vendor_sites IS NULL)
434                     AND (X_Po_Vendor_Sites IS NULL)))
435            AND (   (Recinfo.po_vendor_contacts =  X_Po_Vendor_Contacts)
436                 OR (    (Recinfo.po_vendor_contacts IS NULL)
437                     AND (X_Po_Vendor_Contacts IS NULL)))
438            AND (   (Recinfo.po_headers_archive =  X_Po_Headers_Archive)
439                 OR (    (Recinfo.po_headers_archive IS NULL)
440                     AND (X_Po_Headers_Archive IS NULL)))
441            AND (   (Recinfo.po_lines_archive =  X_Po_Lines_Archive)
442                 OR (    (Recinfo.po_lines_archive IS NULL)
443                     AND (X_Po_Lines_Archive IS NULL)))
444            AND (   (Recinfo.po_line_locations_archive =  X_Po_Line_Locations_Archive)
445                 OR (    (Recinfo.po_line_locations_archive IS NULL)
446                     AND (X_Po_Line_Locations_Archive IS NULL)))
447            AND (   (Recinfo.po_vendor_list_headers =  X_Po_Vendor_List_Headers)
448                 OR (    (Recinfo.po_vendor_list_headers IS NULL)
449                     AND (X_Po_Vendor_List_Headers IS NULL)))
450            AND (   (Recinfo.po_vendor_list_entries =  X_Po_Vendor_List_Entries)
451                 OR (    (Recinfo.po_vendor_list_entries IS NULL)
452                     AND (X_Po_Vendor_List_Entries IS NULL)))
453            AND (   (Recinfo.po_notifications =  X_Po_Notifications)
454                 OR (    (Recinfo.po_notifications IS NULL)
455                     AND (X_Po_Notifications IS NULL)))
456            AND (   (Recinfo.po_accrual_reconcile_temp =  X_Po_Accrual_Reconcile_Temp)
457                 OR (    (Recinfo.po_accrual_reconcile_temp IS NULL)
458                     AND (X_Po_Accrual_Reconcile_Temp IS NULL)))
459            AND (   (Recinfo.po_blanket_items =  X_Po_Blanket_Items)
460                 OR (    (Recinfo.po_blanket_items IS NULL)
461                     AND (X_Po_Blanket_Items IS NULL)))
462            AND (   (Recinfo.po_receipt_headers =  X_Po_Receipt_Headers)
463                 OR (    (Recinfo.po_receipt_headers IS NULL)
464                     AND (X_Po_Receipt_Headers IS NULL)))
465            AND (   (Recinfo.action =  X_Action)
466                 OR (    (Recinfo.action IS NULL)
467                     AND (X_Action IS NULL)))
468            AND (    (Recinfo.Organization_Id =   X_Organization_Id)
469                 OR (    (Recinfo.Organization_Id IS NULL)
470                     AND (X_Organization_Id IS NULL)))
471            AND (    (Recinfo.Po_Approved_Supplier_List =   X_Po_Approved_Supplier_List)
472                 OR (    (Recinfo.Po_Approved_Supplier_List IS NULL)
473                     AND (X_Po_Approved_Supplier_List IS NULL)))
477            AND (    (Recinfo.Po_Asl_Documents =   X_Po_Asl_Documents)
474            AND (    (Recinfo.Po_Asl_Attributes =   X_Po_Asl_Attributes)
475                 OR (    (Recinfo.Po_Asl_Attributes IS NULL)
476                     AND (X_Po_Asl_Attributes IS NULL)))
478                 OR (    (Recinfo.Po_Asl_Documents IS NULL)
479                     AND (X_Po_Asl_Documents IS NULL)))
480            AND (    (Recinfo.Chv_Authorizations =   X_Chv_Authorizations)
481                 OR (    (Recinfo.Chv_Authorizations IS NULL)
482                     AND (X_Chv_Authorizations IS NULL)))
483            AND (    (Recinfo.Chv_Cum_Adjustments =   X_Chv_Cum_Adjustments)
484                 OR (    (Recinfo.Chv_Cum_Adjustments IS NULL)
485                     AND (X_Chv_Cum_Adjustments IS NULL)))
486            AND (    (Recinfo.Chv_Cum_Periods =   X_Chv_Cum_Periods)
487                 OR (    (Recinfo.Chv_Cum_Periods IS NULL)
488                     AND (X_Chv_Cum_Periods IS NULL)))
489            AND (    (Recinfo.Chv_Cum_Period_Items =   X_Chv_Cum_Period_Items)
490                 OR (    (Recinfo.Chv_Cum_Period_Items IS NULL)
491                     AND (X_Chv_Cum_Period_Items IS NULL)))
492            AND (    (Recinfo.Chv_Horizontal_Schedules =   X_Chv_Horizontal_Schedules)
493                 OR (    (Recinfo.Chv_Horizontal_Schedules IS NULL)
494                     AND (X_Chv_Horizontal_Schedules IS NULL)))
495            AND (    (Recinfo.Chv_Item_Orders =   X_Chv_Item_Orders)
496                 OR (    (Recinfo.Chv_Item_Orders IS NULL)
497                     AND (X_Chv_Item_Orders IS NULL)))
498            AND (    (Recinfo.Chv_Schedule_Headers =   X_Chv_Schedule_Headers)
499                 OR (    (Recinfo.Chv_Schedule_Headers IS NULL)
500                     AND (X_Chv_Schedule_Headers IS NULL)))
501            AND (    (Recinfo.Chv_Schedule_Items =   X_Chv_Schedule_Items)
502                 OR (    (Recinfo.Chv_Schedule_Items IS NULL)
503                     AND (X_Chv_Schedule_Items IS NULL)))
504            AND (    (Recinfo.Mrp_Sr_Source_Org =   X_Mrp_Sr_Source_Org)
505                 OR (    (Recinfo.Mrp_Sr_Source_Org IS NULL)
506                     AND (X_Mrp_Sr_Source_Org IS NULL)))
507            AND (    (Recinfo.Mrp_Item_Sourcing =   X_Mrp_Item_Sourcing)
508                 OR (    (Recinfo.Mrp_Item_Sourcing IS NULL)
509                     AND (X_Mrp_Item_Sourcing IS NULL)))
510 
511 
515       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
512       ) then
513       return;
514     else
516       APP_EXCEPTION.Raise_Exception;
517     end if;
518 
519     EXCEPTION
520       WHEN OTHERS THEN
521          IF (SQLCODE <> -20001) THEN
522            IF (SQLCODE = -54) THEN
523              FND_MESSAGE.SET_NAME('SQLAP','AP_RESOURCE_BUSY');
524            ELSE
525              FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
526              FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
527              FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
528              FND_MESSAGE.SET_TOKEN('PARAMETERS','ROWID = ' || X_Rowid ||
529                                    ', PURGE_NAME = ' || X_Purge_name);
530              FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
531            END IF;
532 	 END IF;
533          APP_EXCEPTION.RAISE_EXCEPTION;
534 
535   END Lock_Row;
536 
537 
538   PROCEDURE Delete_Row(X_Rowid				VARCHAR2,
539 		       X_calling_sequence	IN	VARCHAR2
540   ) IS
541     current_calling_sequence	VARCHAR2(2000);
542     debug_info			VARCHAR2(100);
543   BEGIN
544 --  Update the calling sequence
545 --
546     current_calling_sequence := 'FINANCIALS_PURGES_PKG.DELETE_ROW<-' ||
547                                  X_calling_sequence;
548 
549     debug_info := 'Delete from FINANCIALS_PURGES';
550     DELETE FROM FINANCIALS_PURGES
551     WHERE rowid = X_Rowid;
552 
553     if (SQL%NOTFOUND) then
554       Raise NO_DATA_FOUND;
555     end if;
556 
557     EXCEPTION
558         WHEN OTHERS THEN
559            IF (SQLCODE <> -20001) THEN
560               FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
561               FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
562               FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
563               FND_MESSAGE.SET_TOKEN('PARAMETERS','ROWID = ' || X_Rowid);
564               FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
565            END IF;
566            APP_EXCEPTION.RAISE_EXCEPTION;
567 
568   END Delete_Row;
569 
570 
571 END FINANCIALS_PURGES_PKG;