DBA Data[Home] [Help]

PACKAGE BODY: APPS.ARP_CT_PKG

Source


1 PACKAGE BODY ARP_CT_PKG AS
2 /* $Header: ARTITRXB.pls 120.23 2011/01/16 08:18:21 dgaurab ship $ */
3 
4   /*---------------------------------------------------------------+
5    |  Package global variables to hold the parsed update cursors.  |
6    |  This allows the cursors to be reused without being reparsed. |
7    +---------------------------------------------------------------*/
8 
9   /*--------------------------------------------------------+
10    |  Dummy constants for use in update and lock operations |
11    +--------------------------------------------------------*/
12   AR_TEXT_DUMMY   CONSTANT VARCHAR2(10) := '~~!@#$*&^';
13   AR_FLAG_DUMMY   CONSTANT VARCHAR2(10) := '~';
14   AR_NUMBER_DUMMY CONSTANT NUMBER(15)   := -999999999999999;
15   AR_DATE_DUMMY   CONSTANT DATE         := to_date(1, 'J');
16 
17   pg_cursor1  integer := '';
18 
19   /*-------------------------------------+
20    |  WHO column values from FND_GLOBAL  |
21    +-------------------------------------*/
22 
23   pg_user_id          number;
24   pg_conc_login_id    number;
25   pg_login_id         number;
26   pg_prog_appl_id     number;
27   pg_conc_program_id  number;
28 
29 
30 /*==========================================================================+
31  | PROCEDURE                                                                |
32  |    bind_trx_variables                                                    |
33  |                                                                          |
34  | DESCRIPTION                                                              |
35  |    Binds variables from the record variable to the bind variables        |
36  |    in the dynamic SQL update statement.                                  |
37  |                                                                          |
38  | SCOPE - PRIVATE                                                          |
39  |                                                                          |
40  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                  |
41  |    dbms_sql.bind_variable                                                |
42  |    arp_util.debug                                                        |
43  |                                                                          |
44  | ARGUMENTS  : IN:                                                         |
45  |                    p_update_cursor  - ID of the update cursor            |
46  |                    p_trx_rec        - ra_customer_trx record             |
47  |              OUT:                                                        |
48  |                    None                                                  |
49  |                                                                          |
50  | RETURNS    : NONE                                                        |
51  |                                                                          |
52  | NOTES                                                                    |
53  |                                                                          |
54  | MODIFICATION HISTORY                                                     |
55  | 06-JUN-95   Charlie Tomberg  Created    			            |
56  |                                                                          |
57  | 20-MAR-2000 J Rautiainen     Added BR project related columns            |
58  |                              BR_AMOUNT, BR_UNPAID_FLAG,BR_ON_HOLD_FLAG,  |
59  |                              DRAWEE_ID, DRAWEE_CONTACT_ID,               |
60  |				DRAWEE_SITE_USE_ID, DRAWEE_BANK_ACCOUNT_ID, |
61  |                              REMITTANCE_BANK_ACCOUNT_ID,                 |
62  |                              OVERRIDE_REMIT_ACCOUNT_FLAG and             |
63  |                              SPECIAL_INSTRUCTIONSinto table handlers     |
64  | 24-JUL-2000 J Rautiainen     Added BR project related column             |
65  |                              REMITTANCE_BATCH_ID	                    |
66  |            								    |
67  | 31-OCT-2000 Y Rakotonirainy	Bug 1243304 : Added columns                 |
68  |                              address_verification_code and	            |
69  |				approval_code	and		            |
70  |				bill_to_address_id and	                    |
71  |				edi_processed_flag and			    |
72  |				edi_processed_status and		    |
73  |				payment_server_order_num and		    |
74  |				post_request_id and			    |
75  |				request_id and				    |
76  |				ship_to_address_id		    	    |
77  |				wh_update_date			            |
78  | 				into the table handlers.  		    |
79  | 20-Jun-2002 Sahana           Bug2427456 : Added global attribute columns |
80  +===========================================================================*/
81 
82 
83 PROCEDURE bind_trx_variables(p_update_cursor IN integer,
84                              p_trx_rec       IN ra_customer_trx%rowtype) IS
85 
86 BEGIN
87 
88    arp_util.debug('arp_ct_pkg.bind_trx_variables()+');
89 
90   /*------------------+
91    |  Dummy constants |
92    +------------------*/
93 
94    dbms_sql.bind_variable(p_update_cursor, ':ar_text_dummy',
95                           AR_TEXT_DUMMY);
96 
97    dbms_sql.bind_variable(p_update_cursor, ':ar_flag_dummy',
98                           AR_FLAG_DUMMY);
99 
100    dbms_sql.bind_variable(p_update_cursor, ':ar_number_dummy',
101                           AR_NUMBER_DUMMY);
102 
103    dbms_sql.bind_variable(p_update_cursor, ':ar_date_dummy',
104                           AR_DATE_DUMMY);
105 
106 
107   /*------------------+
108    |  WHO variables   |
109    +------------------*/
110 
111    dbms_sql.bind_variable(p_update_cursor, ':pg_user_id',
112                           pg_user_id);
113 
114    dbms_sql.bind_variable(p_update_cursor, ':pg_login_id',
115                           pg_login_id);
116 
117    dbms_sql.bind_variable(p_update_cursor, ':pg_conc_login_id',
118                           pg_conc_login_id);
119 
120 
121   /*----------------------------------------------+
122    |  Bind variables for all columns in the table |
123    +----------------------------------------------*/
124 
125 
126    dbms_sql.bind_variable(p_update_cursor, ':customer_trx_id',
127                           p_trx_rec.customer_trx_id);
128 
129    dbms_sql.bind_variable(p_update_cursor, ':trx_number',
130                           p_trx_rec.trx_number);
131 
132    dbms_sql.bind_variable(p_update_cursor, ':created_by',
133                           p_trx_rec.created_by);
134 
135    dbms_sql.bind_variable(p_update_cursor, ':creation_date',
136                           p_trx_rec.creation_date);
137 
138    dbms_sql.bind_variable(p_update_cursor, ':last_updated_by',
139                           p_trx_rec.last_updated_by);
140 
141    dbms_sql.bind_variable(p_update_cursor, ':last_update_date',
142                           p_trx_rec.last_update_date);
143 
144    dbms_sql.bind_variable(p_update_cursor, ':last_update_login',
145                           p_trx_rec.last_update_login);
146 
147    dbms_sql.bind_variable(p_update_cursor, ':set_of_books_id',
148                           p_trx_rec.set_of_books_id);
149 
150    dbms_sql.bind_variable(p_update_cursor, ':program_application_id',
151                           p_trx_rec.program_application_id);
152 
153    dbms_sql.bind_variable(p_update_cursor, ':program_id',
154                           p_trx_rec.program_id);
155 
156    dbms_sql.bind_variable(p_update_cursor, ':program_update_date',
157                           p_trx_rec.program_update_date);
158 
159    dbms_sql.bind_variable(p_update_cursor, ':posting_control_id',
160                           p_trx_rec.posting_control_id);
161 
162    dbms_sql.bind_variable(p_update_cursor, ':ra_post_loop_number',
163                           p_trx_rec.ra_post_loop_number);
164 
165    dbms_sql.bind_variable(p_update_cursor, ':complete_flag',
166                           p_trx_rec.complete_flag);
167 
168    dbms_sql.bind_variable(p_update_cursor, ':initial_customer_trx_id',
169                           p_trx_rec.initial_customer_trx_id);
170 
171    dbms_sql.bind_variable(p_update_cursor, ':previous_customer_trx_id',
172                           p_trx_rec.previous_customer_trx_id);
173 
174    dbms_sql.bind_variable(p_update_cursor, ':related_customer_trx_id',
175                           p_trx_rec.related_customer_trx_id);
176 
177    dbms_sql.bind_variable(p_update_cursor, ':recurred_from_trx_number',
178                           p_trx_rec.recurred_from_trx_number);
179 
180    dbms_sql.bind_variable(p_update_cursor, ':cust_trx_type_id',
181                           p_trx_rec.cust_trx_type_id);
182 
183    dbms_sql.bind_variable(p_update_cursor, ':batch_id',
184                           p_trx_rec.batch_id);
185 
186    dbms_sql.bind_variable(p_update_cursor, ':batch_source_id',
187                           p_trx_rec.batch_source_id);
188 
189    dbms_sql.bind_variable(p_update_cursor, ':agreement_id',
190                           p_trx_rec.agreement_id);
191 
192    dbms_sql.bind_variable(p_update_cursor, ':trx_date',
193                           p_trx_rec.trx_date);
194 
195    dbms_sql.bind_variable(p_update_cursor, ':bill_to_customer_id',
196                           p_trx_rec.bill_to_customer_id);
197 
198    dbms_sql.bind_variable(p_update_cursor, ':bill_to_contact_id',
199                           p_trx_rec.bill_to_contact_id);
200 
201    dbms_sql.bind_variable(p_update_cursor, ':bill_to_site_use_id',
202                           p_trx_rec.bill_to_site_use_id);
203 
204    dbms_sql.bind_variable(p_update_cursor, ':ship_to_customer_id',
205                           p_trx_rec.ship_to_customer_id);
206 
207    dbms_sql.bind_variable(p_update_cursor, ':ship_to_contact_id',
208                           p_trx_rec.ship_to_contact_id);
209 
210    dbms_sql.bind_variable(p_update_cursor, ':ship_to_site_use_id',
211                           p_trx_rec.ship_to_site_use_id);
212 
213    dbms_sql.bind_variable(p_update_cursor, ':sold_to_customer_id',
214                           p_trx_rec.sold_to_customer_id);
215 
216    dbms_sql.bind_variable(p_update_cursor, ':sold_to_site_use_id',
217                           p_trx_rec.sold_to_site_use_id);
218 
219    dbms_sql.bind_variable(p_update_cursor, ':sold_to_contact_id',
220                           p_trx_rec.sold_to_contact_id);
221 
222    dbms_sql.bind_variable(p_update_cursor, ':customer_reference',
223                           p_trx_rec.customer_reference);
224 
225    dbms_sql.bind_variable(p_update_cursor, ':customer_reference_date',
226                           p_trx_rec.customer_reference_date);
227 
228    dbms_sql.bind_variable(p_update_cursor, ':credit_method_for_installments',
229                           p_trx_rec.credit_method_for_installments);
230 
231    dbms_sql.bind_variable(p_update_cursor, ':credit_method_for_rules',
232                           p_trx_rec.credit_method_for_rules);
233 
234    dbms_sql.bind_variable(p_update_cursor, ':start_date_commitment',
235                           p_trx_rec.start_date_commitment);
236 
237    dbms_sql.bind_variable(p_update_cursor, ':end_date_commitment',
238                           p_trx_rec.end_date_commitment);
239 
240    dbms_sql.bind_variable(p_update_cursor, ':exchange_date',
241                           p_trx_rec.exchange_date);
242 
243    dbms_sql.bind_variable(p_update_cursor, ':exchange_rate',
244                           p_trx_rec.exchange_rate);
245 
246    dbms_sql.bind_variable(p_update_cursor, ':exchange_rate_type',
247                           p_trx_rec.exchange_rate_type);
248 
249    dbms_sql.bind_variable(p_update_cursor, ':customer_bank_account_id',
250                           p_trx_rec.customer_bank_account_id);
251 
252    dbms_sql.bind_variable(p_update_cursor, ':finance_charges',
253                           p_trx_rec.finance_charges);
254 
255    dbms_sql.bind_variable(p_update_cursor, ':fob_point',
256                           p_trx_rec.fob_point);
257 
258    dbms_sql.bind_variable(p_update_cursor, ':comments',
259                           p_trx_rec.comments);
260 
261    dbms_sql.bind_variable(p_update_cursor, ':internal_notes',
262                           p_trx_rec.internal_notes);
263 
264    dbms_sql.bind_variable(p_update_cursor, ':invoice_currency_code',
265                           p_trx_rec.invoice_currency_code);
266 
267    dbms_sql.bind_variable(p_update_cursor, ':invoicing_rule_id',
268                           p_trx_rec.invoicing_rule_id);
269 
270    dbms_sql.bind_variable(p_update_cursor, ':last_printed_sequence_num',
271                           p_trx_rec.last_printed_sequence_num);
272 
273    dbms_sql.bind_variable(p_update_cursor, ':orig_system_batch_name',
274                           p_trx_rec.orig_system_batch_name);
275 
276    dbms_sql.bind_variable(p_update_cursor, ':primary_salesrep_id',
277                           p_trx_rec.primary_salesrep_id);
278 
279    dbms_sql.bind_variable(p_update_cursor, ':printing_count',
280                           p_trx_rec.printing_count);
281 
282    dbms_sql.bind_variable(p_update_cursor, ':printing_last_printed',
283                           p_trx_rec.printing_last_printed);
284 
285    dbms_sql.bind_variable(p_update_cursor, ':printing_option',
286                           p_trx_rec.printing_option);
287 
288    dbms_sql.bind_variable(p_update_cursor, ':printing_original_date',
289                           p_trx_rec.printing_original_date);
290 
291    dbms_sql.bind_variable(p_update_cursor, ':printing_pending',
292                           p_trx_rec.printing_pending);
293 
294    dbms_sql.bind_variable(p_update_cursor, ':purchase_order',
295                           p_trx_rec.purchase_order);
296 
297    dbms_sql.bind_variable(p_update_cursor, ':purchase_order_date',
298                           p_trx_rec.purchase_order_date);
299 
300    dbms_sql.bind_variable(p_update_cursor, ':purchase_order_revision',
301                           p_trx_rec.purchase_order_revision);
302 
303    dbms_sql.bind_variable(p_update_cursor, ':receipt_method_id',
304                           p_trx_rec.receipt_method_id);
305 
306    dbms_sql.bind_variable(p_update_cursor, ':remit_to_address_id',
307                           p_trx_rec.remit_to_address_id);
308 
309    dbms_sql.bind_variable(p_update_cursor, ':shipment_id',
310                           p_trx_rec.shipment_id);
311 
312    dbms_sql.bind_variable(p_update_cursor, ':ship_date_actual',
313                           p_trx_rec.ship_date_actual);
314 
315    dbms_sql.bind_variable(p_update_cursor, ':ship_via',
316                           p_trx_rec.ship_via);
317 
318    dbms_sql.bind_variable(p_update_cursor, ':term_due_date',
319                           p_trx_rec.term_due_date);
320 
321    dbms_sql.bind_variable(p_update_cursor, ':term_id',
322                           p_trx_rec.term_id);
323 
324    dbms_sql.bind_variable(p_update_cursor, ':territory_id',
325                           p_trx_rec.territory_id);
326 
327    dbms_sql.bind_variable(p_update_cursor, ':waybill_number',
328                           p_trx_rec.waybill_number);
329 
330    dbms_sql.bind_variable(p_update_cursor, ':status_trx',
331                           p_trx_rec.status_trx);
332 
333    dbms_sql.bind_variable(p_update_cursor, ':reason_code',
334                           p_trx_rec.reason_code);
335 
336    dbms_sql.bind_variable(p_update_cursor, ':doc_sequence_id',
337                           p_trx_rec.doc_sequence_id);
338 
339    dbms_sql.bind_variable(p_update_cursor, ':doc_sequence_value',
340                           p_trx_rec.doc_sequence_value);
341 
342    dbms_sql.bind_variable(p_update_cursor, ':paying_customer_id',
343                           p_trx_rec.paying_customer_id);
344 
345    dbms_sql.bind_variable(p_update_cursor, ':paying_site_use_id',
346                           p_trx_rec.paying_site_use_id);
347 
348    dbms_sql.bind_variable(p_update_cursor, ':related_batch_source_id',
349                           p_trx_rec.related_batch_source_id);
350 
351    dbms_sql.bind_variable(p_update_cursor, ':default_tax_exempt_flag',
352                           p_trx_rec.default_tax_exempt_flag);
353 
354    dbms_sql.bind_variable(p_update_cursor, ':created_from',
355                           p_trx_rec.created_from);
356 
357    dbms_sql.bind_variable(p_update_cursor, ':default_ussgl_trx_code_context',
358                           p_trx_rec.default_ussgl_trx_code_context);
359 
360    dbms_sql.bind_variable(p_update_cursor, ':default_ussgl_transaction_code',
361                           p_trx_rec.default_ussgl_transaction_code);
362 
363    dbms_sql.bind_variable(p_update_cursor, ':old_trx_number',
364                           p_trx_rec.old_trx_number);
365 
366    dbms_sql.bind_variable(p_update_cursor, ':interface_header_context',
367                           p_trx_rec.interface_header_context);
368 
369    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute1',
370                           p_trx_rec.interface_header_attribute1);
371 
372    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute2',
373                           p_trx_rec.interface_header_attribute2);
374 
375    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute3',
376                           p_trx_rec.interface_header_attribute3);
377 
378    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute4',
379                           p_trx_rec.interface_header_attribute4);
380 
381    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute5',
382                           p_trx_rec.interface_header_attribute5);
383 
384    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute6',
385                           p_trx_rec.interface_header_attribute6);
386 
387    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute7',
388                           p_trx_rec.interface_header_attribute7);
389 
390    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute8',
391                           p_trx_rec.interface_header_attribute8);
392 
393    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute9',
394                           p_trx_rec.interface_header_attribute9);
395 
396    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute10',
397                           p_trx_rec.interface_header_attribute10);
398 
399    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute11',
400                           p_trx_rec.interface_header_attribute11);
401 
402    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute12',
403                           p_trx_rec.interface_header_attribute12);
404 
405    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute13',
406                           p_trx_rec.interface_header_attribute13);
407 
408    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute14',
409                           p_trx_rec.interface_header_attribute14);
410 
411    dbms_sql.bind_variable(p_update_cursor, ':interface_header_attribute15',
412                           p_trx_rec.interface_header_attribute15);
413 
414    dbms_sql.bind_variable(p_update_cursor, ':attribute_category',
415                           p_trx_rec.attribute_category);
416 
417    dbms_sql.bind_variable(p_update_cursor, ':attribute1',
418                           p_trx_rec.attribute1);
419 
420    dbms_sql.bind_variable(p_update_cursor, ':attribute2',
421                           p_trx_rec.attribute2);
422 
423    dbms_sql.bind_variable(p_update_cursor, ':attribute3',
424                           p_trx_rec.attribute3);
425 
426    dbms_sql.bind_variable(p_update_cursor, ':attribute4',
427                           p_trx_rec.attribute4);
428 
429    dbms_sql.bind_variable(p_update_cursor, ':attribute5',
430                           p_trx_rec.attribute5);
431 
432    dbms_sql.bind_variable(p_update_cursor, ':attribute6',
433                           p_trx_rec.attribute6);
434 
435    dbms_sql.bind_variable(p_update_cursor, ':attribute7',
436                           p_trx_rec.attribute7);
437 
438    dbms_sql.bind_variable(p_update_cursor, ':attribute8',
439                           p_trx_rec.attribute8);
440 
441    dbms_sql.bind_variable(p_update_cursor, ':attribute9',
442                           p_trx_rec.attribute9);
443 
444    dbms_sql.bind_variable(p_update_cursor, ':attribute10',
445                           p_trx_rec.attribute10);
446 
447    dbms_sql.bind_variable(p_update_cursor, ':attribute11',
448                           p_trx_rec.attribute11);
449 
450    dbms_sql.bind_variable(p_update_cursor, ':attribute12',
451                           p_trx_rec.attribute12);
452 
453    dbms_sql.bind_variable(p_update_cursor, ':attribute13',
454                           p_trx_rec.attribute13);
455 
456    dbms_sql.bind_variable(p_update_cursor, ':attribute14',
457                           p_trx_rec.attribute14);
458 
459    dbms_sql.bind_variable(p_update_cursor, ':attribute15',
460                           p_trx_rec.attribute15);
461 
462    dbms_sql.bind_variable(p_update_cursor, ':br_amount',
463                           p_trx_rec.br_amount);
464 
465    dbms_sql.bind_variable(p_update_cursor, ':br_unpaid_flag',
466                           p_trx_rec.br_unpaid_flag);
467 
468    dbms_sql.bind_variable(p_update_cursor, ':br_on_hold_flag',
469                           p_trx_rec.br_on_hold_flag);
470 
471    dbms_sql.bind_variable(p_update_cursor, ':drawee_id',
472                           p_trx_rec.drawee_id);
473 
474    dbms_sql.bind_variable(p_update_cursor, ':drawee_contact_id',
475                           p_trx_rec.drawee_contact_id);
476 
477    dbms_sql.bind_variable(p_update_cursor, ':drawee_site_use_id',
478                           p_trx_rec.drawee_site_use_id);
479 
480    dbms_sql.bind_variable(p_update_cursor, ':drawee_bank_account_id',
481                           p_trx_rec.drawee_bank_account_id);
482 
483    dbms_sql.bind_variable(p_update_cursor, ':remittance_bank_account_id',
484                           p_trx_rec.remit_bank_acct_use_id);
485 
486    dbms_sql.bind_variable(p_update_cursor, ':override_remit_account_flag',
487                           p_trx_rec.override_remit_account_flag);
488 
489    dbms_sql.bind_variable(p_update_cursor, ':special_instructions',
490                           p_trx_rec.special_instructions);
491 
492    dbms_sql.bind_variable(p_update_cursor, ':remittance_batch_id',
493                           p_trx_rec.remittance_batch_id);
494 
495    dbms_sql.bind_variable(p_update_cursor, ':address_verification_code',
496                           p_trx_rec.address_verification_code);
497 
498    dbms_sql.bind_variable(p_update_cursor, ':approval_code',
499                           p_trx_rec.approval_code);
500 
501    dbms_sql.bind_variable(p_update_cursor, ':bill_to_address_id',
502                           p_trx_rec.bill_to_address_id);
503 
504    dbms_sql.bind_variable(p_update_cursor, ':edi_processed_flag',
505                           p_trx_rec.edi_processed_flag);
506 
507    dbms_sql.bind_variable(p_update_cursor, ':edi_processed_status',
508                           p_trx_rec.edi_processed_status);
509 
510    dbms_sql.bind_variable(p_update_cursor, ':payment_server_order_num',
511                           p_trx_rec.payment_server_order_num);
512 
513    dbms_sql.bind_variable(p_update_cursor, ':post_request_id',
514                           p_trx_rec.post_request_id);
515 
516    dbms_sql.bind_variable(p_update_cursor, ':request_id',
517                           p_trx_rec.request_id);
518 
519    dbms_sql.bind_variable(p_update_cursor, ':ship_to_address_id',
520                           p_trx_rec.ship_to_address_id);
521 
522    dbms_sql.bind_variable(p_update_cursor, ':wh_update_date',
523                           p_trx_rec.wh_update_date);
524 
525    dbms_sql.bind_variable(p_update_cursor, ':legal_entity_id',
526                           p_trx_rec.legal_entity_id);
527 /* PAYMENT_UPTAKE */
528    dbms_sql.bind_variable(p_update_cursor, ':payment_trxn_extension_id',
529                           p_trx_rec.payment_trxn_extension_id);
530 
531    dbms_sql.bind_variable(p_update_cursor, ':billing_date',
532                           p_trx_rec.billing_date);
533 /*Start of Bug2427456*/
534    dbms_sql.bind_variable(p_update_cursor, ':global_attribute_category',
535                           p_trx_rec.global_attribute_category);
536 
537    dbms_sql.bind_variable(p_update_cursor, ':global_attribute1',
538                           p_trx_rec.global_attribute1);
539 
540    dbms_sql.bind_variable(p_update_cursor, ':global_attribute2',
541                           p_trx_rec.global_attribute2);
542 
543    dbms_sql.bind_variable(p_update_cursor, ':global_attribute3',
544                           p_trx_rec.global_attribute3);
545 
546    dbms_sql.bind_variable(p_update_cursor, ':global_attribute4',
547                           p_trx_rec.global_attribute4);
548 
549    dbms_sql.bind_variable(p_update_cursor, ':global_attribute5',
550                           p_trx_rec.global_attribute5);
551 
552    dbms_sql.bind_variable(p_update_cursor, ':global_attribute6',
553                           p_trx_rec.global_attribute6);
554 
555    dbms_sql.bind_variable(p_update_cursor, ':global_attribute7',
556                           p_trx_rec.global_attribute7);
557 
558 
559    dbms_sql.bind_variable(p_update_cursor, ':global_attribute8',
560                           p_trx_rec.global_attribute8);
561 
562    dbms_sql.bind_variable(p_update_cursor, ':global_attribute9',
563                           p_trx_rec.global_attribute9);
564 
565    dbms_sql.bind_variable(p_update_cursor, ':global_attribute10',
566                           p_trx_rec.global_attribute10);
567 
568    dbms_sql.bind_variable(p_update_cursor, ':global_attribute11',
569                           p_trx_rec.global_attribute11);
570 
571    dbms_sql.bind_variable(p_update_cursor, ':global_attribute12',
572                           p_trx_rec.global_attribute12);
573 
574    dbms_sql.bind_variable(p_update_cursor, ':global_attribute13',
575                           p_trx_rec.global_attribute13);
576 
577    dbms_sql.bind_variable(p_update_cursor, ':global_attribute14',
578                           p_trx_rec.global_attribute14);
579 
580    dbms_sql.bind_variable(p_update_cursor, ':global_attribute15',
581                           p_trx_rec.global_attribute15);
582 
583    dbms_sql.bind_variable(p_update_cursor, ':global_attribute16',
584                           p_trx_rec.global_attribute16);
585 
586    dbms_sql.bind_variable(p_update_cursor, ':global_attribute17',
587                           p_trx_rec.global_attribute17);
588 
589    dbms_sql.bind_variable(p_update_cursor, ':global_attribute18',
590                           p_trx_rec.global_attribute18);
591 
592    dbms_sql.bind_variable(p_update_cursor, ':global_attribute19',
593                           p_trx_rec.global_attribute19);
594 
595    dbms_sql.bind_variable(p_update_cursor, ':global_attribute20',
596                           p_trx_rec.global_attribute20);
597 
598    dbms_sql.bind_variable(p_update_cursor, ':global_attribute21',
599                           p_trx_rec.global_attribute21);
600 
601    dbms_sql.bind_variable(p_update_cursor, ':global_attribute22',
602                           p_trx_rec.global_attribute22);
603 
604    dbms_sql.bind_variable(p_update_cursor, ':global_attribute23',
605                           p_trx_rec.global_attribute23);
606 
607    dbms_sql.bind_variable(p_update_cursor, ':global_attribute24',
608                           p_trx_rec.global_attribute24);
609 
610    dbms_sql.bind_variable(p_update_cursor, ':global_attribute25',
611                           p_trx_rec.global_attribute25);
612 
613    dbms_sql.bind_variable(p_update_cursor, ':global_attribute26',
614                           p_trx_rec.global_attribute26);
615 
616    dbms_sql.bind_variable(p_update_cursor, ':global_attribute27',
617                           p_trx_rec.global_attribute27);
618 
619    dbms_sql.bind_variable(p_update_cursor, ':global_attribute28',
620                           p_trx_rec.global_attribute28);
621 
622    dbms_sql.bind_variable(p_update_cursor, ':global_attribute29',
623                           p_trx_rec.global_attribute29);
624 
625    dbms_sql.bind_variable(p_update_cursor, ':global_attribute30',
626                           p_trx_rec.global_attribute30);
627 
628 /*End of Bug2427456*/
629    arp_util.debug('arp_ct_pkg.bind_trx_variables()-');
630 
631 EXCEPTION
632     WHEN OTHERS THEN
633         arp_util.debug('EXCEPTION:  arp_ct_pkg.bind_trx_variables()');
634         RAISE;
635 
636 END;
637 
638 
639 /*==========================================================================+
640  | PROCEDURE                                           		            |
641  |    construct_trx_update_stmt 					    |
642  |                                                                          |
643  | DESCRIPTION                                                              |
644  |    Copies the text of the dynamic SQL update statement into the          |
645  |    out NOCOPY paramater. The update statement does not contain a where   |
646  |    clause since this is the dynamic part that is added later.            |
647  |                                                                          |
648  | SCOPE - PRIVATE                                                          |
649  |                                                                          |
650  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                  |
651  |    arp_util.debug                                                        |
652  |                                                                          |
653  | ARGUMENTS  : IN:                                                         |
654  |                    None.                                                 |
655  |              OUT:                                                        |
656  |                    update_text  - text of the update statement           |
657  |                                                                          |
658  | RETURNS    : NONE                                                        |
659  |                                                                          |
660  | NOTES                                                                    |
661  |   This statement only updates columns in the trx record that do not      |
662  |   contain the dummy values that indicate that they should not be changed.|
663  |                                                                          |
664  | MODIFICATION HISTORY                                                     |
665  |     06-JUN-95  Charlie Tomberg     Created                               |
666  |                                                                          |
667  | 20-MAR-2000  J Rautiainen    Added BR project related columns            |
668  |                              BR_AMOUNT, BR_UNPAID_FLAG,BR_ON_HOLD_FLAG,  |
669  |                              DRAWEE_ID, DRAWEE_CONTACT_ID,               |
670  |                              DRAWEE_SITE_USE_ID, DRAWEE_BANK_ACCOUNT_ID, |
671  |                              REMITTANCE_BANK_ACCOUNT_ID,   		    |
672  |                              OVERRIDE_REMIT_ACCOUNT_FLAG and             |
673  |                              SPECIAL_INSTRUCTIONSinto table handlers     |
674  | 24-JUL-2000  J Rautiainen    Added BR project related column             |
675  |                              REMITTANCE_BATCH_ID		            |
676  |            							            |
677  | 31-OCT-2000 Y Rakotonirainy	Bug 1243304 : Added columns                 |
678  |                              address_verification_code and	            |
679  |				approval_code	and                         |
680  |				bill_to_address_id and		            |
681  |				edi_processed_flag and		            |
682  |				edi_processed_status and		    |
683  |				payment_server_order_num and		    |
684  |				post_request_id and			    |
685  |				request_id and                              |
686  |				ship_to_address_id			    |
687  |				wh_update_date				    |
688  | 				into the table handlers.  		    |
689  |                                                                          |
690  | 20-Jun-2002  Sahana    Bug2427456 Added global attribute columns         |
691  +==========================================================================*/
692 
693 PROCEDURE construct_trx_update_stmt( update_text OUT NOCOPY varchar2) IS
694 
695 BEGIN
696    arp_util.debug('arp_ct_pkg.construct_trx_update_stmt()+');
697 
698    update_text :=
699  'UPDATE ra_customer_trx
700    SET    customer_trx_id =
701                DECODE(:customer_trx_id,
702                       :ar_number_dummy, customer_trx_id,
703                                         :customer_trx_id),
704           trx_number =
705                DECODE(:trx_number,
706                       :ar_text_dummy, trx_number,
707                                       :trx_number),
708           created_by =
709                DECODE(:created_by,
710                       :ar_number_dummy, created_by,
711                                         :created_by),
712           creation_date =
713                DECODE(:creation_date,
714                       :ar_date_dummy, creation_date,
715                                       :creation_date),
716           last_updated_by =
717                DECODE(:last_updated_by,
718                       :ar_number_dummy, :pg_user_id,
719                                         :last_updated_by),
720           last_update_date =
721                DECODE(:last_update_date,
722                       :ar_date_dummy, sysdate,
723                                       :last_update_date),
724           last_update_login =
725                DECODE(:last_update_login,
726                       :ar_number_dummy, nvl(:pg_conc_login_id,
727                                             :pg_login_id),
728                                         :last_update_login),
729           set_of_books_id =
730                DECODE(:set_of_books_id,
731                       :ar_number_dummy, set_of_books_id,
732                                         :set_of_books_id),
733           program_application_id =
734                DECODE(:program_application_id,
735                       :ar_number_dummy, program_application_id,
736                                         :program_application_id),
737           program_id =
738                DECODE(:program_id,
739                       :ar_number_dummy, program_id,
740                                         :program_id),
741           program_update_date =
742                DECODE(:program_update_date,
743                       :ar_date_dummy, program_update_date,
744                                       :program_update_date),
745           posting_control_id =
746                DECODE(:posting_control_id,
747                       :ar_number_dummy, posting_control_id,
748                                         :posting_control_id),
749           ra_post_loop_number =
750                DECODE(:ra_post_loop_number,
751                       :ar_number_dummy, ra_post_loop_number,
752                                         :ra_post_loop_number),
753           complete_flag =
754                DECODE(:complete_flag,
755                       :ar_flag_dummy, complete_flag,
756                                       :complete_flag),
757           initial_customer_trx_id =
758                DECODE(:initial_customer_trx_id,
759                       :ar_number_dummy, initial_customer_trx_id,
760                                         :initial_customer_trx_id),
761           previous_customer_trx_id =
762                DECODE(:previous_customer_trx_id,
763                       :ar_number_dummy, previous_customer_trx_id,
764                                         :previous_customer_trx_id),
765           related_customer_trx_id =
766                DECODE(:related_customer_trx_id,
767                       :ar_number_dummy, related_customer_trx_id,
768                                         :related_customer_trx_id),
769           recurred_from_trx_number =
770                DECODE(:recurred_from_trx_number,
771                       :ar_text_dummy, recurred_from_trx_number,
772                                       :recurred_from_trx_number),
773           cust_trx_type_id =
774                DECODE(:cust_trx_type_id,
775                       :ar_number_dummy, cust_trx_type_id,
776                                         :cust_trx_type_id),
777           batch_id =
778                DECODE(:batch_id,
779                       :ar_number_dummy, batch_id,
780                                         :batch_id),
781           batch_source_id =
782                DECODE(:batch_source_id,
783                       :ar_number_dummy, batch_source_id,
784                                         :batch_source_id),
785           agreement_id =
786                DECODE(:agreement_id,
787                       :ar_number_dummy, agreement_id,
788                                         :agreement_id),
789           trx_date =
790                DECODE(:trx_date,
791                       :ar_date_dummy, trx_date,
792                                       :trx_date),
793           bill_to_customer_id =
794                DECODE(:bill_to_customer_id,
795                       :ar_number_dummy, bill_to_customer_id,
796                                         :bill_to_customer_id),
797           bill_to_contact_id =
798                DECODE(:bill_to_contact_id,
799                       :ar_number_dummy, bill_to_contact_id,
800                                         :bill_to_contact_id),
801           bill_to_site_use_id =
802                DECODE(:bill_to_site_use_id,
803                       :ar_number_dummy, bill_to_site_use_id,
804                                         :bill_to_site_use_id),
805           ship_to_customer_id =
806                DECODE(:ship_to_customer_id,
807                       :ar_number_dummy, ship_to_customer_id,
808                                         :ship_to_customer_id),
809           ship_to_contact_id =
810                DECODE(:ship_to_contact_id,
811                       :ar_number_dummy, ship_to_contact_id,
812                                         :ship_to_contact_id),
813           ship_to_site_use_id =
814                DECODE(:ship_to_site_use_id,
815                       :ar_number_dummy, ship_to_site_use_id,
816                                         :ship_to_site_use_id),
817           sold_to_customer_id =
818                DECODE(:sold_to_customer_id,
819                       :ar_number_dummy, sold_to_customer_id,
820                                         :sold_to_customer_id),
821           sold_to_site_use_id =
822                DECODE(:sold_to_site_use_id,
823                       :ar_number_dummy, sold_to_site_use_id,
824                                         :sold_to_site_use_id),
825           sold_to_contact_id =
826                DECODE(:sold_to_contact_id,
827                       :ar_number_dummy, sold_to_contact_id,
828                                         :sold_to_contact_id),
829           customer_reference =
830                DECODE(:customer_reference,
831                       :ar_text_dummy, customer_reference,
832                                       :customer_reference),
833           customer_reference_date =
834                DECODE(:customer_reference_date,
835                       :ar_date_dummy, customer_reference_date,
836                                       :customer_reference_date),
837           credit_method_for_installments =
838                DECODE(:credit_method_for_installments,
839                       :ar_text_dummy, credit_method_for_installments,
840                                       :credit_method_for_installments),
841           credit_method_for_rules =
842                DECODE(:credit_method_for_rules,
843                       :ar_text_dummy, credit_method_for_rules,
844                                       :credit_method_for_rules),
845           start_date_commitment =
846                DECODE(:start_date_commitment,
847                       :ar_date_dummy, start_date_commitment,
848                                       :start_date_commitment),
849           end_date_commitment =
850                DECODE(:end_date_commitment,
851                       :ar_date_dummy, end_date_commitment,
852                                       :end_date_commitment),
853           exchange_date =
854                DECODE(:exchange_date,
855                       :ar_date_dummy, exchange_date,
856                                       :exchange_date),
857           exchange_rate =
858                DECODE(:exchange_rate,
859                       :ar_number_dummy, exchange_rate,
860                                         :exchange_rate),
861           exchange_rate_type =
862                DECODE(:exchange_rate_type,
863                       :ar_text_dummy, exchange_rate_type,
864                                       :exchange_rate_type),
865           customer_bank_account_id =
866                DECODE(:customer_bank_account_id,
867                       :ar_number_dummy, customer_bank_account_id,
868                                         :customer_bank_account_id),
869           finance_charges =
870                DECODE(:finance_charges,
871                       :ar_flag_dummy, finance_charges,
872                                       :finance_charges),
873           fob_point =
874                DECODE(:fob_point,
875                       :ar_text_dummy, fob_point,
876                                       :fob_point),
877           comments =
878                DECODE(:comments,
879                       :ar_text_dummy, comments,
880                                       :comments),
881           internal_notes =
882                DECODE(:internal_notes,
883                       :ar_text_dummy, internal_notes,
884                                       :internal_notes),
885           invoice_currency_code =
886                DECODE(:invoice_currency_code,
887                       :ar_text_dummy, invoice_currency_code,
888                                       :invoice_currency_code),
889           invoicing_rule_id =
890                DECODE(:invoicing_rule_id,
891                       :ar_number_dummy, invoicing_rule_id,
892                                         :invoicing_rule_id),
893           last_printed_sequence_num =
894                DECODE(:last_printed_sequence_num,
895                       :ar_number_dummy, last_printed_sequence_num,
896                                         :last_printed_sequence_num),
897           orig_system_batch_name =
898                DECODE(:orig_system_batch_name,
899                       :ar_text_dummy, orig_system_batch_name,
900                                       :orig_system_batch_name),
901           primary_salesrep_id =
902                DECODE(:primary_salesrep_id,
903                       :ar_number_dummy, primary_salesrep_id,
904                                         :primary_salesrep_id),
905           printing_count =
906                DECODE(:printing_count,
907                       :ar_number_dummy, printing_count,
908                                         :printing_count),
909           printing_last_printed =
910                DECODE(:printing_last_printed,
911                       :ar_date_dummy, printing_last_printed,
912                                       :printing_last_printed),
913           printing_option =
914                DECODE(:printing_option,
915                       :ar_text_dummy, printing_option,
916                                       :printing_option),
917           printing_original_date =
918                DECODE(:printing_original_date,
919                       :ar_date_dummy, printing_original_date,
920                                       :printing_original_date),
921           printing_pending =
922                DECODE(:printing_option,
923                         printing_option, printing_pending,
924                               DECODE(:printing_option,
925                                      ''PRI'', ''Y'',
926                                      ''NOT'', ''N'',
927                                               DECODE(:printing_pending,
928                                                      :ar_flag_dummy,
929                                                        printing_pending,
930                                                        :printing_pending)
931                                      )
932                      ),
933           purchase_order =
934                DECODE(:purchase_order,
935                       :ar_text_dummy, purchase_order,
936                                       :purchase_order),
937           purchase_order_date =
938                DECODE(:purchase_order_date,
939                       :ar_date_dummy, purchase_order_date,
940                                       :purchase_order_date),
941           purchase_order_revision =
942                DECODE(:purchase_order_revision,
943                       :ar_text_dummy, purchase_order_revision,
944                                       :purchase_order_revision),
945           receipt_method_id =
946                DECODE(:receipt_method_id,
947                       :ar_number_dummy, receipt_method_id,
948                                         :receipt_method_id),
949           remit_to_address_id =
950                DECODE(:remit_to_address_id,
951                       :ar_number_dummy, remit_to_address_id,
952                                         :remit_to_address_id),
953           shipment_id =
954                DECODE(:shipment_id,
955                       :ar_number_dummy, shipment_id,
956                                         :shipment_id),
957           ship_date_actual =
958                DECODE(:ship_date_actual,
959                       :ar_date_dummy, ship_date_actual,
960                                       :ship_date_actual),
961           ship_via =
962                DECODE(:ship_via,
963                       :ar_text_dummy, ship_via,
964                                       :ship_via),
965           term_due_date =
966                DECODE(:term_due_date,
967                       :ar_date_dummy, term_due_date,
968                                       :term_due_date),
969           term_id =
970                DECODE(:term_id,
971                       :ar_number_dummy, term_id,
972                                         :term_id),
973           territory_id =
974                DECODE(:territory_id,
975                       :ar_number_dummy, territory_id,
976                                         :territory_id),
977           waybill_number =
978                DECODE(:waybill_number,
979                       :ar_text_dummy, waybill_number,
980                                       :waybill_number),
981           status_trx =
982                DECODE(:status_trx,
983                       :ar_text_dummy, status_trx,
984                                       :status_trx),
985           reason_code =
986                DECODE(:reason_code,
987                       :ar_text_dummy, reason_code,
988                                       :reason_code),
989           doc_sequence_id =
990                DECODE(:doc_sequence_id,
991                       :ar_number_dummy, doc_sequence_id,
992                                         :doc_sequence_id),
993           doc_sequence_value =
994                DECODE(:doc_sequence_value,
995                       :ar_number_dummy, doc_sequence_value,
996                                         :doc_sequence_value),
997           paying_customer_id =
998                DECODE(:paying_customer_id,
999                       :ar_number_dummy, paying_customer_id,
1000                                         :paying_customer_id),
1001           paying_site_use_id =
1002                DECODE(:paying_site_use_id,
1003                       :ar_number_dummy, paying_site_use_id,
1004                                         :paying_site_use_id),
1005           related_batch_source_id =
1006                DECODE(:related_batch_source_id,
1007                       :ar_number_dummy, related_batch_source_id,
1008                                         :related_batch_source_id),
1009           default_tax_exempt_flag =
1010                DECODE(:default_tax_exempt_flag,
1011                       :ar_flag_dummy, default_tax_exempt_flag,
1012                                       :default_tax_exempt_flag),
1013           created_from =
1014                DECODE(:created_from,
1015                       :ar_text_dummy, created_from,
1016                                       :created_from),
1017           default_ussgl_trx_code_context =
1018                DECODE(:default_ussgl_trx_code_context,
1019                       :ar_text_dummy, default_ussgl_trx_code_context,
1020                                       :default_ussgl_trx_code_context),
1021           default_ussgl_transaction_code =
1022                DECODE(:default_ussgl_transaction_code,
1023                       :ar_text_dummy, default_ussgl_transaction_code,
1024                                       :default_ussgl_transaction_code),
1025           old_trx_number =
1026                DECODE(:old_trx_number,
1027                       :ar_text_dummy, old_trx_number,
1028                                       :old_trx_number),
1029           interface_header_context =
1030                DECODE(:interface_header_context,
1031                       :ar_text_dummy, interface_header_context,
1032                                       :interface_header_context),
1033           interface_header_attribute1 =
1034                DECODE(:interface_header_attribute1,
1035                       :ar_text_dummy, interface_header_attribute1,
1036                                       :interface_header_attribute1),
1037           interface_header_attribute2 =
1038                DECODE(:interface_header_attribute2,
1039                       :ar_text_dummy, interface_header_attribute2,
1040                                       :interface_header_attribute2),
1041           interface_header_attribute3 =
1042                DECODE(:interface_header_attribute3,
1043                       :ar_text_dummy, interface_header_attribute3,
1044                                       :interface_header_attribute3),
1045           interface_header_attribute4 =
1046                DECODE(:interface_header_attribute4,
1047                       :ar_text_dummy, interface_header_attribute4,
1048                                       :interface_header_attribute4),
1049           interface_header_attribute5 =
1050                DECODE(:interface_header_attribute5,
1051                       :ar_text_dummy, interface_header_attribute5,
1052                                       :interface_header_attribute5),
1053           interface_header_attribute6 =
1054                DECODE(:interface_header_attribute6,
1055                       :ar_text_dummy, interface_header_attribute6,
1056                                       :interface_header_attribute6),
1057           interface_header_attribute7 =
1058                DECODE(:interface_header_attribute7,
1059                       :ar_text_dummy, interface_header_attribute7,
1060                                       :interface_header_attribute7),
1061           interface_header_attribute8 =
1062                DECODE(:interface_header_attribute8,
1063                       :ar_text_dummy, interface_header_attribute8,
1064                                       :interface_header_attribute8),
1065           interface_header_attribute9 =
1066                DECODE(:interface_header_attribute9,
1067                       :ar_text_dummy, interface_header_attribute9,
1068                                       :interface_header_attribute9),
1069           interface_header_attribute10 =
1070                DECODE(:interface_header_attribute10,
1071                       :ar_text_dummy, interface_header_attribute10,
1072                                       :interface_header_attribute10),
1073           interface_header_attribute11 =
1074                DECODE(:interface_header_attribute11,
1075                       :ar_text_dummy, interface_header_attribute11,
1076                                       :interface_header_attribute11),
1077           interface_header_attribute12 =
1078                DECODE(:interface_header_attribute12,
1079                       :ar_text_dummy, interface_header_attribute12,
1080                                       :interface_header_attribute12),
1081           interface_header_attribute13 =
1082                DECODE(:interface_header_attribute13,
1083                       :ar_text_dummy, interface_header_attribute13,
1084                                       :interface_header_attribute13),
1085           interface_header_attribute14 =
1086                DECODE(:interface_header_attribute14,
1087                       :ar_text_dummy, interface_header_attribute14,
1088                                       :interface_header_attribute14),
1089           interface_header_attribute15 =
1090                DECODE(:interface_header_attribute15,
1091                       :ar_text_dummy, interface_header_attribute15,
1092                                       :interface_header_attribute15),
1093           attribute_category =
1094                DECODE(:attribute_category,
1095                       :ar_text_dummy, attribute_category,
1096                                       :attribute_category),
1097           attribute1 =
1098                DECODE(:attribute1,
1099                       :ar_text_dummy, attribute1,
1100                                       :attribute1),
1101           attribute2 =
1102                DECODE(:attribute2,
1103                       :ar_text_dummy, attribute2,
1104                                       :attribute2),
1105           attribute3 =
1106                DECODE(:attribute3,
1107                       :ar_text_dummy, attribute3,
1108                                       :attribute3),
1109           attribute4 =
1110                DECODE(:attribute4,
1111                       :ar_text_dummy, attribute4,
1112                                       :attribute4),
1113           attribute5 =
1114                DECODE(:attribute5,
1115                       :ar_text_dummy, attribute5,
1116                                       :attribute5),
1117           attribute6 =
1118                DECODE(:attribute6,
1119                       :ar_text_dummy, attribute6,
1120                                       :attribute6),
1121           attribute7 =
1122                DECODE(:attribute7,
1123                       :ar_text_dummy, attribute7,
1124                                       :attribute7),
1125           attribute8 =
1126                DECODE(:attribute8,
1127                       :ar_text_dummy, attribute8,
1128                                       :attribute8),
1129           attribute9 =
1130                DECODE(:attribute9,
1131                       :ar_text_dummy, attribute9,
1132                                       :attribute9),
1133           attribute10 =
1134                DECODE(:attribute10,
1135                       :ar_text_dummy, attribute10,
1136                                       :attribute10),
1137           attribute11 =
1138                DECODE(:attribute11,
1139                       :ar_text_dummy, attribute11,
1140                                       :attribute11),
1141           attribute12 =
1142                DECODE(:attribute12,
1143                       :ar_text_dummy, attribute12,
1144                                       :attribute12),
1145           attribute13 =
1146                DECODE(:attribute13,
1147                       :ar_text_dummy, attribute13,
1148                                       :attribute13),
1149           attribute14 =
1150                DECODE(:attribute14,
1151                       :ar_text_dummy, attribute14,
1152                                       :attribute14),
1153           attribute15 =
1154                DECODE(:attribute15,
1155                       :ar_text_dummy, attribute15,
1156                                       :attribute15),
1157           br_amount =
1158                DECODE(:br_amount,
1159                       :ar_number_dummy, br_amount,
1160                                         :br_amount),
1161           br_unpaid_flag =
1162                DECODE(:br_unpaid_flag,
1163                       :ar_flag_dummy, br_unpaid_flag,
1164                                       :br_unpaid_flag),
1165           br_on_hold_flag =
1166                DECODE(:br_on_hold_flag,
1167                       :ar_flag_dummy, br_on_hold_flag,
1168                                       :br_on_hold_flag),
1169           drawee_id =
1170                DECODE(:drawee_id,
1171                       :ar_number_dummy, drawee_id,
1172                                         :drawee_id),
1173           drawee_contact_id =
1174                DECODE(:drawee_contact_id,
1175                       :ar_number_dummy, drawee_contact_id,
1176                                         :drawee_contact_id),
1177           drawee_site_use_id =
1178                DECODE(:drawee_site_use_id,
1179                       :ar_number_dummy, drawee_site_use_id,
1180                                         :drawee_site_use_id),
1181           drawee_bank_account_id =
1182                DECODE(:drawee_bank_account_id,
1183                       :ar_number_dummy, drawee_bank_account_id,
1184                                         :drawee_bank_account_id),
1185           remit_bank_acct_use_id =
1186                DECODE(:remittance_bank_account_id,
1187                       :ar_number_dummy, remit_bank_acct_use_id,
1188                                         :remittance_bank_account_id),
1189           override_remit_account_flag =
1190                DECODE(:override_remit_account_flag,
1191                       :ar_flag_dummy, override_remit_account_flag,
1192                                       :override_remit_account_flag),
1193           special_instructions =
1194                DECODE(:special_instructions,
1195                       :ar_text_dummy, special_instructions,
1196                                       :special_instructions),
1197           remittance_batch_id =
1198                DECODE(:remittance_batch_id,
1199                       :ar_number_dummy, remittance_batch_id,
1200                                         :remittance_batch_id) ,
1201           address_verification_code =
1202                DECODE(:address_verification_code,
1203                       :ar_text_dummy,  address_verification_code,
1204                                       :address_verification_code),
1205           approval_code =
1206                DECODE(:approval_code,
1207                       :ar_text_dummy, approval_code,
1208                                       :approval_code),
1209            bill_to_address_id =
1210                DECODE(:bill_to_address_id,
1211                       :ar_number_dummy, bill_to_address_id,
1212                                       :bill_to_address_id),
1213            edi_processed_flag =
1214                DECODE(:edi_processed_flag,
1215                       :ar_flag_dummy, edi_processed_flag,
1216                                         :edi_processed_flag),
1217           edi_processed_status =
1218                DECODE(:edi_processed_status,
1219                       :ar_text_dummy, edi_processed_status,
1220                                         :edi_processed_status),
1221           payment_server_order_num =
1222                DECODE(:payment_server_order_num,
1223                       :ar_text_dummy, payment_server_order_num,
1224                                         :payment_server_order_num),
1225           post_request_id =
1226                DECODE(:post_request_id,
1227                       :ar_number_dummy, post_request_id,
1228                                       :post_request_id),
1229           request_id =
1230                DECODE(:request_id,
1231                       :ar_number_dummy, request_id,
1232                                       :request_id),
1233           ship_to_address_id =
1234                DECODE(:ship_to_address_id,
1235                       :ar_number_dummy, ship_to_address_id,
1236                                       :ship_to_address_id),
1237          wh_update_date =
1238                DECODE(:wh_update_date,
1239                       :ar_date_dummy,wh_update_date,
1240                                         :wh_update_date),
1241          legal_entity_id =
1242                DECODE(:legal_entity_id,
1243                       :ar_number_dummy, legal_entity_id,
1244                                       :legal_entity_id) ,
1245 /* PAYMENT_UPTAKE */
1246          payment_trxn_extension_id =
1247                DECODE(:payment_trxn_extension_id,
1248                       :ar_number_dummy, payment_trxn_extension_id,
1249                                       :payment_trxn_extension_id),
1250          billing_date =
1251                DECODE(:billing_date,
1252                        :ar_date_dummy, billing_date,
1253                                       :billing_date)';
1254 
1255    arp_util.debug('arp_ct_pkg.construct_trx_update_stmt()-');
1256 
1257 EXCEPTION
1258     WHEN OTHERS THEN
1259         arp_util.debug('EXCEPTION:  arp_ct_pkg.construct_trx_update_stmt()');
1260         RAISE;
1261 
1262 END;
1263 
1264 
1265 /*===========================================================================+
1266  | PROCEDURE                                                                 |
1267  |    construct_global_attr_stmt                                             |
1268  |                                                                           |
1269  | DESCRIPTION                                                               |
1270  |    Copies the text of the dynamic SQL update statement for the            |
1271  |    global_attribute_category and global_attributes(1-30) into the         |
1272  |    out NOCOPY paramater. The update statement contains a where clause            |
1273  |    since this is the dynamic part that is added later.                    |
1274  |                                                                           |
1275  | SCOPE - PRIVATE                                                           |
1276  |                                                                           |
1277  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
1278  |    arp_util.debug                                                         |
1279  |                                                                           |
1280  | ARGUMENTS  : IN:                                                          |
1281  |                    None						     |
1282  |              OUT:                                                         |
1283  |                    update_text  - text of the update statement	     |
1284  |                                                                           |
1285  | RETURNS    : NONE                                                         |
1286  |                                                                           |
1287  | NOTES                                                                     |
1288  |                                                                           |
1289  | MODIFICATION HISTORY                                                      |
1290  |     22-JUN-02  skoukunt            Created for Bug2427456                 |
1291  |                                                                           |
1292  +===========================================================================*/
1293 PROCEDURE construct_global_attr_stmt( update_text OUT NOCOPY varchar2) IS
1294 BEGIN
1295    arp_util.debug('arp_ct_pkg.construct_global_attr_stmt()+');
1296    update_text := '
1297          ,global_attribute_category =
1298                DECODE(:global_attribute_category,
1299                       :ar_text_dummy, global_attribute_category,
1300                                       :global_attribute_category),
1301           global_attribute1 =
1302                DECODE(:global_attribute1,
1303                       :ar_text_dummy, global_attribute1,
1304                                       :global_attribute1),
1305           global_attribute2 =
1306                DECODE(:global_attribute2,
1307                       :ar_text_dummy, global_attribute2,
1308                                       :global_attribute2),
1309           global_attribute3 =
1310                DECODE(:global_attribute3,
1311                       :ar_text_dummy, global_attribute3,
1312                                       :global_attribute3),
1313           global_attribute4 =
1314                DECODE(:global_attribute4,
1315                       :ar_text_dummy, global_attribute4,
1316                                       :global_attribute4),
1317           global_attribute5 =
1318                DECODE(:global_attribute5,
1319                       :ar_text_dummy, global_attribute5,
1320                                       :global_attribute5),
1321           global_attribute6 =
1322                DECODE(:global_attribute6,
1323                       :ar_text_dummy, global_attribute6,
1324                                       :global_attribute6),
1325           global_attribute7 =
1326                DECODE(:global_attribute7,
1327                       :ar_text_dummy, global_attribute7,
1328                                       :global_attribute7),
1329           global_attribute8 =
1330                DECODE(:global_attribute8,
1331                       :ar_text_dummy, global_attribute8,
1332                                       :global_attribute8),
1333           global_attribute9 =
1334                DECODE(:global_attribute9,
1335                       :ar_text_dummy, global_attribute9,
1336                                       :global_attribute9),
1337           global_attribute10 =
1338                DECODE(:global_attribute10,
1339                       :ar_text_dummy, global_attribute10,
1340                                       :global_attribute10),
1341           global_attribute11 =
1342                DECODE(:global_attribute11,
1343                       :ar_text_dummy, global_attribute11,
1344                                       :global_attribute11),
1345           global_attribute12 =
1346                DECODE(:global_attribute12,
1347                       :ar_text_dummy, global_attribute12,
1348                                       :global_attribute12),
1349           global_attribute13 =
1350                DECODE(:global_attribute13,
1351                       :ar_text_dummy, global_attribute13,
1352                                       :global_attribute13),
1353           global_attribute14 =
1354                DECODE(:global_attribute14,
1355                       :ar_text_dummy, global_attribute14,
1356                                       :global_attribute14),
1357           global_attribute15 =
1358                DECODE(:global_attribute15,
1359                       :ar_text_dummy, global_attribute15,
1360                                       :global_attribute15),
1361           global_attribute16 =
1362                DECODE(:global_attribute16,
1363                       :ar_text_dummy, global_attribute16,
1364                                       :global_attribute16),
1365           global_attribute17 =
1366                DECODE(:global_attribute17,
1367                       :ar_text_dummy, global_attribute17,
1368                                       :global_attribute17),
1369           global_attribute18 =
1370                DECODE(:global_attribute18,
1371                       :ar_text_dummy, global_attribute18,
1372                                       :global_attribute18),
1373           global_attribute19 =
1374                DECODE(:global_attribute19,
1375                       :ar_text_dummy, global_attribute19,
1376                                       :global_attribute19),
1377           global_attribute20 =
1378                DECODE(:global_attribute20,
1379                       :ar_text_dummy, global_attribute20,
1380                                       :global_attribute20),
1381           global_attribute21 =
1382                DECODE(:global_attribute21,
1383                       :ar_text_dummy, global_attribute21,
1384                                       :global_attribute21),
1385           global_attribute22 =
1386                DECODE(:global_attribute22,
1387                       :ar_text_dummy, global_attribute22,
1388                                       :global_attribute22),
1389           global_attribute23 =
1390                DECODE(:global_attribute23,
1391                       :ar_text_dummy, global_attribute23,
1392                                       :global_attribute23),
1393           global_attribute24 =
1394                DECODE(:global_attribute24,
1395                       :ar_text_dummy, global_attribute24,
1396                                       :global_attribute24),
1397           global_attribute25 =
1398                DECODE(:global_attribute25,
1399                       :ar_text_dummy, global_attribute25,
1400                                       :global_attribute25),
1401           global_attribute26 =
1402                DECODE(:global_attribute26,
1403                       :ar_text_dummy, global_attribute26,
1404                                       :global_attribute26),
1405           global_attribute27 =
1406                DECODE(:global_attribute27,
1407                       :ar_text_dummy, global_attribute27,
1408                                       :global_attribute27),
1409           global_attribute28 =
1410                DECODE(:global_attribute28,
1411                       :ar_text_dummy, global_attribute28,
1412                                       :global_attribute28),
1413           global_attribute29 =
1414                DECODE(:global_attribute29,
1415                       :ar_text_dummy, global_attribute29,
1416                                       :global_attribute29),
1417           global_attribute30 =
1418                DECODE(:global_attribute30,
1419                       :ar_text_dummy, global_attribute30,
1420                                       :global_attribute30)';
1421 
1422    arp_util.debug('arp_ct_pkg.construct_global_attr_stmt()-');
1423 EXCEPTION
1424     WHEN OTHERS THEN
1425         arp_util.debug('EXCEPTION:  arp_ct_pkg.construct_global_attr_stmt()');
1426         RAISE;
1427 
1428 END;
1429 
1430 /*===========================================================================+
1431  | PROCEDURE                                                                 |
1432  |    generic_update                                                         |
1433  |                                                                           |
1434  | DESCRIPTION                                                               |
1435  |    This procedure Updates records in ra_customer_trx identified by the    |
1436  |    where clause that is passed in as a parameter. Only those columns in   |
1437  |    the trx record parameter that do not contain the special dummy values  |
1438  |    are updated.                                                           |
1439  |                                                                           |
1440  | SCOPE - PRIVATE                                                           |
1441  |                                                                           |
1442  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
1443  |    arp_util.debug                                                         |
1444  |    dbms_sql.open_cursor 						     |
1445  |    dbms_sql.parse							     |
1446  |    dbms_sql.execute							     |
1447  |    dbms_sql.close_cursor						     |
1448  |                                                                           |
1449  | ARGUMENTS  : IN:                                                          |
1450  |		      p_update_cursor  - identifies the cursor to use 	     |
1451  |                    p_where_clause   - identifies which rows to update     |
1452  | 		      p_where1         - value to bind into where clause     |
1453  |		      p_trx_rec        - contains the new trx values         |
1454  |              OUT:                                                         |
1455  |                    None						     |
1456  |                                                                           |
1457  | RETURNS    : NONE                                                         |
1458  |                                                                           |
1459  | NOTES                                                                     |
1460  |                                                                           |
1461  | MODIFICATION HISTORY                                                      |
1462  |     06-JUN-95  Charlie Tomberg     Created                                |
1463  |     08-NOV-01  Debbie Jancis	      Added calls to MRC engine for          |
1464  |                                    RA_CUSTOMER_TRX processing             |
1465  |                                                                           |
1466  +===========================================================================*/
1467 
1468 PROCEDURE generic_update(p_update_cursor IN OUT NOCOPY integer,
1469 			 p_where_clause      IN varchar2,
1470 			 p_where1            IN number,
1471                          p_trx_rec           IN ra_customer_trx%rowtype) IS
1472 
1473    l_count             number;
1474    l_update_statement_1  varchar2(30000);
1475    l_update_statement_2  varchar2(30000);
1476    l_update_statement  long;
1477    ctrx_array   dbms_sql.number_table;
1478 
1479 BEGIN
1480    arp_util.debug('arp_ct_pkg.generic_update()+');
1481 
1482   /*--------------------------------------------------------------+
1483    |  If this update statement has not already been parsed, 	  |
1484    |  construct the statement and parse it.			  |
1485    |  Otherwise, use the already parsed statement and rebind its  |
1486    |  variables.						  |
1487    +--------------------------------------------------------------*/
1488 
1489    IF (p_update_cursor is null)
1490    THEN
1491 
1492          p_update_cursor := dbms_sql.open_cursor;
1493 
1494          /*---------------------------------+
1495           |  Construct the update statement |
1496           +---------------------------------*/
1497 
1498          arp_ct_pkg.construct_trx_update_stmt(l_update_statement_1);
1499          arp_ct_pkg.construct_global_attr_stmt(l_update_statement_2);
1500 
1501          l_update_statement := l_update_statement_1 || l_update_statement_2;
1502 
1503          l_update_statement := l_update_statement || p_where_clause;
1504 
1505          /*---------------------------------------+
1506           | add on mrc variables for bulk collect |
1507           +---------------------------------------*/
1508 
1509          l_update_statement := l_update_statement ||
1510              ' RETURNING customer_trx_id INTO :ctrx_key_value ';
1511 
1512          /*-----------------------------------------------+
1513           |  Parse, bind, execute and close the statement |
1514           +-----------------------------------------------*/
1515 
1516          dbms_sql.parse(p_update_cursor,
1517                         l_update_statement,
1518                         dbms_sql.v7);
1519 
1520    END IF;
1521 
1522    arp_ct_pkg.bind_trx_variables(p_update_cursor, p_trx_rec);
1523 
1524   /*----------------------------+
1525    | Bind output variable       |
1526    +----------------------------*/
1527 
1528    dbms_sql.bind_array(p_update_cursor, ':ctrx_key_value',
1529                         ctrx_array);
1530 
1531   /*-----------------------------------------+
1532    |  Bind the variables in the where clause |
1533    +-----------------------------------------*/
1534 
1535    dbms_sql.bind_variable(p_update_cursor, ':where_1',
1536                           p_where1);
1537 
1538    l_count := dbms_sql.execute(p_update_cursor);
1539 
1540    arp_util.debug( to_char(l_count) || ' rows updated');
1541 
1542    /*------------------------------------------+
1543     | get RETURNING COLUMN into OUT NOCOPY bind array |
1544     +------------------------------------------*/
1545 
1546     dbms_sql.variable_value( p_update_cursor, ':ctrx_key_value', ctrx_array);
1547 
1548 
1549    /*------------------------------------------------------------+
1550     |  Raise the NO_DATA_FOUND exception if no rows were updated |
1551     +------------------------------------------------------------*/
1552 
1553    IF  (l_count = 0)
1554    THEN RAISE NO_DATA_FOUND;
1555    END IF;
1556 
1557 --{BUG4301323
1558 --   FOR I in ctrx_array.FIRST..ctrx_array.LAST LOOP
1559        /*------------------------------------------------+
1560         | call mrc engine to update RA_MC_CUSTOMER_TRX   |
1561         +------------------------------------------------*/
1562 --       ar_mrc_engine.maintain_mrc_data(
1563 --                        p_event_mode       => 'UPDATE',
1564 --                        p_table_name       => 'RA_CUSTOMER_TRX',
1565 --                        p_mode             => 'SINGLE',
1566 --                        p_key_value        => ctrx_array(I));
1567 --   END LOOP;
1568 
1569 
1570 
1571    arp_util.debug('arp_ct_pkg.generic_update()-');
1572 
1573 EXCEPTION
1574     WHEN OTHERS THEN
1575         arp_util.debug('EXCEPTION:  arp_ct_pkg.generic_update()');
1576         arp_util.debug(l_update_statement);
1577         arp_util.debug('Error at character: ' ||
1578                            to_char(dbms_sql.last_error_position));
1579         RAISE;
1580 END;
1581 
1582 /*===========================================================================+
1583  | PROCEDURE                                                         	     |
1584  |    set_to_dummy						     	     |
1585  |                                                                     	     |
1586  | DESCRIPTION                                                         	     |
1587  |    This procedure initializes all columns in the parameter trx record     |
1588  |    to the appropriate dummy value for its datatype.			     |
1589  |    									     |
1590  |    The dummy values are defined in the following package level constants: |
1591  |	AR_TEXT_DUMMY 							     |
1592  |	AR_FLAG_DUMMY							     |
1593  |	AR_NUMBER_DUMMY							     |
1594  |	AR_DATE_DUMMY							     |
1595  |                                                                           |
1596  | SCOPE - PUBLIC                                                            |
1597  |                                                                           |
1598  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
1599  |    arp_util.debug                                                         |
1600  |                                                                           |
1601  | ARGUMENTS  : IN:                                                          |
1602  |                    None						     |
1603  |              OUT:                                                         |
1604  |                    p_trx_rec   - The record to initialize		     |
1605  |                                                                           |
1606  | RETURNS    : NONE                                                         |
1607  |                                                                           |
1608  | NOTES                                                                     |
1609  |                                                                           |
1610  | MODIFICATION HISTORY                                                      |
1611  |     06-JUN-95  Charlie Tomberg     Created                                |
1612  |                                                                           |
1613  | 20-MAR-2000  J Rautiainen    Added BR project related columns             |
1614  |                              BR_AMOUNT, BR_UNPAID_FLAG,BR_ON_HOLD_FLAG,   |
1615  |                              DRAWEE_ID, DRAWEE_CONTACT_ID,                |
1616  |                              DRAWEE_SITE_USE_ID,DRAWEE_BANK_ACCOUNT_ID,   |
1617  |                              REMITTANCE_BANK_ACCOUNT_ID,		     |
1618  |                              OVERRIDE_REMIT_ACCOUNT_FLAG and              |
1619  |                              SPECIAL_INSTRUCTIONSinto table handlers      |
1620  | 24-JUL-2000  J Rautiainen    Added BR project related column              |
1621  |                              REMITTANCE_BATCH_ID		             |
1622  |            								     |
1623  | 31-OCT-2000 Y Rakotonirainy	Bug 1243304 : Added columns                  |
1624  |                              address_verification_code and	             |
1625  |				approval_code	and                          |
1626  |				bill_to_address_id and			     |
1627  |				edi_processed_flag and			     |
1628  |				edi_processed_status and		     |
1629  |				payment_server_order_num and		     |
1630  |				post_request_id and			     |
1631  |				request_id and				     |
1632  |				ship_to_address_id			     |
1633  |				wh_update_date				     |
1634  | 				into the table handlers.  	             |
1635  | 20-Jun-2002 Sahana           Bug2427456 : Added Global Attribute Columns  |
1636  +===========================================================================*/
1637 
1638 PROCEDURE set_to_dummy( p_trx_rec OUT NOCOPY ra_customer_trx%rowtype) IS
1639 
1640 BEGIN
1641 
1642     arp_util.debug('arp_ct_pkg.set_to_dummy()+');
1643 
1644     p_trx_rec.customer_trx_id := 		AR_NUMBER_DUMMY;
1645     p_trx_rec.trx_number := 			AR_TEXT_DUMMY;
1646     p_trx_rec.created_by := 			AR_NUMBER_DUMMY;
1647     p_trx_rec.creation_date := 			AR_DATE_DUMMY;
1648     p_trx_rec.last_updated_by := 		AR_NUMBER_DUMMY;
1649     p_trx_rec.last_update_date := 		AR_DATE_DUMMY;
1650     p_trx_rec.last_update_login := 		AR_NUMBER_DUMMY;
1651     p_trx_rec.set_of_books_id := 		AR_NUMBER_DUMMY;
1652     p_trx_rec.program_application_id := 	AR_NUMBER_DUMMY;
1653     p_trx_rec.program_id := 			AR_NUMBER_DUMMY;
1654     p_trx_rec.program_update_date := 		AR_DATE_DUMMY;
1655     p_trx_rec.posting_control_id := 		AR_NUMBER_DUMMY;
1656     p_trx_rec.ra_post_loop_number :=	 	AR_NUMBER_DUMMY;
1657     p_trx_rec.complete_flag :=	 		AR_FLAG_DUMMY;
1658     p_trx_rec.initial_customer_trx_id := 	AR_NUMBER_DUMMY;
1659     p_trx_rec.previous_customer_trx_id := 	AR_NUMBER_DUMMY;
1660     p_trx_rec.related_customer_trx_id := 	AR_NUMBER_DUMMY;
1661     p_trx_rec.recurred_from_trx_number :=	AR_TEXT_DUMMY;
1662     p_trx_rec.cust_trx_type_id := 		AR_NUMBER_DUMMY;
1663     p_trx_rec.batch_id := 			AR_NUMBER_DUMMY;
1664     p_trx_rec.batch_source_id := 		AR_NUMBER_DUMMY;
1665     p_trx_rec.agreement_id := 			AR_NUMBER_DUMMY;
1666     p_trx_rec.trx_date := 			AR_DATE_DUMMY;
1667     p_trx_rec.bill_to_customer_id :=		AR_NUMBER_DUMMY;
1668     p_trx_rec.bill_to_contact_id := 		AR_NUMBER_DUMMY;
1669     p_trx_rec.bill_to_site_use_id := 		AR_NUMBER_DUMMY;
1670     p_trx_rec.ship_to_customer_id := 		AR_NUMBER_DUMMY;
1671     p_trx_rec.ship_to_contact_id := 		AR_NUMBER_DUMMY;
1672     p_trx_rec.ship_to_site_use_id := 		AR_NUMBER_DUMMY;
1673     p_trx_rec.sold_to_customer_id := 		AR_NUMBER_DUMMY;
1674     p_trx_rec.sold_to_site_use_id := 		AR_NUMBER_DUMMY;
1675     p_trx_rec.sold_to_contact_id := 		AR_NUMBER_DUMMY;
1676     p_trx_rec.customer_reference := 		AR_TEXT_DUMMY;
1677     p_trx_rec.customer_reference_date := 	AR_DATE_DUMMY;
1678     p_trx_rec.credit_method_for_installments := AR_TEXT_DUMMY;
1679     p_trx_rec.credit_method_for_rules := 	AR_TEXT_DUMMY;
1680     p_trx_rec.start_date_commitment := 		AR_DATE_DUMMY;
1681     p_trx_rec.end_date_commitment := 		AR_DATE_DUMMY;
1682     p_trx_rec.exchange_date := 			AR_DATE_DUMMY;
1683     p_trx_rec.exchange_rate := 			AR_NUMBER_DUMMY;
1684     p_trx_rec.exchange_rate_type := 		AR_TEXT_DUMMY;
1685     p_trx_rec.customer_bank_account_id := 	AR_NUMBER_DUMMY;
1686     p_trx_rec.finance_charges := 		AR_FLAG_DUMMY;
1687     p_trx_rec.fob_point := 			AR_TEXT_DUMMY;
1688     p_trx_rec.comments :=	 		AR_TEXT_DUMMY;
1689     p_trx_rec.internal_notes := 		AR_TEXT_DUMMY;
1690     p_trx_rec.invoice_currency_code := 		AR_TEXT_DUMMY;
1691     p_trx_rec.invoicing_rule_id := 		AR_NUMBER_DUMMY;
1692     p_trx_rec.last_printed_sequence_num := 	AR_NUMBER_DUMMY;
1693     p_trx_rec.orig_system_batch_name := 	AR_TEXT_DUMMY;
1694     p_trx_rec.primary_salesrep_id := 		AR_NUMBER_DUMMY;
1695     p_trx_rec.printing_count := 		AR_NUMBER_DUMMY;
1696     p_trx_rec.printing_last_printed := 		AR_DATE_DUMMY;
1697     p_trx_rec.printing_option := 		AR_TEXT_DUMMY;
1698     p_trx_rec.printing_original_date := 	AR_DATE_DUMMY;
1699     p_trx_rec.printing_pending := 		AR_FLAG_DUMMY;
1700     p_trx_rec.purchase_order := 		AR_TEXT_DUMMY;
1701     p_trx_rec.purchase_order_date := 		AR_DATE_DUMMY;
1702     p_trx_rec.purchase_order_revision := 	AR_TEXT_DUMMY;
1703     p_trx_rec.receipt_method_id := 		AR_NUMBER_DUMMY;
1704     p_trx_rec.remit_to_address_id := 		AR_NUMBER_DUMMY;
1705     p_trx_rec.shipment_id := 			AR_NUMBER_DUMMY;
1706     p_trx_rec.ship_date_actual := 		AR_DATE_DUMMY;
1707     p_trx_rec.ship_via := 			AR_TEXT_DUMMY;
1708     p_trx_rec.term_due_date := 			AR_DATE_DUMMY;
1709     p_trx_rec.term_id := 			AR_NUMBER_DUMMY;
1710     p_trx_rec.territory_id := 			AR_NUMBER_DUMMY;
1711     p_trx_rec.waybill_number := 		AR_TEXT_DUMMY;
1712     p_trx_rec.status_trx := 			AR_TEXT_DUMMY;
1713     p_trx_rec.reason_code := 			AR_TEXT_DUMMY;
1714     p_trx_rec.doc_sequence_id := 		AR_NUMBER_DUMMY;
1715     p_trx_rec.doc_sequence_value := 		AR_NUMBER_DUMMY;
1716     p_trx_rec.paying_customer_id := 		AR_NUMBER_DUMMY;
1717     p_trx_rec.paying_site_use_id := 		AR_NUMBER_DUMMY;
1718     p_trx_rec.related_batch_source_id := 	AR_NUMBER_DUMMY;
1719     p_trx_rec.default_tax_exempt_flag := 	AR_FLAG_DUMMY;
1720     p_trx_rec.created_from := 			AR_TEXT_DUMMY;
1721     p_trx_rec.default_ussgl_trx_code_context := AR_TEXT_DUMMY;
1722     p_trx_rec.default_ussgl_transaction_code := AR_TEXT_DUMMY;
1723     p_trx_rec.old_trx_number :=                 AR_TEXT_DUMMY;
1724     p_trx_rec.interface_header_context := 	AR_TEXT_DUMMY;
1725     p_trx_rec.interface_header_attribute1 := 	AR_TEXT_DUMMY;
1726     p_trx_rec.interface_header_attribute2 := 	AR_TEXT_DUMMY;
1727     p_trx_rec.interface_header_attribute3 := 	AR_TEXT_DUMMY;
1728     p_trx_rec.interface_header_attribute4 := 	AR_TEXT_DUMMY;
1729     p_trx_rec.interface_header_attribute5 := 	AR_TEXT_DUMMY;
1730     p_trx_rec.interface_header_attribute6 := 	AR_TEXT_DUMMY;
1731     p_trx_rec.interface_header_attribute7 := 	AR_TEXT_DUMMY;
1732     p_trx_rec.interface_header_attribute8 := 	AR_TEXT_DUMMY;
1733     p_trx_rec.interface_header_attribute9 := 	AR_TEXT_DUMMY;
1734     p_trx_rec.interface_header_attribute10 :=	AR_TEXT_DUMMY;
1735     p_trx_rec.interface_header_attribute11 :=	AR_TEXT_DUMMY;
1736     p_trx_rec.interface_header_attribute12 :=	AR_TEXT_DUMMY;
1737     p_trx_rec.interface_header_attribute13 :=	AR_TEXT_DUMMY;
1738     p_trx_rec.interface_header_attribute14 :=	AR_TEXT_DUMMY;
1739     p_trx_rec.interface_header_attribute15 :=	AR_TEXT_DUMMY;
1740     p_trx_rec.attribute_category := 		AR_TEXT_DUMMY;
1741     p_trx_rec.attribute1 := 			AR_TEXT_DUMMY;
1742     p_trx_rec.attribute2 := 			AR_TEXT_DUMMY;
1743     p_trx_rec.attribute3 := 			AR_TEXT_DUMMY;
1744     p_trx_rec.attribute4 := 			AR_TEXT_DUMMY;
1745     p_trx_rec.attribute5 :=	 		AR_TEXT_DUMMY;
1746     p_trx_rec.attribute6 := 			AR_TEXT_DUMMY;
1747     p_trx_rec.attribute7 := 			AR_TEXT_DUMMY;
1748     p_trx_rec.attribute8 := 			AR_TEXT_DUMMY;
1749     p_trx_rec.attribute9 := 			AR_TEXT_DUMMY;
1750     p_trx_rec.attribute10 := 			AR_TEXT_DUMMY;
1751     p_trx_rec.attribute11 := 			AR_TEXT_DUMMY;
1752     p_trx_rec.attribute12 := 			AR_TEXT_DUMMY;
1753     p_trx_rec.attribute13 := 			AR_TEXT_DUMMY;
1754     p_trx_rec.attribute14 := 			AR_TEXT_DUMMY;
1755     p_trx_rec.attribute15 := 			AR_TEXT_DUMMY;
1756 
1757     p_trx_rec.br_amount                      := AR_NUMBER_DUMMY;
1758     p_trx_rec.br_unpaid_flag                 := AR_FLAG_DUMMY;
1759     p_trx_rec.br_on_hold_flag                := AR_FLAG_DUMMY;
1760     p_trx_rec.drawee_id                      := AR_NUMBER_DUMMY;
1761     p_trx_rec.drawee_contact_id              := AR_NUMBER_DUMMY;
1762     p_trx_rec.drawee_site_use_id             := AR_NUMBER_DUMMY;
1763     p_trx_rec.drawee_bank_account_id         := AR_NUMBER_DUMMY;
1764     p_trx_rec.remit_bank_acct_use_id         := AR_NUMBER_DUMMY;
1765     p_trx_rec.override_remit_account_flag    := AR_FLAG_DUMMY;
1766     p_trx_rec.special_instructions           := AR_TEXT_DUMMY;
1767     p_trx_rec.remittance_batch_id            := AR_NUMBER_DUMMY;
1768     p_trx_rec.address_verification_code      := AR_TEXT_DUMMY;
1769     p_trx_rec.approval_code                  := AR_TEXT_DUMMY;
1770     p_trx_rec.bill_to_address_id             := AR_NUMBER_DUMMY;
1771     p_trx_rec.edi_processed_flag             := AR_FLAG_DUMMY;
1772     p_trx_rec.edi_processed_status           := AR_TEXT_DUMMY;
1773     p_trx_rec.payment_server_order_num       := AR_TEXT_DUMMY;
1774     p_trx_rec.post_request_id		     := AR_NUMBER_DUMMY;
1775     p_trx_rec.request_id		     := AR_NUMBER_DUMMY;
1776     p_trx_rec.ship_to_address_id             := AR_NUMBER_DUMMY;
1777     p_trx_rec.wh_update_date           	     := AR_DATE_DUMMY;
1778 
1779     p_trx_rec.global_attribute_category :=      AR_TEXT_DUMMY;
1780     p_trx_rec.global_attribute1 :=              AR_TEXT_DUMMY;
1781     p_trx_rec.global_attribute2 :=              AR_TEXT_DUMMY;
1782     p_trx_rec.global_attribute3 :=              AR_TEXT_DUMMY;
1783     p_trx_rec.global_attribute4 :=              AR_TEXT_DUMMY;
1784     p_trx_rec.global_attribute5 :=              AR_TEXT_DUMMY;
1785     p_trx_rec.global_attribute6 :=              AR_TEXT_DUMMY;
1786     p_trx_rec.global_attribute7 :=              AR_TEXT_DUMMY;
1787     p_trx_rec.global_attribute8 :=              AR_TEXT_DUMMY;
1788     p_trx_rec.global_attribute9 :=              AR_TEXT_DUMMY;
1789     p_trx_rec.global_attribute10 :=             AR_TEXT_DUMMY;
1790     p_trx_rec.global_attribute11 :=             AR_TEXT_DUMMY;
1791     p_trx_rec.global_attribute12 :=             AR_TEXT_DUMMY;
1792     p_trx_rec.global_attribute13 :=             AR_TEXT_DUMMY;
1793     p_trx_rec.global_attribute14 :=             AR_TEXT_DUMMY;
1794     p_trx_rec.global_attribute15 :=             AR_TEXT_DUMMY;
1795     p_trx_rec.global_attribute16 :=             AR_TEXT_DUMMY;
1796     p_trx_rec.global_attribute17 :=             AR_TEXT_DUMMY;
1797     p_trx_rec.global_attribute18 :=             AR_TEXT_DUMMY;
1798     p_trx_rec.global_attribute19 :=             AR_TEXT_DUMMY;
1799     p_trx_rec.global_attribute20 :=             AR_TEXT_DUMMY;
1800     p_trx_rec.global_attribute21 :=             AR_TEXT_DUMMY;
1801     p_trx_rec.global_attribute22 :=             AR_TEXT_DUMMY;
1802     p_trx_rec.global_attribute23 :=             AR_TEXT_DUMMY;
1803     p_trx_rec.global_attribute24 :=             AR_TEXT_DUMMY;
1804     p_trx_rec.global_attribute25 :=             AR_TEXT_DUMMY;
1805     p_trx_rec.global_attribute26:=              AR_TEXT_DUMMY;
1806     p_trx_rec.global_attribute27:=              AR_TEXT_DUMMY;
1807     p_trx_rec.global_attribute28 :=             AR_TEXT_DUMMY;
1808     p_trx_rec.global_attribute29 :=             AR_TEXT_DUMMY;
1809     p_trx_rec.global_attribute30 :=             AR_TEXT_DUMMY;
1810 
1811     p_trx_rec.legal_entity_id :=                AR_NUMBER_DUMMY;
1812     /* PAYMENT_UPTAKE */
1813     p_trx_rec.payment_trxn_extension_id :=      AR_NUMBER_DUMMY;
1814     p_trx_rec.billing_date :=                   AR_DATE_DUMMY;
1815 
1816     arp_util.debug('arp_ct_pkg.set_to_dummy()-');
1817 
1818 EXCEPTION
1819     WHEN OTHERS THEN
1820         arp_util.debug('EXCEPTION:  arp_ct_pkg.set_to_dummy()');
1821         RAISE;
1822 
1823 END;
1824 
1825 
1826 /*===========================================================================+
1827  | PROCEDURE                                                                 |
1828  |    lock_p								     |
1829  |                                                                           |
1830  | DESCRIPTION                                                               |
1831  |    This procedure locks the ra_customer_trx row identified by the 	     |
1832  |    p_customer_trx_id parameter.					     |
1833  |                                                                           |
1834  | SCOPE - PUBLIC                                                            |
1835  |                                                                           |
1836  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
1837  |    arp_util.debug                                                         |
1838  |                                                                           |
1839  | ARGUMENTS  : IN:                                                          |
1840  |                    p_customer_trx_id	- identifies the row to lock	     |
1841  |              OUT:                                                         |
1842  |                    None						     |
1843  |                                                                           |
1844  | RETURNS    : NONE                                                         |
1845  |                                                                           |
1846  | NOTES                                                                     |
1847  |                                                                           |
1848  | MODIFICATION HISTORY                                                      |
1849  |     07-JUN-95  Charlie Tomberg     Created                                |
1850  |                                                                           |
1851  +===========================================================================*/
1852 
1853 PROCEDURE lock_p( p_customer_trx_id  IN ra_customer_trx.customer_trx_id%type )
1854           IS
1855 
1856     l_customer_trx_id  ra_customer_trx.customer_trx_id%type;
1857 
1858 BEGIN
1859     arp_util.debug('arp_ct_pkg.lock_p()+');
1860 
1861 
1862     SELECT customer_trx_id
1863     INTO   l_customer_trx_id
1864     FROM   ra_customer_trx
1865     WHERE  customer_trx_id = p_customer_trx_id
1866     FOR UPDATE OF customer_trx_id NOWAIT;
1867 
1868     arp_util.debug('arp_ct_pkg.lock_p()-');
1869 
1870     EXCEPTION
1871         WHEN  OTHERS THEN
1872 	    arp_util.debug( 'EXCEPTION: arp_ct_pkg.lock_p' );
1873             RAISE;
1874 END;
1875 
1876 /*===========================================================================+
1877  | PROCEDURE                                                                 |
1878  |    lock_fetch_p							     |
1879  |                                                                           |
1880  | DESCRIPTION                                                               |
1881  |    This procedure locks the ra_customer_trx row identified by the 	     |
1882  |    p_ra_customer_trx parameter and populates the p_trx_rec parameter with |
1883  |    the row that was locked.						     |
1884  |                                                                           |
1885  | SCOPE - PUBLIC                                                            |
1886  |                                                                           |
1887  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
1888  |    arp_util.debug                                                         |
1889  |                                                                           |
1890  | ARGUMENTS  : IN:                                                          |
1891  |                    p_customer_trx_id	- identifies the row to lock	     |
1892  |              OUT:                                                         |
1893  |                    p_trx_rec	- contains the locked row		     |
1894  |                                                                           |
1895  | RETURNS    : NONE                                                         |
1896  |                                                                           |
1897  | NOTES                                                                     |
1898  |                                                                           |
1899  | MODIFICATION HISTORY                                                      |
1900  |     07-JUN-95  Charlie Tomberg     Created                                |
1901  |                                                                           |
1902  +===========================================================================*/
1903 
1904 PROCEDURE lock_fetch_p( p_trx_rec         IN OUT NOCOPY ra_customer_trx%rowtype,
1905                         p_customer_trx_id IN
1906                                      ra_customer_trx.customer_trx_id%type ) IS
1907 
1908 BEGIN
1909     arp_util.debug('arp_ct_pkg.lock_fetch_p()+');
1910 
1911     SELECT        *
1912     INTO          p_trx_rec
1913     FROM          ra_customer_trx
1914     WHERE         customer_trx_id = p_customer_trx_id
1915     FOR UPDATE OF customer_trx_id NOWAIT;
1916 
1917     arp_util.debug('arp_ct_pkg.lock_fetch_p()-');
1918 
1919     EXCEPTION
1920         WHEN  OTHERS THEN
1921             arp_util.debug( 'EXCEPTION: arp_ct_pkg.lock_fetch_p' );
1922             RAISE;
1923 END;
1924 
1925 /*============================================================================+
1926  | PROCEDURE                                                                  |
1927  |    lock_compare_p							      |
1928  |                                                                            |
1929  | DESCRIPTION                                                                |
1930  |    This procedure locks the ra_customer_trx row identified by the 	      |
1931  |    p_customer_trx_id parameter only if no columns in that row have 	      |
1932  |    changed from when they were first selected in the form.		      |
1933  |                                                                            |
1934  | SCOPE - PUBLIC                                                             |
1935  |                                                                            |
1936  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                    |
1937  |    arp_util.debug                                                          |
1938  |                                                                            |
1939  | ARGUMENTS  : IN:                                                           |
1940  |                    p_customer_trx_id	- identifies the row to lock	      |
1941  | 		      p_trx_rec    	- trx record for comparison	      |
1942  |              OUT:                                                          |
1943  |                    None						      |
1944  |                                                                            |
1945  | RETURNS    : NONE                                                          |
1946  |                                                                            |
1947  | NOTES                                                                      |
1948  |                                                                            |
1949  | MODIFICATION HISTORY                                                       |
1950  | 07-JUN-95    Charlie Tomberg Created                                       |
1951  | 29-JUN-95    Charlie Tomberg Modified to use select for update             |
1952  | 20-MAR-2000  J Rautiainen    Added BR project related columns              |
1953  |                              BR_AMOUNT, BR_UNPAID_FLAG,BR_ON_HOLD_FLAG,    |
1954  |                              DRAWEE_ID, DRAWEE_CONTACT_ID,                 |
1955  |                              DRAWEE_SITE_USE_ID   		              |
1956  |                              DRAWEE_BANK_ACCOUNT_ID,                       |
1957  |                              REMITTANCE_BANK_ACCOUNT_ID,		      |
1958  |                              OVERRIDE_REMIT_ACCOUNT_FLAG and               |
1959  |                              SPECIAL_INSTRUCTIONSinto table handlers       |
1960  | 24-JUL-2000  J Rautiainen    Added BR project related column               |
1961  |                              REMITTANCE_BATCH_ID		              |
1962  | 31-OCT-2000 Y Rakotonirainy	Bug 1243304 : Added columns                   |
1963  |                              address_verification_code and	              |
1964  |				approval_code	and			      |
1965  |				bill_to_address_id and			      |
1966  |				edi_processed_flag and			      |
1967  |				edi_processed_status and		      |
1968  |				payment_server_order_num and		      |
1969  |				post_request_id and			      |
1970  |				request_id and				      |
1971  |				ship_to_address_id			      |
1972  |				wh_update_date				      |
1973  | 				into the table handlers.  		      |
1974  |                                                                            |
1975  | 20-Jun-2002  Sahana          Bug2427456: Added global attribute columns    |
1976  | 18-May-2005  Debbie Jancis   Added Legal entity Id for LE project          |
1977  | 09-Aug-2005  Surendra Rajan  Added payment_trxn_extension_id               |
1978  +============================================================================*/
1979 
1980 PROCEDURE lock_compare_p( p_trx_rec          IN ra_customer_trx%rowtype,
1981                           p_customer_trx_id  IN
1982                                      ra_customer_trx.customer_trx_id%type,
1983                           p_lock_trx_flag    IN BOOLEAN DEFAULT TRUE) IS
1984 
1985     l_new_trx_rec  ra_customer_trx%rowtype;
1986 
1987 BEGIN
1988     arp_util.debug('arp_ct_pkg.lock_compare_p()+');
1989 
1990    IF p_lock_trx_flag THEN
1991     SELECT   *
1992     INTO     l_new_trx_rec
1993     FROM     ra_customer_trx trx
1994     WHERE    trx.customer_trx_id = p_customer_trx_id
1995     AND
1996        (
1997            NVL(trx.trx_number, AR_TEXT_DUMMY) =
1998            NVL(
1999                  DECODE(p_trx_rec.trx_number,
2000                         AR_TEXT_DUMMY, trx.trx_number,
2001                                        p_trx_rec.trx_number),
2002                  AR_TEXT_DUMMY
2003               )
2004          AND
2005            NVL(trx.customer_trx_id, AR_NUMBER_DUMMY) =
2006            NVL(
2007                  DECODE(p_trx_rec.customer_trx_id,
2008                         AR_NUMBER_DUMMY, trx.customer_trx_id,
2009                                        p_trx_rec.customer_trx_id),
2010                  AR_NUMBER_DUMMY
2011               )
2012          AND
2013            NVL(trx.created_by, AR_NUMBER_DUMMY) =
2014            NVL(
2015                  DECODE(p_trx_rec.created_by,
2016                         AR_NUMBER_DUMMY, trx.created_by,
2017                                        p_trx_rec.created_by),
2018                  AR_NUMBER_DUMMY
2019               )
2020          AND
2021            NVL(TRUNC(trx.creation_date), AR_DATE_DUMMY) =
2022            NVL(
2023                  DECODE(TRUNC(p_trx_rec.creation_date),
2024                         AR_DATE_DUMMY, TRUNC(trx.creation_date),
2025                                        TRUNC(p_trx_rec.creation_date)),
2026                  AR_DATE_DUMMY
2027               )
2028          AND
2029            NVL(trx.last_updated_by, AR_NUMBER_DUMMY) =
2030            NVL(
2031                  DECODE(p_trx_rec.last_updated_by,
2032                         AR_NUMBER_DUMMY, trx.last_updated_by,
2033                                        p_trx_rec.last_updated_by),
2034                  AR_NUMBER_DUMMY
2035               )
2036          AND
2037            NVL(TRUNC(trx.last_update_date), AR_DATE_DUMMY) =
2038            NVL(
2039                  DECODE(TRUNC(p_trx_rec.last_update_date),
2040                         AR_DATE_DUMMY, TRUNC(trx.last_update_date),
2041                                        TRUNC(p_trx_rec.last_update_date)),
2042                  AR_DATE_DUMMY
2043               )
2044          AND
2045            NVL(trx.last_update_login, AR_NUMBER_DUMMY) =
2046            NVL(
2047                  DECODE(p_trx_rec.last_update_login,
2048                         AR_NUMBER_DUMMY, trx.last_update_login,
2049                                        p_trx_rec.last_update_login),
2050                  AR_NUMBER_DUMMY
2051               )
2052          AND
2053            NVL(trx.set_of_books_id, AR_NUMBER_DUMMY) =
2054            NVL(
2055                  DECODE(p_trx_rec.set_of_books_id,
2056                         AR_NUMBER_DUMMY, trx.set_of_books_id,
2057                                        p_trx_rec.set_of_books_id),
2058                  AR_NUMBER_DUMMY
2059               )
2060          AND
2061            NVL(trx.program_application_id, AR_NUMBER_DUMMY) =
2062            NVL(
2063                  DECODE(p_trx_rec.program_application_id,
2064                         AR_NUMBER_DUMMY, trx.program_application_id,
2065                                        p_trx_rec.program_application_id),
2066                  AR_NUMBER_DUMMY
2067               )
2068          AND
2069            NVL(trx.program_id, AR_NUMBER_DUMMY) =
2070            NVL(
2071                  DECODE(p_trx_rec.program_id,
2072                         AR_NUMBER_DUMMY, trx.program_id,
2073                                        p_trx_rec.program_id),
2074                  AR_NUMBER_DUMMY
2075               )
2076          AND
2077            NVL(TRUNC(trx.program_update_date), AR_DATE_DUMMY) =
2078            NVL(
2079                  DECODE(TRUNC(p_trx_rec.program_update_date),
2080                         AR_DATE_DUMMY, TRUNC(trx.program_update_date),
2081                                        TRUNC(p_trx_rec.program_update_date)),
2082                  AR_DATE_DUMMY
2083               )
2084          AND
2085            NVL(trx.posting_control_id, AR_NUMBER_DUMMY) =
2086            NVL(
2087                  DECODE(p_trx_rec.posting_control_id,
2088                         AR_NUMBER_DUMMY, trx.posting_control_id,
2089                                        p_trx_rec.posting_control_id),
2090                  AR_NUMBER_DUMMY
2091               )
2092          AND
2093            NVL(trx.ra_post_loop_number, AR_NUMBER_DUMMY) =
2094            NVL(
2095                  DECODE(p_trx_rec.ra_post_loop_number,
2096                         AR_NUMBER_DUMMY, trx.ra_post_loop_number,
2097                                        p_trx_rec.ra_post_loop_number),
2098                  AR_NUMBER_DUMMY
2099               )
2100          AND
2101            NVL(trx.complete_flag, AR_FLAG_DUMMY) =
2102            NVL(
2103                  DECODE(p_trx_rec.complete_flag,
2104                         AR_FLAG_DUMMY, trx.complete_flag,
2105                                        p_trx_rec.complete_flag),
2106                  AR_FLAG_DUMMY
2107               )
2108          AND
2109            NVL(trx.initial_customer_trx_id, AR_NUMBER_DUMMY) =
2110            NVL(
2111                  DECODE(p_trx_rec.initial_customer_trx_id,
2112                         AR_NUMBER_DUMMY, trx.initial_customer_trx_id,
2113                                        p_trx_rec.initial_customer_trx_id),
2114                  AR_NUMBER_DUMMY
2115               )
2116          AND
2117            NVL(trx.previous_customer_trx_id, AR_NUMBER_DUMMY) =
2118            NVL(
2119                  DECODE(p_trx_rec.previous_customer_trx_id,
2120                         AR_NUMBER_DUMMY, trx.previous_customer_trx_id,
2121                                        p_trx_rec.previous_customer_trx_id),
2122                  AR_NUMBER_DUMMY
2123               )
2124          AND
2125            NVL(trx.related_customer_trx_id, AR_NUMBER_DUMMY) =
2126            NVL(
2127                  DECODE(p_trx_rec.related_customer_trx_id,
2128                         AR_NUMBER_DUMMY, trx.related_customer_trx_id,
2129                                        p_trx_rec.related_customer_trx_id),
2130                  AR_NUMBER_DUMMY
2131               )
2132          AND
2133            NVL(trx.recurred_from_trx_number, AR_TEXT_DUMMY) =
2134            NVL(
2135                  DECODE(p_trx_rec.recurred_from_trx_number,
2136                         AR_TEXT_DUMMY, trx.recurred_from_trx_number,
2137                                        p_trx_rec.recurred_from_trx_number),
2138                  AR_TEXT_DUMMY
2139               )
2140          AND
2141            NVL(trx.cust_trx_type_id, AR_NUMBER_DUMMY) =
2142            NVL(
2143                  DECODE(p_trx_rec.cust_trx_type_id,
2144                         AR_NUMBER_DUMMY, trx.cust_trx_type_id,
2145                                        p_trx_rec.cust_trx_type_id),
2146                  AR_NUMBER_DUMMY
2147               )
2148          AND
2149            NVL(trx.batch_id, AR_NUMBER_DUMMY) =
2150            NVL(
2151                  DECODE(p_trx_rec.batch_id,
2152                         AR_NUMBER_DUMMY, trx.batch_id,
2153                                        p_trx_rec.batch_id),
2154                  AR_NUMBER_DUMMY
2155               )
2156          AND
2157            NVL(trx.batch_source_id, AR_NUMBER_DUMMY) =
2158            NVL(
2159                  DECODE(p_trx_rec.batch_source_id,
2160                         AR_NUMBER_DUMMY, trx.batch_source_id,
2161                                        p_trx_rec.batch_source_id),
2162                  AR_NUMBER_DUMMY
2163               )
2164          AND
2165            NVL(trx.agreement_id, AR_NUMBER_DUMMY) =
2166            NVL(
2167                  DECODE(p_trx_rec.agreement_id,
2168                         AR_NUMBER_DUMMY, trx.agreement_id,
2169                                        p_trx_rec.agreement_id),
2170                  AR_NUMBER_DUMMY
2171               )
2172          AND
2173            NVL(TRUNC(trx.trx_date), AR_DATE_DUMMY) =
2174            NVL(
2175                  DECODE(TRUNC(p_trx_rec.trx_date),
2176                         AR_DATE_DUMMY, TRUNC(trx.trx_date),
2177                                        TRUNC(p_trx_rec.trx_date)),
2178                  AR_DATE_DUMMY
2179               )
2180          AND
2181            NVL(trx.bill_to_customer_id, AR_NUMBER_DUMMY) =
2182            NVL(
2183                  DECODE(p_trx_rec.bill_to_customer_id,
2184                         AR_NUMBER_DUMMY, trx.bill_to_customer_id,
2185                                        p_trx_rec.bill_to_customer_id),
2186                  AR_NUMBER_DUMMY
2187               )
2188          AND
2189            NVL(trx.bill_to_contact_id, AR_NUMBER_DUMMY) =
2190            NVL(
2191                  DECODE(p_trx_rec.bill_to_contact_id,
2192                         AR_NUMBER_DUMMY, trx.bill_to_contact_id,
2193                                        p_trx_rec.bill_to_contact_id),
2194                  AR_NUMBER_DUMMY
2195               )
2196          AND
2197            NVL(trx.bill_to_site_use_id, AR_NUMBER_DUMMY) =
2198            NVL(
2199                  DECODE(p_trx_rec.bill_to_site_use_id,
2200                         AR_NUMBER_DUMMY, trx.bill_to_site_use_id,
2201                                        p_trx_rec.bill_to_site_use_id),
2202                  AR_NUMBER_DUMMY
2203               )
2204          AND
2205            NVL(trx.ship_to_customer_id, AR_NUMBER_DUMMY) =
2206            NVL(
2207                  DECODE(p_trx_rec.ship_to_customer_id,
2208                         AR_NUMBER_DUMMY, trx.ship_to_customer_id,
2209                                        p_trx_rec.ship_to_customer_id),
2210                  AR_NUMBER_DUMMY
2211               )
2212          AND
2213            NVL(trx.ship_to_contact_id, AR_NUMBER_DUMMY) =
2214            NVL(
2215                  DECODE(p_trx_rec.ship_to_contact_id,
2216                         AR_NUMBER_DUMMY, trx.ship_to_contact_id,
2217                                        p_trx_rec.ship_to_contact_id),
2218                  AR_NUMBER_DUMMY
2219               )
2220          AND
2221            NVL(trx.ship_to_site_use_id, AR_NUMBER_DUMMY) =
2222            NVL(
2223                  DECODE(p_trx_rec.ship_to_site_use_id,
2224                         AR_NUMBER_DUMMY, trx.ship_to_site_use_id,
2225                                        p_trx_rec.ship_to_site_use_id),
2226                  AR_NUMBER_DUMMY
2227               )
2228          AND
2229            NVL(trx.sold_to_customer_id, AR_NUMBER_DUMMY) =
2230            NVL(
2231                  DECODE(p_trx_rec.sold_to_customer_id,
2232                         AR_NUMBER_DUMMY, trx.sold_to_customer_id,
2233                                        p_trx_rec.sold_to_customer_id),
2234                  AR_NUMBER_DUMMY
2235               )
2236          AND
2237            NVL(trx.sold_to_site_use_id, AR_NUMBER_DUMMY) =
2238            NVL(
2239                  DECODE(p_trx_rec.sold_to_site_use_id,
2240                         AR_NUMBER_DUMMY, trx.sold_to_site_use_id,
2241                                        p_trx_rec.sold_to_site_use_id),
2242                  AR_NUMBER_DUMMY
2243               )
2244          AND
2245            NVL(trx.sold_to_contact_id, AR_NUMBER_DUMMY) =
2246            NVL(
2247                  DECODE(p_trx_rec.sold_to_contact_id,
2248                         AR_NUMBER_DUMMY, trx.sold_to_contact_id,
2249                                        p_trx_rec.sold_to_contact_id),
2250                  AR_NUMBER_DUMMY
2251               )
2252          AND
2253            NVL(trx.customer_reference, AR_TEXT_DUMMY) =
2254            NVL(
2255                  DECODE(p_trx_rec.customer_reference,
2256                         AR_TEXT_DUMMY, trx.customer_reference,
2257                                        p_trx_rec.customer_reference),
2258                  AR_TEXT_DUMMY
2259               )
2260          AND
2261            NVL(TRUNC(trx.customer_reference_date), AR_DATE_DUMMY) =
2262            NVL(
2263                  DECODE(TRUNC(p_trx_rec.customer_reference_date),
2264                         AR_DATE_DUMMY, TRUNC(trx.customer_reference_date),
2265                                      TRUNC(p_trx_rec.customer_reference_date)),
2266                  AR_DATE_DUMMY
2267               )
2268          AND
2269            NVL(trx.credit_method_for_installments, AR_TEXT_DUMMY) =
2270            NVL(
2271                  DECODE(p_trx_rec.credit_method_for_installments,
2272                         AR_TEXT_DUMMY, trx.credit_method_for_installments,
2273                                      p_trx_rec.credit_method_for_installments),
2274                  AR_TEXT_DUMMY
2275               )
2276          AND
2277            NVL(trx.credit_method_for_rules, AR_TEXT_DUMMY) =
2278            NVL(
2279                  DECODE(p_trx_rec.credit_method_for_rules,
2280                         AR_TEXT_DUMMY, trx.credit_method_for_rules,
2281                                        p_trx_rec.credit_method_for_rules),
2282                  AR_TEXT_DUMMY
2283               )
2284          AND
2285            NVL(TRUNC(trx.start_date_commitment), AR_DATE_DUMMY) =
2286            NVL(
2287                  DECODE(TRUNC(p_trx_rec.start_date_commitment),
2288                         AR_DATE_DUMMY, TRUNC(trx.start_date_commitment),
2289                                        TRUNC(p_trx_rec.start_date_commitment)),
2290                  AR_DATE_DUMMY
2291               )
2292          AND
2293            NVL(TRUNC(trx.end_date_commitment), AR_DATE_DUMMY) =
2294            NVL(
2295                  DECODE(TRUNC(p_trx_rec.end_date_commitment),
2296                         AR_DATE_DUMMY, TRUNC(trx.end_date_commitment),
2297                                        TRUNC(p_trx_rec.end_date_commitment)),
2298                  AR_DATE_DUMMY
2299               )
2300          AND
2301            NVL(TRUNC(trx.exchange_date), AR_DATE_DUMMY) =
2302            NVL(
2303                  DECODE(TRUNC(p_trx_rec.exchange_date),
2304                         AR_DATE_DUMMY, TRUNC(trx.exchange_date),
2305                                        TRUNC(p_trx_rec.exchange_date)),
2306                  AR_DATE_DUMMY
2307               )
2308          AND
2309            NVL(trx.exchange_rate, AR_NUMBER_DUMMY) =
2310            NVL(
2311                  DECODE(p_trx_rec.exchange_rate,
2312                         AR_NUMBER_DUMMY, trx.exchange_rate,
2313                                        p_trx_rec.exchange_rate),
2314                  AR_NUMBER_DUMMY
2315               )
2316          AND
2317            NVL(trx.exchange_rate_type, AR_TEXT_DUMMY) =
2318            NVL(
2319                  DECODE(p_trx_rec.exchange_rate_type,
2320                         AR_TEXT_DUMMY, trx.exchange_rate_type,
2321                                        p_trx_rec.exchange_rate_type),
2322                  AR_TEXT_DUMMY
2323               )
2324          AND
2325            NVL(trx.customer_bank_account_id, AR_NUMBER_DUMMY) =
2326            NVL(
2327                  DECODE(p_trx_rec.customer_bank_account_id,
2328                         AR_NUMBER_DUMMY, trx.customer_bank_account_id,
2329                                        p_trx_rec.customer_bank_account_id),
2330                  AR_NUMBER_DUMMY
2331               )
2332          AND
2333            NVL(trx.finance_charges, AR_FLAG_DUMMY) =
2334            NVL(
2335                  DECODE(p_trx_rec.finance_charges,
2336                         AR_FLAG_DUMMY, trx.finance_charges,
2337                                        p_trx_rec.finance_charges),
2338                  AR_FLAG_DUMMY
2339               )
2340          AND
2341            NVL(trx.fob_point, AR_TEXT_DUMMY) =
2342            NVL(
2343                  DECODE(p_trx_rec.fob_point,
2344                         AR_TEXT_DUMMY, trx.fob_point,
2345                                        p_trx_rec.fob_point),
2346                  AR_TEXT_DUMMY
2347               )
2348          AND
2349            NVL(trx.comments, AR_TEXT_DUMMY) =
2350            NVL(
2351                  DECODE(p_trx_rec.comments,
2352                         AR_TEXT_DUMMY, trx.comments,
2353                                        p_trx_rec.comments),
2354                  AR_TEXT_DUMMY
2355               )
2356          AND
2357            NVL(trx.internal_notes, AR_TEXT_DUMMY) =
2358            NVL(
2359                  DECODE(p_trx_rec.internal_notes,
2360                         AR_TEXT_DUMMY, trx.internal_notes,
2361                                        p_trx_rec.internal_notes),
2362                  AR_TEXT_DUMMY
2363               )
2364          AND
2365            NVL(trx.invoice_currency_code, AR_TEXT_DUMMY) =
2366            NVL(
2367                  DECODE(p_trx_rec.invoice_currency_code,
2368                         AR_TEXT_DUMMY, trx.invoice_currency_code,
2369                                        p_trx_rec.invoice_currency_code),
2370                  AR_TEXT_DUMMY
2371               )
2372          AND
2373            NVL(trx.invoicing_rule_id, AR_NUMBER_DUMMY) =
2374            NVL(
2375                  DECODE(p_trx_rec.invoicing_rule_id,
2376                         AR_NUMBER_DUMMY, trx.invoicing_rule_id,
2377                                        p_trx_rec.invoicing_rule_id),
2378                  AR_NUMBER_DUMMY
2379               )
2380          AND
2381            NVL(trx.last_printed_sequence_num, AR_NUMBER_DUMMY) =
2382            NVL(
2383                  DECODE(p_trx_rec.last_printed_sequence_num,
2384                         AR_NUMBER_DUMMY, trx.last_printed_sequence_num,
2385                                        p_trx_rec.last_printed_sequence_num),
2386                  AR_NUMBER_DUMMY
2387               )
2388          AND
2389            NVL(trx.orig_system_batch_name, AR_TEXT_DUMMY) =
2390            NVL(
2391                  DECODE(p_trx_rec.orig_system_batch_name,
2392                         AR_TEXT_DUMMY, trx.orig_system_batch_name,
2393                                        p_trx_rec.orig_system_batch_name),
2394                  AR_TEXT_DUMMY
2395               )
2396          AND
2397            NVL(trx.primary_salesrep_id, AR_NUMBER_DUMMY) =
2398            NVL(
2399                  DECODE(p_trx_rec.primary_salesrep_id,
2400                         AR_NUMBER_DUMMY, trx.primary_salesrep_id,
2401                                        p_trx_rec.primary_salesrep_id),
2402                  AR_NUMBER_DUMMY
2403               )
2404          AND
2405            NVL(trx.printing_count, AR_NUMBER_DUMMY) =
2406            NVL(
2407                  DECODE(p_trx_rec.printing_count,
2408                         AR_NUMBER_DUMMY, trx.printing_count,
2409                                        p_trx_rec.printing_count),
2410                  AR_NUMBER_DUMMY
2411               )
2412          AND
2413            NVL(TRUNC(trx.printing_last_printed), AR_DATE_DUMMY) =
2414            NVL(
2415                  DECODE(TRUNC(p_trx_rec.printing_last_printed),
2416                         AR_DATE_DUMMY, TRUNC(trx.printing_last_printed),
2417                                        TRUNC(p_trx_rec.printing_last_printed)),
2418                  AR_DATE_DUMMY
2419               )
2420          AND
2421            NVL(trx.printing_option, AR_TEXT_DUMMY) =
2422            NVL(
2423                  DECODE(p_trx_rec.printing_option,
2424                         AR_TEXT_DUMMY, trx.printing_option,
2425                                        p_trx_rec.printing_option),
2426                  AR_TEXT_DUMMY
2427               )
2428        )
2429      AND
2430        (
2431            NVL(TRUNC(trx.printing_original_date), AR_DATE_DUMMY) =
2432            NVL(
2433                  DECODE(TRUNC(p_trx_rec.printing_original_date),
2434                         AR_DATE_DUMMY, TRUNC(trx.printing_original_date),
2435                                        TRUNC(p_trx_rec.printing_original_date)),
2436                  AR_DATE_DUMMY
2437               )
2438          AND
2439            NVL(trx.printing_pending, AR_FLAG_DUMMY) =
2440            NVL(
2441                  DECODE(p_trx_rec.printing_pending,
2442                         AR_FLAG_DUMMY, trx.printing_pending,
2443                                        p_trx_rec.printing_pending),
2444                  AR_FLAG_DUMMY
2445               )
2446          AND
2447            NVL(trx.purchase_order, AR_TEXT_DUMMY) =
2448            NVL(
2449                  DECODE(p_trx_rec.purchase_order,
2450                         AR_TEXT_DUMMY, trx.purchase_order,
2451                                        p_trx_rec.purchase_order),
2452                  AR_TEXT_DUMMY
2453               )
2454          AND
2455            NVL(TRUNC(trx.purchase_order_date), AR_DATE_DUMMY) =
2456            NVL(
2457                  DECODE(TRUNC(p_trx_rec.purchase_order_date),
2458                         AR_DATE_DUMMY, TRUNC(trx.purchase_order_date),
2459                                        TRUNC(p_trx_rec.purchase_order_date)),
2460                  AR_DATE_DUMMY
2461               )
2462          AND
2463            NVL(trx.purchase_order_revision, AR_TEXT_DUMMY) =
2464            NVL(
2465                  DECODE(p_trx_rec.purchase_order_revision,
2466                         AR_TEXT_DUMMY, trx.purchase_order_revision,
2467                                        p_trx_rec.purchase_order_revision),
2468                  AR_TEXT_DUMMY
2469               )
2470          AND
2471            NVL(trx.receipt_method_id, AR_NUMBER_DUMMY) =
2472            NVL(
2473                  DECODE(p_trx_rec.receipt_method_id,
2474                         AR_NUMBER_DUMMY, trx.receipt_method_id,
2475                                        p_trx_rec.receipt_method_id),
2476                  AR_NUMBER_DUMMY
2477               )
2478          AND
2479            NVL(trx.remit_to_address_id, AR_NUMBER_DUMMY) =
2480            NVL(
2481                  DECODE(p_trx_rec.remit_to_address_id,
2482                         AR_NUMBER_DUMMY, trx.remit_to_address_id,
2483                                        p_trx_rec.remit_to_address_id),
2484                  AR_NUMBER_DUMMY
2485               )
2486          AND
2487            NVL(trx.shipment_id, AR_NUMBER_DUMMY) =
2488            NVL(
2489                  DECODE(p_trx_rec.shipment_id,
2490                         AR_NUMBER_DUMMY, trx.shipment_id,
2491                                        p_trx_rec.shipment_id),
2492                  AR_NUMBER_DUMMY
2493               )
2494          AND
2495            NVL(TRUNC(trx.ship_date_actual), AR_DATE_DUMMY) =
2496            NVL(
2497                  DECODE(TRUNC(p_trx_rec.ship_date_actual),
2498                         AR_DATE_DUMMY, TRUNC(trx.ship_date_actual),
2499                                        TRUNC(p_trx_rec.ship_date_actual)),
2500                  AR_DATE_DUMMY
2501               )
2502          AND
2503            NVL(trx.ship_via, AR_TEXT_DUMMY) =
2504            NVL(
2505                  DECODE(p_trx_rec.ship_via,
2506                         AR_TEXT_DUMMY, trx.ship_via,
2507                                        p_trx_rec.ship_via),
2508                  AR_TEXT_DUMMY
2509               )
2510          AND
2511            NVL(TRUNC(trx.term_due_date), AR_DATE_DUMMY) =
2512            NVL(
2513                  DECODE(TRUNC(p_trx_rec.term_due_date),
2514                         AR_DATE_DUMMY, TRUNC(trx.term_due_date),
2515                                        TRUNC(p_trx_rec.term_due_date)),
2516                  AR_DATE_DUMMY
2517               )
2518          AND
2519            NVL(trx.term_id, AR_NUMBER_DUMMY) =
2520            NVL(
2521                  DECODE(p_trx_rec.term_id,
2522                         AR_NUMBER_DUMMY, trx.term_id,
2523                                        p_trx_rec.term_id),
2524                  AR_NUMBER_DUMMY
2525               )
2526          AND
2527            NVL(trx.territory_id, AR_NUMBER_DUMMY) =
2528            NVL(
2529                  DECODE(p_trx_rec.territory_id,
2530                         AR_NUMBER_DUMMY, trx.territory_id,
2531                                        p_trx_rec.territory_id),
2532                  AR_NUMBER_DUMMY
2533               )
2534          AND
2535            NVL(trx.waybill_number, AR_TEXT_DUMMY) =
2536            NVL(
2537                  DECODE(p_trx_rec.waybill_number,
2538                         AR_TEXT_DUMMY, trx.waybill_number,
2539                                        p_trx_rec.waybill_number),
2540                  AR_TEXT_DUMMY
2541               )
2542          AND
2543            NVL(trx.status_trx, AR_TEXT_DUMMY) =
2544            NVL(
2545                  DECODE(p_trx_rec.status_trx,
2546                         AR_TEXT_DUMMY, trx.status_trx,
2547                                        p_trx_rec.status_trx),
2548                  AR_TEXT_DUMMY
2549               )
2550          AND
2551            NVL(trx.reason_code, AR_TEXT_DUMMY) =
2552            NVL(
2553                  DECODE(p_trx_rec.reason_code,
2554                         AR_TEXT_DUMMY, trx.reason_code,
2555                                        p_trx_rec.reason_code),
2556                  AR_TEXT_DUMMY
2557               )
2558          AND
2559            NVL(trx.doc_sequence_id, AR_NUMBER_DUMMY) =
2560            NVL(
2561                  DECODE(p_trx_rec.doc_sequence_id,
2562                         AR_NUMBER_DUMMY, trx.doc_sequence_id,
2563                                        p_trx_rec.doc_sequence_id),
2564                  AR_NUMBER_DUMMY
2565               )
2566          AND
2567            NVL(trx.doc_sequence_value, AR_NUMBER_DUMMY) =
2568            NVL(
2569                  DECODE(p_trx_rec.doc_sequence_value,
2570                         AR_NUMBER_DUMMY, trx.doc_sequence_value,
2571                                        p_trx_rec.doc_sequence_value),
2572                  AR_NUMBER_DUMMY
2573               )
2574          AND
2575            NVL(trx.paying_customer_id, AR_NUMBER_DUMMY) =
2576            NVL(
2577                  DECODE(p_trx_rec.paying_customer_id,
2578                         AR_NUMBER_DUMMY, trx.paying_customer_id,
2579                                        p_trx_rec.paying_customer_id),
2580                  AR_NUMBER_DUMMY
2581               )
2582          AND
2583            NVL(trx.paying_site_use_id, AR_NUMBER_DUMMY) =
2584            NVL(
2585                  DECODE(p_trx_rec.paying_site_use_id,
2586                         AR_NUMBER_DUMMY, trx.paying_site_use_id,
2587                                        p_trx_rec.paying_site_use_id),
2588                  AR_NUMBER_DUMMY
2589               )
2590          AND
2591            NVL(trx.related_batch_source_id, AR_NUMBER_DUMMY) =
2592            NVL(
2593                  DECODE(p_trx_rec.related_batch_source_id,
2594                         AR_NUMBER_DUMMY, trx.related_batch_source_id,
2595                                        p_trx_rec.related_batch_source_id),
2596                  AR_NUMBER_DUMMY
2597               )
2598          AND
2599            NVL(trx.default_tax_exempt_flag, AR_FLAG_DUMMY) =
2600            NVL(
2601                  DECODE(p_trx_rec.default_tax_exempt_flag,
2602                         AR_FLAG_DUMMY, trx.default_tax_exempt_flag,
2603                                        p_trx_rec.default_tax_exempt_flag),
2604                  AR_FLAG_DUMMY
2605               )
2606          AND
2607            NVL(trx.created_from, AR_TEXT_DUMMY) =
2608            NVL(
2609                  DECODE(p_trx_rec.created_from,
2610                         AR_TEXT_DUMMY, trx.created_from,
2611                                        p_trx_rec.created_from),
2612                  AR_TEXT_DUMMY
2613               )
2614          AND
2615            NVL(trx.default_ussgl_trx_code_context, AR_TEXT_DUMMY) =
2616            NVL(
2617                  DECODE(p_trx_rec.default_ussgl_trx_code_context,
2618                         AR_TEXT_DUMMY, trx.default_ussgl_trx_code_context,
2619                                      p_trx_rec.default_ussgl_trx_code_context),
2620                  AR_TEXT_DUMMY
2621               )
2622          AND
2623            NVL(trx.default_ussgl_transaction_code, AR_TEXT_DUMMY) =
2624            NVL(
2625                  DECODE(p_trx_rec.default_ussgl_transaction_code,
2626                         AR_TEXT_DUMMY, trx.default_ussgl_transaction_code,
2627                                      p_trx_rec.default_ussgl_transaction_code),
2628                  AR_TEXT_DUMMY
2629               )
2630 	AND
2631            NVL(trx.old_trx_number, AR_TEXT_DUMMY) =
2632            NVL(
2633                  DECODE(p_trx_rec.old_trx_number,
2634                         AR_TEXT_DUMMY, trx.old_trx_number,
2635                                        p_trx_rec.old_trx_number),
2636                  AR_TEXT_DUMMY
2637               )
2638          AND
2639            NVL(trx.interface_header_context, AR_TEXT_DUMMY) =
2640            NVL(
2641                  DECODE(p_trx_rec.interface_header_context,
2642                         AR_TEXT_DUMMY, trx.interface_header_context,
2643                                        p_trx_rec.interface_header_context),
2644                  AR_TEXT_DUMMY
2645               )
2646          AND
2647            NVL(trx.interface_header_attribute1, AR_TEXT_DUMMY) =
2648            NVL(
2649                  DECODE(p_trx_rec.interface_header_attribute1,
2650                         AR_TEXT_DUMMY, trx.interface_header_attribute1,
2651                                        p_trx_rec.interface_header_attribute1),
2652                  AR_TEXT_DUMMY
2653               )
2654          AND
2655            NVL(trx.interface_header_attribute2, AR_TEXT_DUMMY) =
2656            NVL(
2657                  DECODE(p_trx_rec.interface_header_attribute2,
2658                         AR_TEXT_DUMMY, trx.interface_header_attribute2,
2659                                        p_trx_rec.interface_header_attribute2),
2660                  AR_TEXT_DUMMY
2661               )
2662          AND
2663            NVL(trx.interface_header_attribute3, AR_TEXT_DUMMY) =
2664            NVL(
2665                  DECODE(p_trx_rec.interface_header_attribute3,
2666                         AR_TEXT_DUMMY, trx.interface_header_attribute3,
2667                                        p_trx_rec.interface_header_attribute3),
2668                  AR_TEXT_DUMMY
2669               )
2670          AND
2671            NVL(trx.interface_header_attribute4, AR_TEXT_DUMMY) =
2672            NVL(
2673                  DECODE(p_trx_rec.interface_header_attribute4,
2674                         AR_TEXT_DUMMY, trx.interface_header_attribute4,
2675                                        p_trx_rec.interface_header_attribute4),
2676                  AR_TEXT_DUMMY
2677               )
2678          AND
2679            NVL(trx.interface_header_attribute5, AR_TEXT_DUMMY) =
2680            NVL(
2681                  DECODE(p_trx_rec.interface_header_attribute5,
2682                         AR_TEXT_DUMMY, trx.interface_header_attribute5,
2683                                        p_trx_rec.interface_header_attribute5),
2684                  AR_TEXT_DUMMY
2685               )
2686          AND
2687            NVL(trx.interface_header_attribute6, AR_TEXT_DUMMY) =
2688            NVL(
2689                  DECODE(p_trx_rec.interface_header_attribute6,
2690                         AR_TEXT_DUMMY, trx.interface_header_attribute6,
2691                                        p_trx_rec.interface_header_attribute6),
2692                  AR_TEXT_DUMMY
2693               )
2694          AND
2695            NVL(trx.interface_header_attribute7, AR_TEXT_DUMMY) =
2696            NVL(
2697                  DECODE(p_trx_rec.interface_header_attribute7,
2698                         AR_TEXT_DUMMY, trx.interface_header_attribute7,
2699                                        p_trx_rec.interface_header_attribute7),
2700                  AR_TEXT_DUMMY
2701               )
2702          AND
2703            NVL(trx.interface_header_attribute8, AR_TEXT_DUMMY) =
2704            NVL(
2705                  DECODE(p_trx_rec.interface_header_attribute8,
2706                         AR_TEXT_DUMMY, trx.interface_header_attribute8,
2707                                        p_trx_rec.interface_header_attribute8),
2708                  AR_TEXT_DUMMY
2709               )
2710          AND
2711            NVL(trx.interface_header_attribute9, AR_TEXT_DUMMY) =
2712            NVL(
2713                  DECODE(p_trx_rec.interface_header_attribute9,
2714                         AR_TEXT_DUMMY, trx.interface_header_attribute9,
2715                                        p_trx_rec.interface_header_attribute9),
2716                  AR_TEXT_DUMMY
2717               )
2718          AND
2719            NVL(trx.interface_header_attribute10, AR_TEXT_DUMMY) =
2720            NVL(
2721                  DECODE(p_trx_rec.interface_header_attribute10,
2722                         AR_TEXT_DUMMY, trx.interface_header_attribute10,
2723                                        p_trx_rec.interface_header_attribute10),
2724                  AR_TEXT_DUMMY
2725               )
2726          AND
2727            NVL(trx.interface_header_attribute11, AR_TEXT_DUMMY) =
2728            NVL(
2729                  DECODE(p_trx_rec.interface_header_attribute11,
2730                         AR_TEXT_DUMMY, trx.interface_header_attribute11,
2731                                        p_trx_rec.interface_header_attribute11),
2732                  AR_TEXT_DUMMY
2733               )
2734          AND
2735            NVL(trx.interface_header_attribute12, AR_TEXT_DUMMY) =
2736            NVL(
2737                  DECODE(p_trx_rec.interface_header_attribute12,
2738                         AR_TEXT_DUMMY, trx.interface_header_attribute12,
2739                                        p_trx_rec.interface_header_attribute12),
2740                  AR_TEXT_DUMMY
2741               )
2742          AND
2743            NVL(trx.interface_header_attribute13, AR_TEXT_DUMMY) =
2744            NVL(
2745                  DECODE(p_trx_rec.interface_header_attribute13,
2746                         AR_TEXT_DUMMY, trx.interface_header_attribute13,
2747                                        p_trx_rec.interface_header_attribute13),
2748                  AR_TEXT_DUMMY
2749               )
2750          AND
2751            NVL(trx.interface_header_attribute14, AR_TEXT_DUMMY) =
2752            NVL(
2753                  DECODE(p_trx_rec.interface_header_attribute14,
2754                         AR_TEXT_DUMMY, trx.interface_header_attribute14,
2755                                        p_trx_rec.interface_header_attribute14),
2756                  AR_TEXT_DUMMY
2757               )
2758          AND
2759            NVL(trx.interface_header_attribute15, AR_TEXT_DUMMY) =
2760            NVL(
2761                  DECODE(p_trx_rec.interface_header_attribute15,
2762                         AR_TEXT_DUMMY, trx.interface_header_attribute15,
2763                                        p_trx_rec.interface_header_attribute15),
2764                  AR_TEXT_DUMMY
2765               )
2766          AND
2767            NVL(trx.attribute_category, AR_TEXT_DUMMY) =
2768            NVL(
2769                  DECODE(p_trx_rec.attribute_category,
2770                         AR_TEXT_DUMMY, trx.attribute_category,
2771                                        p_trx_rec.attribute_category),
2772                  AR_TEXT_DUMMY
2773               )
2774          AND
2775            NVL(trx.attribute1, AR_TEXT_DUMMY) =
2776            NVL(
2777                  DECODE(p_trx_rec.attribute1,
2778                         AR_TEXT_DUMMY, trx.attribute1,
2779                                        p_trx_rec.attribute1),
2780                  AR_TEXT_DUMMY
2781               )
2782          AND
2783            NVL(trx.attribute2, AR_TEXT_DUMMY) =
2784            NVL(
2785                  DECODE(p_trx_rec.attribute2,
2786                         AR_TEXT_DUMMY, trx.attribute2,
2787                                        p_trx_rec.attribute2),
2788                  AR_TEXT_DUMMY
2789               )
2790          AND
2791            NVL(trx.attribute3, AR_TEXT_DUMMY) =
2792            NVL(
2793                  DECODE(p_trx_rec.attribute3,
2794                         AR_TEXT_DUMMY, trx.attribute3,
2795                                        p_trx_rec.attribute3),
2796                  AR_TEXT_DUMMY
2797               )
2798          AND
2799            NVL(trx.attribute4, AR_TEXT_DUMMY) =
2800            NVL(
2801                  DECODE(p_trx_rec.attribute4,
2802                         AR_TEXT_DUMMY, trx.attribute4,
2803                                        p_trx_rec.attribute4),
2804                  AR_TEXT_DUMMY
2805               )
2806        )
2807      AND
2808        (
2809            NVL(trx.attribute5, AR_TEXT_DUMMY) =
2810            NVL(
2811                  DECODE(p_trx_rec.attribute5,
2812                         AR_TEXT_DUMMY, trx.attribute5,
2813                                        p_trx_rec.attribute5),
2814                  AR_TEXT_DUMMY
2815               )
2816          AND
2817            NVL(trx.attribute6, AR_TEXT_DUMMY) =
2818            NVL(
2819                  DECODE(p_trx_rec.attribute6,
2820                         AR_TEXT_DUMMY, trx.attribute6,
2821                                        p_trx_rec.attribute6),
2822                  AR_TEXT_DUMMY
2823               )
2824          AND
2825            NVL(trx.attribute7, AR_TEXT_DUMMY) =
2826            NVL(
2827                  DECODE(p_trx_rec.attribute7,
2828                         AR_TEXT_DUMMY, trx.attribute7,
2829                                        p_trx_rec.attribute7),
2830                  AR_TEXT_DUMMY
2831               )
2832          AND
2833            NVL(trx.attribute8, AR_TEXT_DUMMY) =
2834            NVL(
2835                  DECODE(p_trx_rec.attribute8,
2836                         AR_TEXT_DUMMY, trx.attribute8,
2837                                        p_trx_rec.attribute8),
2838                  AR_TEXT_DUMMY
2839               )
2840          AND
2841            NVL(trx.attribute9, AR_TEXT_DUMMY) =
2842            NVL(
2843                  DECODE(p_trx_rec.attribute9,
2844                         AR_TEXT_DUMMY, trx.attribute9,
2845                                        p_trx_rec.attribute9),
2846                  AR_TEXT_DUMMY
2847               )
2848          AND
2849            NVL(trx.attribute10, AR_TEXT_DUMMY) =
2850            NVL(
2851                  DECODE(p_trx_rec.attribute10,
2852                         AR_TEXT_DUMMY, trx.attribute10,
2853                                        p_trx_rec.attribute10),
2854                  AR_TEXT_DUMMY
2855               )
2856          AND
2857            NVL(trx.attribute11, AR_TEXT_DUMMY) =
2858            NVL(
2859                  DECODE(p_trx_rec.attribute11,
2860                         AR_TEXT_DUMMY, trx.attribute11,
2861                                        p_trx_rec.attribute11),
2862                  AR_TEXT_DUMMY
2863               )
2864          AND
2865            NVL(trx.attribute12, AR_TEXT_DUMMY) =
2866            NVL(
2867                  DECODE(p_trx_rec.attribute12,
2868                         AR_TEXT_DUMMY, trx.attribute12,
2869                                        p_trx_rec.attribute12),
2870                  AR_TEXT_DUMMY
2871               )
2872          AND
2873            NVL(trx.attribute13, AR_TEXT_DUMMY) =
2874            NVL(
2875                  DECODE(p_trx_rec.attribute13,
2876                         AR_TEXT_DUMMY, trx.attribute13,
2877                                        p_trx_rec.attribute13),
2878                  AR_TEXT_DUMMY
2879               )
2880          AND
2881            NVL(trx.attribute14, AR_TEXT_DUMMY) =
2882            NVL(
2883                  DECODE(p_trx_rec.attribute14,
2884                         AR_TEXT_DUMMY, trx.attribute14,
2885                                        p_trx_rec.attribute14),
2886                  AR_TEXT_DUMMY
2887               )
2888          AND
2889            NVL(trx.attribute15, AR_TEXT_DUMMY) =
2890            NVL(
2891                  DECODE(p_trx_rec.attribute15,
2892                         AR_TEXT_DUMMY, trx.attribute15,
2893                                        p_trx_rec.attribute15),
2894                  AR_TEXT_DUMMY
2895               )
2896 
2897          AND
2898            NVL(trx.br_amount, AR_NUMBER_DUMMY) =
2899            NVL(
2900                  DECODE(p_trx_rec.br_amount,
2901                         AR_NUMBER_DUMMY, trx.br_amount,
2902                                          p_trx_rec.br_amount),
2903                  AR_NUMBER_DUMMY
2904               )
2905          AND
2906            NVL(trx.br_unpaid_flag, AR_FLAG_DUMMY) =
2907            NVL(
2908                  DECODE(p_trx_rec.br_unpaid_flag,
2909                         AR_FLAG_DUMMY, trx.br_unpaid_flag,
2910                                          p_trx_rec.br_unpaid_flag),
2911                  AR_FLAG_DUMMY
2912               )
2913          AND
2914            NVL(trx.br_on_hold_flag, AR_FLAG_DUMMY) =
2915            NVL(
2916                  DECODE(p_trx_rec.br_on_hold_flag,
2917                         AR_FLAG_DUMMY, trx.br_on_hold_flag,
2918                                          p_trx_rec.br_on_hold_flag),
2919                  AR_FLAG_DUMMY
2920               )
2921          AND
2922            NVL(trx.drawee_id, AR_NUMBER_DUMMY) =
2923            NVL(
2924                  DECODE(p_trx_rec.drawee_id,
2925                         AR_NUMBER_DUMMY, trx.drawee_id,
2926                                          p_trx_rec.drawee_id),
2927                  AR_NUMBER_DUMMY
2928               )
2929          AND
2930            NVL(trx.drawee_contact_id, AR_NUMBER_DUMMY) =
2931            NVL(
2932                  DECODE(p_trx_rec.drawee_contact_id,
2933                         AR_NUMBER_DUMMY, trx.drawee_contact_id,
2934                                          p_trx_rec.drawee_contact_id),
2935                  AR_NUMBER_DUMMY
2936               )
2937          AND
2938            NVL(trx.drawee_site_use_id, AR_NUMBER_DUMMY) =
2939            NVL(
2940                  DECODE(p_trx_rec.drawee_site_use_id,
2941                         AR_NUMBER_DUMMY, trx.drawee_site_use_id,
2942                                          p_trx_rec.drawee_site_use_id),
2943                  AR_NUMBER_DUMMY
2944               )
2945 /*Bug7313869, Removed the check for drawee_bank_account_id*/
2946          AND
2947            NVL(trx.remit_bank_acct_use_id, AR_NUMBER_DUMMY) =
2948            NVL(
2949                  DECODE(p_trx_rec.remit_bank_acct_use_id,
2950                         AR_NUMBER_DUMMY, trx.remit_bank_acct_use_id,
2951                                          p_trx_rec.remit_bank_acct_use_id),
2952                  AR_NUMBER_DUMMY
2953               )
2954          AND
2955            NVL(trx.override_remit_account_flag, AR_FLAG_DUMMY) =
2956            NVL(
2957                  DECODE(p_trx_rec.override_remit_account_flag,
2958                         AR_FLAG_DUMMY, trx.override_remit_account_flag,
2959                                          p_trx_rec.override_remit_account_flag),
2960                  AR_FLAG_DUMMY
2961               )
2962          AND
2963            NVL(trx.special_instructions, AR_TEXT_DUMMY) =
2964            NVL(
2965                  DECODE(p_trx_rec.special_instructions,
2966                         AR_TEXT_DUMMY, trx.special_instructions,
2967                                          p_trx_rec.special_instructions),
2968                  AR_TEXT_DUMMY
2969               )
2970          AND
2971            NVL(trx.remittance_batch_id, AR_NUMBER_DUMMY) =
2972            NVL(
2973                  DECODE(p_trx_rec.remittance_batch_id,
2974                         AR_NUMBER_DUMMY, trx.remittance_batch_id,
2975                                          p_trx_rec.remittance_batch_id),
2976                  AR_NUMBER_DUMMY
2977               )
2978          AND
2979            NVL(trx.address_verification_code, AR_TEXT_DUMMY) =
2980            NVL(
2981                  DECODE(p_trx_rec.address_verification_code,
2982                         AR_TEXT_DUMMY, trx.address_verification_code,
2983                                          p_trx_rec.address_verification_code),
2984                  AR_TEXT_DUMMY
2985               )
2986          AND
2987            NVL(trx.approval_code, AR_TEXT_DUMMY) =
2988            NVL(
2989                  DECODE(p_trx_rec.approval_code,
2990                         AR_TEXT_DUMMY, trx.approval_code,
2991                                          p_trx_rec.approval_code),
2992                  AR_TEXT_DUMMY
2993               )
2994          AND
2995            NVL(trx.bill_to_address_id, AR_NUMBER_DUMMY) =
2996            NVL(
2997                  DECODE(p_trx_rec.bill_to_address_id,
2998                         AR_NUMBER_DUMMY, trx.bill_to_address_id,
2999                                          p_trx_rec.bill_to_address_id),
3000                  AR_NUMBER_DUMMY
3001               )
3002           AND
3003            NVL(trx.edi_processed_flag, AR_FLAG_DUMMY) =
3004            NVL(
3005                  DECODE(p_trx_rec.edi_processed_flag,
3006                         AR_FLAG_DUMMY, trx.edi_processed_flag,
3007                                          p_trx_rec.edi_processed_flag),
3008                  AR_FLAG_DUMMY
3009               )
3010          AND
3011            NVL(trx.edi_processed_status, AR_TEXT_DUMMY) =
3012            NVL(
3013                  DECODE(p_trx_rec.edi_processed_status,
3014                         AR_TEXT_DUMMY, trx.edi_processed_status,
3015                                          p_trx_rec.edi_processed_status),
3016                  AR_TEXT_DUMMY
3017               )
3018          AND
3019            NVL(trx.payment_server_order_num, AR_TEXT_DUMMY) =
3020            NVL(
3021                  DECODE(p_trx_rec.payment_server_order_num,
3022                         AR_TEXT_DUMMY, trx.payment_server_order_num,
3023                                          p_trx_rec.payment_server_order_num),
3024                  AR_TEXT_DUMMY
3025               )
3026           AND
3027            NVL(trx.post_request_id, AR_NUMBER_DUMMY) =
3028            NVL(
3029                  DECODE(p_trx_rec.post_request_id,
3030                         AR_NUMBER_DUMMY, trx.post_request_id,
3031                                          p_trx_rec.post_request_id),
3032                  AR_NUMBER_DUMMY
3033               )
3034          AND
3035            NVL(trx.request_id, AR_NUMBER_DUMMY) =
3036            NVL(
3037                  DECODE(p_trx_rec.request_id,
3038                         AR_NUMBER_DUMMY, trx.request_id,
3039                                          p_trx_rec.request_id),
3040                  AR_NUMBER_DUMMY
3041               )
3042          AND
3043            NVL(trx.ship_to_address_id, AR_NUMBER_DUMMY) =
3044            NVL(
3045                  DECODE(p_trx_rec.ship_to_address_id,
3046                         AR_NUMBER_DUMMY, trx.ship_to_address_id,
3047                                          p_trx_rec.ship_to_address_id),
3048                  AR_NUMBER_DUMMY
3049               )
3050          AND
3051            NVL(trx.wh_update_date, AR_DATE_DUMMY) =
3052            NVL(
3053                  DECODE(p_trx_rec.wh_update_date,
3054                         AR_DATE_DUMMY, trx.wh_update_date,
3055                                          p_trx_rec.wh_update_date),
3056                  AR_DATE_DUMMY
3057               )
3058          AND
3059            NVL(trx.global_attribute_category, AR_TEXT_DUMMY) =
3060            NVL(
3061                  DECODE(p_trx_rec.global_attribute_category,
3062                         AR_TEXT_DUMMY, trx.global_attribute_category,
3063                                        p_trx_rec.global_attribute_category),
3064                  AR_TEXT_DUMMY
3065               )
3066          AND
3067            NVL(trx.global_attribute1, AR_TEXT_DUMMY) =
3068            NVL(
3069                  DECODE(p_trx_rec.global_attribute1,
3070                         AR_TEXT_DUMMY, trx.global_attribute1,
3071                                        p_trx_rec.global_attribute1),
3072                  AR_TEXT_DUMMY
3073               )
3074          AND
3075            NVL(trx.global_attribute2, AR_TEXT_DUMMY) =
3076            NVL(
3077                  DECODE(p_trx_rec.global_attribute2,
3078                         AR_TEXT_DUMMY, trx.global_attribute2,
3079                                        p_trx_rec.global_attribute2),
3080                  AR_TEXT_DUMMY
3081               )
3082          AND
3083            NVL(trx.global_attribute3, AR_TEXT_DUMMY) =
3084            NVL(
3085                  DECODE(p_trx_rec.global_attribute3,
3086                         AR_TEXT_DUMMY, trx.global_attribute3,
3087                                        p_trx_rec.global_attribute3),
3088                  AR_TEXT_DUMMY
3089               )
3090          AND
3091            NVL(trx.global_attribute4, AR_TEXT_DUMMY) =
3092            NVL(
3093                  DECODE(p_trx_rec.global_attribute4,
3094                         AR_TEXT_DUMMY, trx.global_attribute4,
3095                                        p_trx_rec.global_attribute4),
3096                  AR_TEXT_DUMMY
3097               )
3098          AND
3099            NVL(trx.global_attribute5, AR_TEXT_DUMMY) =
3100            NVL(
3101                  DECODE(p_trx_rec.global_attribute5,
3102                         AR_TEXT_DUMMY, trx.global_attribute5,
3103                                        p_trx_rec.global_attribute5),
3104                  AR_TEXT_DUMMY
3105               )
3106          AND
3107            NVL(trx.global_attribute6, AR_TEXT_DUMMY) =
3108            NVL(
3109                  DECODE(p_trx_rec.global_attribute6,
3110                         AR_TEXT_DUMMY, trx.global_attribute6,
3111                                        p_trx_rec.global_attribute6),
3112                  AR_TEXT_DUMMY
3113               )
3114          AND
3115            NVL(trx.global_attribute7, AR_TEXT_DUMMY) =
3116            NVL(
3117                  DECODE(p_trx_rec.global_attribute7,
3118                         AR_TEXT_DUMMY, trx.global_attribute7,
3119                                        p_trx_rec.global_attribute7),
3120                  AR_TEXT_DUMMY
3121               )
3122          AND
3123            NVL(trx.global_attribute8, AR_TEXT_DUMMY) =
3124            NVL(
3125                  DECODE(p_trx_rec.global_attribute8,
3126                         AR_TEXT_DUMMY, trx.global_attribute8,
3127                                        p_trx_rec.global_attribute8),
3128                  AR_TEXT_DUMMY
3129               )
3130          AND
3131            NVL(trx.global_attribute9, AR_TEXT_DUMMY) =
3132            NVL(
3133                  DECODE(p_trx_rec.global_attribute9,
3134                         AR_TEXT_DUMMY, trx.global_attribute9,
3135                                        p_trx_rec.global_attribute9),
3136                  AR_TEXT_DUMMY
3137               )
3138          AND
3139            NVL(trx.global_attribute10, AR_TEXT_DUMMY) =
3140            NVL(
3141                  DECODE(p_trx_rec.global_attribute10,
3142                         AR_TEXT_DUMMY, trx.global_attribute10,
3143                                        p_trx_rec.global_attribute10),
3144                  AR_TEXT_DUMMY
3145               )
3146          AND
3147            NVL(trx.global_attribute11, AR_TEXT_DUMMY) =
3148            NVL(
3149                  DECODE(p_trx_rec.global_attribute11,
3150                         AR_TEXT_DUMMY, trx.global_attribute11,
3151                                        p_trx_rec.global_attribute11),
3152                  AR_TEXT_DUMMY
3153               )
3154          AND
3155            NVL(trx.global_attribute12, AR_TEXT_DUMMY) =
3156            NVL(
3157                  DECODE(p_trx_rec.global_attribute12,
3158                         AR_TEXT_DUMMY, trx.global_attribute12,
3159                                        p_trx_rec.global_attribute12),
3160                  AR_TEXT_DUMMY
3161               )
3162          AND
3163            NVL(trx.global_attribute13, AR_TEXT_DUMMY) =
3164            NVL(
3165                  DECODE(p_trx_rec.global_attribute13,
3166                         AR_TEXT_DUMMY, trx.global_attribute13,
3167                                        p_trx_rec.global_attribute13),
3168                  AR_TEXT_DUMMY
3169               )
3170          AND
3171            NVL(trx.global_attribute14, AR_TEXT_DUMMY) =
3172            NVL(
3173                  DECODE(p_trx_rec.global_attribute14,
3174                         AR_TEXT_DUMMY, trx.global_attribute14,
3175                                        p_trx_rec.global_attribute14),
3176                  AR_TEXT_DUMMY
3177               )
3178          AND
3179            NVL(trx.global_attribute15, AR_TEXT_DUMMY) =
3180            NVL(
3181                  DECODE(p_trx_rec.global_attribute15,
3182                         AR_TEXT_DUMMY, trx.global_attribute15,
3183                                        p_trx_rec.global_attribute15),
3184                  AR_TEXT_DUMMY
3185               )
3186          AND
3187            NVL(trx.global_attribute16, AR_TEXT_DUMMY) =
3188            NVL(
3189                  DECODE(p_trx_rec.global_attribute16,
3190                         AR_TEXT_DUMMY, trx.global_attribute16,
3191                                        p_trx_rec.global_attribute16),
3192                  AR_TEXT_DUMMY
3193               )
3194          AND
3195            NVL(trx.global_attribute17, AR_TEXT_DUMMY) =
3196            NVL(
3197                  DECODE(p_trx_rec.global_attribute17,
3198                         AR_TEXT_DUMMY, trx.global_attribute17,
3199                                        p_trx_rec.global_attribute17),
3200                  AR_TEXT_DUMMY
3201               )
3202          AND
3203            NVL(trx.global_attribute18, AR_TEXT_DUMMY) =
3204            NVL(
3205                  DECODE(p_trx_rec.global_attribute18,
3206                         AR_TEXT_DUMMY, trx.global_attribute18,
3207                                        p_trx_rec.global_attribute18),
3208                  AR_TEXT_DUMMY
3209               )
3210          AND
3211            NVL(trx.global_attribute19, AR_TEXT_DUMMY) =
3212            NVL(
3213                  DECODE(p_trx_rec.global_attribute19,
3214                         AR_TEXT_DUMMY, trx.global_attribute19,
3215                                        p_trx_rec.global_attribute19),
3216                  AR_TEXT_DUMMY
3217               )
3218          AND
3219            NVL(trx.global_attribute20, AR_TEXT_DUMMY) =
3220            NVL(
3221                  DECODE(p_trx_rec.global_attribute20,
3222                         AR_TEXT_DUMMY, trx.global_attribute20,
3223                                        p_trx_rec.global_attribute20),
3224                  AR_TEXT_DUMMY
3225               )
3226          AND
3227            NVL(trx.global_attribute21, AR_TEXT_DUMMY) =
3228            NVL(
3229                  DECODE(p_trx_rec.global_attribute21,
3230                         AR_TEXT_DUMMY, trx.global_attribute21,
3231                                        p_trx_rec.global_attribute21),
3232                  AR_TEXT_DUMMY
3233               )
3234          AND
3235            NVL(trx.global_attribute22, AR_TEXT_DUMMY) =
3236            NVL(
3237                  DECODE(p_trx_rec.global_attribute22,
3238                         AR_TEXT_DUMMY, trx.global_attribute22,
3239                                        p_trx_rec.global_attribute22),
3240                  AR_TEXT_DUMMY
3241               )
3242          AND
3243            NVL(trx.global_attribute23, AR_TEXT_DUMMY) =
3244            NVL(
3245                  DECODE(p_trx_rec.global_attribute23,
3246                         AR_TEXT_DUMMY, trx.global_attribute23,
3247                                        p_trx_rec.global_attribute23),
3248                  AR_TEXT_DUMMY
3249               )
3250          AND
3251            NVL(trx.global_attribute24, AR_TEXT_DUMMY) =
3252            NVL(
3253                  DECODE(p_trx_rec.global_attribute24,
3254                         AR_TEXT_DUMMY, trx.global_attribute24,
3255                                        p_trx_rec.global_attribute24),
3256                  AR_TEXT_DUMMY
3257               )
3258          AND
3259            NVL(trx.global_attribute25, AR_TEXT_DUMMY) =
3260            NVL(
3261                  DECODE(p_trx_rec.global_attribute25,
3262                         AR_TEXT_DUMMY, trx.global_attribute25,
3263                                        p_trx_rec.global_attribute25),
3264                  AR_TEXT_DUMMY
3265               )
3266          AND
3267            NVL(trx.global_attribute26, AR_TEXT_DUMMY) =
3268            NVL(
3269                  DECODE(p_trx_rec.global_attribute26,
3270                         AR_TEXT_DUMMY, trx.global_attribute26,
3271                                        p_trx_rec.global_attribute26),
3272                  AR_TEXT_DUMMY
3273               )
3274          AND
3275            NVL(trx.global_attribute27, AR_TEXT_DUMMY) =
3276            NVL(
3277                  DECODE(p_trx_rec.global_attribute27,
3278                         AR_TEXT_DUMMY, trx.global_attribute27,
3279                                        p_trx_rec.global_attribute27),
3280                  AR_TEXT_DUMMY
3281               )
3282          AND
3283            NVL(trx.global_attribute28, AR_TEXT_DUMMY) =
3284            NVL(
3285                  DECODE(p_trx_rec.global_attribute28,
3286                         AR_TEXT_DUMMY, trx.global_attribute28,
3287                                        p_trx_rec.global_attribute28),
3288                  AR_TEXT_DUMMY
3289               )
3290          AND
3291            NVL(trx.global_attribute29, AR_TEXT_DUMMY) =
3292            NVL(
3293                  DECODE(p_trx_rec.global_attribute29,
3294                         AR_TEXT_DUMMY, trx.global_attribute29,
3295                                        p_trx_rec.global_attribute29),
3296                  AR_TEXT_DUMMY
3297               )
3298          AND
3299            NVL(trx.global_attribute30, AR_TEXT_DUMMY) =
3300            NVL(
3301                  DECODE(p_trx_rec.global_attribute30,
3302                         AR_TEXT_DUMMY, trx.global_attribute30,
3303                                        p_trx_rec.global_attribute30),
3304                  AR_TEXT_DUMMY
3305               )
3306          AND
3307            NVL(trx.legal_entity_id, AR_NUMBER_DUMMY) =
3308            NVL(
3309                  DECODE(p_trx_rec.legal_entity_id,
3310                         AR_NUMBER_DUMMY, trx.legal_entity_id,
3311                                        p_trx_rec.legal_entity_id),
3312                  AR_NUMBER_DUMMY
3313               )
3314       )
3315         AND
3316            NVL(trx.payment_trxn_extension_id, AR_NUMBER_DUMMY) =
3317            NVL(
3318                  DECODE(p_trx_rec.payment_trxn_extension_id,
3319                         AR_NUMBER_DUMMY, trx.payment_trxn_extension_id,
3320                                        p_trx_rec.payment_trxn_extension_id),
3321                  AR_NUMBER_DUMMY
3322               )  /* PAYMENT_UPAKE */
3323         AND
3324            NVL(trx.billing_date, AR_DATE_DUMMY) =
3325            NVL(
3326                  DECODE(p_trx_rec.billing_date,
3327                         AR_DATE_DUMMY, trx.billing_date,
3328                                        p_trx_rec.billing_date),
3329                  AR_DATE_DUMMY
3330               )
3331 
3332     FOR UPDATE OF customer_trx_id NOWAIT;
3333    ELSE
3334     SELECT   *
3335     INTO     l_new_trx_rec
3336     FROM     ra_customer_trx trx
3337     WHERE    trx.customer_trx_id = p_customer_trx_id
3338     AND
3339        (
3340            NVL(trx.trx_number, AR_TEXT_DUMMY) =
3341            NVL(
3342                  DECODE(p_trx_rec.trx_number,
3343                         AR_TEXT_DUMMY, trx.trx_number,
3344                                        p_trx_rec.trx_number),
3345                  AR_TEXT_DUMMY
3346               )
3347          AND
3348            NVL(trx.customer_trx_id, AR_NUMBER_DUMMY) =
3349            NVL(
3350                  DECODE(p_trx_rec.customer_trx_id,
3351                         AR_NUMBER_DUMMY, trx.customer_trx_id,
3352                                        p_trx_rec.customer_trx_id),
3353                  AR_NUMBER_DUMMY
3354               )
3355          AND
3356            NVL(trx.created_by, AR_NUMBER_DUMMY) =
3357            NVL(
3358                  DECODE(p_trx_rec.created_by,
3359                         AR_NUMBER_DUMMY, trx.created_by,
3360                                        p_trx_rec.created_by),
3361                  AR_NUMBER_DUMMY
3362               )
3363          AND
3364            NVL(TRUNC(trx.creation_date), AR_DATE_DUMMY) =
3365            NVL(
3366                  DECODE(TRUNC(p_trx_rec.creation_date),
3367                         AR_DATE_DUMMY, TRUNC(trx.creation_date),
3368                                        TRUNC(p_trx_rec.creation_date)),
3369                  AR_DATE_DUMMY
3370               )
3371          AND
3372            NVL(trx.last_updated_by, AR_NUMBER_DUMMY) =
3373            NVL(
3374                  DECODE(p_trx_rec.last_updated_by,
3375                         AR_NUMBER_DUMMY, trx.last_updated_by,
3376                                        p_trx_rec.last_updated_by),
3377                  AR_NUMBER_DUMMY
3378               )
3379          AND
3380            NVL(TRUNC(trx.last_update_date), AR_DATE_DUMMY) =
3381            NVL(
3382                  DECODE(TRUNC(p_trx_rec.last_update_date),
3383                         AR_DATE_DUMMY, TRUNC(trx.last_update_date),
3384                                        TRUNC(p_trx_rec.last_update_date)),
3385                  AR_DATE_DUMMY
3386               )
3387          AND
3388            NVL(trx.last_update_login, AR_NUMBER_DUMMY) =
3389            NVL(
3390                  DECODE(p_trx_rec.last_update_login,
3391                         AR_NUMBER_DUMMY, trx.last_update_login,
3392                                        p_trx_rec.last_update_login),
3393                  AR_NUMBER_DUMMY
3394               )
3395          AND
3396            NVL(trx.set_of_books_id, AR_NUMBER_DUMMY) =
3397            NVL(
3398                  DECODE(p_trx_rec.set_of_books_id,
3399                         AR_NUMBER_DUMMY, trx.set_of_books_id,
3400                                        p_trx_rec.set_of_books_id),
3401                  AR_NUMBER_DUMMY
3402               )
3403          AND
3404            NVL(trx.program_application_id, AR_NUMBER_DUMMY) =
3405            NVL(
3406                  DECODE(p_trx_rec.program_application_id,
3407                         AR_NUMBER_DUMMY, trx.program_application_id,
3408                                        p_trx_rec.program_application_id),
3409                  AR_NUMBER_DUMMY
3410               )
3411          AND
3412            NVL(trx.program_id, AR_NUMBER_DUMMY) =
3413            NVL(
3414                  DECODE(p_trx_rec.program_id,
3415                         AR_NUMBER_DUMMY, trx.program_id,
3416                                        p_trx_rec.program_id),
3417                  AR_NUMBER_DUMMY
3418               )
3419          AND
3420            NVL(TRUNC(trx.program_update_date), AR_DATE_DUMMY) =
3421            NVL(
3422                  DECODE(TRUNC(p_trx_rec.program_update_date),
3423                         AR_DATE_DUMMY, TRUNC(trx.program_update_date),
3424                                        TRUNC(p_trx_rec.program_update_date)),
3425                  AR_DATE_DUMMY
3426               )
3427          AND
3428            NVL(trx.posting_control_id, AR_NUMBER_DUMMY) =
3429            NVL(
3430                  DECODE(p_trx_rec.posting_control_id,
3431                         AR_NUMBER_DUMMY, trx.posting_control_id,
3432                                        p_trx_rec.posting_control_id),
3433                  AR_NUMBER_DUMMY
3434               )
3435          AND
3436            NVL(trx.ra_post_loop_number, AR_NUMBER_DUMMY) =
3437            NVL(
3438                  DECODE(p_trx_rec.ra_post_loop_number,
3439                         AR_NUMBER_DUMMY, trx.ra_post_loop_number,
3440                                        p_trx_rec.ra_post_loop_number),
3441                  AR_NUMBER_DUMMY
3442               )
3443          AND
3444            NVL(trx.complete_flag, AR_FLAG_DUMMY) =
3445            NVL(
3446                  DECODE(p_trx_rec.complete_flag,
3447                         AR_FLAG_DUMMY, trx.complete_flag,
3448                                        p_trx_rec.complete_flag),
3449                  AR_FLAG_DUMMY
3450               )
3451          AND
3452            NVL(trx.initial_customer_trx_id, AR_NUMBER_DUMMY) =
3453            NVL(
3454                  DECODE(p_trx_rec.initial_customer_trx_id,
3455                         AR_NUMBER_DUMMY, trx.initial_customer_trx_id,
3456                                        p_trx_rec.initial_customer_trx_id),
3457                  AR_NUMBER_DUMMY
3458               )
3459          AND
3460            NVL(trx.previous_customer_trx_id, AR_NUMBER_DUMMY) =
3461            NVL(
3462                  DECODE(p_trx_rec.previous_customer_trx_id,
3463                         AR_NUMBER_DUMMY, trx.previous_customer_trx_id,
3464                                        p_trx_rec.previous_customer_trx_id),
3465                  AR_NUMBER_DUMMY
3466               )
3467          AND
3468            NVL(trx.related_customer_trx_id, AR_NUMBER_DUMMY) =
3469            NVL(
3470                  DECODE(p_trx_rec.related_customer_trx_id,
3471                         AR_NUMBER_DUMMY, trx.related_customer_trx_id,
3472                                        p_trx_rec.related_customer_trx_id),
3473                  AR_NUMBER_DUMMY
3474               )
3475          AND
3476            NVL(trx.recurred_from_trx_number, AR_TEXT_DUMMY) =
3477            NVL(
3478                  DECODE(p_trx_rec.recurred_from_trx_number,
3479                         AR_TEXT_DUMMY, trx.recurred_from_trx_number,
3480                                        p_trx_rec.recurred_from_trx_number),
3481                  AR_TEXT_DUMMY
3482               )
3483          AND
3484            NVL(trx.cust_trx_type_id, AR_NUMBER_DUMMY) =
3485            NVL(
3486                  DECODE(p_trx_rec.cust_trx_type_id,
3487                         AR_NUMBER_DUMMY, trx.cust_trx_type_id,
3488                                        p_trx_rec.cust_trx_type_id),
3489                  AR_NUMBER_DUMMY
3490               )
3491          AND
3492            NVL(trx.batch_id, AR_NUMBER_DUMMY) =
3493            NVL(
3494                  DECODE(p_trx_rec.batch_id,
3495                         AR_NUMBER_DUMMY, trx.batch_id,
3496                                        p_trx_rec.batch_id),
3497                  AR_NUMBER_DUMMY
3498               )
3499          AND
3500            NVL(trx.batch_source_id, AR_NUMBER_DUMMY) =
3501            NVL(
3502                  DECODE(p_trx_rec.batch_source_id,
3503                         AR_NUMBER_DUMMY, trx.batch_source_id,
3504                                        p_trx_rec.batch_source_id),
3505                  AR_NUMBER_DUMMY
3506               )
3507          AND
3508            NVL(trx.agreement_id, AR_NUMBER_DUMMY) =
3509            NVL(
3510                  DECODE(p_trx_rec.agreement_id,
3511                         AR_NUMBER_DUMMY, trx.agreement_id,
3512                                        p_trx_rec.agreement_id),
3513                  AR_NUMBER_DUMMY
3514               )
3515          AND
3516            NVL(TRUNC(trx.trx_date), AR_DATE_DUMMY) =
3517            NVL(
3518                  DECODE(TRUNC(p_trx_rec.trx_date),
3519                         AR_DATE_DUMMY, TRUNC(trx.trx_date),
3520                                        TRUNC(p_trx_rec.trx_date)),
3521                  AR_DATE_DUMMY
3522               )
3523          AND
3524            NVL(trx.bill_to_customer_id, AR_NUMBER_DUMMY) =
3525            NVL(
3526                  DECODE(p_trx_rec.bill_to_customer_id,
3527                         AR_NUMBER_DUMMY, trx.bill_to_customer_id,
3528                                        p_trx_rec.bill_to_customer_id),
3529                  AR_NUMBER_DUMMY
3530               )
3531          AND
3532            NVL(trx.bill_to_contact_id, AR_NUMBER_DUMMY) =
3533            NVL(
3534                  DECODE(p_trx_rec.bill_to_contact_id,
3535                         AR_NUMBER_DUMMY, trx.bill_to_contact_id,
3536                                        p_trx_rec.bill_to_contact_id),
3537                  AR_NUMBER_DUMMY
3538               )
3539          AND
3540            NVL(trx.bill_to_site_use_id, AR_NUMBER_DUMMY) =
3541            NVL(
3542                  DECODE(p_trx_rec.bill_to_site_use_id,
3543                         AR_NUMBER_DUMMY, trx.bill_to_site_use_id,
3544                                        p_trx_rec.bill_to_site_use_id),
3545                  AR_NUMBER_DUMMY
3546               )
3547          AND
3548            NVL(trx.ship_to_customer_id, AR_NUMBER_DUMMY) =
3549            NVL(
3550                  DECODE(p_trx_rec.ship_to_customer_id,
3551                         AR_NUMBER_DUMMY, trx.ship_to_customer_id,
3552                                        p_trx_rec.ship_to_customer_id),
3553                  AR_NUMBER_DUMMY
3554               )
3555          AND
3556            NVL(trx.ship_to_contact_id, AR_NUMBER_DUMMY) =
3557            NVL(
3558                  DECODE(p_trx_rec.ship_to_contact_id,
3559                         AR_NUMBER_DUMMY, trx.ship_to_contact_id,
3560                                        p_trx_rec.ship_to_contact_id),
3561                  AR_NUMBER_DUMMY
3562               )
3563          AND
3564            NVL(trx.ship_to_site_use_id, AR_NUMBER_DUMMY) =
3565            NVL(
3566                  DECODE(p_trx_rec.ship_to_site_use_id,
3567                         AR_NUMBER_DUMMY, trx.ship_to_site_use_id,
3568                                        p_trx_rec.ship_to_site_use_id),
3569                  AR_NUMBER_DUMMY
3570               )
3571          AND
3572            NVL(trx.sold_to_customer_id, AR_NUMBER_DUMMY) =
3573            NVL(
3574                  DECODE(p_trx_rec.sold_to_customer_id,
3575                         AR_NUMBER_DUMMY, trx.sold_to_customer_id,
3576                                        p_trx_rec.sold_to_customer_id),
3577                  AR_NUMBER_DUMMY
3578               )
3579          AND
3580            NVL(trx.sold_to_site_use_id, AR_NUMBER_DUMMY) =
3581            NVL(
3582                  DECODE(p_trx_rec.sold_to_site_use_id,
3583                         AR_NUMBER_DUMMY, trx.sold_to_site_use_id,
3584                                        p_trx_rec.sold_to_site_use_id),
3585                  AR_NUMBER_DUMMY
3586               )
3587          AND
3588            NVL(trx.sold_to_contact_id, AR_NUMBER_DUMMY) =
3589            NVL(
3590                  DECODE(p_trx_rec.sold_to_contact_id,
3591                         AR_NUMBER_DUMMY, trx.sold_to_contact_id,
3592                                        p_trx_rec.sold_to_contact_id),
3593                  AR_NUMBER_DUMMY
3594               )
3595          AND
3596            NVL(trx.customer_reference, AR_TEXT_DUMMY) =
3597            NVL(
3598                  DECODE(p_trx_rec.customer_reference,
3599                         AR_TEXT_DUMMY, trx.customer_reference,
3600                                        p_trx_rec.customer_reference),
3601                  AR_TEXT_DUMMY
3602               )
3603          AND
3604            NVL(TRUNC(trx.customer_reference_date), AR_DATE_DUMMY) =
3605            NVL(
3606                  DECODE(TRUNC(p_trx_rec.customer_reference_date),
3607                         AR_DATE_DUMMY, TRUNC(trx.customer_reference_date),
3608                                      TRUNC(p_trx_rec.customer_reference_date)),
3609                  AR_DATE_DUMMY
3610               )
3611          AND
3612            NVL(trx.credit_method_for_installments, AR_TEXT_DUMMY) =
3613            NVL(
3614                  DECODE(p_trx_rec.credit_method_for_installments,
3615                         AR_TEXT_DUMMY, trx.credit_method_for_installments,
3616                                      p_trx_rec.credit_method_for_installments),
3617                  AR_TEXT_DUMMY
3618               )
3619          AND
3620            NVL(trx.credit_method_for_rules, AR_TEXT_DUMMY) =
3621            NVL(
3622                  DECODE(p_trx_rec.credit_method_for_rules,
3623                         AR_TEXT_DUMMY, trx.credit_method_for_rules,
3624                                        p_trx_rec.credit_method_for_rules),
3625                  AR_TEXT_DUMMY
3626               )
3627          AND
3628            NVL(TRUNC(trx.start_date_commitment), AR_DATE_DUMMY) =
3629            NVL(
3630                  DECODE(TRUNC(p_trx_rec.start_date_commitment),
3631                         AR_DATE_DUMMY, TRUNC(trx.start_date_commitment),
3632                                        TRUNC(p_trx_rec.start_date_commitment)),
3633                  AR_DATE_DUMMY
3634               )
3635          AND
3636            NVL(TRUNC(trx.end_date_commitment), AR_DATE_DUMMY) =
3637            NVL(
3638                  DECODE(TRUNC(p_trx_rec.end_date_commitment),
3639                         AR_DATE_DUMMY, TRUNC(trx.end_date_commitment),
3640                                        TRUNC(p_trx_rec.end_date_commitment)),
3641                  AR_DATE_DUMMY
3642               )
3643          AND
3644            NVL(TRUNC(trx.exchange_date), AR_DATE_DUMMY) =
3645            NVL(
3646                  DECODE(TRUNC(p_trx_rec.exchange_date),
3647                         AR_DATE_DUMMY, TRUNC(trx.exchange_date),
3648                                        TRUNC(p_trx_rec.exchange_date)),
3649                  AR_DATE_DUMMY
3650               )
3651          AND
3652            NVL(trx.exchange_rate, AR_NUMBER_DUMMY) =
3653            NVL(
3654                  DECODE(p_trx_rec.exchange_rate,
3655                         AR_NUMBER_DUMMY, trx.exchange_rate,
3656                                        p_trx_rec.exchange_rate),
3657                  AR_NUMBER_DUMMY
3658               )
3659          AND
3660            NVL(trx.exchange_rate_type, AR_TEXT_DUMMY) =
3661            NVL(
3662                  DECODE(p_trx_rec.exchange_rate_type,
3663                         AR_TEXT_DUMMY, trx.exchange_rate_type,
3664                                        p_trx_rec.exchange_rate_type),
3665                  AR_TEXT_DUMMY
3666               )
3667          AND
3668            NVL(trx.customer_bank_account_id, AR_NUMBER_DUMMY) =
3669            NVL(
3670                  DECODE(p_trx_rec.customer_bank_account_id,
3671                         AR_NUMBER_DUMMY, trx.customer_bank_account_id,
3672                                        p_trx_rec.customer_bank_account_id),
3673                  AR_NUMBER_DUMMY
3674               )
3675          AND
3676            NVL(trx.finance_charges, AR_FLAG_DUMMY) =
3677            NVL(
3678                  DECODE(p_trx_rec.finance_charges,
3679                         AR_FLAG_DUMMY, trx.finance_charges,
3680                                        p_trx_rec.finance_charges),
3681                  AR_FLAG_DUMMY
3682               )
3683          AND
3684            NVL(trx.fob_point, AR_TEXT_DUMMY) =
3685            NVL(
3686                  DECODE(p_trx_rec.fob_point,
3687                         AR_TEXT_DUMMY, trx.fob_point,
3688                                        p_trx_rec.fob_point),
3689                  AR_TEXT_DUMMY
3690               )
3691          AND
3692            NVL(trx.comments, AR_TEXT_DUMMY) =
3693            NVL(
3694                  DECODE(p_trx_rec.comments,
3695                         AR_TEXT_DUMMY, trx.comments,
3696                                        p_trx_rec.comments),
3697                  AR_TEXT_DUMMY
3698               )
3699          AND
3700            NVL(trx.internal_notes, AR_TEXT_DUMMY) =
3701            NVL(
3702                  DECODE(p_trx_rec.internal_notes,
3703                         AR_TEXT_DUMMY, trx.internal_notes,
3704                                        p_trx_rec.internal_notes),
3705                  AR_TEXT_DUMMY
3706               )
3707          AND
3708            NVL(trx.invoice_currency_code, AR_TEXT_DUMMY) =
3709            NVL(
3710                  DECODE(p_trx_rec.invoice_currency_code,
3711                         AR_TEXT_DUMMY, trx.invoice_currency_code,
3712                                        p_trx_rec.invoice_currency_code),
3713                  AR_TEXT_DUMMY
3714               )
3715          AND
3716            NVL(trx.invoicing_rule_id, AR_NUMBER_DUMMY) =
3717            NVL(
3718                  DECODE(p_trx_rec.invoicing_rule_id,
3719                         AR_NUMBER_DUMMY, trx.invoicing_rule_id,
3720                                        p_trx_rec.invoicing_rule_id),
3721                  AR_NUMBER_DUMMY
3722               )
3723          AND
3724            NVL(trx.last_printed_sequence_num, AR_NUMBER_DUMMY) =
3725            NVL(
3726                  DECODE(p_trx_rec.last_printed_sequence_num,
3727                         AR_NUMBER_DUMMY, trx.last_printed_sequence_num,
3728                                        p_trx_rec.last_printed_sequence_num),
3729                  AR_NUMBER_DUMMY
3730               )
3731          AND
3732            NVL(trx.orig_system_batch_name, AR_TEXT_DUMMY) =
3733            NVL(
3734                  DECODE(p_trx_rec.orig_system_batch_name,
3735                         AR_TEXT_DUMMY, trx.orig_system_batch_name,
3736                                        p_trx_rec.orig_system_batch_name),
3737                  AR_TEXT_DUMMY
3738               )
3739          AND
3740            NVL(trx.primary_salesrep_id, AR_NUMBER_DUMMY) =
3741            NVL(
3742                  DECODE(p_trx_rec.primary_salesrep_id,
3743                         AR_NUMBER_DUMMY, trx.primary_salesrep_id,
3744                                        p_trx_rec.primary_salesrep_id),
3745                  AR_NUMBER_DUMMY
3746               )
3747          AND
3748            NVL(trx.printing_count, AR_NUMBER_DUMMY) =
3749            NVL(
3750                  DECODE(p_trx_rec.printing_count,
3751                         AR_NUMBER_DUMMY, trx.printing_count,
3752                                        p_trx_rec.printing_count),
3753                  AR_NUMBER_DUMMY
3754               )
3755          AND
3756            NVL(TRUNC(trx.printing_last_printed), AR_DATE_DUMMY) =
3757            NVL(
3758                  DECODE(TRUNC(p_trx_rec.printing_last_printed),
3759                         AR_DATE_DUMMY, TRUNC(trx.printing_last_printed),
3760                                        TRUNC(p_trx_rec.printing_last_printed)),
3761                  AR_DATE_DUMMY
3762               )
3763          AND
3764            NVL(trx.printing_option, AR_TEXT_DUMMY) =
3765            NVL(
3766                  DECODE(p_trx_rec.printing_option,
3767                         AR_TEXT_DUMMY, trx.printing_option,
3768                                        p_trx_rec.printing_option),
3769                  AR_TEXT_DUMMY
3770               )
3771        )
3772      AND
3773        (
3774            NVL(TRUNC(trx.printing_original_date), AR_DATE_DUMMY) =
3775            NVL(
3776                  DECODE(TRUNC(p_trx_rec.printing_original_date),
3777                         AR_DATE_DUMMY, TRUNC(trx.printing_original_date),
3778                                        TRUNC(p_trx_rec.printing_original_date)),
3779                  AR_DATE_DUMMY
3780               )
3781          AND
3782            NVL(trx.printing_pending, AR_FLAG_DUMMY) =
3783            NVL(
3784                  DECODE(p_trx_rec.printing_pending,
3785                         AR_FLAG_DUMMY, trx.printing_pending,
3786                                        p_trx_rec.printing_pending),
3787                  AR_FLAG_DUMMY
3788               )
3789          AND
3790            NVL(trx.purchase_order, AR_TEXT_DUMMY) =
3791            NVL(
3792                  DECODE(p_trx_rec.purchase_order,
3793                         AR_TEXT_DUMMY, trx.purchase_order,
3794                                        p_trx_rec.purchase_order),
3795                  AR_TEXT_DUMMY
3796               )
3797          AND
3798            NVL(TRUNC(trx.purchase_order_date), AR_DATE_DUMMY) =
3799            NVL(
3800                  DECODE(TRUNC(p_trx_rec.purchase_order_date),
3801                         AR_DATE_DUMMY, TRUNC(trx.purchase_order_date),
3802                                        TRUNC(p_trx_rec.purchase_order_date)),
3803                  AR_DATE_DUMMY
3804               )
3805          AND
3806            NVL(trx.purchase_order_revision, AR_TEXT_DUMMY) =
3807            NVL(
3808                  DECODE(p_trx_rec.purchase_order_revision,
3809                         AR_TEXT_DUMMY, trx.purchase_order_revision,
3810                                        p_trx_rec.purchase_order_revision),
3811                  AR_TEXT_DUMMY
3812               )
3813          AND
3814            NVL(trx.receipt_method_id, AR_NUMBER_DUMMY) =
3815            NVL(
3816                  DECODE(p_trx_rec.receipt_method_id,
3817                         AR_NUMBER_DUMMY, trx.receipt_method_id,
3818                                        p_trx_rec.receipt_method_id),
3819                  AR_NUMBER_DUMMY
3820               )
3821          AND
3822            NVL(trx.remit_to_address_id, AR_NUMBER_DUMMY) =
3823            NVL(
3824                  DECODE(p_trx_rec.remit_to_address_id,
3825                         AR_NUMBER_DUMMY, trx.remit_to_address_id,
3826                                        p_trx_rec.remit_to_address_id),
3827                  AR_NUMBER_DUMMY
3828               )
3829          AND
3830            NVL(trx.shipment_id, AR_NUMBER_DUMMY) =
3831            NVL(
3832                  DECODE(p_trx_rec.shipment_id,
3833                         AR_NUMBER_DUMMY, trx.shipment_id,
3834                                        p_trx_rec.shipment_id),
3835                  AR_NUMBER_DUMMY
3836               )
3837          AND
3838            NVL(TRUNC(trx.ship_date_actual), AR_DATE_DUMMY) =
3839            NVL(
3840                  DECODE(TRUNC(p_trx_rec.ship_date_actual),
3841                         AR_DATE_DUMMY, TRUNC(trx.ship_date_actual),
3842                                        TRUNC(p_trx_rec.ship_date_actual)),
3843                  AR_DATE_DUMMY
3844               )
3845          AND
3846            NVL(trx.ship_via, AR_TEXT_DUMMY) =
3847            NVL(
3848                  DECODE(p_trx_rec.ship_via,
3849                         AR_TEXT_DUMMY, trx.ship_via,
3850                                        p_trx_rec.ship_via),
3851                  AR_TEXT_DUMMY
3852               )
3853          AND
3854            NVL(TRUNC(trx.term_due_date), AR_DATE_DUMMY) =
3855            NVL(
3856                  DECODE(TRUNC(p_trx_rec.term_due_date),
3857                         AR_DATE_DUMMY, TRUNC(trx.term_due_date),
3858                                        TRUNC(p_trx_rec.term_due_date)),
3859                  AR_DATE_DUMMY
3860               )
3861          AND
3862            NVL(trx.term_id, AR_NUMBER_DUMMY) =
3863            NVL(
3864                  DECODE(p_trx_rec.term_id,
3865                         AR_NUMBER_DUMMY, trx.term_id,
3866                                        p_trx_rec.term_id),
3867                  AR_NUMBER_DUMMY
3868               )
3869          AND
3870            NVL(trx.territory_id, AR_NUMBER_DUMMY) =
3871            NVL(
3872                  DECODE(p_trx_rec.territory_id,
3873                         AR_NUMBER_DUMMY, trx.territory_id,
3874                                        p_trx_rec.territory_id),
3875                  AR_NUMBER_DUMMY
3876               )
3877          AND
3878            NVL(trx.waybill_number, AR_TEXT_DUMMY) =
3879            NVL(
3880                  DECODE(p_trx_rec.waybill_number,
3881                         AR_TEXT_DUMMY, trx.waybill_number,
3882                                        p_trx_rec.waybill_number),
3883                  AR_TEXT_DUMMY
3884               )
3885          AND
3886            NVL(trx.status_trx, AR_TEXT_DUMMY) =
3887            NVL(
3888                  DECODE(p_trx_rec.status_trx,
3889                         AR_TEXT_DUMMY, trx.status_trx,
3890                                        p_trx_rec.status_trx),
3891                  AR_TEXT_DUMMY
3892               )
3893          AND
3894            NVL(trx.reason_code, AR_TEXT_DUMMY) =
3895            NVL(
3896                  DECODE(p_trx_rec.reason_code,
3897                         AR_TEXT_DUMMY, trx.reason_code,
3898                                        p_trx_rec.reason_code),
3899                  AR_TEXT_DUMMY
3900               )
3901          AND
3902            NVL(trx.doc_sequence_id, AR_NUMBER_DUMMY) =
3903            NVL(
3904                  DECODE(p_trx_rec.doc_sequence_id,
3905                         AR_NUMBER_DUMMY, trx.doc_sequence_id,
3906                                        p_trx_rec.doc_sequence_id),
3907                  AR_NUMBER_DUMMY
3908               )
3909          AND
3910            NVL(trx.doc_sequence_value, AR_NUMBER_DUMMY) =
3911            NVL(
3912                  DECODE(p_trx_rec.doc_sequence_value,
3913                         AR_NUMBER_DUMMY, trx.doc_sequence_value,
3914                                        p_trx_rec.doc_sequence_value),
3915                  AR_NUMBER_DUMMY
3916               )
3917          AND
3918            NVL(trx.paying_customer_id, AR_NUMBER_DUMMY) =
3919            NVL(
3920                  DECODE(p_trx_rec.paying_customer_id,
3921                         AR_NUMBER_DUMMY, trx.paying_customer_id,
3922                                        p_trx_rec.paying_customer_id),
3923                  AR_NUMBER_DUMMY
3924               )
3925          AND
3926            NVL(trx.paying_site_use_id, AR_NUMBER_DUMMY) =
3927            NVL(
3928                  DECODE(p_trx_rec.paying_site_use_id,
3929                         AR_NUMBER_DUMMY, trx.paying_site_use_id,
3930                                        p_trx_rec.paying_site_use_id),
3931                  AR_NUMBER_DUMMY
3932               )
3933          AND
3934            NVL(trx.related_batch_source_id, AR_NUMBER_DUMMY) =
3935            NVL(
3936                  DECODE(p_trx_rec.related_batch_source_id,
3937                         AR_NUMBER_DUMMY, trx.related_batch_source_id,
3938                                        p_trx_rec.related_batch_source_id),
3939                  AR_NUMBER_DUMMY
3940               )
3941          AND
3942            NVL(trx.default_tax_exempt_flag, AR_FLAG_DUMMY) =
3943            NVL(
3944                  DECODE(p_trx_rec.default_tax_exempt_flag,
3945                         AR_FLAG_DUMMY, trx.default_tax_exempt_flag,
3946                                        p_trx_rec.default_tax_exempt_flag),
3947                  AR_FLAG_DUMMY
3948               )
3949          AND
3950            NVL(trx.created_from, AR_TEXT_DUMMY) =
3951            NVL(
3952                  DECODE(p_trx_rec.created_from,
3953                         AR_TEXT_DUMMY, trx.created_from,
3954                                        p_trx_rec.created_from),
3955                  AR_TEXT_DUMMY
3956               )
3957          AND
3958            NVL(trx.default_ussgl_trx_code_context, AR_TEXT_DUMMY) =
3959            NVL(
3960                  DECODE(p_trx_rec.default_ussgl_trx_code_context,
3961                         AR_TEXT_DUMMY, trx.default_ussgl_trx_code_context,
3962                                      p_trx_rec.default_ussgl_trx_code_context),
3963                  AR_TEXT_DUMMY
3964               )
3965          AND
3966            NVL(trx.default_ussgl_transaction_code, AR_TEXT_DUMMY) =
3967            NVL(
3968                  DECODE(p_trx_rec.default_ussgl_transaction_code,
3969                         AR_TEXT_DUMMY, trx.default_ussgl_transaction_code,
3970                                      p_trx_rec.default_ussgl_transaction_code),
3971                  AR_TEXT_DUMMY
3972               )
3973 	AND
3974            NVL(trx.old_trx_number, AR_TEXT_DUMMY) =
3975            NVL(
3976                  DECODE(p_trx_rec.old_trx_number,
3977                         AR_TEXT_DUMMY, trx.old_trx_number,
3978                                        p_trx_rec.old_trx_number),
3979                  AR_TEXT_DUMMY
3980               )
3981          AND
3982            NVL(trx.interface_header_context, AR_TEXT_DUMMY) =
3983            NVL(
3984                  DECODE(p_trx_rec.interface_header_context,
3985                         AR_TEXT_DUMMY, trx.interface_header_context,
3986                                        p_trx_rec.interface_header_context),
3987                  AR_TEXT_DUMMY
3988               )
3989          AND
3990            NVL(trx.interface_header_attribute1, AR_TEXT_DUMMY) =
3991            NVL(
3992                  DECODE(p_trx_rec.interface_header_attribute1,
3993                         AR_TEXT_DUMMY, trx.interface_header_attribute1,
3994                                        p_trx_rec.interface_header_attribute1),
3995                  AR_TEXT_DUMMY
3996               )
3997          AND
3998            NVL(trx.interface_header_attribute2, AR_TEXT_DUMMY) =
3999            NVL(
4000                  DECODE(p_trx_rec.interface_header_attribute2,
4001                         AR_TEXT_DUMMY, trx.interface_header_attribute2,
4002                                        p_trx_rec.interface_header_attribute2),
4003                  AR_TEXT_DUMMY
4004               )
4005          AND
4006            NVL(trx.interface_header_attribute3, AR_TEXT_DUMMY) =
4007            NVL(
4008                  DECODE(p_trx_rec.interface_header_attribute3,
4009                         AR_TEXT_DUMMY, trx.interface_header_attribute3,
4010                                        p_trx_rec.interface_header_attribute3),
4011                  AR_TEXT_DUMMY
4012               )
4013          AND
4014            NVL(trx.interface_header_attribute4, AR_TEXT_DUMMY) =
4015            NVL(
4016                  DECODE(p_trx_rec.interface_header_attribute4,
4017                         AR_TEXT_DUMMY, trx.interface_header_attribute4,
4018                                        p_trx_rec.interface_header_attribute4),
4019                  AR_TEXT_DUMMY
4020               )
4021          AND
4022            NVL(trx.interface_header_attribute5, AR_TEXT_DUMMY) =
4023            NVL(
4024                  DECODE(p_trx_rec.interface_header_attribute5,
4025                         AR_TEXT_DUMMY, trx.interface_header_attribute5,
4026                                        p_trx_rec.interface_header_attribute5),
4027                  AR_TEXT_DUMMY
4028               )
4029          AND
4030            NVL(trx.interface_header_attribute6, AR_TEXT_DUMMY) =
4031            NVL(
4032                  DECODE(p_trx_rec.interface_header_attribute6,
4033                         AR_TEXT_DUMMY, trx.interface_header_attribute6,
4034                                        p_trx_rec.interface_header_attribute6),
4035                  AR_TEXT_DUMMY
4036               )
4037          AND
4038            NVL(trx.interface_header_attribute7, AR_TEXT_DUMMY) =
4039            NVL(
4040                  DECODE(p_trx_rec.interface_header_attribute7,
4041                         AR_TEXT_DUMMY, trx.interface_header_attribute7,
4042                                        p_trx_rec.interface_header_attribute7),
4043                  AR_TEXT_DUMMY
4044               )
4045          AND
4046            NVL(trx.interface_header_attribute8, AR_TEXT_DUMMY) =
4047            NVL(
4048                  DECODE(p_trx_rec.interface_header_attribute8,
4049                         AR_TEXT_DUMMY, trx.interface_header_attribute8,
4050                                        p_trx_rec.interface_header_attribute8),
4051                  AR_TEXT_DUMMY
4052               )
4053          AND
4054            NVL(trx.interface_header_attribute9, AR_TEXT_DUMMY) =
4055            NVL(
4056                  DECODE(p_trx_rec.interface_header_attribute9,
4057                         AR_TEXT_DUMMY, trx.interface_header_attribute9,
4058                                        p_trx_rec.interface_header_attribute9),
4059                  AR_TEXT_DUMMY
4060               )
4061          AND
4062            NVL(trx.interface_header_attribute10, AR_TEXT_DUMMY) =
4063            NVL(
4064                  DECODE(p_trx_rec.interface_header_attribute10,
4065                         AR_TEXT_DUMMY, trx.interface_header_attribute10,
4066                                        p_trx_rec.interface_header_attribute10),
4067                  AR_TEXT_DUMMY
4068               )
4069          AND
4070            NVL(trx.interface_header_attribute11, AR_TEXT_DUMMY) =
4071            NVL(
4072                  DECODE(p_trx_rec.interface_header_attribute11,
4073                         AR_TEXT_DUMMY, trx.interface_header_attribute11,
4074                                        p_trx_rec.interface_header_attribute11),
4075                  AR_TEXT_DUMMY
4076               )
4077          AND
4078            NVL(trx.interface_header_attribute12, AR_TEXT_DUMMY) =
4079            NVL(
4080                  DECODE(p_trx_rec.interface_header_attribute12,
4081                         AR_TEXT_DUMMY, trx.interface_header_attribute12,
4082                                        p_trx_rec.interface_header_attribute12),
4083                  AR_TEXT_DUMMY
4084               )
4085          AND
4086            NVL(trx.interface_header_attribute13, AR_TEXT_DUMMY) =
4087            NVL(
4088                  DECODE(p_trx_rec.interface_header_attribute13,
4089                         AR_TEXT_DUMMY, trx.interface_header_attribute13,
4090                                        p_trx_rec.interface_header_attribute13),
4091                  AR_TEXT_DUMMY
4092               )
4093          AND
4094            NVL(trx.interface_header_attribute14, AR_TEXT_DUMMY) =
4095            NVL(
4096                  DECODE(p_trx_rec.interface_header_attribute14,
4097                         AR_TEXT_DUMMY, trx.interface_header_attribute14,
4098                                        p_trx_rec.interface_header_attribute14),
4099                  AR_TEXT_DUMMY
4100               )
4101          AND
4102            NVL(trx.interface_header_attribute15, AR_TEXT_DUMMY) =
4103            NVL(
4104                  DECODE(p_trx_rec.interface_header_attribute15,
4105                         AR_TEXT_DUMMY, trx.interface_header_attribute15,
4106                                        p_trx_rec.interface_header_attribute15),
4107                  AR_TEXT_DUMMY
4108               )
4109          AND
4110            NVL(trx.attribute_category, AR_TEXT_DUMMY) =
4111            NVL(
4112                  DECODE(p_trx_rec.attribute_category,
4113                         AR_TEXT_DUMMY, trx.attribute_category,
4114                                        p_trx_rec.attribute_category),
4115                  AR_TEXT_DUMMY
4116               )
4117          AND
4118            NVL(trx.attribute1, AR_TEXT_DUMMY) =
4119            NVL(
4120                  DECODE(p_trx_rec.attribute1,
4121                         AR_TEXT_DUMMY, trx.attribute1,
4122                                        p_trx_rec.attribute1),
4123                  AR_TEXT_DUMMY
4124               )
4125          AND
4126            NVL(trx.attribute2, AR_TEXT_DUMMY) =
4127            NVL(
4128                  DECODE(p_trx_rec.attribute2,
4129                         AR_TEXT_DUMMY, trx.attribute2,
4130                                        p_trx_rec.attribute2),
4131                  AR_TEXT_DUMMY
4132               )
4133          AND
4134            NVL(trx.attribute3, AR_TEXT_DUMMY) =
4135            NVL(
4136                  DECODE(p_trx_rec.attribute3,
4137                         AR_TEXT_DUMMY, trx.attribute3,
4138                                        p_trx_rec.attribute3),
4139                  AR_TEXT_DUMMY
4140               )
4141          AND
4142            NVL(trx.attribute4, AR_TEXT_DUMMY) =
4143            NVL(
4144                  DECODE(p_trx_rec.attribute4,
4145                         AR_TEXT_DUMMY, trx.attribute4,
4146                                        p_trx_rec.attribute4),
4147                  AR_TEXT_DUMMY
4148               )
4149        )
4150      AND
4151        (
4152            NVL(trx.attribute5, AR_TEXT_DUMMY) =
4153            NVL(
4154                  DECODE(p_trx_rec.attribute5,
4155                         AR_TEXT_DUMMY, trx.attribute5,
4156                                        p_trx_rec.attribute5),
4157                  AR_TEXT_DUMMY
4158               )
4159          AND
4160            NVL(trx.attribute6, AR_TEXT_DUMMY) =
4161            NVL(
4162                  DECODE(p_trx_rec.attribute6,
4163                         AR_TEXT_DUMMY, trx.attribute6,
4164                                        p_trx_rec.attribute6),
4165                  AR_TEXT_DUMMY
4166               )
4167          AND
4168            NVL(trx.attribute7, AR_TEXT_DUMMY) =
4169            NVL(
4170                  DECODE(p_trx_rec.attribute7,
4171                         AR_TEXT_DUMMY, trx.attribute7,
4172                                        p_trx_rec.attribute7),
4173                  AR_TEXT_DUMMY
4174               )
4175          AND
4176            NVL(trx.attribute8, AR_TEXT_DUMMY) =
4177            NVL(
4178                  DECODE(p_trx_rec.attribute8,
4179                         AR_TEXT_DUMMY, trx.attribute8,
4180                                        p_trx_rec.attribute8),
4181                  AR_TEXT_DUMMY
4182               )
4183          AND
4184            NVL(trx.attribute9, AR_TEXT_DUMMY) =
4185            NVL(
4186                  DECODE(p_trx_rec.attribute9,
4187                         AR_TEXT_DUMMY, trx.attribute9,
4188                                        p_trx_rec.attribute9),
4189                  AR_TEXT_DUMMY
4190               )
4191          AND
4192            NVL(trx.attribute10, AR_TEXT_DUMMY) =
4193            NVL(
4194                  DECODE(p_trx_rec.attribute10,
4195                         AR_TEXT_DUMMY, trx.attribute10,
4196                                        p_trx_rec.attribute10),
4197                  AR_TEXT_DUMMY
4198               )
4199          AND
4200            NVL(trx.attribute11, AR_TEXT_DUMMY) =
4201            NVL(
4202                  DECODE(p_trx_rec.attribute11,
4203                         AR_TEXT_DUMMY, trx.attribute11,
4204                                        p_trx_rec.attribute11),
4205                  AR_TEXT_DUMMY
4206               )
4207          AND
4208            NVL(trx.attribute12, AR_TEXT_DUMMY) =
4209            NVL(
4210                  DECODE(p_trx_rec.attribute12,
4211                         AR_TEXT_DUMMY, trx.attribute12,
4212                                        p_trx_rec.attribute12),
4213                  AR_TEXT_DUMMY
4214               )
4215          AND
4216            NVL(trx.attribute13, AR_TEXT_DUMMY) =
4217            NVL(
4218                  DECODE(p_trx_rec.attribute13,
4219                         AR_TEXT_DUMMY, trx.attribute13,
4220                                        p_trx_rec.attribute13),
4221                  AR_TEXT_DUMMY
4222               )
4223          AND
4224            NVL(trx.attribute14, AR_TEXT_DUMMY) =
4225            NVL(
4226                  DECODE(p_trx_rec.attribute14,
4227                         AR_TEXT_DUMMY, trx.attribute14,
4228                                        p_trx_rec.attribute14),
4229                  AR_TEXT_DUMMY
4230               )
4231          AND
4232            NVL(trx.attribute15, AR_TEXT_DUMMY) =
4233            NVL(
4234                  DECODE(p_trx_rec.attribute15,
4235                         AR_TEXT_DUMMY, trx.attribute15,
4236                                        p_trx_rec.attribute15),
4237                  AR_TEXT_DUMMY
4238               )
4239 
4240          AND
4241            NVL(trx.br_amount, AR_NUMBER_DUMMY) =
4242            NVL(
4243                  DECODE(p_trx_rec.br_amount,
4244                         AR_NUMBER_DUMMY, trx.br_amount,
4245                                          p_trx_rec.br_amount),
4246                  AR_NUMBER_DUMMY
4247               )
4248          AND
4249            NVL(trx.br_unpaid_flag, AR_FLAG_DUMMY) =
4250            NVL(
4251                  DECODE(p_trx_rec.br_unpaid_flag,
4252                         AR_FLAG_DUMMY, trx.br_unpaid_flag,
4253                                          p_trx_rec.br_unpaid_flag),
4254                  AR_FLAG_DUMMY
4255               )
4256          AND
4257            NVL(trx.br_on_hold_flag, AR_FLAG_DUMMY) =
4258            NVL(
4259                  DECODE(p_trx_rec.br_on_hold_flag,
4260                         AR_FLAG_DUMMY, trx.br_on_hold_flag,
4261                                          p_trx_rec.br_on_hold_flag),
4262                  AR_FLAG_DUMMY
4263               )
4264          AND
4265            NVL(trx.drawee_id, AR_NUMBER_DUMMY) =
4266            NVL(
4267                  DECODE(p_trx_rec.drawee_id,
4268                         AR_NUMBER_DUMMY, trx.drawee_id,
4269                                          p_trx_rec.drawee_id),
4270                  AR_NUMBER_DUMMY
4271               )
4272          AND
4273            NVL(trx.drawee_contact_id, AR_NUMBER_DUMMY) =
4274            NVL(
4275                  DECODE(p_trx_rec.drawee_contact_id,
4276                         AR_NUMBER_DUMMY, trx.drawee_contact_id,
4277                                          p_trx_rec.drawee_contact_id),
4278                  AR_NUMBER_DUMMY
4279               )
4280          AND
4281            NVL(trx.drawee_site_use_id, AR_NUMBER_DUMMY) =
4282            NVL(
4283                  DECODE(p_trx_rec.drawee_site_use_id,
4284                         AR_NUMBER_DUMMY, trx.drawee_site_use_id,
4285                                          p_trx_rec.drawee_site_use_id),
4286                  AR_NUMBER_DUMMY
4287               )
4288 /*Bug7313869, Removed the check for drawee_bank_account_id*/
4289          AND
4290            NVL(trx.remit_bank_acct_use_id, AR_NUMBER_DUMMY) =
4291            NVL(
4292                  DECODE(p_trx_rec.remit_bank_acct_use_id,
4293                         AR_NUMBER_DUMMY, trx.remit_bank_acct_use_id,
4294                                          p_trx_rec.remit_bank_acct_use_id),
4295                  AR_NUMBER_DUMMY
4296               )
4297          AND
4298            NVL(trx.override_remit_account_flag, AR_FLAG_DUMMY) =
4299            NVL(
4300                  DECODE(p_trx_rec.override_remit_account_flag,
4301                         AR_FLAG_DUMMY, trx.override_remit_account_flag,
4302                                          p_trx_rec.override_remit_account_flag),
4303                  AR_FLAG_DUMMY
4304               )
4305          AND
4306            NVL(trx.special_instructions, AR_TEXT_DUMMY) =
4307            NVL(
4308                  DECODE(p_trx_rec.special_instructions,
4309                         AR_TEXT_DUMMY, trx.special_instructions,
4310                                          p_trx_rec.special_instructions),
4311                  AR_TEXT_DUMMY
4312               )
4313          AND
4314            NVL(trx.remittance_batch_id, AR_NUMBER_DUMMY) =
4315            NVL(
4316                  DECODE(p_trx_rec.remittance_batch_id,
4317                         AR_NUMBER_DUMMY, trx.remittance_batch_id,
4318                                          p_trx_rec.remittance_batch_id),
4319                  AR_NUMBER_DUMMY
4320               )
4321          AND
4322            NVL(trx.address_verification_code, AR_TEXT_DUMMY) =
4323            NVL(
4324                  DECODE(p_trx_rec.address_verification_code,
4325                         AR_TEXT_DUMMY, trx.address_verification_code,
4326                                          p_trx_rec.address_verification_code),
4327                  AR_TEXT_DUMMY
4328               )
4329          AND
4330            NVL(trx.approval_code, AR_TEXT_DUMMY) =
4331            NVL(
4332                  DECODE(p_trx_rec.approval_code,
4333                         AR_TEXT_DUMMY, trx.approval_code,
4334                                          p_trx_rec.approval_code),
4335                  AR_TEXT_DUMMY
4336               )
4337          AND
4338            NVL(trx.bill_to_address_id, AR_NUMBER_DUMMY) =
4339            NVL(
4340                  DECODE(p_trx_rec.bill_to_address_id,
4341                         AR_NUMBER_DUMMY, trx.bill_to_address_id,
4342                                          p_trx_rec.bill_to_address_id),
4343                  AR_NUMBER_DUMMY
4344               )
4345           AND
4346            NVL(trx.edi_processed_flag, AR_FLAG_DUMMY) =
4347            NVL(
4348                  DECODE(p_trx_rec.edi_processed_flag,
4349                         AR_FLAG_DUMMY, trx.edi_processed_flag,
4350                                          p_trx_rec.edi_processed_flag),
4351                  AR_FLAG_DUMMY
4352               )
4353          AND
4354            NVL(trx.edi_processed_status, AR_TEXT_DUMMY) =
4355            NVL(
4356                  DECODE(p_trx_rec.edi_processed_status,
4357                         AR_TEXT_DUMMY, trx.edi_processed_status,
4358                                          p_trx_rec.edi_processed_status),
4359                  AR_TEXT_DUMMY
4360               )
4361          AND
4362            NVL(trx.payment_server_order_num, AR_TEXT_DUMMY) =
4363            NVL(
4364                  DECODE(p_trx_rec.payment_server_order_num,
4365                         AR_TEXT_DUMMY, trx.payment_server_order_num,
4366                                          p_trx_rec.payment_server_order_num),
4367                  AR_TEXT_DUMMY
4368               )
4369           AND
4370            NVL(trx.post_request_id, AR_NUMBER_DUMMY) =
4371            NVL(
4372                  DECODE(p_trx_rec.post_request_id,
4373                         AR_NUMBER_DUMMY, trx.post_request_id,
4374                                          p_trx_rec.post_request_id),
4375                  AR_NUMBER_DUMMY
4376               )
4377          AND
4378            NVL(trx.request_id, AR_NUMBER_DUMMY) =
4379            NVL(
4380                  DECODE(p_trx_rec.request_id,
4381                         AR_NUMBER_DUMMY, trx.request_id,
4382                                          p_trx_rec.request_id),
4383                  AR_NUMBER_DUMMY
4384               )
4385          AND
4386            NVL(trx.ship_to_address_id, AR_NUMBER_DUMMY) =
4387            NVL(
4388                  DECODE(p_trx_rec.ship_to_address_id,
4389                         AR_NUMBER_DUMMY, trx.ship_to_address_id,
4390                                          p_trx_rec.ship_to_address_id),
4391                  AR_NUMBER_DUMMY
4392               )
4393          AND
4394            NVL(trx.wh_update_date, AR_DATE_DUMMY) =
4395            NVL(
4396                  DECODE(p_trx_rec.wh_update_date,
4397                         AR_DATE_DUMMY, trx.wh_update_date,
4398                                          p_trx_rec.wh_update_date),
4399                  AR_DATE_DUMMY
4400               )
4401          AND
4402            NVL(trx.global_attribute_category, AR_TEXT_DUMMY) =
4403            NVL(
4404                  DECODE(p_trx_rec.global_attribute_category,
4405                         AR_TEXT_DUMMY, trx.global_attribute_category,
4406                                        p_trx_rec.global_attribute_category),
4407                  AR_TEXT_DUMMY
4408               )
4409          AND
4410            NVL(trx.global_attribute1, AR_TEXT_DUMMY) =
4411            NVL(
4412                  DECODE(p_trx_rec.global_attribute1,
4413                         AR_TEXT_DUMMY, trx.global_attribute1,
4414                                        p_trx_rec.global_attribute1),
4415                  AR_TEXT_DUMMY
4416               )
4417          AND
4418            NVL(trx.global_attribute2, AR_TEXT_DUMMY) =
4419            NVL(
4420                  DECODE(p_trx_rec.global_attribute2,
4421                         AR_TEXT_DUMMY, trx.global_attribute2,
4422                                        p_trx_rec.global_attribute2),
4423                  AR_TEXT_DUMMY
4424               )
4425          AND
4426            NVL(trx.global_attribute3, AR_TEXT_DUMMY) =
4427            NVL(
4428                  DECODE(p_trx_rec.global_attribute3,
4429                         AR_TEXT_DUMMY, trx.global_attribute3,
4430                                        p_trx_rec.global_attribute3),
4431                  AR_TEXT_DUMMY
4432               )
4433          AND
4434            NVL(trx.global_attribute4, AR_TEXT_DUMMY) =
4435            NVL(
4436                  DECODE(p_trx_rec.global_attribute4,
4437                         AR_TEXT_DUMMY, trx.global_attribute4,
4438                                        p_trx_rec.global_attribute4),
4439                  AR_TEXT_DUMMY
4440               )
4441          AND
4442            NVL(trx.global_attribute5, AR_TEXT_DUMMY) =
4443            NVL(
4444                  DECODE(p_trx_rec.global_attribute5,
4445                         AR_TEXT_DUMMY, trx.global_attribute5,
4446                                        p_trx_rec.global_attribute5),
4447                  AR_TEXT_DUMMY
4448               )
4449          AND
4450            NVL(trx.global_attribute6, AR_TEXT_DUMMY) =
4451            NVL(
4452                  DECODE(p_trx_rec.global_attribute6,
4453                         AR_TEXT_DUMMY, trx.global_attribute6,
4454                                        p_trx_rec.global_attribute6),
4455                  AR_TEXT_DUMMY
4456               )
4457          AND
4458            NVL(trx.global_attribute7, AR_TEXT_DUMMY) =
4459            NVL(
4460                  DECODE(p_trx_rec.global_attribute7,
4461                         AR_TEXT_DUMMY, trx.global_attribute7,
4462                                        p_trx_rec.global_attribute7),
4463                  AR_TEXT_DUMMY
4464               )
4465          AND
4466            NVL(trx.global_attribute8, AR_TEXT_DUMMY) =
4467            NVL(
4468                  DECODE(p_trx_rec.global_attribute8,
4469                         AR_TEXT_DUMMY, trx.global_attribute8,
4470                                        p_trx_rec.global_attribute8),
4471                  AR_TEXT_DUMMY
4472               )
4473          AND
4474            NVL(trx.global_attribute9, AR_TEXT_DUMMY) =
4475            NVL(
4476                  DECODE(p_trx_rec.global_attribute9,
4477                         AR_TEXT_DUMMY, trx.global_attribute9,
4478                                        p_trx_rec.global_attribute9),
4479                  AR_TEXT_DUMMY
4480               )
4481          AND
4482            NVL(trx.global_attribute10, AR_TEXT_DUMMY) =
4483            NVL(
4484                  DECODE(p_trx_rec.global_attribute10,
4485                         AR_TEXT_DUMMY, trx.global_attribute10,
4486                                        p_trx_rec.global_attribute10),
4487                  AR_TEXT_DUMMY
4488               )
4489          AND
4490            NVL(trx.global_attribute11, AR_TEXT_DUMMY) =
4491            NVL(
4492                  DECODE(p_trx_rec.global_attribute11,
4493                         AR_TEXT_DUMMY, trx.global_attribute11,
4494                                        p_trx_rec.global_attribute11),
4495                  AR_TEXT_DUMMY
4496               )
4497          AND
4498            NVL(trx.global_attribute12, AR_TEXT_DUMMY) =
4499            NVL(
4500                  DECODE(p_trx_rec.global_attribute12,
4501                         AR_TEXT_DUMMY, trx.global_attribute12,
4502                                        p_trx_rec.global_attribute12),
4503                  AR_TEXT_DUMMY
4504               )
4505          AND
4506            NVL(trx.global_attribute13, AR_TEXT_DUMMY) =
4507            NVL(
4508                  DECODE(p_trx_rec.global_attribute13,
4509                         AR_TEXT_DUMMY, trx.global_attribute13,
4510                                        p_trx_rec.global_attribute13),
4511                  AR_TEXT_DUMMY
4512               )
4513          AND
4514            NVL(trx.global_attribute14, AR_TEXT_DUMMY) =
4515            NVL(
4516                  DECODE(p_trx_rec.global_attribute14,
4517                         AR_TEXT_DUMMY, trx.global_attribute14,
4518                                        p_trx_rec.global_attribute14),
4519                  AR_TEXT_DUMMY
4520               )
4521          AND
4522            NVL(trx.global_attribute15, AR_TEXT_DUMMY) =
4523            NVL(
4524                  DECODE(p_trx_rec.global_attribute15,
4525                         AR_TEXT_DUMMY, trx.global_attribute15,
4526                                        p_trx_rec.global_attribute15),
4527                  AR_TEXT_DUMMY
4528               )
4529          AND
4530            NVL(trx.global_attribute16, AR_TEXT_DUMMY) =
4531            NVL(
4532                  DECODE(p_trx_rec.global_attribute16,
4533                         AR_TEXT_DUMMY, trx.global_attribute16,
4534                                        p_trx_rec.global_attribute16),
4535                  AR_TEXT_DUMMY
4536               )
4537          AND
4538            NVL(trx.global_attribute17, AR_TEXT_DUMMY) =
4539            NVL(
4540                  DECODE(p_trx_rec.global_attribute17,
4541                         AR_TEXT_DUMMY, trx.global_attribute17,
4542                                        p_trx_rec.global_attribute17),
4543                  AR_TEXT_DUMMY
4544               )
4545          AND
4546            NVL(trx.global_attribute18, AR_TEXT_DUMMY) =
4547            NVL(
4548                  DECODE(p_trx_rec.global_attribute18,
4549                         AR_TEXT_DUMMY, trx.global_attribute18,
4550                                        p_trx_rec.global_attribute18),
4551                  AR_TEXT_DUMMY
4552               )
4553          AND
4554            NVL(trx.global_attribute19, AR_TEXT_DUMMY) =
4555            NVL(
4556                  DECODE(p_trx_rec.global_attribute19,
4557                         AR_TEXT_DUMMY, trx.global_attribute19,
4558                                        p_trx_rec.global_attribute19),
4559                  AR_TEXT_DUMMY
4560               )
4561          AND
4562            NVL(trx.global_attribute20, AR_TEXT_DUMMY) =
4563            NVL(
4564                  DECODE(p_trx_rec.global_attribute20,
4565                         AR_TEXT_DUMMY, trx.global_attribute20,
4566                                        p_trx_rec.global_attribute20),
4567                  AR_TEXT_DUMMY
4568               )
4569          AND
4570            NVL(trx.global_attribute21, AR_TEXT_DUMMY) =
4571            NVL(
4572                  DECODE(p_trx_rec.global_attribute21,
4573                         AR_TEXT_DUMMY, trx.global_attribute21,
4574                                        p_trx_rec.global_attribute21),
4575                  AR_TEXT_DUMMY
4576               )
4577          AND
4578            NVL(trx.global_attribute22, AR_TEXT_DUMMY) =
4579            NVL(
4580                  DECODE(p_trx_rec.global_attribute22,
4581                         AR_TEXT_DUMMY, trx.global_attribute22,
4582                                        p_trx_rec.global_attribute22),
4583                  AR_TEXT_DUMMY
4584               )
4585          AND
4586            NVL(trx.global_attribute23, AR_TEXT_DUMMY) =
4587            NVL(
4588                  DECODE(p_trx_rec.global_attribute23,
4589                         AR_TEXT_DUMMY, trx.global_attribute23,
4590                                        p_trx_rec.global_attribute23),
4591                  AR_TEXT_DUMMY
4592               )
4593          AND
4594            NVL(trx.global_attribute24, AR_TEXT_DUMMY) =
4595            NVL(
4596                  DECODE(p_trx_rec.global_attribute24,
4597                         AR_TEXT_DUMMY, trx.global_attribute24,
4598                                        p_trx_rec.global_attribute24),
4599                  AR_TEXT_DUMMY
4600               )
4601          AND
4602            NVL(trx.global_attribute25, AR_TEXT_DUMMY) =
4603            NVL(
4604                  DECODE(p_trx_rec.global_attribute25,
4605                         AR_TEXT_DUMMY, trx.global_attribute25,
4606                                        p_trx_rec.global_attribute25),
4607                  AR_TEXT_DUMMY
4608               )
4609          AND
4610            NVL(trx.global_attribute26, AR_TEXT_DUMMY) =
4611            NVL(
4612                  DECODE(p_trx_rec.global_attribute26,
4613                         AR_TEXT_DUMMY, trx.global_attribute26,
4614                                        p_trx_rec.global_attribute26),
4615                  AR_TEXT_DUMMY
4616               )
4617          AND
4618            NVL(trx.global_attribute27, AR_TEXT_DUMMY) =
4619            NVL(
4620                  DECODE(p_trx_rec.global_attribute27,
4621                         AR_TEXT_DUMMY, trx.global_attribute27,
4622                                        p_trx_rec.global_attribute27),
4623                  AR_TEXT_DUMMY
4624               )
4625          AND
4626            NVL(trx.global_attribute28, AR_TEXT_DUMMY) =
4627            NVL(
4628                  DECODE(p_trx_rec.global_attribute28,
4629                         AR_TEXT_DUMMY, trx.global_attribute28,
4630                                        p_trx_rec.global_attribute28),
4631                  AR_TEXT_DUMMY
4632               )
4633          AND
4634            NVL(trx.global_attribute29, AR_TEXT_DUMMY) =
4635            NVL(
4636                  DECODE(p_trx_rec.global_attribute29,
4637                         AR_TEXT_DUMMY, trx.global_attribute29,
4638                                        p_trx_rec.global_attribute29),
4639                  AR_TEXT_DUMMY
4640               )
4641          AND
4642            NVL(trx.global_attribute30, AR_TEXT_DUMMY) =
4643            NVL(
4644                  DECODE(p_trx_rec.global_attribute30,
4645                         AR_TEXT_DUMMY, trx.global_attribute30,
4646                                        p_trx_rec.global_attribute30),
4647                  AR_TEXT_DUMMY
4648               )
4649          AND
4650            NVL(trx.legal_entity_id, AR_NUMBER_DUMMY) =
4651            NVL(
4652                  DECODE(p_trx_rec.legal_entity_id,
4653                         AR_NUMBER_DUMMY, trx.legal_entity_id,
4654                                        p_trx_rec.legal_entity_id),
4655                  AR_NUMBER_DUMMY
4656               )
4657       )
4658         AND
4659            NVL(trx.payment_trxn_extension_id, AR_NUMBER_DUMMY) =
4660            NVL(
4661                  DECODE(p_trx_rec.payment_trxn_extension_id,
4662                         AR_NUMBER_DUMMY, trx.payment_trxn_extension_id,
4663                                        p_trx_rec.payment_trxn_extension_id),
4664                  AR_NUMBER_DUMMY
4665               )  /* PAYMENT_UPAKE */
4666         AND
4667            NVL(trx.billing_date, AR_DATE_DUMMY) =
4668            NVL(
4669                  DECODE(p_trx_rec.billing_date,
4670                         AR_DATE_DUMMY, trx.billing_date,
4671                                        p_trx_rec.billing_date),
4672                  AR_DATE_DUMMY
4673               );
4674     END IF;
4675     arp_util.debug('arp_ct_pkg.lock_compare_p()-');
4676 
4677     EXCEPTION
4678         WHEN  NO_DATA_FOUND THEN
4679                 arp_util.debug(
4680                        'EXCEPTION: arp_ct_pkg.lock_compare_p NO_DATA_FOUND' );
4681 
4682                 arp_util.debug('');
4683                 arp_util.debug('============= Old Record =============');
4684                 display_header_p(p_customer_trx_id);
4685                 arp_util.debug('');
4686                 arp_util.debug('============= New Record =============');
4687                 display_header_rec(p_trx_rec);
4688 
4689                 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
4690                 APP_EXCEPTION.Raise_Exception;
4691         WHEN  OTHERS THEN
4692                 arp_util.debug( 'EXCEPTION: arp_ct_pkg.lock_compare_p' );
4693             RAISE;
4694 END;
4695 
4696 
4697 /*===========================================================================+
4698  | PROCEDURE                                                                 |
4699  |    fetch_p								     |
4700  |                                                                           |
4701  | DESCRIPTION                                                               |
4702  |    This procedure fetches a single row from ra_customer_trx into a 	     |
4703  |    variable specified as a parameter based on the table's primary key,    |
4704  |    customer_trx_id. 							     |
4705  |                                                                           |
4706  | SCOPE - PUBLIC                                                            |
4707  |                                                                           |
4708  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
4709  |    arp_util.debug                                                         |
4710  |                                                                           |
4711  | ARGUMENTS  : IN:                                                          |
4712  |                    p_customer_trx_id	- identifies the record to fetch     |
4713  |              OUT:                                                         |
4714  |                    p_trx_rec	- contains the fetched record	     	     |
4715  |                                                                           |
4716  | RETURNS    : NONE                                                         |
4717  |                                                                           |
4718  | NOTES                                                                     |
4719  |                                                                           |
4720  | MODIFICATION HISTORY                                                      |
4721  |     07-JUN-95  Charlie Tomberg     Created                                |
4722  |                                                                           |
4723  +===========================================================================*/
4724 
4725 PROCEDURE fetch_p( p_trx_rec         OUT NOCOPY ra_customer_trx%rowtype,
4726                    p_customer_trx_id  IN ra_customer_trx.customer_trx_id%type )
4727           IS
4728 
4729 BEGIN
4730     arp_util.debug('arp_ct_pkg.fetch_p()+');
4731 
4732     SELECT *
4733     INTO   p_trx_rec
4734     FROM   ra_customer_trx
4735     WHERE  customer_trx_id = p_customer_trx_id;
4736 
4737     arp_util.debug('arp_ct_pkg.fetch_p()-');
4738 
4739     EXCEPTION
4740         WHEN  OTHERS THEN
4741             arp_util.debug( 'EXCEPTION: arp_ct_pkg.fetch_p' );
4742             RAISE;
4743 END;
4744 
4745 /*===========================================================================+
4746  | PROCEDURE                                                                 |
4747  |    delete_p								     |
4748  |                                                                           |
4749  | DESCRIPTION                                                               |
4750  |    This procedure deletes the ra_customeR_trx row identified by the 	     |
4751  |    p_customer_trx_id parameter.					     |
4752  |                                                                           |
4753  | SCOPE - PUBLIC                                                            |
4754  |                                                                           |
4755  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
4756  |    arp_util.debug                                                         |
4757  |                                                                           |
4758  | ARGUMENTS  : IN:                                                          |
4759  |                    p_customer_trx_id	- identifies the row to delete	     |
4760  |              OUT:                                                         |
4761  |                    None						     |
4762  |                                                                           |
4763  | RETURNS    : NONE                                                         |
4764  |                                                                           |
4765  | NOTES                                                                     |
4766  |                                                                           |
4767  | MODIFICATION HISTORY                                                      |
4768  |     07-JUN-95  Charlie Tomberg     Created                                |
4769  |     08-NOV-01  Debbie Jancis       Added calls to MRC engine for          |
4770  |                                    RA_CUSTOMER_TRX processing             |
4771  |                                                                           |
4772  +===========================================================================*/
4773 
4774 procedure delete_p( p_customer_trx_id  IN ra_customer_trx.customer_trx_id%type)
4775        IS
4776 
4777 
4778 BEGIN
4779 
4780 
4781    arp_util.debug('arp_ct_pkg.delete_p()+');
4782 
4783    DELETE FROM ra_customer_trx
4784    WHERE       customer_trx_id = p_customer_trx_id;
4785 
4786    /*---------------------------------+
4787     | Calling central MRC library     |
4788     | for MRC Integration             |
4789     +---------------------------------*/
4790 --{BUG4301323
4791 --    ar_mrc_engine.maintain_mrc_data(
4792 --                        p_event_mode => 'DELETE',
4793 --                        p_table_name => 'RA_CUSTOMER_TRX',
4794 --                        p_mode       => 'SINGLE',
4795 --                        p_key_value  => p_customer_trx_id);
4796 --}
4797     --
4798    arp_util.debug('arp_ct_pkg.delete_p()-');
4799 
4800 EXCEPTION
4801     WHEN OTHERS THEN
4802         arp_util.debug('EXCEPTION:  arp_ct_pkg.delete_p()');
4803 
4804 	RAISE;
4805 
4806 END;
4807 
4808 /*===========================================================================+
4809  | PROCEDURE                                                                 |
4810  |    update_p								     |
4811  |                                                                           |
4812  | DESCRIPTION                                                               |
4813  |    This procedure updates the ra_customer_trx row identified by the       |
4814  |    p_customer_trx_id parameter.					     |
4815  |                                                                           |
4816  | SCOPE - PUBLIC                                                            |
4817  |                                                                           |
4818  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
4819  |    arp_util.debug                                                         |
4820  |                                                                           |
4821  | ARGUMENTS  : IN:                                                          |
4822  |                    p_customer_trx_id	- identifies the row to update	     |
4823  |                    p_trx_rec       - contains the new column values       |
4824  |              OUT:                                                         |
4825  |                    None						     |
4826  |                                                                           |
4827  | RETURNS    : NONE                                                         |
4828  |                                                                           |
4829  | NOTES                                                                     |
4830  |     set_to_dummy must be called before the values in p_trx_rec are        |
4831  |     changed and this function is called.				     |
4832  |                                                                           |
4833  | MODIFICATION HISTORY                                                      |
4834  |     06-JUN-95  Charlie Tomberg     Created                                |
4835  |                                                                           |
4836  +===========================================================================*/
4837 
4838 PROCEDURE update_p( p_trx_rec IN ra_customer_trx%rowtype,
4839                     p_customer_trx_id  IN
4840                                 ra_customer_trx.customer_trx_id%type) IS
4841 
4842 --2528261 begin
4843 l_ct_reference   varchar2(150);
4844 --2528261 end
4845 BEGIN
4846 
4847    arp_util.debug('arp_ct_pkg.update_p()+  ' ||
4848                       to_char(sysdate, 'HH:MI:SS'));
4849 
4850    arp_ct_pkg.generic_update(  pg_cursor1,
4851 			       ' WHERE customer_trx_id = :where_1',
4852                                p_customer_trx_id,
4853                                p_trx_rec);
4854 
4855    arp_util.debug('arp_ct_pkg.update_p()-  ' ||
4856                       to_char(sysdate, 'HH:MI:SS'));
4857 --2528261 begin
4858      begin
4859         SELECT DECODE(DEFAULT_REFERENCE,
4860                       '1',  p_trx_rec.interface_header_attribute1,
4861                       '2',  p_trx_rec.interface_header_attribute2,
4862                       '3',  p_trx_rec.interface_header_attribute3,
4863                       '4',  p_trx_rec.interface_header_attribute4,
4864                       '5',  p_trx_rec.interface_header_attribute5,
4865                       '6',  p_trx_rec.interface_header_attribute6,
4866                       '7',  p_trx_rec.interface_header_attribute7,
4867                       '8',  p_trx_rec.interface_header_attribute8,
4868                       '9',  p_trx_rec.interface_header_attribute9,
4869                       '10', p_trx_rec.interface_header_attribute10,
4870                       '11', p_trx_rec.interface_header_attribute11,
4871                       '12', p_trx_rec.interface_header_attribute12,
4872                       '13', p_trx_rec.interface_header_attribute13,
4873                       '14', p_trx_rec.interface_header_attribute14,
4874                       '15', p_trx_rec.interface_header_attribute15,
4875                       NULL, p_trx_rec.ct_reference,
4876                       NULL ) /* Bug fix 5330712 */
4877         INTO   l_ct_reference
4878         FROM   ra_batch_sources
4879         WHERE batch_source_id = p_trx_rec.batch_source_id;
4880       exception
4881          when no_data_found then
4882               l_ct_reference:=null;
4883          when others then
4884               l_ct_reference:=null;
4885       end;
4886 --Bug 11066991
4887        update ra_customer_trx
4888         set ct_reference =l_ct_reference
4889        where customer_trx_id = p_trx_rec.customer_trx_id;
4890 
4891 
4892 --2528261 end
4893 
4894 
4895 
4896 EXCEPTION
4897     WHEN OTHERS THEN
4898         arp_util.debug('EXCEPTION:  arp_ct_pkg.update_p()');
4899         RAISE;
4900 END;
4901 
4902 /*===========================================================================+
4903  | PROCEDURE                                                                 |
4904  |    update_p_print					     |
4905  |                                                                           |
4906  | DESCRIPTION                                                               |
4907  |    This procedure updates the ra_customer_trx row identified by the       |
4908  |    p_customer_trx_id parameter.  It calls update_p, then
4909  |    arp_etax_util.global_document_update.				     |
4910  |                                                                           |
4911  | SCOPE - PUBLIC                                                            |
4912  |                                                                           |
4913  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
4914  |    arp_util.debug                                                         |
4915  |                                                                           |
4916  | ARGUMENTS  : IN:                                                          |
4917  |                    p_customer_trx_id	- identifies the row to update	     |
4918  |                    p_trx_rec       - contains the new column values       |
4919  |              OUT:                                                         |
4920  |                    None						     |
4921  |                                                                           |
4922  | RETURNS    : NONE                                                         |
4923  |                                                                           |
4924  | NOTES                                                                     |
4925  |     set_to_dummy must be called before the values in p_trx_rec are        |
4926  |     changed and this function is called.  This function is
4927  |     specifically intended for use by outside products that are
4928  |     updating the ra_customer_trx.print-related fields to
4929  |     indicate a 'print' event.
4930  |                                                                           |
4931  | MODIFICATION HISTORY                                                      |
4932  |     24-JAN-06  M Raymond           Created                                |
4933  |                                                                           |
4934  +===========================================================================*/
4935 
4936 PROCEDURE update_p_print( p_trx_rec IN ra_customer_trx%rowtype,
4937                           p_customer_trx_id  IN
4938                                    ra_customer_trx.customer_trx_id%type) IS
4939 BEGIN
4940    /* Call update_p to carry out the actual update */
4941    update_p(p_trx_rec, p_customer_trx_id);
4942 
4943    /* Call GDU to notify etax of the print event */
4944    arp_etax_util.global_document_update(p_customer_trx_id,
4945                                         null,
4946                                         'PRINT');
4947 EXCEPTION
4948     WHEN OTHERS THEN
4949         arp_util.debug('EXCEPTION:  arp_ct_pkg.update_p_print()');
4950         RAISE;
4951 END;
4952 
4953 
4954 
4955 /*===========================================================================+
4956  | PROCEDURE                                                                 |
4957  |    insert_p								     |
4958  |                                                                           |
4959  | DESCRIPTION                                                               |
4960  |    This procedure inserts a row into ra_customer_trx that contains the    |
4961  |    column values specified in the p_trx_rec parameter. 		     |
4962  |                                                                           |
4963  | SCOPE - PUBLIC                                                            |
4964  |                                                                           |
4965  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
4966  |    arp_util.debug                                                         |
4967  |    arp_global.set_of_books_id					     |
4968  |                                                                           |
4969  | ARGUMENTS  :  IN:                                                         |
4970  |                    p_trx_rec            - contains the new column values  |
4971  |              OUT:                                                         |
4972  |                    p_trx_number         - transaction number of new row   |
4973  |                    p_customer_trx_id    - unique ID of the new row        |
4974  |                                                                           |
4975  | RETURNS    : NONE                                                         |
4976  |                                                                           |
4977  | NOTES                                                                     |
4978  |                                                                           |
4979  | MODIFICATION HISTORY                                                      |
4980  | 06-JUN-95    Charlie Tomberg Created                                      |
4981  | 12-JUL-95    Martin Johnson  Added OUT NOCOPY parameter p_trx_number.            |
4982  | 20-MAR-2000  J Rautiainen    Added BR project related columns             |
4983  |                              BR_AMOUNT, BR_UNPAID_FLAG,BR_ON_HOLD_FLAG,   |
4984  |                              DRAWEE_ID, DRAWEE_CONTACT_ID,                |
4985  |                              DRAWEE_SITE_USE_ID   		             |
4986  |                              DRAWEE_BANK_ACCOUNT_ID,                      |
4987  |                              REMITTANCE_BANK_ACCOUNT_ID,		     |
4988  |                              OVERRIDE_REMIT_ACCOUNT_FLAG and              |
4989  |                              SPECIAL_INSTRUCTIONSinto table handlers      |
4990  | 24-JUL-2000  J Rautiainen    Added BR project related column              |
4991  |                              REMITTANCE_BATCH_ID		             |
4992  | 31-OCT-2000 Y Rakotonirainy	Bug 1243304 : Added columns                  |
4993  |                              address_verification_code and	             |
4994  |				approval_code	and			     |
4995  |				bill_to_address_id and			     |
4996  |				edi_processed_flag and			     |
4997  |				edi_processed_status and		     |
4998  |				payment_server_order_num and		     |
4999  |				post_request_id and			     |
5000  |				request_id and				     |
5001  |				ship_to_address_id			     |
5002  |				wh_update_date				     |
5003  | 				into the table handlers.  		     |
5004  | 6-Jul-2001 yreddy            Bug1738914 - Added 'Copy doc num to          |
5005  |                              Trx Number'                                  |
5006  |                              functionality for chargebacks.               |
5007  | 08-NOV-01  Debbie Jancis     Added calls to MRC engine for                |
5008  |                              RA_CUSTOMER_TRX processing                   |
5009  |                                                                           |
5010  | 20-Jun-02  Sahana            Bug2427456: Added global attribute columns   |
5011  | 18-May-05  Debbie Jancis     Added Legal Entity ID for LE project         |
5012  +===========================================================================*/
5013 
5014 PROCEDURE insert_p(
5015                     p_trx_rec          IN ra_customer_trx%rowtype,
5016                     p_trx_number      OUT NOCOPY ra_customer_trx.trx_number%type,
5017                     p_customer_trx_id OUT NOCOPY ra_customer_trx.customer_trx_id%type
5018                   ) IS
5019 
5020 
5021     l_customer_trx_id  ra_customer_trx.customer_trx_id%type;
5022     l_org_id           integer;
5023     l_org_str          varchar2(30);
5024     l_trx_num_cursor   integer;
5025     l_dummy            integer;
5026     l_trx_number       ra_customer_trx.trx_number%type;
5027     l_trx_str          VARCHAR2(1000);
5028     l_copy_doc_number_flag    varchar2(1):='N';             --Bug1738914
5029     l_old_trx_number   ra_customer_trx.old_trx_number%type; --Bug1738914
5030     l_ct_reference      varchar2(150);
5031     l_legal_entity_id   number;
5032 
5033 BEGIN
5034 
5035     arp_util.debug('arp_ct_pkg.insert_p()+');
5036 
5037     arp_util.debug('CM trx number   :' || p_trx_number );
5038     --p_trx_number := '';
5039 
5040     p_customer_trx_id := '';
5041 
5042     /*---------------------------------------------------------------*
5043      | validate that the transaction and document numbers are unique |
5044      *---------------------------------------------------------------*/
5045 
5046      arp_trx_validate.validate_trx_number( p_trx_rec.batch_source_id,
5047                                            p_trx_rec.trx_number,
5048                                            p_trx_rec.customer_trx_id);
5049 
5050      arp_trx_validate.validate_doc_number( p_trx_rec.cust_trx_type_id,
5051                                            p_trx_rec.doc_sequence_value,
5052                                            p_trx_rec.customer_trx_id);
5053 
5054 
5055     /*---------------------------*
5056      | Get the unique identifier |
5057      *---------------------------*/
5058 
5059         SELECT RA_CUSTOMER_TRX_S.NEXTVAL
5060         INTO   l_customer_trx_id
5061         FROM   DUAL;
5062 
5063     /*----------------------------*
5064      | Get the transaction number |
5065      *----------------------------*/
5066 
5067      IF (p_trx_rec.trx_number is null)
5068      THEN
5069           SELECT MIN(org_id)
5070           INTO   l_org_id
5071           FROM   ar_system_parameters;
5072 
5073           IF (l_org_id IS NOT NULL) THEN
5074               l_org_str := '_'||to_char(l_org_id);
5075           ELSE
5076               l_org_str := NULL;
5077           END IF;
5078 
5079     -- Bug 1185665 : change dbms_sql to use native dynamic sql
5080 
5081     /* Bug 1738914 : Selecting copy_doc_number_flag. Chargebacks are always
5082      numbered automatically , so this piece of code gets executed all the time */
5083 
5084        l_trx_str :=  'select ra_trx_number_' ||
5085                                REPLACE(p_trx_rec.batch_source_id, '-', 'N') ||
5086                           l_org_str||
5087                           '_s.nextval trx_number,copy_doc_number_flag ' ||
5088                           'from ra_batch_sources ' ||
5089                           'where batch_source_id = ' ||
5090                                p_trx_rec.batch_source_id ||
5091                          ' and auto_trx_numbering_flag = ''Y''';
5092 
5093             EXECUTE IMMEDIATE l_trx_str
5094                 INTO l_trx_number,l_copy_doc_number_flag;
5095 
5096 /*
5097           l_trx_num_cursor := dbms_sql.open_cursor;
5098 
5099           dbms_sql.parse(l_trx_num_cursor,
5100                           'select ra_trx_number_' ||
5101                                REPLACE(p_trx_rec.batch_source_id, '-', 'N') ||
5102                           l_org_str||
5103                           '_s.nextval trx_number ' ||
5104                           'from ra_batch_sources ' ||
5105                           'where batch_source_id = ' ||
5106                                p_trx_rec.batch_source_id ||
5107                          ' and auto_trx_numbering_flag = ''Y''',
5108                          dbms_sql.v7);
5109 
5110           dbms_sql.define_column(l_trx_num_cursor, 1, l_trx_number, 20);
5111 
5112           l_dummy := dbms_sql.execute_and_fetch(l_trx_num_cursor, TRUE);
5113 
5114           dbms_sql.column_value(l_trx_num_cursor, 1, l_trx_number);
5115 
5116           dbms_sql.close_cursor(l_trx_num_cursor);
5117 */
5118      ELSE
5119           l_trx_number := p_trx_rec.trx_number;
5120      END IF;
5121 
5122     /*-----------------------------------------------------------------------*
5123      | Bug 1738914: When the 'Copy doc Num to Trx Number' checkbox is ticked |
5124      | for the 'Chargeback' source ( batch_source_id = 12 ) , the document   |
5125      | number will be copied to the trx_number .As the chargeback is saved   |
5126      | as completed,the copy logic is added here .                           |
5127      *-----------------------------------------------------------------------*/
5128 
5129      l_old_trx_number := p_trx_rec.old_trx_number;
5130 
5131      IF ( p_trx_rec.batch_source_id = 12  AND
5132        Nvl(l_copy_doc_number_flag,'N') = 'Y' AND
5133        p_trx_rec.doc_sequence_value IS NOT NULL ) THEN
5134             l_old_trx_number := l_trx_number;
5135             l_trx_number := p_trx_rec.doc_sequence_value;
5136      END IF;
5137 --2528261 begin
5138      begin
5139         SELECT DECODE(DEFAULT_REFERENCE,
5140                       '1',  p_trx_rec.interface_header_attribute1,
5141                       '2',  p_trx_rec.interface_header_attribute2,
5142                       '3',  p_trx_rec.interface_header_attribute3,
5143                       '4',  p_trx_rec.interface_header_attribute4,
5144                       '5',  p_trx_rec.interface_header_attribute5,
5145                       '6',  p_trx_rec.interface_header_attribute6,
5146                       '7',  p_trx_rec.interface_header_attribute7,
5147                       '8',  p_trx_rec.interface_header_attribute8,
5148                       '9',  p_trx_rec.interface_header_attribute9,
5149                       '10', p_trx_rec.interface_header_attribute10,
5150                       '11', p_trx_rec.interface_header_attribute11,
5151                       '12', p_trx_rec.interface_header_attribute12,
5152                       '13', p_trx_rec.interface_header_attribute13,
5153                       '14', p_trx_rec.interface_header_attribute14,
5154                       '15', p_trx_rec.interface_header_attribute15,
5155                       NULL,p_trx_rec.ct_reference, /* Bug fix 5330712*/
5156                       NULL )
5157         INTO   l_ct_reference
5158         FROM   ra_batch_sources
5159         WHERE batch_source_id = p_trx_rec.batch_source_id;
5160       exception
5161          when no_data_found then
5162               l_ct_reference:=null;
5163          when others then
5164               l_ct_reference:=null;
5165       end;
5166 
5167     /*-------------------*
5168      | Insert the record |
5169      *-------------------*/
5170 
5171    INSERT INTO ra_customer_trx
5172                (
5173                  customer_trx_id,
5174                  trx_number,
5175                  created_by,
5176                  creation_date,
5177                  last_updated_by,
5178                  last_update_date,
5179                  last_update_login,
5180                  set_of_books_id,
5181                  program_application_id,
5182                  program_id,
5183                  program_update_date,
5184                  posting_control_id,
5185                  ra_post_loop_number,
5186                  complete_flag,
5187                  initial_customer_trx_id,
5188                  previous_customer_trx_id,
5189                  related_customer_trx_id,
5190                  recurred_from_trx_number,
5191                  cust_trx_type_id,
5192                  batch_id,
5193                  batch_source_id,
5194                  agreement_id,
5195                  trx_date,
5196                  bill_to_customer_id,
5197                  bill_to_contact_id,
5198                  bill_to_site_use_id,
5199                  ship_to_customer_id,
5200                  ship_to_contact_id,
5201                  ship_to_site_use_id,
5202                  sold_to_customer_id,
5203                  sold_to_site_use_id,
5204                  sold_to_contact_id,
5205                  customer_reference,
5206                  customer_reference_date,
5207                  credit_method_for_installments,
5208                  credit_method_for_rules,
5209                  start_date_commitment,
5210                  end_date_commitment,
5211                  exchange_date,
5212                  exchange_rate,
5213                  exchange_rate_type,
5214                  customer_bank_account_id,
5215                  finance_charges,
5216                  fob_point,
5217                  comments,
5218                  internal_notes,
5219                  invoice_currency_code,
5220                  invoicing_rule_id,
5221                  last_printed_sequence_num,
5222                  orig_system_batch_name,
5223                  primary_salesrep_id,
5224                  printing_count,
5225                  printing_last_printed,
5226                  printing_option,
5227                  printing_original_date,
5228                  printing_pending,
5229                  purchase_order,
5230                  purchase_order_date,
5231                  purchase_order_revision,
5232                  receipt_method_id,
5233                  remit_to_address_id,
5234                  shipment_id,
5235                  ship_date_actual,
5236                  ship_via,
5237                  term_due_date,
5238                  term_id,
5239                  territory_id,
5240                  waybill_number,
5241                  status_trx,
5242                  reason_code,
5243                  doc_sequence_id,
5244                  doc_sequence_value,
5245                  paying_customer_id,
5246                  paying_site_use_id,
5247                  related_batch_source_id,
5248                  default_tax_exempt_flag,
5249                  created_from,
5250                  default_ussgl_trx_code_context,
5251                  default_ussgl_transaction_code,
5252                  old_trx_number,
5253                  interface_header_context,
5254                  interface_header_attribute1,
5255                  interface_header_attribute2,
5256                  interface_header_attribute3,
5257                  interface_header_attribute4,
5258                  interface_header_attribute5,
5259                  interface_header_attribute6,
5260                  interface_header_attribute7,
5261                  interface_header_attribute8,
5262                  interface_header_attribute9,
5263                  interface_header_attribute10,
5264                  interface_header_attribute11,
5265                  interface_header_attribute12,
5266                  interface_header_attribute13,
5267                  interface_header_attribute14,
5268                  interface_header_attribute15,
5269                  attribute_category,
5270                  attribute1,
5271                  attribute2,
5272                  attribute3,
5273                  attribute4,
5274                  attribute5,
5275                  attribute6,
5276                  attribute7,
5277                  attribute8,
5278                  attribute9,
5279                  attribute10,
5280                  attribute11,
5281                  attribute12,
5282                  attribute13,
5283                  attribute14,
5284                  attribute15,
5285                  br_amount,
5286                  br_unpaid_flag,
5287                  br_on_hold_flag,
5288                  drawee_id,
5289                  drawee_contact_id,
5290                  drawee_site_use_id,
5291                  drawee_bank_account_id,
5292                  remit_bank_acct_use_id,
5293                  override_remit_account_flag,
5294                  special_instructions,
5295                  remittance_batch_id,
5296                  address_verification_code,
5297                  approval_code,
5298                  bill_to_address_id,
5299                  edi_processed_flag,
5300                  edi_processed_status,
5301                  payment_server_order_num,
5302                  post_request_id,
5303                  request_id,
5304                  ship_to_address_id,
5305                  wh_update_date,
5306                  global_attribute_category,
5307                  global_attribute1,
5308                  global_attribute2,
5309                  global_attribute3,
5310                  global_attribute4,
5311                  global_attribute5,
5312                  global_attribute6,
5313                  global_attribute7,
5314                  global_attribute8,
5315                  global_attribute9,
5316                  global_attribute10,
5317                  global_attribute11,
5318                  global_attribute12,
5319                  global_attribute13,
5320                  global_attribute14,
5321                  global_attribute15,
5322                  global_attribute16,
5323                  global_attribute17,
5324                  global_attribute18,
5325                  global_attribute19,
5326                  global_attribute20,
5327                  global_attribute21,
5328                  global_attribute22,
5329                  global_attribute23,
5330                  global_attribute24,
5331                  global_attribute25,
5332                  global_attribute26,
5333                  global_attribute27,
5334                  global_attribute28,
5335                  global_attribute29,
5336                  global_attribute30
5337                  ,ct_reference
5338                  ,org_id
5339                  ,legal_entity_id -- LE
5340                  ,payment_trxn_extension_id   /* PAYMENT_UPTAKE */
5341                  ,billing_date
5342                )
5343          VALUES
5344                (
5345                  l_customer_trx_id,
5346                  l_trx_number,
5347                  pg_user_id,			/* created_by */
5348                  sysdate, 			/* creation_date */
5349                  pg_user_id,			/* last_updated_by */
5350                  sysdate,			/* last_update_date */
5351                  nvl(pg_conc_login_id,
5352                      pg_login_id),		/* last_update_login */
5353                  arp_global.set_of_books_id,	/* set_of_books_id */
5354                  pg_prog_appl_id,		/* program_application_id */
5355                  pg_conc_program_id,		/* program_id */
5356                  sysdate,			/* program_update_date */
5357                  p_trx_rec.posting_control_id,
5358                  p_trx_rec.ra_post_loop_number,
5359                  p_trx_rec.complete_flag,
5360                  p_trx_rec.initial_customer_trx_id,
5361                  p_trx_rec.previous_customer_trx_id,
5362                  p_trx_rec.related_customer_trx_id,
5363                  p_trx_rec.recurred_from_trx_number,
5364                  p_trx_rec.cust_trx_type_id,
5365                  p_trx_rec.batch_id,
5366                  p_trx_rec.batch_source_id,
5367                  p_trx_rec.agreement_id,
5368                  p_trx_rec.trx_date,
5369                  p_trx_rec.bill_to_customer_id,
5370                  p_trx_rec.bill_to_contact_id,
5371                  p_trx_rec.bill_to_site_use_id,
5372                  p_trx_rec.ship_to_customer_id,
5373                  p_trx_rec.ship_to_contact_id,
5374                  p_trx_rec.ship_to_site_use_id,
5375                  p_trx_rec.sold_to_customer_id,
5376                  p_trx_rec.sold_to_site_use_id,
5377                  p_trx_rec.sold_to_contact_id,
5378                  p_trx_rec.customer_reference,
5379                  p_trx_rec.customer_reference_date,
5380                  p_trx_rec.credit_method_for_installments,
5381                  p_trx_rec.credit_method_for_rules,
5382                  p_trx_rec.start_date_commitment,
5383                  p_trx_rec.end_date_commitment,
5384                  p_trx_rec.exchange_date,
5385                  p_trx_rec.exchange_rate,
5386                  p_trx_rec.exchange_rate_type,
5387                  p_trx_rec.customer_bank_account_id,
5388                  p_trx_rec.finance_charges,
5389                  p_trx_rec.fob_point,
5390                  p_trx_rec.comments,
5391                  p_trx_rec.internal_notes,
5392                  p_trx_rec.invoice_currency_code,
5393                  p_trx_rec.invoicing_rule_id,
5394                  p_trx_rec.last_printed_sequence_num,
5395                  p_trx_rec.orig_system_batch_name,
5396                  p_trx_rec.primary_salesrep_id,
5397                  p_trx_rec.printing_count,
5398                  p_trx_rec.printing_last_printed,
5399                  p_trx_rec.printing_option,
5400                  p_trx_rec.printing_original_date,
5401                  decode(p_trx_rec.printing_option,
5402                         'PRI', 'Y',
5403                         'NOT', 'N',
5404                                p_trx_rec.printing_pending),
5405                  p_trx_rec.purchase_order,
5406                  p_trx_rec.purchase_order_date,
5407                  p_trx_rec.purchase_order_revision,
5408                  p_trx_rec.receipt_method_id,
5409                  p_trx_rec.remit_to_address_id,
5410                  p_trx_rec.shipment_id,
5411                  p_trx_rec.ship_date_actual,
5412                  p_trx_rec.ship_via,
5413                  p_trx_rec.term_due_date,
5414                  p_trx_rec.term_id,
5415                  p_trx_rec.territory_id,
5416                  p_trx_rec.waybill_number,
5417                  p_trx_rec.status_trx,
5418                  p_trx_rec.reason_code,
5419                  p_trx_rec.doc_sequence_id,
5420                  p_trx_rec.doc_sequence_value,
5421                  p_trx_rec.paying_customer_id,
5422                  p_trx_rec.paying_site_use_id,
5423                  p_trx_rec.related_batch_source_id,
5424                  p_trx_rec.default_tax_exempt_flag,
5425                  p_trx_rec.created_from,
5426                  p_trx_rec.default_ussgl_trx_code_context,
5427                  p_trx_rec.default_ussgl_transaction_code,
5428                  l_old_trx_number,                         --Bug1738914
5429                  p_trx_rec.interface_header_context,
5430                  p_trx_rec.interface_header_attribute1,
5431                  p_trx_rec.interface_header_attribute2,
5432                  p_trx_rec.interface_header_attribute3,
5433                  p_trx_rec.interface_header_attribute4,
5434                  p_trx_rec.interface_header_attribute5,
5435                  p_trx_rec.interface_header_attribute6,
5436                  p_trx_rec.interface_header_attribute7,
5437                  p_trx_rec.interface_header_attribute8,
5438                  p_trx_rec.interface_header_attribute9,
5439                  p_trx_rec.interface_header_attribute10,
5440                  p_trx_rec.interface_header_attribute11,
5441                  p_trx_rec.interface_header_attribute12,
5442                  p_trx_rec.interface_header_attribute13,
5443                  p_trx_rec.interface_header_attribute14,
5444                  p_trx_rec.interface_header_attribute15,
5445                  p_trx_rec.attribute_category,
5446                  p_trx_rec.attribute1,
5447                  p_trx_rec.attribute2,
5448                  p_trx_rec.attribute3,
5449                  p_trx_rec.attribute4,
5450                  p_trx_rec.attribute5,
5451                  p_trx_rec.attribute6,
5452                  p_trx_rec.attribute7,
5453                  p_trx_rec.attribute8,
5454                  p_trx_rec.attribute9,
5455                  p_trx_rec.attribute10,
5456                  p_trx_rec.attribute11,
5457                  p_trx_rec.attribute12,
5458                  p_trx_rec.attribute13,
5459                  p_trx_rec.attribute14,
5460                  p_trx_rec.attribute15,
5461                  p_trx_rec.br_amount,
5462                  p_trx_rec.br_unpaid_flag,
5463                  p_trx_rec.br_on_hold_flag,
5464                  p_trx_rec.drawee_id,
5465                  p_trx_rec.drawee_contact_id,
5466                  p_trx_rec.drawee_site_use_id,
5467                  p_trx_rec.drawee_bank_account_id,
5468                  p_trx_rec.remit_bank_acct_use_id,
5469                  p_trx_rec.override_remit_account_flag,
5470                  p_trx_rec.special_instructions,
5471                  p_trx_rec.remittance_batch_id,
5472                  p_trx_rec.address_verification_code,
5473                  p_trx_rec.approval_code,
5474                  p_trx_rec.bill_to_address_id,
5475                  p_trx_rec.edi_processed_flag,
5476                  p_trx_rec.edi_processed_status,
5477                  p_trx_rec.payment_server_order_num,
5478                  p_trx_rec.post_request_id,
5479                  p_trx_rec.request_id,
5480                  p_trx_rec.ship_to_address_id,
5481                  p_trx_rec.wh_update_date,
5482                  p_trx_rec.global_attribute_category,
5483                  p_trx_rec.global_attribute1,
5484                  p_trx_rec.global_attribute2,
5485                  p_trx_rec.global_attribute3,
5486                  p_trx_rec.global_attribute4,
5487                  p_trx_rec.global_attribute5,
5488                  p_trx_rec.global_attribute6,
5489                  p_trx_rec.global_attribute7,
5490                  p_trx_rec.global_attribute8,
5491                  p_trx_rec.global_attribute9,
5492                  p_trx_rec.global_attribute10,
5493                  p_trx_rec.global_attribute11,
5494                  p_trx_rec.global_attribute12,
5495                  p_trx_rec.global_attribute13,
5496                  p_trx_rec.global_attribute14,
5497                  p_trx_rec.global_attribute15,
5498                  p_trx_rec.global_attribute16,
5499                  p_trx_rec.global_attribute17,
5500                  p_trx_rec.global_attribute18,
5501                  p_trx_rec.global_attribute19,
5502                  p_trx_rec.global_attribute20,
5503                  p_trx_rec.global_attribute21,
5504                  p_trx_rec.global_attribute22,
5505                  p_trx_rec.global_attribute23,
5506                  p_trx_rec.global_attribute24,
5507                  p_trx_rec.global_attribute25,
5508                  p_trx_rec.global_attribute26,
5509                  p_trx_rec.global_attribute27,
5510                  p_trx_rec.global_attribute28,
5511                  p_trx_rec.global_attribute29,
5512                  p_trx_rec.global_attribute30,
5513                  l_ct_reference,
5514                  arp_standard.sysparm.org_id, /* SSA changes anuj */
5515                  p_trx_rec.legal_entity_id, --LE
5516                  p_trx_rec.payment_trxn_extension_id, /* PAYMENT_UPTAKE  */
5517                  p_trx_rec.billing_date
5518                );
5519 
5520    /*---------------------------------+
5521     | Calling central MRC library     |
5522     | for MRC Integration             |
5523     +---------------------------------*/
5524 --{BUG4301323
5525 --    ar_mrc_engine.maintain_mrc_data(
5526 --             p_event_mode        => 'INSERT',
5527 --             p_table_name        => 'RA_CUSTOMER_TRX',
5528 --             p_mode              => 'SINGLE',
5529 --             p_key_value         => l_customer_trx_id);
5530 --}
5531 
5532    p_trx_number := l_trx_number;
5533    p_customer_trx_id := l_customer_trx_id;
5534 
5535    arp_util.debug('arp_ct_pkg.insert_p()-');
5536 
5537 EXCEPTION
5538     WHEN OTHERS THEN
5539         arp_util.debug('EXCEPTION:  arp_ct_pkg.insert_p()');
5540 	RAISE;
5541 END;
5542 
5543 /*===========================================================================+
5544  | PROCEDURE                                                                 |
5545  |    display_header_p                                                       |
5546  |                                                                           |
5547  | DESCRIPTION                                                               |
5548  |    Displays the values of all columns except creation_date and            |
5549  |    last_update_date.                                                      |
5550  |                                                                           |
5551  | SCOPE - PRIVATE                                                           |
5552  |                                                                           |
5553  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
5554  |    arp_util.debug                                                         |
5555  |                                                                           |
5556  | ARGUMENTS  : IN:                                                          |
5557  |                       p_customer_trx_id                                   |
5558  |              OUT:                                                         |
5559  |          IN/ OUT:							     |
5560  |                                                                           |
5561  | RETURNS    : NONE                                                         |
5562  |                                                                           |
5563  | NOTES                                                                     |
5564  |                                                                           |
5565  | MODIFICATION HISTORY                                                      |
5566  |     13-JUL-95  Martin Johnson      Created                                |
5567  |                                                                           |
5568  +===========================================================================*/
5569 
5570 PROCEDURE display_header_p(
5571             p_customer_trx_id IN ra_customer_trx.customer_trx_id%type) IS
5572 
5573    l_trx_rec ra_customer_trx%rowtype;
5574 
5575 BEGIN
5576 
5577    arp_util.debug('arp_ct_pkg.display_header_p()+');
5578 
5579    arp_ct_pkg.fetch_p(l_trx_rec, p_customer_trx_id);
5580 
5581    arp_ct_pkg.display_header_rec(l_trx_rec);
5582 
5583    arp_util.debug('arp_ct_pkg.display_header_p()-');
5584 
5585 EXCEPTION
5586     WHEN OTHERS THEN
5587         arp_util.debug('EXCEPTION:  arp_ct_pkg.display_header_p()');
5588         RAISE;
5589 
5590 END;
5591 
5592 /*==========================================================================+
5593  | PROCEDURE                                                                |
5594  |    display_header_rec                                                    |
5595  |                                                                          |
5596  | DESCRIPTION                                                              |
5597  |    Displays the values of all columns except creation_date and           |
5598  |    last_update_date.                                                     |
5599  |                                                                          |
5600  | SCOPE - PRIVATE                                                          |
5601  |                                                                          |
5602  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                  |
5603  |    arp_util.debug                                                        |
5604  |                                                                          |
5605  | ARGUMENTS  : IN:                                                         |
5606  |                       p_customer_trx_id                                  |
5607  |              OUT:                                                        |
5608  |          IN/ OUT:							    |
5609  |                                                                          |
5610  | RETURNS    : NONE                                                        |
5611  |                                                                          |
5612  | NOTES                                                                    |
5613  |                                                                          |
5614  | MODIFICATION HISTORY                                                     |
5615  | 19-JUL-95  Martin Johnson    Created                                     |
5616  | 20-MAR-2000  J Rautiainen    Added BR project related columns            |
5617  |                              BR_AMOUNT, BR_UNPAID_FLAG,BR_ON_HOLD_FLAG,  |
5618  |                              DRAWEE_ID, DRAWEE_CONTACT_ID,               |
5619  |                              DRAWEE_SITE_USE_ID,DRAWEE_BANK_ACCOUNT_ID,  |
5620  |                              REMITTANCE_BANK_ACCOUNT_ID,		    |
5621  |                              OVERRIDE_REMIT_ACCOUNT_FLAG and             |
5622  |                              SPECIAL_INSTRUCTIONSinto table handlers     |
5623  | 24-JUL-2000  J Rautiainen    Added BR project related column             |
5624  |                              REMITTANCE_BATCH_ID		            |
5625  | 31-OCT-2000 Y Rakotonirainy	Bug 1243304 : Added columns                 |
5626  |                              address_verification_code and	            |
5627  |				approval_code	and			    |
5628  |				bill_to_address_id and		            |
5629  |				edi_processed_flag and			    |
5630  |				edi_processed_status and		    |
5631  |				payment_server_order_num and		    |
5632  |				post_request_id and			    |
5633  |				request_id and				    |
5634  |				ship_to_address_id			    |
5635  |				wh_update_date				    |
5636  | 				into the table handlers.                    |
5637  +==========================================================================*/
5638 
5639 PROCEDURE display_header_rec ( p_trx_rec IN ra_customer_trx%rowtype ) IS
5640 
5641 BEGIN
5642 
5643    arp_util.debug('arp_ct_pkg.display_header_rec()+');
5644 
5645    arp_util.debug('************ Dump of ra_customer_trx record ************');
5646    arp_util.debug('customer_trx_id: '	     || p_trx_rec.customer_trx_id);
5647    arp_util.debug('trx_number: '	     || p_trx_rec.trx_number);
5648    arp_util.debug('created_by: '	     || p_trx_rec.created_by);
5649    arp_util.debug('last_updated_by: '        || p_trx_rec.last_updated_by);
5650    arp_util.debug('last_update_login: '      || p_trx_rec.last_update_login);
5651    arp_util.debug('set_of_books_id: '        || p_trx_rec.set_of_books_id);
5652    arp_util.debug('program_application_id: ' ||
5653                                 p_trx_rec.program_application_id);
5654    arp_util.debug('program_id: '             || p_trx_rec.program_id);
5655    arp_util.debug('program_update_date: '    || p_trx_rec.program_update_date);
5656    arp_util.debug('posting_control_id: '     || p_trx_rec.posting_control_id);
5657    arp_util.debug('ra_post_loop_number: '    || p_trx_rec.ra_post_loop_number);
5658    arp_util.debug('complete_flag: '          || p_trx_rec.complete_flag);
5659    arp_util.debug('initial_customer_trx_id: '||
5660                                 p_trx_rec.initial_customer_trx_id);
5661    arp_util.debug('previous_customer_trx_id: ' ||
5662                                 p_trx_rec.previous_customer_trx_id);
5663    arp_util.debug('related_customer_trx_id: '||
5664                                 p_trx_rec.related_customer_trx_id);
5665    arp_util.debug('recurred_from_trx_number: ' ||
5666                                 p_trx_rec.recurred_from_trx_number);
5667    arp_util.debug('cust_trx_type_id: '       || p_trx_rec.cust_trx_type_id);
5668    arp_util.debug('batch_id: '               || p_trx_rec.batch_id);
5669    arp_util.debug('batch_source_id: '        || p_trx_rec.batch_source_id);
5670    arp_util.debug('agreement_id: '           || p_trx_rec.agreement_id);
5671    arp_util.debug('trx_date: '               || p_trx_rec.trx_date);
5672    arp_util.debug('bill_to_customer_id: '    || p_trx_rec.bill_to_customer_id);
5673    arp_util.debug('bill_to_contact_id: '     || p_trx_rec.bill_to_contact_id);
5674    arp_util.debug('bill_to_site_use_id: '    || p_trx_rec.bill_to_site_use_id);
5675    arp_util.debug('ship_to_customer_id: '    || p_trx_rec.ship_to_customer_id);
5676    arp_util.debug('ship_to_contact_id: '     || p_trx_rec.ship_to_contact_id);
5677    arp_util.debug('ship_to_site_use_id: '    || p_trx_rec.ship_to_site_use_id);
5678    arp_util.debug('sold_to_customer_id: '    || p_trx_rec.sold_to_customer_id);
5679    arp_util.debug('sold_to_site_use_id: '    || p_trx_rec.sold_to_site_use_id);
5680    arp_util.debug('sold_to_contact_id: '     || p_trx_rec.sold_to_contact_id);
5681    arp_util.debug('customer_reference: '     || p_trx_rec.customer_reference);
5682    arp_util.debug('customer_reference_date: '||
5683                                  p_trx_rec.customer_reference_date);
5684    arp_util.debug('credit_method_for_installments: ' ||
5685                                  p_trx_rec.credit_method_for_installments);
5686    arp_util.debug('credit_method_for_rules: ' ||
5687                                  p_trx_rec.credit_method_for_rules);
5688    arp_util.debug('start_date_commitment: '  ||
5689                                  p_trx_rec.start_date_commitment);
5690    arp_util.debug('end_date_commitment: '    ||
5691                                  p_trx_rec.end_date_commitment);
5692    arp_util.debug('exchange_date: '          || p_trx_rec.exchange_date);
5693    arp_util.debug('exchange_rate: '          || p_trx_rec.exchange_rate);
5694    arp_util.debug('exchange_rate_type: '     || p_trx_rec.exchange_rate_type);
5695    arp_util.debug('customer_bank_account_id: '||
5696                                  p_trx_rec.customer_bank_account_id);
5697    arp_util.debug('finance_charges: '        || p_trx_rec.finance_charges);
5698    arp_util.debug('fob_point: '              || p_trx_rec.fob_point);
5699    arp_util.debug('comments: '               || p_trx_rec.comments);
5700    arp_util.debug('internal_notes: '         || p_trx_rec.internal_notes);
5701    arp_util.debug('invoice_currency_code: '  ||
5702                                 p_trx_rec.invoice_currency_code);
5703    arp_util.debug('invoicing_rule_id: '      || p_trx_rec.invoicing_rule_id);
5704    arp_util.debug('last_printed_sequence_num: ' ||
5705                                 p_trx_rec.last_printed_sequence_num);
5706    arp_util.debug('orig_system_batch_name: ' ||
5707                                 p_trx_rec.orig_system_batch_name);
5708    arp_util.debug('primary_salesrep_id: '    ||
5709                                 p_trx_rec.primary_salesrep_id);
5710    arp_util.debug('printing_count: '         || p_trx_rec.printing_count);
5711    arp_util.debug('printing_last_printed: '  ||
5712                                 p_trx_rec.printing_last_printed);
5713    arp_util.debug('printing_option: '        || p_trx_rec.printing_option);
5714    arp_util.debug('printing_original_date: ' ||
5715                                 p_trx_rec.printing_original_date);
5716    arp_util.debug('printing_pending: '       || p_trx_rec.printing_pending);
5717    arp_util.debug('purchase_order: '         || p_trx_rec.purchase_order);
5718    arp_util.debug('purchase_order_date: '    || p_trx_rec.purchase_order_date);
5719    arp_util.debug('purchase_order_revision: ' ||
5720                                 p_trx_rec.purchase_order_revision);
5721    arp_util.debug('receipt_method_id: '      || p_trx_rec.receipt_method_id);
5722    arp_util.debug('remit_to_address_id: '    || p_trx_rec.remit_to_address_id);
5723    arp_util.debug('shipment_id: '            || p_trx_rec.shipment_id);
5724    arp_util.debug('ship_date_actual: '       || p_trx_rec.ship_date_actual);
5725    arp_util.debug('ship_via: '               || p_trx_rec.ship_via);
5726    arp_util.debug('term_due_date: '          || p_trx_rec.term_due_date);
5727    arp_util.debug('term_id: '                || p_trx_rec.term_id);
5728    arp_util.debug('territory_id: '           || p_trx_rec.territory_id);
5729    arp_util.debug('waybill_number: '         || p_trx_rec.waybill_number);
5730    arp_util.debug('status_trx: '             || p_trx_rec.status_trx);
5731    arp_util.debug('reason_code: '            || p_trx_rec.reason_code);
5732    arp_util.debug('doc_sequence_id: '        || p_trx_rec.doc_sequence_id);
5733    arp_util.debug('doc_sequence_value: '     || p_trx_rec.doc_sequence_value);
5734    arp_util.debug('paying_customer_id: '     || p_trx_rec.paying_customer_id);
5735    arp_util.debug('paying_site_use_id: '     || p_trx_rec.paying_site_use_id);
5736    arp_util.debug('related_batch_source_id: '||
5737                                 p_trx_rec.related_batch_source_id);
5738    arp_util.debug('default_tax_exempt_flag: '||
5739                                 p_trx_rec.default_tax_exempt_flag);
5740    arp_util.debug('created_from: '           || p_trx_rec.created_from);
5741    arp_util.debug('default_ussgl_trx_code_context: ' ||
5742                                 p_trx_rec.default_ussgl_trx_code_context);
5743    arp_util.debug('default_ussgl_transaction_code: ' ||
5744                                 p_trx_rec.default_ussgl_transaction_code);
5745    arp_util.debug('old_trx_number: '         || p_trx_rec.old_trx_number);
5746    arp_util.debug('interface_header_context: ' ||
5747                                 p_trx_rec.interface_header_context);
5748    arp_util.debug('interface_header_attribute1: ' ||
5749                                 p_trx_rec.interface_header_attribute1);
5750    arp_util.debug('interface_header_attribute2: ' ||
5751                                 p_trx_rec.interface_header_attribute2);
5752    arp_util.debug('interface_header_attribute3: ' ||
5753                                 p_trx_rec.interface_header_attribute3);
5754    arp_util.debug('interface_header_attribute4: ' ||
5755                                 p_trx_rec.interface_header_attribute4);
5756    arp_util.debug('interface_header_attribute5: ' ||
5757                                 p_trx_rec.interface_header_attribute5);
5758    arp_util.debug('interface_header_attribute6: ' ||
5759                                 p_trx_rec.interface_header_attribute6);
5760    arp_util.debug('interface_header_attribute7: ' ||
5761                                 p_trx_rec.interface_header_attribute7);
5762    arp_util.debug('interface_header_attribute8: ' ||
5763                                 p_trx_rec.interface_header_attribute8);
5764    arp_util.debug('interface_header_attribute9: ' ||
5765                                 p_trx_rec.interface_header_attribute9);
5766    arp_util.debug('interface_header_attribute10: '||
5767                                 p_trx_rec.interface_header_attribute10);
5768    arp_util.debug('interface_header_attribute11: '||
5769                                 p_trx_rec.interface_header_attribute11);
5770    arp_util.debug('interface_header_attribute12: '||
5771                                 p_trx_rec.interface_header_attribute12);
5772    arp_util.debug('interface_header_attribute13: '||
5773                                 p_trx_rec.interface_header_attribute13);
5774    arp_util.debug('interface_header_attribute14: '||
5775                                 p_trx_rec.interface_header_attribute14);
5776    arp_util.debug('interface_header_attribute15: '||
5777                                 p_trx_rec.interface_header_attribute15);
5778    arp_util.debug('attribute_category: '   || p_trx_rec.attribute_category);
5779    arp_util.debug('attribute1: '           || p_trx_rec.attribute1);
5780    arp_util.debug('attribute2: '           || p_trx_rec.attribute2);
5781    arp_util.debug('attribute3: '           || p_trx_rec.attribute3);
5782    arp_util.debug('attribute4: '           || p_trx_rec.attribute4);
5783    arp_util.debug('attribute5: '           || p_trx_rec.attribute5);
5784    arp_util.debug('attribute6: '           || p_trx_rec.attribute6);
5785    arp_util.debug('attribute7: '           || p_trx_rec.attribute7);
5786    arp_util.debug('attribute8: '           || p_trx_rec.attribute8);
5787    arp_util.debug('attribute9: '           || p_trx_rec.attribute9);
5788    arp_util.debug('attribute10: '          || p_trx_rec.attribute10);
5789    arp_util.debug('attribute11: '          || p_trx_rec.attribute11);
5790    arp_util.debug('attribute12: '          || p_trx_rec.attribute12);
5791    arp_util.debug('attribute13: '          || p_trx_rec.attribute13);
5792    arp_util.debug('attribute14: '          || p_trx_rec.attribute14);
5793    arp_util.debug('attribute15: '          || p_trx_rec.attribute15);
5794    arp_util.debug('br_amount: '            || p_trx_rec.br_amount);
5795    arp_util.debug('br_unpaid_flag: '       || p_trx_rec.br_unpaid_flag);
5796    arp_util.debug('br_on_hold_flag: '      || p_trx_rec.br_on_hold_flag);
5797    arp_util.debug('drawee_id: '            || p_trx_rec.drawee_id);
5798    arp_util.debug('drawee_contact_id: '    || p_trx_rec.drawee_contact_id);
5799    arp_util.debug('drawee_site_use_id: '   || p_trx_rec.drawee_site_use_id);
5800    arp_util.debug('drawee_bank_account_id: '      || p_trx_rec.drawee_bank_account_id);
5801    arp_util.debug('remit_bank_acct_use_id: '  || p_trx_rec.remit_bank_acct_use_id);
5802    arp_util.debug('override_remit_account_flag: ' || p_trx_rec.override_remit_account_flag);
5803    arp_util.debug('special_instructions: '   	  || p_trx_rec.special_instructions);
5804    arp_util.debug('remittance_batch_id: '  	  || p_trx_rec.remittance_batch_id);
5805    arp_util.debug('address_verification_code: '     || p_trx_rec.address_verification_code);
5806    arp_util.debug('approval_code: '      	    || p_trx_rec.approval_code);
5807    arp_util.debug('bill_to_address_id: '            || p_trx_rec.bill_to_address_id);
5808    arp_util.debug('edi_processed_flag: '    	    || p_trx_rec.edi_processed_flag);
5809    arp_util.debug('edi_processed_status: '   	    || p_trx_rec.edi_processed_status);
5810    arp_util.debug('payment_server_order_num: '      || p_trx_rec.payment_server_order_num);
5811    arp_util.debug('post_request_id: '  	   	    || p_trx_rec.post_request_id);
5812    arp_util.debug('request_id: ' 	   	    || p_trx_rec.request_id);
5813    arp_util.debug('ship_to_address_id: '   	    || p_trx_rec.ship_to_address_id);
5814    arp_util.debug('wh_update_date: '  	   	    || p_trx_rec.wh_update_date);
5815 
5816    arp_util.debug('global_attribute_category: '   || p_trx_rec.global_attribute_category);
5817    arp_util.debug('global_attribute1: '           || p_trx_rec.global_attribute1);
5818    arp_util.debug('global_attribute2: '           || p_trx_rec.global_attribute2);
5819    arp_util.debug('global_attribute3: '           || p_trx_rec.global_attribute3);
5820    arp_util.debug('global_attribute4: '           || p_trx_rec.global_attribute4);
5821    arp_util.debug('global_attribute5: '           || p_trx_rec.global_attribute5);
5822    arp_util.debug('global_attribute6: '           || p_trx_rec.global_attribute6);
5823    arp_util.debug('global_attribute7: '           || p_trx_rec.global_attribute7);
5824    arp_util.debug('global_attribute8: '           || p_trx_rec.global_attribute8);
5825    arp_util.debug('global_attribute9: '           || p_trx_rec.global_attribute9);
5826    arp_util.debug('global_attribute10: '          || p_trx_rec.global_attribute10);
5827    arp_util.debug('global_attribute11: '          || p_trx_rec.global_attribute11);
5828    arp_util.debug('global_attribute12: '          || p_trx_rec.global_attribute12);
5829    arp_util.debug('global_attribute13: '          || p_trx_rec.global_attribute13);
5830    arp_util.debug('global_attribute14: '          || p_trx_rec.global_attribute14);
5831    arp_util.debug('global_attribute15: '          || p_trx_rec.global_attribute15);
5832    arp_util.debug('global_attribute16: '           || p_trx_rec.global_attribute16);
5833    arp_util.debug('global_attribute17: '           || p_trx_rec.global_attribute17);
5834    arp_util.debug('global_attribute18: '           || p_trx_rec.global_attribute18);
5835    arp_util.debug('global_attribute19: '           || p_trx_rec.global_attribute19);
5836    arp_util.debug('global_attribute20: '          || p_trx_rec.global_attribute20);
5837    arp_util.debug('global_attribute21: '          || p_trx_rec.global_attribute21);
5838    arp_util.debug('global_attribute22: '          || p_trx_rec.global_attribute22);
5839    arp_util.debug('global_attribute23: '          || p_trx_rec.global_attribute23);
5840    arp_util.debug('global_attribute24: '          || p_trx_rec.global_attribute24);
5841    arp_util.debug('global_attribute25: '          || p_trx_rec.global_attribute25);
5842    arp_util.debug('global_attribute26: '           || p_trx_rec.global_attribute26);
5843    arp_util.debug('global_attribute27: '           || p_trx_rec.global_attribute27);
5844    arp_util.debug('global_attribute28: '           || p_trx_rec.global_attribute28);
5845    arp_util.debug('global_attribute29: '           || p_trx_rec.global_attribute29);
5846    arp_util.debug('global_attribute30: '          || p_trx_rec.global_attribute30);
5847 
5848    arp_util.debug('legal_entity_id: ' || to_char(p_trx_rec.legal_entity_id));
5849    arp_util.debug('payment_trxn_extension_id: ' || to_char(p_trx_rec.payment_trxn_extension_id));
5850    arp_util.debug('billing_date: '                || p_trx_rec.billing_date);
5851 
5852    arp_util.debug('************* End ra_customer_trx record *************');
5853 
5854    arp_util.debug('arp_ct_pkg.display_header_rec()-');
5855 
5856 EXCEPTION
5857  WHEN OTHERS THEN
5858    arp_util.debug('EXCEPTION: arp_ct_pkg.display_header_rec()');
5859    RAISE;
5860 
5861 END;
5862 
5863 /*===========================================================================+
5864  | PROCEDURE                                                                 |
5865  |    lock_compare_frt_cover                                                 |
5866  |                                                                           |
5867  | DESCRIPTION                                                               |
5868  |    Converts column parameters to a transaction header record and          |
5869  |    locks the transaction header.                                          |
5870  |                                                                           |
5871  | SCOPE - PUBLIC                                                            |
5872  |                                                                           |
5873  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
5874  |    arp_util.debug                                                         |
5875  |                                                                           |
5876  | ARGUMENTS  : IN:                                                          |
5877  |                    p_customer_trx_id                                      |
5878  |                    p_ship_via                                             |
5879  |                    p_ship_date_actual                                     |
5880  |                    p_waybill_number                                       |
5881  |                    p_fob_point                                            |
5882  |              OUT:                                                         |
5883  |                    None                                                   |
5884  |          IN/ OUT:                                                         |
5885  |                    None                                                   |
5886  |                                                                           |
5887  | RETURNS    : NONE                                                         |
5888  |                                                                           |
5889  | NOTES                                                                     |
5890  |                                                                           |
5891  | MODIFICATION HISTORY                                                      |
5892  |     15-OCT-95  Subash Chadalavada  Created                                |
5893  |                                                                           |
5894  +===========================================================================*/
5895 PROCEDURE lock_compare_frt_cover(
5896              p_customer_trx_id   IN ra_customer_trx.customer_trx_id%type,
5897              p_ship_via          IN ra_customer_trx.ship_via%type,
5898              p_ship_date_actual  IN ra_customer_trx.ship_date_actual%type,
5899              p_waybill_number    IN ra_customer_trx.waybill_number%type,
5900              p_fob_point         IN ra_customer_trx.fob_point%type)
5901 IS
5902   l_trx_rec    ra_customer_trx%rowtype;
5903 BEGIN
5904       arp_util.debug('arp_ct_pkg.lock_compare_frt_cover()+');
5905 
5906      /*------------------------------------------------+
5907       |  Populate the header record with the values    |
5908       |  passed in as parameters.                      |
5909       +------------------------------------------------*/
5910 
5911       arp_ct_pkg.set_to_dummy(l_trx_rec);
5912 
5913       l_trx_rec.customer_trx_id  := p_customer_trx_id;
5914       l_trx_rec.ship_via         := p_ship_via;
5915       l_trx_rec.ship_date_actual := p_ship_date_actual;
5916       l_trx_rec.waybill_number   := p_waybill_number;
5917       l_trx_rec.fob_point        := p_fob_point;
5918 
5919      /*-----------------------------------------+
5920       |  Call the standard header table handler |
5921       +-----------------------------------------*/
5922 arp_util.debug('calling lock compare p with p_customer_trx_id = ' || to_char(p_customer_trx_id));
5923 
5924       lock_compare_p( l_trx_rec, p_customer_trx_id);
5925 
5926       arp_util.debug('arp_ct_pkg.lock_compare_frt_cover()-');
5927 
5928 EXCEPTION
5929   WHEN OTHERS THEN
5930     arp_util.debug('EXCEPTION : arp_ct_pkg.lock_compare_frt_cover()');
5931 
5932     arp_util.debug('----- parameters for lock_compare_frt_cover() ' ||
5933                    '-----');
5934     arp_util.debug('p_customer_trx_id      = ' || p_customer_trx_id );
5935     arp_util.debug('p_ship_via             = ' || p_ship_via );
5936     arp_util.debug('p_ship_date_actual     = ' || p_ship_date_actual );
5937     arp_util.debug('p_waybill_number       = ' || p_waybill_number );
5938     arp_util.debug('p_fob_point            = ' || p_fob_point );
5939 
5940     RAISE;
5941 
5942 END;
5943 
5944 /*===========================================================================+
5945  | PROCEDURE                                                                 |
5946  |    lock_compare_cover                                                     |
5947  |                                                                           |
5948  | DESCRIPTION                                                               |
5949  |    Converts column parameters to a transaction header record and          |
5950  |    locks the transaction header.                                          |
5951  |                                                                           |
5952  | SCOPE - PUBLIC                                                            |
5953  |                                                                           |
5954  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
5955  |    arp_util.debug                                                         |
5956  |                                                                           |
5957  | ARGUMENTS  : IN:                                                          |
5958  |                  p_customer_trx_id					     |
5959  |                  p_trx_number					     |
5960  |                  p_posting_control_id				     |
5961  |                  p_ra_post_loop_number				     |
5962  |                  p_complete_flag					     |
5963  |                  p_initial_customer_trx_id				     |
5964  |                  p_previous_customer_trx_id				     |
5965  |                  p_related_customer_trx_id				     |
5966  |                  p_recurred_from_trx_number				     |
5967  |                  p_cust_trx_type_id					     |
5968  |                  p_batch_id						     |
5969  |                  p_batch_source_id					     |
5970  |                  p_agreement_id					     |
5971  |                  p_trx_date						     |
5972  |                  p_bill_to_customer_id				     |
5973  |                  p_bill_to_contact_id				     |
5974  |                  p_bill_to_site_use_id				     |
5975  |                  p_ship_to_customer_id				     |
5976  |                  p_ship_to_contact_id				     |
5977  |                  p_ship_to_site_use_id				     |
5978  |                  p_sold_to_customer_id				     |
5979  |                  p_sold_to_site_use_id				     |
5980  |                  p_sold_to_contact_id				     |
5981  |                  p_customer_reference				     |
5982  |                  p_customer_reference_date				     |
5983  |                  p_cr_method_for_installments			     |
5984  |                  p_credit_method_for_rules				     |
5985  |                  p_start_date_commitment				     |
5986  |                  p_end_date_commitment				     |
5987  |                  p_exchange_date					     |
5988  |                  p_exchange_rate					     |
5989  |                  p_exchange_rate_type				     |
5990  |                  p_customer_bank_account_id				     |
5991  |                  p_finance_charges					     |
5992  |                  p_fob_point						     |
5993  |                  p_comments						     |
5994  |                  p_internal_notes					     |
5995  |                  p_invoice_currency_code				     |
5996  |                  p_invoicing_rule_id					     |
5997  |                  p_last_printed_sequence_num				     |
5998  |                  p_orig_system_batch_name				     |
5999  |                  p_primary_salesrep_id				     |
6000  |                  p_printing_count					     |
6001  |                  p_printing_last_printed				     |
6002  |                  p_printing_option					     |
6003  |                  p_printing_original_date				     |
6004  |                  p_printing_pending					     |
6005  |                  p_purchase_order					     |
6006  |                  p_purchase_order_date				     |
6007  |                  p_purchase_order_revision				     |
6008  |                  p_receipt_method_id					     |
6009  |                  p_remit_to_address_id				     |
6010  |                  p_shipment_id					     |
6011  |                  p_ship_date_actual					     |
6012  |                  p_ship_via						     |
6013  |                  p_term_due_date					     |
6014  |                  p_term_id						     |
6015  |                  p_territory_id					     |
6016  |                  p_waybill_number					     |
6017  |                  p_status_trx					     |
6018  |                  p_reason_code					     |
6019  |                  p_doc_sequence_id					     |
6020  |                  p_doc_sequence_value				     |
6021  |                  p_paying_customer_id				     |
6022  |                  p_paying_site_use_id				     |
6023  |                  p_related_batch_source_id				     |
6024  |                  p_default_tax_exempt_flag				     |
6025  |                  p_created_from					     |
6026  |                  p_deflt_ussgl_trx_code_context			     |
6027  |                  p_deflt_ussgl_transaction_code			     |
6028  |                  p_old_trx_number                                         |
6029  |                  p_interface_header_context				     |
6030  |                  p_interface_header_attribute1			     |
6031  |                  p_interface_header_attribute2			     |
6032  |                  p_interface_header_attribute3			     |
6033  |                  p_interface_header_attribute4			     |
6034  |                  p_interface_header_attribute5			     |
6035  |                  p_interface_header_attribute6			     |
6036  |                  p_interface_header_attribute7			     |
6037  |                  p_interface_header_attribute8			     |
6038  |                  p_interface_header_attribute9			     |
6039  |                  p_interface_header_attribute10			     |
6040  |                  p_interface_header_attribute11			     |
6041  |                  p_interface_header_attribute12			     |
6042  |                  p_interface_header_attribute13			     |
6043  |                  p_interface_header_attribute14			     |
6044  |                  p_interface_header_attribute15			     |
6045  |                  p_attribute_category				     |
6046  |                  p_attribute1					     |
6047  |                  p_attribute2					     |
6048  |                  p_attribute3					     |
6049  |                  p_attribute4					     |
6050  |                  p_attribute5					     |
6051  |                  p_attribute6					     |
6052  |                  p_attribute7					     |
6053  |                  p_attribute8					     |
6054  |                  p_attribute9					     |
6055  |                  p_attribute10					     |
6056  |                  p_attribute11					     |
6057  |                  p_attribute12					     |
6058  |                  p_attribute13					     |
6059  |                  p_attribute14					     |
6060  |                  p_attribute15					     |
6061  |                                                                           |
6062  |              OUT:                                                         |
6063  |                  None                                                     |
6064  |          IN/ OUT:                                                         |
6065  |                  None                                                     |
6066  |                                                                           |
6067  | RETURNS    : NONE                                                         |
6068  |                                                                           |
6069  | NOTES                                                                     |
6070  |                                                                           |
6071  | MODIFICATION HISTORY                                                      |
6072  |     27-NOV-95  Charlie Tomberg  Created                                   |
6073  |                                                                           |
6074  +===========================================================================*/
6075 
6076 PROCEDURE lock_compare_cover(
6077   p_customer_trx_id   IN ra_customer_trx.customer_trx_id%type,
6078   p_trx_number                IN ra_customer_trx.trx_number%type,
6079   p_posting_control_id        IN ra_customer_trx.posting_control_id%type,
6080   p_ra_post_loop_number       IN ra_customer_trx.ra_post_loop_number%type,
6081   p_complete_flag             IN ra_customer_trx.complete_flag%type,
6082   p_initial_customer_trx_id   IN ra_customer_trx.initial_customer_trx_id%type,
6083   p_previous_customer_trx_id  IN ra_customer_trx.previous_customer_trx_id%type,
6084   p_related_customer_trx_id   IN ra_customer_trx.related_customer_trx_id%type,
6085   p_recurred_from_trx_number  IN ra_customer_trx.recurred_from_trx_number%type,
6086   p_cust_trx_type_id          IN ra_customer_trx.cust_trx_type_id%type,
6087   p_batch_id                  IN ra_customer_trx.batch_id%type,
6088   p_batch_source_id           IN ra_customer_trx.batch_source_id%type,
6089   p_agreement_id              IN ra_customer_trx.agreement_id%type,
6090   p_trx_date                  IN ra_customer_trx.trx_date%type,
6091   p_bill_to_customer_id       IN ra_customer_trx.bill_to_customer_id%type,
6092   p_bill_to_contact_id        IN ra_customer_trx.bill_to_contact_id%type,
6093   p_bill_to_site_use_id       IN ra_customer_trx.bill_to_site_use_id%type,
6094   p_ship_to_customer_id       IN ra_customer_trx.ship_to_customer_id%type,
6095   p_ship_to_contact_id        IN ra_customer_trx.ship_to_contact_id%type,
6096   p_ship_to_site_use_id       IN ra_customer_trx.ship_to_site_use_id%type,
6097   p_sold_to_customer_id       IN ra_customer_trx.sold_to_customer_id%type,
6098   p_sold_to_site_use_id       IN ra_customer_trx.sold_to_site_use_id%type,
6099   p_sold_to_contact_id        IN ra_customer_trx.sold_to_contact_id%type,
6100   p_customer_reference        IN ra_customer_trx.customer_reference%type,
6101   p_customer_reference_date   IN ra_customer_trx.customer_reference_date%type,
6102   p_cr_method_for_installments IN
6103                           ra_customer_trx.credit_method_for_installments%type,
6104   p_credit_method_for_rules   IN ra_customer_trx.credit_method_for_rules%type,
6105   p_start_date_commitment     IN ra_customer_trx.start_date_commitment%type,
6106   p_end_date_commitment       IN ra_customer_trx.end_date_commitment%type,
6107   p_exchange_date             IN ra_customer_trx.exchange_date%type,
6108   p_exchange_rate             IN ra_customer_trx.exchange_rate%type,
6109   p_exchange_rate_type        IN ra_customer_trx.exchange_rate_type%type,
6110   p_customer_bank_account_id  IN ra_customer_trx.customer_bank_account_id%type,
6111   p_finance_charges           IN ra_customer_trx.finance_charges%type,
6112   p_fob_point                 IN ra_customer_trx.fob_point%type,
6113   p_comments                  IN ra_customer_trx.comments%type,
6114   p_internal_notes            IN ra_customer_trx.internal_notes%type,
6115   p_invoice_currency_code     IN ra_customer_trx.invoice_currency_code%type,
6116   p_invoicing_rule_id         IN ra_customer_trx.invoicing_rule_id%type,
6117   p_last_printed_sequence_num IN
6118                                 ra_customer_trx.last_printed_sequence_num%type,
6119   p_orig_system_batch_name    IN ra_customer_trx.orig_system_batch_name%type,
6120   p_primary_salesrep_id       IN ra_customer_trx.primary_salesrep_id%type,
6121   p_printing_count            IN ra_customer_trx.printing_count%type,
6122   p_printing_last_printed     IN ra_customer_trx.printing_last_printed%type,
6123   p_printing_option           IN ra_customer_trx.printing_option%type,
6124   p_printing_original_date    IN ra_customer_trx.printing_original_date%type,
6125   p_printing_pending          IN ra_customer_trx.printing_pending%type,
6126   p_purchase_order            IN ra_customer_trx.purchase_order%type,
6127   p_purchase_order_date       IN ra_customer_trx.purchase_order_date%type,
6128   p_purchase_order_revision   IN ra_customer_trx.purchase_order_revision%type,
6129   p_receipt_method_id         IN ra_customer_trx.receipt_method_id%type,
6130   p_remit_to_address_id       IN ra_customer_trx.remit_to_address_id%type,
6131   p_shipment_id               IN ra_customer_trx.shipment_id%type,
6132   p_ship_date_actual          IN ra_customer_trx.ship_date_actual%type,
6133   p_ship_via                  IN ra_customer_trx.ship_via%type,
6134   p_term_due_date             IN ra_customer_trx.term_due_date%type,
6135   p_term_id                   IN ra_customer_trx.term_id%type,
6136   p_territory_id              IN ra_customer_trx.territory_id%type,
6137   p_waybill_number            IN ra_customer_trx.waybill_number%type,
6138   p_status_trx                IN ra_customer_trx.status_trx%type,
6139   p_reason_code               IN ra_customer_trx.reason_code%type,
6140   p_doc_sequence_id           IN ra_customer_trx.doc_sequence_id%type,
6141   p_doc_sequence_value        IN ra_customer_trx.doc_sequence_value%type,
6142   p_paying_customer_id        IN ra_customer_trx.paying_customer_id%type,
6143   p_paying_site_use_id        IN ra_customer_trx.paying_site_use_id%type,
6144   p_related_batch_source_id   IN ra_customer_trx.related_batch_source_id%type,
6145   p_default_tax_exempt_flag   IN ra_customer_trx.default_tax_exempt_flag%type,
6146   p_created_from              IN ra_customer_trx.created_from%type,
6147   p_deflt_ussgl_trx_code_context  IN
6148                            ra_customer_trx.default_ussgl_trx_code_context%type,
6149   p_deflt_ussgl_transaction_code  IN
6150                            ra_customer_trx.default_ussgl_transaction_code%type,
6151   p_old_trx_number            IN ra_customer_trx.old_trx_number%type,
6152   p_interface_header_context        IN
6153                            ra_customer_trx.interface_header_context%type,
6154   p_interface_header_attribute1     IN
6155                            ra_customer_trx.interface_header_attribute1%type,
6156   p_interface_header_attribute2     IN
6157                            ra_customer_trx.interface_header_attribute2%type,
6158   p_interface_header_attribute3     IN
6159                            ra_customer_trx.interface_header_attribute3%type,
6160   p_interface_header_attribute4     IN
6161                            ra_customer_trx.interface_header_attribute4%type,
6162   p_interface_header_attribute5     IN
6163                            ra_customer_trx.interface_header_attribute5%type,
6164   p_interface_header_attribute6     IN
6165                            ra_customer_trx.interface_header_attribute6%type,
6166   p_interface_header_attribute7     IN
6167                            ra_customer_trx.interface_header_attribute7%type,
6168   p_interface_header_attribute8     IN
6169                            ra_customer_trx.interface_header_attribute8%type,
6170   p_interface_header_attribute9     IN
6171                            ra_customer_trx.interface_header_attribute9%type,
6172   p_interface_header_attribute10    IN
6173                             ra_customer_trx.interface_header_attribute10%type,
6174   p_interface_header_attribute11    IN
6175                             ra_customer_trx.interface_header_attribute11%type,
6176   p_interface_header_attribute12    IN
6177                             ra_customer_trx.interface_header_attribute12%type,
6178   p_interface_header_attribute13    IN
6179                             ra_customer_trx.interface_header_attribute13%type,
6180   p_interface_header_attribute14    IN
6181                             ra_customer_trx.interface_header_attribute14%type,
6182   p_interface_header_attribute15    IN
6183                             ra_customer_trx.interface_header_attribute15%type,
6184   p_attribute_category              IN ra_customer_trx.attribute_category%type,
6185   p_attribute1                      IN ra_customer_trx.attribute1%type,
6186   p_attribute2                      IN ra_customer_trx.attribute2%type,
6187   p_attribute3                      IN ra_customer_trx.attribute3%type,
6188   p_attribute4                      IN ra_customer_trx.attribute4%type,
6189   p_attribute5                      IN ra_customer_trx.attribute5%type,
6190   p_attribute6                      IN ra_customer_trx.attribute6%type,
6191   p_attribute7                      IN ra_customer_trx.attribute7%type,
6192   p_attribute8                      IN ra_customer_trx.attribute8%type,
6193   p_attribute9                      IN ra_customer_trx.attribute9%type,
6194   p_attribute10                     IN ra_customer_trx.attribute10%type,
6195   p_attribute11                     IN ra_customer_trx.attribute11%type,
6196   p_attribute12                     IN ra_customer_trx.attribute12%type,
6197   p_attribute13                     IN ra_customer_trx.attribute13%type,
6198   p_attribute14                     IN ra_customer_trx.attribute14%type,
6199   p_attribute15                     IN ra_customer_trx.attribute15%type,
6200   p_legal_entity_id                 IN ra_customer_trx.legal_entity_id%type,
6201   p_payment_trxn_extension_id       IN ra_customer_trx.payment_trxn_extension_id%type,
6202   p_billing_date                    IN ra_customer_trx.billing_date%type,
6203   p_lock_trx_flag                   IN BOOLEAN DEFAULT TRUE)
6204 
6205 
6206 IS
6207 
6208   l_trx_rec    ra_customer_trx%rowtype;
6209 
6210 BEGIN
6211    arp_util.debug('arp_ct_pkg.lock_compare_cover()+');
6212 
6213   /*------------------------------------------------+
6214    |  Populate the header record with the values    |
6215    |  passed in as parameters.                      |
6216    +------------------------------------------------*/
6217 
6218    arp_ct_pkg.set_to_dummy(l_trx_rec);
6219 
6220    l_trx_rec.customer_trx_id                := p_customer_trx_id;
6221    l_trx_rec.trx_number                     := p_trx_number;
6222 
6223    --
6224    -- commented out NOCOPY posting_control_id, ra_post_loop_number so as to
6225    -- reduce the no of columns in the view
6226    --
6227    -- l_trx_rec.posting_control_id             := p_posting_control_id;
6228    -- l_trx_rec.ra_post_loop_number            := p_ra_post_loop_number;
6229 
6230    l_trx_rec.complete_flag                  := p_complete_flag;
6231    l_trx_rec.initial_customer_trx_id        := p_initial_customer_trx_id;
6232    l_trx_rec.previous_customer_trx_id       := p_previous_customer_trx_id;
6233    l_trx_rec.related_customer_trx_id        := p_related_customer_trx_id;
6234    l_trx_rec.recurred_from_trx_number       := p_recurred_from_trx_number;
6235    l_trx_rec.cust_trx_type_id               := p_cust_trx_type_id;
6236    l_trx_rec.batch_id                       := p_batch_id;
6237    l_trx_rec.batch_source_id                := p_batch_source_id;
6238    l_trx_rec.agreement_id                   := p_agreement_id;
6239    l_trx_rec.trx_date                       := p_trx_date;
6240    l_trx_rec.bill_to_customer_id            := p_bill_to_customer_id;
6241    l_trx_rec.bill_to_contact_id             := p_bill_to_contact_id;
6242    l_trx_rec.bill_to_site_use_id            := p_bill_to_site_use_id;
6243    l_trx_rec.ship_to_customer_id            := p_ship_to_customer_id;
6244    l_trx_rec.ship_to_contact_id             := p_ship_to_contact_id;
6245    l_trx_rec.ship_to_site_use_id            := p_ship_to_site_use_id;
6246    l_trx_rec.sold_to_customer_id            := p_sold_to_customer_id;
6247    l_trx_rec.sold_to_site_use_id            := p_sold_to_site_use_id;
6248    l_trx_rec.sold_to_contact_id             := p_sold_to_contact_id;
6249    l_trx_rec.customer_reference             := p_customer_reference;
6250    l_trx_rec.customer_reference_date        := p_customer_reference_date;
6251    l_trx_rec.credit_method_for_installments := p_cr_method_for_installments;
6252    l_trx_rec.credit_method_for_rules        := p_credit_method_for_rules;
6253    l_trx_rec.start_date_commitment          := p_start_date_commitment;
6254    l_trx_rec.end_date_commitment            := p_end_date_commitment;
6255    l_trx_rec.exchange_date                  := p_exchange_date;
6256    l_trx_rec.exchange_rate                  := p_exchange_rate;
6257    l_trx_rec.exchange_rate_type             := p_exchange_rate_type;
6258    l_trx_rec.customer_bank_account_id       := p_customer_bank_account_id;
6259    l_trx_rec.finance_charges                := p_finance_charges;
6260    l_trx_rec.fob_point                      := p_fob_point;
6261    l_trx_rec.comments                       := p_comments;
6262    l_trx_rec.internal_notes                 := p_internal_notes;
6263    l_trx_rec.invoice_currency_code          := p_invoice_currency_code;
6264    l_trx_rec.invoicing_rule_id              := p_invoicing_rule_id;
6265    l_trx_rec.last_printed_sequence_num      := p_last_printed_sequence_num;
6266    l_trx_rec.orig_system_batch_name         := p_orig_system_batch_name;
6267    l_trx_rec.primary_salesrep_id            := p_primary_salesrep_id;
6268    l_trx_rec.printing_count                 := p_printing_count;
6269    l_trx_rec.printing_last_printed          := p_printing_last_printed;
6270    l_trx_rec.printing_option                := p_printing_option;
6271    l_trx_rec.printing_original_date         := p_printing_original_date;
6272    -- l_trx_rec.printing_pending               := p_printing_pending;
6273    l_trx_rec.purchase_order                 := p_purchase_order;
6274    l_trx_rec.purchase_order_date            := p_purchase_order_date;
6275    l_trx_rec.purchase_order_revision        := p_purchase_order_revision;
6276    l_trx_rec.receipt_method_id              := p_receipt_method_id;
6277    l_trx_rec.remit_to_address_id            := p_remit_to_address_id;
6278    l_trx_rec.shipment_id                    := p_shipment_id;
6279    l_trx_rec.ship_date_actual               := p_ship_date_actual;
6280    l_trx_rec.ship_via                       := p_ship_via;
6281    l_trx_rec.term_id                        := p_term_id;
6282    l_trx_rec.territory_id                   := p_territory_id;
6283    l_trx_rec.waybill_number                 := p_waybill_number;
6284    l_trx_rec.status_trx                     := p_status_trx;
6285    l_trx_rec.reason_code                    := p_reason_code;
6286    l_trx_rec.doc_sequence_id                := p_doc_sequence_id;
6287    l_trx_rec.doc_sequence_value             := p_doc_sequence_value;
6288    l_trx_rec.paying_customer_id             := p_paying_customer_id;
6289    l_trx_rec.paying_site_use_id             := p_paying_site_use_id;
6290    l_trx_rec.related_batch_source_id        := p_related_batch_source_id;
6291    l_trx_rec.default_tax_exempt_flag        := p_default_tax_exempt_flag;
6292    l_trx_rec.created_from                   := p_created_from;
6293    l_trx_rec.default_ussgl_trx_code_context := p_deflt_ussgl_trx_code_context;
6294    l_trx_rec.default_ussgl_transaction_code := p_deflt_ussgl_transaction_code;
6295    l_trx_rec.old_trx_number                 := p_old_trx_number;
6296    l_trx_rec.interface_header_context       := p_interface_header_context;
6297    l_trx_rec.interface_header_attribute1    := p_interface_header_attribute1;
6298    l_trx_rec.interface_header_attribute2    := p_interface_header_attribute2;
6299    l_trx_rec.interface_header_attribute3    := p_interface_header_attribute3;
6300    l_trx_rec.interface_header_attribute4    := p_interface_header_attribute4;
6301    l_trx_rec.interface_header_attribute5    := p_interface_header_attribute5;
6302    l_trx_rec.interface_header_attribute6    := p_interface_header_attribute6;
6303    l_trx_rec.interface_header_attribute7    := p_interface_header_attribute7;
6304    l_trx_rec.interface_header_attribute8    := p_interface_header_attribute8;
6305    l_trx_rec.interface_header_attribute9    := p_interface_header_attribute9;
6306    l_trx_rec.interface_header_attribute10   := p_interface_header_attribute10;
6307    l_trx_rec.interface_header_attribute11   := p_interface_header_attribute11;
6308    l_trx_rec.interface_header_attribute12   := p_interface_header_attribute12;
6309    l_trx_rec.interface_header_attribute13   := p_interface_header_attribute13;
6310    l_trx_rec.interface_header_attribute14   := p_interface_header_attribute14;
6311    l_trx_rec.interface_header_attribute15   := p_interface_header_attribute15;
6312    l_trx_rec.attribute_category             := p_attribute_category;
6313    l_trx_rec.attribute1                     := p_attribute1;
6314    l_trx_rec.attribute2                     := p_attribute2;
6315    l_trx_rec.attribute3                     := p_attribute3;
6316    l_trx_rec.attribute4                     := p_attribute4;
6317    l_trx_rec.attribute5                     := p_attribute5;
6318    l_trx_rec.attribute6                     := p_attribute6;
6319    l_trx_rec.attribute7                     := p_attribute7;
6320    l_trx_rec.attribute8                     := p_attribute8;
6321    l_trx_rec.attribute9                     := p_attribute9;
6322    l_trx_rec.attribute10                    := p_attribute10;
6323    l_trx_rec.attribute11                    := p_attribute11;
6324    l_trx_rec.attribute12                    := p_attribute12;
6325    l_trx_rec.attribute13                    := p_attribute13;
6326    l_trx_rec.attribute14                    := p_attribute14;
6327    l_trx_rec.attribute15                    := p_attribute15;
6328    l_trx_rec.legal_entity_id                := p_legal_entity_id;
6329    /* PAYMENT_UPTAKE */
6330    l_trx_rec.payment_trxn_extension_id      := p_payment_trxn_extension_id;
6331    l_trx_rec.billing_date                   := p_billing_date;
6332 
6333   /*-----------------------------------------+
6334    |  Call the standard header table handler |
6335    +-----------------------------------------*/
6336 
6337    lock_compare_p( l_trx_rec, p_customer_trx_id, p_lock_trx_flag);
6338 
6339    arp_util.debug('arp_ct_pkg.lock_compare_cover()-');
6340 
6341 EXCEPTION
6342   WHEN OTHERS THEN
6343     arp_util.debug('EXCEPTION : arp_ct_pkg.lock_compare_cover()');
6344 
6345     arp_util.debug('----- parameters for lock_compare_cover() ' ||
6346                    '-----');
6347     arp_util.debug('p_customer_trx_id			= ' ||
6348                    TO_CHAR(p_customer_trx_id));
6349     arp_util.debug('p_trx_number			= ' ||
6350                    p_trx_number);
6351     arp_util.debug('p_posting_control_id		= ' ||
6352                    TO_CHAR(p_posting_control_id));
6353     arp_util.debug('p_ra_post_loop_number		= ' ||
6354                    p_ra_post_loop_number);
6355     arp_util.debug('p_complete_flag			= ' ||
6356                    p_complete_flag);
6357     arp_util.debug('p_initial_customer_trx_id		= ' ||
6358                    TO_CHAR(p_initial_customer_trx_id));
6359     arp_util.debug('p_previous_customer_trx_id		= ' ||
6360                    TO_CHAR(p_previous_customer_trx_id));
6361     arp_util.debug('p_related_customer_trx_id		= ' ||
6362                    TO_CHAR(p_related_customer_trx_id));
6363     arp_util.debug('p_recurred_from_trx_number		= ' ||
6364                    p_recurred_from_trx_number);
6365     arp_util.debug('p_cust_trx_type_id			= ' ||
6366                    TO_CHAR(p_cust_trx_type_id));
6367     arp_util.debug('p_batch_id				= ' ||
6368                    TO_CHAR(p_batch_id));
6369     arp_util.debug('p_batch_source_id			= ' ||
6370                    TO_CHAR(p_batch_source_id));
6371     arp_util.debug('p_agreement_id			= ' ||
6372                    TO_CHAR(p_agreement_id));
6373     arp_util.debug('p_trx_date				= ' ||
6374                    p_trx_date);
6375     arp_util.debug('p_bill_to_customer_id		= ' ||
6376                    TO_CHAR(p_bill_to_customer_id));
6377     arp_util.debug('p_bill_to_contact_id		= ' ||
6378                    TO_CHAR(p_bill_to_contact_id));
6379     arp_util.debug('p_bill_to_site_use_id		= ' ||
6380                    TO_CHAR(p_bill_to_site_use_id));
6381     arp_util.debug('p_ship_to_customer_id		= ' ||
6382                    TO_CHAR(p_ship_to_customer_id));
6383     arp_util.debug('p_ship_to_contact_id		= ' ||
6384                    TO_CHAR(p_ship_to_contact_id));
6385     arp_util.debug('p_ship_to_site_use_id		= ' ||
6386                    TO_CHAR(p_ship_to_site_use_id));
6387     arp_util.debug('p_sold_to_customer_id		= ' ||
6388                    TO_CHAR(p_sold_to_customer_id));
6389     arp_util.debug('p_sold_to_site_use_id		= ' ||
6390                    TO_CHAR(p_sold_to_site_use_id));
6391     arp_util.debug('p_sold_to_contact_id		= ' ||
6392                    TO_CHAR(p_sold_to_contact_id));
6393     arp_util.debug('p_customer_reference		= ' ||
6394                    p_customer_reference);
6395     arp_util.debug('p_customer_reference_date		= ' ||
6396                    p_customer_reference_date);
6397     arp_util.debug('p_cr_method_for_installments	= ' ||
6398                    p_cr_method_for_installments);
6399     arp_util.debug('p_credit_method_for_rules		= ' ||
6400                    p_credit_method_for_rules);
6401     arp_util.debug('p_start_date_commitment		= ' ||
6402                    p_start_date_commitment);
6403     arp_util.debug('p_end_date_commitment		= ' ||
6404                    p_end_date_commitment);
6405     arp_util.debug('p_exchange_date			= ' ||
6406                    p_exchange_date);
6407     arp_util.debug('p_exchange_rate			= ' ||
6408                    p_exchange_rate);
6409     arp_util.debug('p_exchange_rate_type		= ' ||
6410                    p_exchange_rate_type);
6411     arp_util.debug('p_customer_bank_account_id		= ' ||
6412                    TO_CHAR(p_customer_bank_account_id));
6413     arp_util.debug('p_finance_charges			= ' ||
6414                    p_finance_charges);
6415     arp_util.debug('p_fob_point				= ' ||
6416                    p_fob_point);
6417     arp_util.debug('p_comments				= ' ||
6418                    p_comments);
6419     arp_util.debug('p_internal_notes			= ' ||
6420                    p_internal_notes);
6421     arp_util.debug('p_invoice_currency_code		= ' ||
6422                    p_invoice_currency_code);
6423     arp_util.debug('p_invoicing_rule_id			= ' ||
6424                    TO_CHAR(p_invoicing_rule_id));
6425     arp_util.debug('p_last_printed_sequence_num		= ' ||
6426                    p_last_printed_sequence_num);
6427     arp_util.debug('p_orig_system_batch_name		= ' ||
6428                    p_orig_system_batch_name);
6429     arp_util.debug('p_primary_salesrep_id		= ' ||
6430                    TO_CHAR(p_primary_salesrep_id));
6431     arp_util.debug('p_printing_count			= ' ||
6432                    p_printing_count);
6433     arp_util.debug('p_printing_last_printed		= ' ||
6434                    p_printing_last_printed);
6435     arp_util.debug('p_printing_option			= ' ||
6436                    p_printing_option);
6437     arp_util.debug('p_printing_original_date		= ' ||
6438                    p_printing_original_date);
6439     arp_util.debug('p_printing_pending			= ' ||
6440                    p_printing_pending);
6441     arp_util.debug('p_purchase_order			= ' ||
6442                    p_purchase_order);
6443     arp_util.debug('p_purchase_order_date		= ' ||
6444                    p_purchase_order_date);
6445     arp_util.debug('p_purchase_order_revision		= ' ||
6446                    p_purchase_order_revision);
6447     arp_util.debug('p_receipt_method_id			= ' ||
6448                    TO_CHAR(p_receipt_method_id));
6449     arp_util.debug('p_remit_to_address_id		= ' ||
6450                    TO_CHAR(p_remit_to_address_id));
6451     arp_util.debug('p_shipment_id			= ' ||
6452                    TO_CHAR(p_shipment_id));
6453     arp_util.debug('p_ship_date_actual			= ' ||
6454                    p_ship_date_actual);
6455     arp_util.debug('p_ship_via				= ' ||
6456                    p_ship_via);
6457     arp_util.debug('p_term_due_date			= ' ||
6458                    p_term_due_date);
6459     arp_util.debug('p_term_id				= ' ||
6460                    TO_CHAR(p_term_id));
6461     arp_util.debug('p_territory_id			= ' ||
6462                    TO_CHAR(p_territory_id));
6463     arp_util.debug('p_waybill_number			= ' ||
6464                    p_waybill_number);
6465     arp_util.debug('p_status_trx			= ' ||
6466                    p_status_trx);
6467     arp_util.debug('p_reason_code			= ' ||
6468                    p_reason_code);
6469     arp_util.debug('p_doc_sequence_id			= ' ||
6470                    TO_CHAR(p_doc_sequence_id));
6471     arp_util.debug('p_doc_sequence_value		= ' ||
6472                    p_doc_sequence_value);
6473     arp_util.debug('p_paying_customer_id		= ' ||
6474                    TO_CHAR(p_paying_customer_id));
6475     arp_util.debug('p_paying_site_use_id		= ' ||
6476                    TO_CHAR(p_paying_site_use_id));
6477     arp_util.debug('p_related_batch_source_id		= ' ||
6478                    TO_CHAR(p_related_batch_source_id));
6479     arp_util.debug('p_default_tax_exempt_flag		= ' ||
6480                    p_default_tax_exempt_flag);
6481     arp_util.debug('p_created_from			= ' ||
6482                    p_created_from);
6483     arp_util.debug('p_deflt_ussgl_trx_code_context	= ' ||
6484                    p_deflt_ussgl_trx_code_context);
6485     arp_util.debug('p_deflt_ussgl_transaction_code	= ' ||
6486                    p_deflt_ussgl_transaction_code);
6487     arp_util.debug('p_old_trx_number                    = ' ||
6488                    p_old_trx_number);
6489     arp_util.debug('p_interface_header_context		= ' ||
6490                    p_interface_header_context);
6491     arp_util.debug('p_interface_header_attribute1	= ' ||
6492                    p_interface_header_attribute1);
6493     arp_util.debug('p_interface_header_attribute2	= ' ||
6494                    p_interface_header_attribute2);
6495     arp_util.debug('p_interface_header_attribute3	= ' ||
6496                    p_interface_header_attribute3);
6497     arp_util.debug('p_interface_header_attribute4	= ' ||
6498                    p_interface_header_attribute4);
6499     arp_util.debug('p_interface_header_attribute5	= ' ||
6500                    p_interface_header_attribute5);
6501     arp_util.debug('p_interface_header_attribute6	= ' ||
6502                    p_interface_header_attribute6);
6503     arp_util.debug('p_interface_header_attribute7	= ' ||
6504                   p_interface_header_attribute7);
6505     arp_util.debug('p_interface_header_attribute8	= ' ||
6506                    p_interface_header_attribute8);
6507     arp_util.debug('p_interface_header_attribute9	= ' ||
6508                    p_interface_header_attribute9);
6509     arp_util.debug('p_interface_header_attribute10	= ' ||
6510                    p_interface_header_attribute10);
6511     arp_util.debug('p_interface_header_attribute11	= ' ||
6512                    p_interface_header_attribute11);
6513     arp_util.debug('p_interface_header_attribute12	= ' ||
6514                    p_interface_header_attribute12);
6515     arp_util.debug('p_interface_header_attribute13	= ' ||
6516                    p_interface_header_attribute13);
6517     arp_util.debug('p_interface_header_attribute14	= ' ||
6518                    p_interface_header_attribute14);
6519     arp_util.debug('p_interface_header_attribute15	= ' ||
6520                    p_interface_header_attribute15);
6521     arp_util.debug('p_attribute_category		= ' ||
6522                    p_attribute_category);
6523     arp_util.debug('p_attribute1			= ' ||
6524                    p_attribute1);
6525     arp_util.debug('p_attribute2			= ' ||
6526                    p_attribute2);
6527     arp_util.debug('p_attribute3			= ' ||
6528                    p_attribute3);
6529     arp_util.debug('p_attribute4			= ' ||
6530                    p_attribute4);
6531     arp_util.debug('p_attribute5			= ' ||
6532                    p_attribute5);
6533     arp_util.debug('p_attribute6			= ' ||
6534                    p_attribute6);
6535     arp_util.debug('p_attribute7			= ' ||
6536                    p_attribute7);
6537     arp_util.debug('p_attribute8			= ' ||
6538                    p_attribute8);
6539     arp_util.debug('p_attribute9			= ' ||
6540                    p_attribute9);
6541     arp_util.debug('p_attribute10			= ' ||
6542                    p_attribute10);
6543     arp_util.debug('p_attribute11			= ' ||
6544                    p_attribute11);
6545     arp_util.debug('p_attribute12			= ' ||
6546                    p_attribute12);
6547     arp_util.debug('p_attribute13			= ' ||
6548                    p_attribute13);
6549     arp_util.debug('p_attribute14			= ' ||
6550                    p_attribute14);
6551     arp_util.debug('p_attribute15			= ' ||
6552                    p_attribute15);
6553 
6554     RAISE;
6555 
6556 END;
6557 
6558 /*===========================================================================+
6559  | FUNCTION                                                                  |
6560  |    get_text_dummy							     |
6561  |                                                                           |
6562  | DESCRIPTION                                                               |
6563  |    This procedure returns the value of the AR_TEXT_DUMMY constant.        |
6564  |    									     |
6565  | SCOPE - PUBLIC                                                            |
6566  |                                                                           |
6567  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
6568  |    arp_util.debug                                                         |
6569  |                                                                           |
6570  | ARGUMENTS  : IN:                                                          |
6571  |                    None						     |
6572  |              OUT:                                                         |
6573  |                    None						     |
6574  |                                                                           |
6575  | RETURNS    : value of AR_TEXT_DUMMY                                       |
6576  |                                                                           |
6577  | NOTES                                                                     |
6578  |                                                                           |
6579  | MODIFICATION HISTORY                                                      |
6580  |     18-AUG-95  Martin Johnson      Created                                |
6581  |                                                                           |
6582  +===========================================================================*/
6583 
6584 FUNCTION get_text_dummy(p_null IN NUMBER DEFAULT null) RETURN varchar2 IS
6585 
6586 BEGIN
6587 
6588     arp_util.debug('arp_ct_pkg.get_text_dummy()+');
6589 
6590     arp_util.debug('arp_ct_pkg.get_text_dummy()-');
6591 
6592     return(AR_TEXT_DUMMY);
6593 
6594 EXCEPTION
6595     WHEN OTHERS THEN
6596         arp_util.debug('EXCEPTION:  arp_ct_pkg.get_text_dummy()');
6597         RAISE;
6598 
6599 END;
6600 
6601 
6602 
6603 /*===========================================================================+
6604  | FUNCTION                                                                  |
6605  |    get_flag_dummy							     |
6606  |                                                                           |
6607  | DESCRIPTION                                                               |
6608  |    This procedure returns the value of the AR_FLAG_DUMMY constant.        |
6609  |    									     |
6610  | SCOPE - PUBLIC                                                            |
6611  |                                                                           |
6612  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
6613  |    arp_util.debug                                                         |
6614  |                                                                           |
6615  | ARGUMENTS  : IN:                                                          |
6616  |                    None						     |
6617  |              OUT:                                                         |
6618  |                    None						     |
6619  |                                                                           |
6620  | RETURNS    : value of AR_FLAG_DUMMY                                       |
6621  |                                                                           |
6622  | NOTES                                                                     |
6623  |                                                                           |
6624  | MODIFICATION HISTORY                                                      |
6625  |     19-JUL-95  Martin Johnson      Created                                |
6626  |                                                                           |
6627  +===========================================================================*/
6628 
6629 FUNCTION get_flag_dummy(p_null IN NUMBER DEFAULT null) RETURN varchar2 IS
6630 
6631 BEGIN
6632 
6633     arp_util.debug('arp_ct_pkg.get_flag_dummy()+');
6634 
6635     arp_util.debug('arp_ct_pkg.get_flag_dummy()-');
6636 
6637     return(AR_FLAG_DUMMY);
6638 
6639 EXCEPTION
6640     WHEN OTHERS THEN
6641         arp_util.debug('EXCEPTION:  arp_ct_pkg.get_flag_dummy()');
6642         RAISE;
6643 
6644 END;
6645 
6646 /*===========================================================================+
6647  | FUNCTION                                                                  |
6648  |    get_number_dummy							     |
6649  |                                                                           |
6650  | DESCRIPTION                                                               |
6651  |    This procedure returns the value of the AR_NUMBER DUMMY constant.      |
6652  |    									     |
6653  | SCOPE - PUBLIC                                                            |
6654  |                                                                           |
6655  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
6656  |    arp_util.debug                                                         |
6657  |                                                                           |
6658  | ARGUMENTS  : IN:                                                          |
6659  |                    None						     |
6660  |              OUT:                                                         |
6661  |                    None						     |
6662  |                                                                           |
6663  | RETURNS    : value of AR_NUMBER_DUMMY                                     |
6664  |                                                                           |
6665  | NOTES                                                                     |
6666  |                                                                           |
6667  | MODIFICATION HISTORY                                                      |
6668  |     19-JUL-95  Martin Johnson      Created                                |
6669  |                                                                           |
6670  +===========================================================================*/
6671 
6672 FUNCTION get_number_dummy(p_null IN NUMBER DEFAULT null) RETURN number IS
6673 
6674 BEGIN
6675 
6676     arp_util.debug('arp_ct_pkg.get_number_dummy()+');
6677 
6678     arp_util.debug('arp_ct_pkg.get_number_dummy()-');
6679 
6680     return(AR_NUMBER_DUMMY);
6681 
6682 EXCEPTION
6683     WHEN OTHERS THEN
6684         arp_util.debug('EXCEPTION:  arp_ct_pkg.get_number_dummy()');
6685         RAISE;
6686 
6687 END;
6688 
6689 /*===========================================================================+
6690  | FUNCTION                                                                  |
6691  |    get_date_dummy							     |
6692  |                                                                           |
6693  | DESCRIPTION                                                               |
6694  |    This procedure returns the value of the AR_DATE_DUMMY constant.        |
6695  |    									     |
6696  | SCOPE - PUBLIC                                                            |
6697  |                                                                           |
6698  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
6699  |    arp_util.debug                                                         |
6700  |                                                                           |
6701  | ARGUMENTS  : IN:                                                          |
6702  |                    None						     |
6703  |              OUT:                                                         |
6704  |                    None						     |
6705  |                                                                           |
6706  | RETURNS    : value of AR_DATE_DUMMY                                       |
6707  |                                                                           |
6708  | NOTES                                                                     |
6709  |                                                                           |
6710  | MODIFICATION HISTORY                                                      |
6711  |     19-JUL-95  Martin Johnson      Created                                |
6712  |                                                                           |
6713  +===========================================================================*/
6714 
6715 FUNCTION get_date_dummy(p_null IN NUMBER DEFAULT null) RETURN date IS
6716 
6717 BEGIN
6718 
6719     arp_util.debug('arp_ct_pkg.get_date_dummy()+');
6720 
6721     arp_util.debug('arp_ct_pkg.get_date_dummy()-');
6722 
6723     return(AR_DATE_DUMMY);
6724 
6725 EXCEPTION
6726     WHEN OTHERS THEN
6727         arp_util.debug('EXCEPTION:  arp_ct_pkg.get_date_dummy()');
6728         RAISE;
6729 
6730 END;
6731 
6732 
6733 /*===========================================================================+
6734  | PROCEDURE                                                                 |
6735  |    update_tax				          		     |
6736  |                                                                           |
6737  | DESCRIPTION                                                               |
6738  |    This procedure updates the ra_customer_trx row identified by the       |
6739  |    p_customer_trx_id parameter.					     |
6740  |                                                                           |
6741  | SCOPE - PUBLIC                                                            |
6742  |                                                                           |
6743  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
6744  |    arp_util.debug                                                         |
6745  |                                                                           |
6746  | ARGUMENTS  : IN:                                                          |
6747  |                    p_customer_trx_id	- identifies the row to update	     |
6748  |                    p_trx_rec       - contains the new column values       |
6749  |              OUT:                                                         |
6750  |                    None						     |
6751  |                                                                           |
6752  | RETURNS    : NONE                                                         |
6753  |                                                                           |
6754  | NOTES                                                                     |
6755  |     set_to_dummy must be called before the values in p_trx_rec are        |
6756  |     changed and this function is called.				     |
6757  |                                                                           |
6758  | MODIFICATION HISTORY                                                      |
6759  |     20-DEC-96  Vikas Mahajan     Created                                  |
6760  |     13-AUG-97  Govind Jayanth    New parameter to check enforcement of tax|
6761  |                                  from Natural Account. If TRUE, call the  |
6762  |                                  new 'get_default_tax_code()' to default  |
6763  |                                  tax code from GL natural account.        |
6764  |     21-AUG-02 B Chatterjee       Bug2503883 Changed the nvl value of      |
6765  |                                  autotax to 'N'                           |
6766  |     07-FEB-07 M Raymond       5594741 - Updated parameters on
6767  |                                  get_default_tax_classification to
6768  |                                  correctly differentiate between org
6769  |                                  and warehouse_id
6770  +===========================================================================*/
6771 
6772 
6773 PROCEDURE update_tax( p_ship_to_site_use_id IN ra_customer_trx.ship_to_site_use_id%type,
6774 		      p_bill_to_site_use_id IN ra_customer_trx.bill_to_site_use_id%type,
6775 		      p_trx_date IN ra_customer_trx.trx_date%type,
6776 		      p_cust_trx_type_id IN ra_customer_trx.cust_trx_type_id%type,
6777                       p_customer_trx_id  IN ra_customer_trx.customer_trx_id%type,
6778                       P_TAX_AFFECT_FLAG in varchar2,
6779                       p_enforce_nat_acc_flag IN BOOLEAN) IS
6780 
6781 CURSOR  update_header_lines IS
6782         SELECT customer_trx_line_id,
6783                inventory_item_id,
6784                memo_line_id,
6785                warehouse_id
6786         FROM   ra_customer_trx_lines
6787         WHERE  customer_trx_id = p_customer_trx_id
6788         AND    line_type = 'LINE';--3872371
6789 
6790 l_tax_code            VARCHAR2(50);
6791 l_vat_tax_id          NUMBER ;
6792 l_organization_id     NUMBER ;
6793 l_warehouse_id        NUMBER;
6794 l_sob_id              NUMBER;
6795 l_customer_trx_line_id  ra_customer_trx_lines.customer_trx_line_id%type;
6796 l_inventory_item_id     ra_customer_trx_lines.inventory_item_id%type;
6797 l_autotax              ra_customer_trx_lines.autotax%type;
6798 l_amt_incl_tax_flag        ar_vat_tax.amount_includes_tax_flag%type;
6799 l_amt_incl_tax_override    ar_vat_tax.amount_includes_tax_override%type;
6800 /* bug fix : 1070949 */
6801 l_tax_calculation_flag    varchar2(1);
6802 
6803 l_event_class_code   VARCHAR2(80);   /* Etax */
6804 l_event_type_code    VARCHAR2(80);   /* Etax */
6805 l_success BOOLEAN;
6806 
6807 BEGIN
6808 
6809    arp_util.debug('arp_ct_pkg.update_tax()+  ' ||
6810                       to_char(sysdate, 'HH:MI:SS'));
6811 
6812   /*------------------------------------------------+
6813    |  Call Tax API to get the value of vat_tax_id   |
6814    +------------------------------------------------*/
6815 
6816    l_warehouse_id := oe_profile.value('SO_ORGANIZATION_ID');
6817    l_organization_id := arp_global.sysparam.org_id;
6818    l_sob_id          := arp_global.set_of_books_id;
6819 
6820    arp_util.debug('default warehouse_id  ' || to_char(l_warehouse_id));
6821    arp_util.debug('ship_to_site_use_id   ' || to_char(p_ship_to_site_use_id ));
6822    arp_util.debug('bill_to_site_use_id   ' || to_char(p_bill_to_site_use_id ));
6823    arp_util.debug('organization_id       ' || to_char(l_organization_id));
6824    arp_util.debug('set_of_books_id       ' || to_char(arp_global.set_of_books_id ));
6825    arp_util.debug('trx_date              ' || to_char(p_trx_date ));
6826    arp_util.debug('p_affect_tax_flag     ' || p_tax_affect_flag);
6827    l_autotax := 'Y';
6828 
6829 /* bug fix : 1070949 */
6830    BEGIN
6831       SELECT tax_calculation_flag
6832       INTO l_tax_calculation_flag
6833       FROM RA_CUST_TRX_TYPES
6834       WHERE cust_trx_type_id = p_cust_trx_type_id ;
6835    EXCEPTION
6836       WHEN OTHERS THEN
6837           arp_util.debug('arp_ct_pkd.update_tax - exception for select');
6838    END;
6839 
6840    l_success := arp_etax_util.get_event_information(
6841                       p_customer_trx_id => p_customer_trx_id,
6842                       p_action => 'UPDATE',
6843                       p_event_class_code => l_event_class_code,
6844                       p_event_type_code => l_event_type_code);
6845 
6846 
6847    IF (p_enforce_nat_acc_flag)
6848    THEN
6849 	   /*
6850             * Enforce tax code from GL natural account for all lines
6851             * including those with manually updated tax codes.
6852             */
6853 
6854 	   For line in update_header_lines
6855 	   LOOP
6856 	     BEGIN
6857 
6858                 /*------------------------------------------------+
6859                  | ETax:  get the event_class_code and then call  |
6860                  | get_default_tax_classification to get the      |
6861                  | tax code                                       |
6862                  +------------------------------------------------*/
6863 
6864 
6865                    arp_etax_util.get_default_tax_classification(
6866                            p_ship_to_site_use_id => p_ship_to_site_use_id,
6867                            p_bill_to_site_use_id => p_bill_to_site_use_id,
6868                            p_inv_item_id         => line.inventory_item_id,
6869                            p_org_id              => l_organization_id,
6870                            p_warehouse_id        =>
6871                                NVL(line.warehouse_id, l_warehouse_id),
6872                            p_sob_id              => l_sob_id,
6873                            p_trx_date            => p_trx_date,
6874                            p_trx_type_id         => p_cust_trx_type_id,
6875                            p_cust_trx_id         => p_customer_trx_id,
6876                            p_cust_trx_line_id    => line.customer_trx_line_id,
6877                            p_customer_id =>  NULL,
6878                            p_memo_line_id        => line.memo_line_id,
6879                            p_entity_code         => 'RA_CUSTOMER_TRX',
6880                            p_event_class_code    => l_event_class_code,
6881                            p_function_short_name => 'GL_ACCT_FIXUP',
6882                            p_tax_classification_code => l_tax_code );
6883 
6884 		 arp_util.debug('line.inventory_item_id  ' ||
6885                                 to_char(line.inventory_item_id ));
6886                  arp_util.debug('line.warehouse_id ' ||
6887                                 to_char(line.warehouse_id));
6888 		 arp_util.debug('returned tax_code/classification:  ' || l_tax_code);
6889 
6890 	      EXCEPTION
6891 	      WHEN NO_DATA_FOUND THEN
6892 		   l_autotax    := 'Y';
6893                    l_tax_code := NULL;
6894 	      END;
6895 
6896 	      IF l_tax_code IS NOT NULL
6897 	      THEN
6898 		---  UPDATE RA_CUSTOMER_TRX_LINES with  new
6899                 ---  tax_code and autotax='Y'
6900 		 update ra_customer_trx_lines
6901                  set tax_classification_code = l_tax_code,
6902 		     autotax    = l_autotax
6903                  where customer_trx_line_id = line.customer_trx_line_id;
6904 	      END IF;
6905 	   END LOOP;
6906    ELSE
6907    	  /* Existing logic */
6908 	   For line in update_header_lines
6909 	   LOOP
6910 	     BEGIN
6911 		/*------------------------------------------------+
6912 		 |  Call Tax API to get the value of vat_tax_id   |
6913 		 +------------------------------------------------*/
6914 
6915                IF (l_tax_calculation_flag = 'Y') THEN
6916                    arp_etax_util.get_default_tax_classification(
6917                            p_ship_to_site_use_id => p_ship_to_site_use_id,
6918                            p_bill_to_site_use_id => p_bill_to_site_use_id,
6919                            p_inv_item_id         => line.inventory_item_id,
6920                            p_org_id              => l_organization_id,
6921                            p_sob_id              => l_sob_id,
6922                            p_warehouse_id        =>
6923                              NVL(line.warehouse_id, l_warehouse_id),
6924                            p_trx_date            => p_trx_date,
6925                            p_trx_type_id         => p_cust_trx_type_id,
6926                            p_cust_trx_id         => p_customer_trx_id,
6927                            p_cust_trx_line_id    => line.customer_trx_line_id,
6928                            p_customer_id         =>  NULL,
6929                            p_memo_line_id        => line.memo_line_id,
6930                            p_entity_code         => 'RA_CUSTOMER_TRX',
6931                            p_event_class_code    => l_event_class_code,
6932                            p_function_short_name => 'ACCT_DIST',
6933                            p_tax_classification_code => l_tax_code );
6934                ELSE
6935                    l_tax_code := NULL;
6936                    l_autotax    := 'Y';
6937                END IF;
6938 
6939 		 arp_util.debug('line.inventory_item_id  ' ||
6940                                 to_char(line.inventory_item_id ));
6941                  arp_util.debug('line.warehouse_id       ' ||
6942                                 to_char(line.warehouse_id));
6943 		 arp_util.debug('returned tax_code/classif:  ' || l_tax_code);
6944 
6945 	      EXCEPTION
6946 	      WHEN NO_DATA_FOUND THEN
6947                   l_tax_code := NULL;
6948 		  l_autotax    := 'Y';
6949 	      END;
6950 
6951 		 update ra_customer_trx_lines
6952                    set tax_classification_code = l_tax_code,
6953 		       autotax    = l_autotax
6954 		 where customer_trx_line_id = line.customer_trx_line_id;
6955 
6956 	   END LOOP;
6957    END IF;
6958    arp_util.debug('arp_ct_pkg.update_tax()-  ' ||
6959                       to_char(sysdate, 'HH:MI:SS'));
6960 
6961 
6962 EXCEPTION
6963     WHEN OTHERS THEN
6964         arp_util.debug('EXCEPTION:  arp_ct_pkg.update_tax()');
6965         RAISE;
6966 END ;
6967 
6968 /*===========================================================================+
6969  | PROCEDURE                                                                 |
6970  |    lock_compare_cover      (Overloaded)                                   |
6971  |                                                                           |
6972  | DESCRIPTION                                                               |
6973  |    Converts column parameters to a transaction header record and          |
6974  |    locks the transaction header.                                          |
6975  |                                                                           |
6976  | SCOPE - PUBLIC                                                            |
6977  |                                                                           |
6978  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED                                   |
6979  |    arp_util.debug                                                         |
6980  |                                                                           |
6981  | ARGUMENTS  : IN:                                                          |
6982  |                  p_customer_trx_id				      	     |
6983  |                  p_trx_number					      	     |
6984  |                  p_posting_control_id				     		     |
6985  |                  p_ra_post_loop_number				     		     |
6986  |                  p_complete_flag					     		     |
6987  |                  p_initial_customer_trx_id			     		     |
6988  |                  p_previous_customer_trx_id			     		     |
6989  |                  p_related_customer_trx_id			     		     |
6990  |                  p_recurred_from_trx_number			     		     |
6991  |                  p_cust_trx_type_id				     		     |
6992  |                  p_batch_id					     		     |
6993  |                  p_batch_source_id	     			     		     |
6994  |                  p_agreement_id					     		     |
6995  |                  p_trx_date					     		     |
6996  |                  p_bill_to_customer_id				     |
6997  |                  p_bill_to_contact_id				     |
6998  |                  p_bill_to_site_use_id				     |
6999  |                  p_ship_to_customer_id				     |
7000  |                  p_ship_to_contact_id				     |
7001  |                  p_ship_to_site_use_id				     |
7002  |                  p_sold_to_customer_id				     |
7003  |                  p_sold_to_site_use_id				     |
7004  |                  p_sold_to_contact_id				     |
7005  |                  p_customer_reference				     |
7006  |                  p_customer_reference_date				     |
7007  |                  p_cr_method_for_installments			     |
7008  |                  p_credit_method_for_rules				     |
7009  |                  p_start_date_commitment				     |
7010  |                  p_end_date_commitment				     |
7011  |                  p_exchange_date					     |
7012  |                  p_exchange_rate					     |
7013  |                  p_exchange_rate_type				     |
7014  |                  p_customer_bank_account_id				     |
7015  |                  p_finance_charges					     |
7016  |                  p_fob_point						     |
7017  |                  p_comments						     |
7018  |                  p_internal_notes					     |
7019  |                  p_invoice_currency_code				     |
7020  |                  p_invoicing_rule_id					     |
7021  |                  p_last_printed_sequence_num				     |
7022  |                  p_orig_system_batch_name				     |
7023  |                  p_primary_salesrep_id				     |
7024  |                  p_printing_count					     |
7025  |                  p_printing_last_printed				     |
7026  |                  p_printing_option					     |
7027  |                  p_printing_original_date				     |
7028  |                  p_printing_pending					     |
7029  |                  p_purchase_order					     |
7030  |                  p_purchase_order_date				     |
7031  |                  p_purchase_order_revision				     |
7032  |                  p_receipt_method_id					     |
7033  |                  p_remit_to_address_id				     |
7034  |                  p_shipment_id					     |
7035  |                  p_ship_date_actual					     |
7036  |                  p_ship_via						     |
7037  |                  p_term_due_date					     |
7038  |                  p_term_id						     |
7039  |                  p_territory_id					     |
7040  |                  p_waybill_number					     |
7041  |                  p_status_trx					     |
7042  |                  p_reason_code					     |
7043  |                  p_doc_sequence_id					     |
7044  |                  p_doc_sequence_value				     |
7045  |                  p_paying_customer_id				     |
7046  |                  p_paying_site_use_id				     |
7047  |                  p_related_batch_source_id				     |
7048  |                  p_default_tax_exempt_flag				     |
7049  |                  p_created_from					     |
7050  |                  p_deflt_ussgl_trx_code_context			     |
7051  |                  p_deflt_ussgl_transaction_code			     |
7052  |                  p_old_trx_number                                         |
7053  |                  p_interface_header_context				     |
7054  |                  p_interface_header_attribute1			     |
7055  |                  p_interface_header_attribute2			     |
7056  |                  p_interface_header_attribute3			     |
7057  |                  p_interface_header_attribute4			     |
7058  |                  p_interface_header_attribute5			     |
7059  |                  p_interface_header_attribute6			     |
7060  |                  p_interface_header_attribute7			     |
7061  |                  p_interface_header_attribute8			     |
7062  |                  p_interface_header_attribute9			     |
7063  |                  p_interface_header_attribute10			     |
7064  |                  p_interface_header_attribute11			     |
7065  |                  p_interface_header_attribute12			     |
7066  |                  p_interface_header_attribute13			     |
7067  |                  p_interface_header_attribute14			     |
7068  |                  p_interface_header_attribute15			     |
7069  |                  p_attribute_category				           |
7070  |                  p_attribute1					           |
7071  |                  p_attribute2					           |
7072  |                  p_attribute3					           |
7073  |                  p_attribute4					           |
7074  |                  p_attribute5					           |
7075  |                  p_attribute6					           |
7076  |                  p_attribute7					           |
7077  |                  p_attribute8					           |
7078  |                  p_attribute9					           |
7079  |                  p_attribute10					           |
7080  |                  p_attribute11					           |
7081  |                  p_attribute12					           |
7082  |                  p_attribute13					           |
7083  |                  p_attribute14					           |
7084  |                  p_attribute15					           |
7085  |                  p_global_attribute_category				           |
7086  |                  p_global_attribute1					           |
7087  |                  p_global_attribute2					           |
7088  |                  p_global_attribute3					           |
7089  |                  p_global_attribute4					           |
7090  |                  p_global_attribute5					           |
7091  |                  p_global_attribute6					           |
7092  |                  p_global_attribute7					           |
7093  |                  p_global_attribute8					           |
7094  |                  p_global_attribute9					           |
7095  |                  p_global_attribute10					           |
7096  |                  p_global_attribute11					           |
7097  |                  p_global_attribute12					           |
7098  |                  p_global_attribute13					           |
7099  |                  p_global_attribute14					           |
7100  |                  p_global_attribute15					           |
7101  |                  p_global_attribute16					           |
7102  |                  p_global_attribute17					           |
7103  |                  p_global_attribute18					           |
7104  |                  p_global_attribute19					           |
7105  |                  p_global_attribute20					           |
7106  |                  p_global_attribute21					           |
7107  |                  p_global_attribute22					           |
7108  |                  p_global_attribute23					           |
7109  |                  p_global_attribute24					           |
7110  |                  p_global_attribute25					           |
7111  |                  p_global_attribute26					           |
7112  |                  p_global_attribute27					           |
7113  |                  p_global_attribute28					           |
7114  |                  p_global_attribute29					           |
7115  |                  p_global_attribute30					           |
7116  |                                                                           |
7117  |              OUT:                                                         |
7118  |                  None                                                     |
7119  |          IN/ OUT:                                                         |
7120  |                  None                                                     |
7121  |                                                                           |
7122  | RETURNS    : NONE                                                         |
7123  |                                                                           |
7124  | NOTES                                                                     |
7125  |                                                                           |
7126  | MODIFICATION HISTORY                                                      |
7127  |     20-Jun-2002  Sahana      Created for Bug2427456. Overloaded version.  |
7128  |                              Global parameters are also passed.           |
7129  +===========================================================================*/
7130 
7131 PROCEDURE lock_compare_cover(
7132   p_customer_trx_id   IN ra_customer_trx.customer_trx_id%type,
7133   p_trx_number                IN ra_customer_trx.trx_number%type,
7134   p_posting_control_id        IN ra_customer_trx.posting_control_id%type,
7135   p_ra_post_loop_number       IN ra_customer_trx.ra_post_loop_number%type,
7136   p_complete_flag             IN ra_customer_trx.complete_flag%type,
7137   p_initial_customer_trx_id   IN ra_customer_trx.initial_customer_trx_id%type,
7138   p_previous_customer_trx_id  IN ra_customer_trx.previous_customer_trx_id%type,
7139   p_related_customer_trx_id   IN ra_customer_trx.related_customer_trx_id%type,
7140   p_recurred_from_trx_number  IN ra_customer_trx.recurred_from_trx_number%type,
7141   p_cust_trx_type_id          IN ra_customer_trx.cust_trx_type_id%type,
7142   p_batch_id                  IN ra_customer_trx.batch_id%type,
7143   p_batch_source_id           IN ra_customer_trx.batch_source_id%type,
7144   p_agreement_id              IN ra_customer_trx.agreement_id%type,
7145   p_trx_date                  IN ra_customer_trx.trx_date%type,
7146   p_bill_to_customer_id       IN ra_customer_trx.bill_to_customer_id%type,
7147   p_bill_to_contact_id        IN ra_customer_trx.bill_to_contact_id%type,
7148   p_bill_to_site_use_id       IN ra_customer_trx.bill_to_site_use_id%type,
7149   p_ship_to_customer_id       IN ra_customer_trx.ship_to_customer_id%type,
7150   p_ship_to_contact_id        IN ra_customer_trx.ship_to_contact_id%type,
7151   p_ship_to_site_use_id       IN ra_customer_trx.ship_to_site_use_id%type,
7152   p_sold_to_customer_id       IN ra_customer_trx.sold_to_customer_id%type,
7153   p_sold_to_site_use_id       IN ra_customer_trx.sold_to_site_use_id%type,
7154   p_sold_to_contact_id        IN ra_customer_trx.sold_to_contact_id%type,
7155   p_customer_reference        IN ra_customer_trx.customer_reference%type,
7156   p_customer_reference_date   IN ra_customer_trx.customer_reference_date%type,
7157   p_cr_method_for_installments IN
7158                           ra_customer_trx.credit_method_for_installments%type,
7159   p_credit_method_for_rules   IN ra_customer_trx.credit_method_for_rules%type,
7160   p_start_date_commitment     IN ra_customer_trx.start_date_commitment%type,
7161   p_end_date_commitment       IN ra_customer_trx.end_date_commitment%type,
7162   p_exchange_date             IN ra_customer_trx.exchange_date%type,
7163   p_exchange_rate             IN ra_customer_trx.exchange_rate%type,
7164   p_exchange_rate_type        IN ra_customer_trx.exchange_rate_type%type,
7165   p_customer_bank_account_id  IN ra_customer_trx.customer_bank_account_id%type,
7166   p_finance_charges           IN ra_customer_trx.finance_charges%type,
7167   p_fob_point                 IN ra_customer_trx.fob_point%type,
7168   p_comments                  IN ra_customer_trx.comments%type,
7169   p_internal_notes            IN ra_customer_trx.internal_notes%type,
7170   p_invoice_currency_code     IN ra_customer_trx.invoice_currency_code%type,
7171   p_invoicing_rule_id         IN ra_customer_trx.invoicing_rule_id%type,
7172   p_last_printed_sequence_num IN
7173                                 ra_customer_trx.last_printed_sequence_num%type,
7174   p_orig_system_batch_name    IN ra_customer_trx.orig_system_batch_name%type,
7175   p_primary_salesrep_id       IN ra_customer_trx.primary_salesrep_id%type,
7176   p_printing_count            IN ra_customer_trx.printing_count%type,
7177   p_printing_last_printed     IN ra_customer_trx.printing_last_printed%type,
7178   p_printing_option           IN ra_customer_trx.printing_option%type,
7179   p_printing_original_date    IN ra_customer_trx.printing_original_date%type,
7180   p_printing_pending          IN ra_customer_trx.printing_pending%type,
7181   p_purchase_order            IN ra_customer_trx.purchase_order%type,
7182   p_purchase_order_date       IN ra_customer_trx.purchase_order_date%type,
7183   p_purchase_order_revision   IN ra_customer_trx.purchase_order_revision%type,
7184   p_receipt_method_id         IN ra_customer_trx.receipt_method_id%type,
7185   p_remit_to_address_id       IN ra_customer_trx.remit_to_address_id%type,
7186   p_shipment_id               IN ra_customer_trx.shipment_id%type,
7187   p_ship_date_actual          IN ra_customer_trx.ship_date_actual%type,
7188   p_ship_via                  IN ra_customer_trx.ship_via%type,
7189   p_term_due_date             IN ra_customer_trx.term_due_date%type,
7190   p_term_id                   IN ra_customer_trx.term_id%type,
7191   p_territory_id              IN ra_customer_trx.territory_id%type,
7192   p_waybill_number            IN ra_customer_trx.waybill_number%type,
7193   p_status_trx                IN ra_customer_trx.status_trx%type,
7194   p_reason_code               IN ra_customer_trx.reason_code%type,
7195   p_doc_sequence_id           IN ra_customer_trx.doc_sequence_id%type,
7196   p_doc_sequence_value        IN ra_customer_trx.doc_sequence_value%type,
7197   p_paying_customer_id        IN ra_customer_trx.paying_customer_id%type,
7198   p_paying_site_use_id        IN ra_customer_trx.paying_site_use_id%type,
7199   p_related_batch_source_id   IN ra_customer_trx.related_batch_source_id%type,
7200   p_default_tax_exempt_flag   IN ra_customer_trx.default_tax_exempt_flag%type,
7201   p_created_from              IN ra_customer_trx.created_from%type,
7202   p_deflt_ussgl_trx_code_context  IN
7203                            ra_customer_trx.default_ussgl_trx_code_context%type,
7204   p_deflt_ussgl_transaction_code  IN
7205                            ra_customer_trx.default_ussgl_transaction_code%type,
7206   p_old_trx_number            IN ra_customer_trx.old_trx_number%type,
7207   p_interface_header_context        IN
7208                            ra_customer_trx.interface_header_context%type,
7209   p_interface_header_attribute1     IN
7210                            ra_customer_trx.interface_header_attribute1%type,
7211   p_interface_header_attribute2     IN
7212                            ra_customer_trx.interface_header_attribute2%type,
7213   p_interface_header_attribute3     IN
7214                            ra_customer_trx.interface_header_attribute3%type,
7215   p_interface_header_attribute4     IN
7216                            ra_customer_trx.interface_header_attribute4%type,
7217   p_interface_header_attribute5     IN
7218                            ra_customer_trx.interface_header_attribute5%type,
7219   p_interface_header_attribute6     IN
7220                            ra_customer_trx.interface_header_attribute6%type,
7221   p_interface_header_attribute7     IN
7222                            ra_customer_trx.interface_header_attribute7%type,
7223   p_interface_header_attribute8     IN
7224                            ra_customer_trx.interface_header_attribute8%type,
7225   p_interface_header_attribute9     IN
7226                            ra_customer_trx.interface_header_attribute9%type,
7227   p_interface_header_attribute10    IN
7228                             ra_customer_trx.interface_header_attribute10%type,
7229   p_interface_header_attribute11    IN
7230                             ra_customer_trx.interface_header_attribute11%type,
7231   p_interface_header_attribute12    IN
7232                             ra_customer_trx.interface_header_attribute12%type,
7233   p_interface_header_attribute13    IN
7234                             ra_customer_trx.interface_header_attribute13%type,
7235   p_interface_header_attribute14    IN
7236                             ra_customer_trx.interface_header_attribute14%type,
7237   p_interface_header_attribute15    IN
7238                             ra_customer_trx.interface_header_attribute15%type,
7239   p_attribute_category              IN ra_customer_trx.attribute_category%type,
7240   p_attribute1                      IN ra_customer_trx.attribute1%type,
7241   p_attribute2                      IN ra_customer_trx.attribute2%type,
7242   p_attribute3                      IN ra_customer_trx.attribute3%type,
7243   p_attribute4                      IN ra_customer_trx.attribute4%type,
7244   p_attribute5                      IN ra_customer_trx.attribute5%type,
7245   p_attribute6                      IN ra_customer_trx.attribute6%type,
7246   p_attribute7                      IN ra_customer_trx.attribute7%type,
7247   p_attribute8                      IN ra_customer_trx.attribute8%type,
7248   p_attribute9                      IN ra_customer_trx.attribute9%type,
7249   p_attribute10                     IN ra_customer_trx.attribute10%type,
7250   p_attribute11                     IN ra_customer_trx.attribute11%type,
7251   p_attribute12                     IN ra_customer_trx.attribute12%type,
7252   p_attribute13                     IN ra_customer_trx.attribute13%type,
7253   p_attribute14                     IN ra_customer_trx.attribute14%type,
7254   p_attribute15                     IN ra_customer_trx.attribute15%type,
7255   p_global_attribute_category              IN ra_customer_trx.global_attribute_category%type,
7256   p_global_attribute1                      IN ra_customer_trx.global_attribute1%type,
7257   p_global_attribute2                      IN ra_customer_trx.global_attribute2%type,
7258   p_global_attribute3                      IN ra_customer_trx.global_attribute3%type,
7259   p_global_attribute4                      IN ra_customer_trx.global_attribute4%type,
7260   p_global_attribute5                      IN ra_customer_trx.global_attribute5%type,
7261   p_global_attribute6                      IN ra_customer_trx.global_attribute6%type,
7262   p_global_attribute7                      IN ra_customer_trx.global_attribute7%type,
7263   p_global_attribute8                      IN ra_customer_trx.global_attribute8%type,
7264   p_global_attribute9                      IN ra_customer_trx.global_attribute9%type,
7265   p_global_attribute10                     IN ra_customer_trx.global_attribute10%type,
7266   p_global_attribute11                     IN ra_customer_trx.global_attribute11%type,
7267   p_global_attribute12                     IN ra_customer_trx.global_attribute12%type,
7268   p_global_attribute13                     IN ra_customer_trx.global_attribute13%type,
7269   p_global_attribute14                     IN ra_customer_trx.global_attribute14%type,
7270   p_global_attribute15                     IN ra_customer_trx.global_attribute15%type,
7271   p_global_attribute16                     IN ra_customer_trx.global_attribute16%type,
7272   p_global_attribute17                     IN ra_customer_trx.global_attribute17%type,
7273   p_global_attribute18                     IN ra_customer_trx.global_attribute18%type,
7274   p_global_attribute19                     IN ra_customer_trx.global_attribute19%type,
7275   p_global_attribute20                     IN ra_customer_trx.global_attribute20%type,
7276   p_global_attribute21                     IN ra_customer_trx.global_attribute21%type,
7277   p_global_attribute22                     IN ra_customer_trx.global_attribute22%type,
7278   p_global_attribute23                     IN ra_customer_trx.global_attribute23%type,
7279   p_global_attribute24                     IN ra_customer_trx.global_attribute24%type,
7280   p_global_attribute25                     IN ra_customer_trx.global_attribute25%type,
7281   p_global_attribute26                     IN ra_customer_trx.global_attribute26%type,
7282   p_global_attribute27                     IN ra_customer_trx.global_attribute27%type,
7283   p_global_attribute28                     IN ra_customer_trx.global_attribute28%type,
7284   p_global_attribute29                     IN ra_customer_trx.global_attribute29%type,
7285   p_global_attribute30                     IN ra_customer_trx.global_attribute30%type,
7286   p_legal_entity_id                        IN ra_customer_trx.legal_entity_id%type,
7287   p_payment_trxn_extension_id              IN ra_customer_trx.payment_trxn_extension_id%type,
7288   p_billing_date                           IN ra_customer_trx.billing_date%type)
7289 
7290 
7291 IS
7292 
7293   l_trx_rec    ra_customer_trx%rowtype;
7294 
7295 BEGIN
7296    arp_util.debug('arp_ct_pkg.lock_compare_cover()+');
7297 
7298   /*------------------------------------------------+
7299    |  Populate the header record with the values    |
7300    |  passed in as parameters.                      |
7301    +------------------------------------------------*/
7302 
7303    arp_ct_pkg.set_to_dummy(l_trx_rec);
7304 
7305    l_trx_rec.customer_trx_id                := p_customer_trx_id;
7306    l_trx_rec.trx_number                     := p_trx_number;
7307 
7308    --
7309    -- commented out NOCOPY posting_control_id, ra_post_loop_number so as to
7310    -- reduce the no of columns in the view
7311    --
7312    -- l_trx_rec.posting_control_id             := p_posting_control_id;
7313    -- l_trx_rec.ra_post_loop_number            := p_ra_post_loop_number;
7314 
7315    l_trx_rec.complete_flag                  := p_complete_flag;
7316    l_trx_rec.initial_customer_trx_id        := p_initial_customer_trx_id;
7317    l_trx_rec.previous_customer_trx_id       := p_previous_customer_trx_id;
7318    l_trx_rec.related_customer_trx_id        := p_related_customer_trx_id;
7319    l_trx_rec.recurred_from_trx_number       := p_recurred_from_trx_number;
7320    l_trx_rec.cust_trx_type_id               := p_cust_trx_type_id;
7321    l_trx_rec.batch_id                       := p_batch_id;
7322    l_trx_rec.batch_source_id                := p_batch_source_id;
7323    l_trx_rec.agreement_id                   := p_agreement_id;
7324    l_trx_rec.trx_date                       := p_trx_date;
7325    l_trx_rec.bill_to_customer_id            := p_bill_to_customer_id;
7326    l_trx_rec.bill_to_contact_id             := p_bill_to_contact_id;
7327    l_trx_rec.bill_to_site_use_id            := p_bill_to_site_use_id;
7328    l_trx_rec.ship_to_customer_id            := p_ship_to_customer_id;
7329    l_trx_rec.ship_to_contact_id             := p_ship_to_contact_id;
7330    l_trx_rec.ship_to_site_use_id            := p_ship_to_site_use_id;
7331    l_trx_rec.sold_to_customer_id            := p_sold_to_customer_id;
7332    l_trx_rec.sold_to_site_use_id            := p_sold_to_site_use_id;
7333    l_trx_rec.sold_to_contact_id             := p_sold_to_contact_id;
7334    l_trx_rec.customer_reference             := p_customer_reference;
7335    l_trx_rec.customer_reference_date        := p_customer_reference_date;
7336    l_trx_rec.credit_method_for_installments := p_cr_method_for_installments;
7337    l_trx_rec.credit_method_for_rules        := p_credit_method_for_rules;
7338    l_trx_rec.start_date_commitment          := p_start_date_commitment;
7339    l_trx_rec.end_date_commitment            := p_end_date_commitment;
7340    l_trx_rec.exchange_date                  := p_exchange_date;
7341    l_trx_rec.exchange_rate                  := p_exchange_rate;
7342    l_trx_rec.exchange_rate_type             := p_exchange_rate_type;
7343    l_trx_rec.customer_bank_account_id       := p_customer_bank_account_id;
7344    l_trx_rec.finance_charges                := p_finance_charges;
7345    l_trx_rec.fob_point                      := p_fob_point;
7346    l_trx_rec.comments                       := p_comments;
7347    l_trx_rec.internal_notes                 := p_internal_notes;
7348    l_trx_rec.invoice_currency_code          := p_invoice_currency_code;
7349    l_trx_rec.invoicing_rule_id              := p_invoicing_rule_id;
7350    l_trx_rec.last_printed_sequence_num      := p_last_printed_sequence_num;
7351    l_trx_rec.orig_system_batch_name         := p_orig_system_batch_name;
7352    l_trx_rec.primary_salesrep_id            := p_primary_salesrep_id;
7353    l_trx_rec.printing_count                 := p_printing_count;
7354    l_trx_rec.printing_last_printed          := p_printing_last_printed;
7355    l_trx_rec.printing_option                := p_printing_option;
7356    l_trx_rec.printing_original_date         := p_printing_original_date;
7357    -- l_trx_rec.printing_pending               := p_printing_pending;
7358    l_trx_rec.purchase_order                 := p_purchase_order;
7359    l_trx_rec.purchase_order_date            := p_purchase_order_date;
7360    l_trx_rec.purchase_order_revision        := p_purchase_order_revision;
7361    l_trx_rec.receipt_method_id              := p_receipt_method_id;
7362    l_trx_rec.remit_to_address_id            := p_remit_to_address_id;
7363    l_trx_rec.shipment_id                    := p_shipment_id;
7364    l_trx_rec.ship_date_actual               := p_ship_date_actual;
7365    l_trx_rec.ship_via                       := p_ship_via;
7366    l_trx_rec.term_id                        := p_term_id;
7367    l_trx_rec.territory_id                   := p_territory_id;
7368    l_trx_rec.waybill_number                 := p_waybill_number;
7369    l_trx_rec.status_trx                     := p_status_trx;
7370    l_trx_rec.reason_code                    := p_reason_code;
7371    l_trx_rec.doc_sequence_id                := p_doc_sequence_id;
7372    l_trx_rec.doc_sequence_value             := p_doc_sequence_value;
7373    l_trx_rec.paying_customer_id             := p_paying_customer_id;
7374    l_trx_rec.paying_site_use_id             := p_paying_site_use_id;
7375    l_trx_rec.related_batch_source_id        := p_related_batch_source_id;
7376    l_trx_rec.default_tax_exempt_flag        := p_default_tax_exempt_flag;
7377    l_trx_rec.created_from                   := p_created_from;
7378    l_trx_rec.default_ussgl_trx_code_context := p_deflt_ussgl_trx_code_context;
7379    l_trx_rec.default_ussgl_transaction_code := p_deflt_ussgl_transaction_code;
7380    l_trx_rec.old_trx_number                 := p_old_trx_number;
7381    l_trx_rec.interface_header_context       := p_interface_header_context;
7382    l_trx_rec.interface_header_attribute1    := p_interface_header_attribute1;
7383    l_trx_rec.interface_header_attribute2    := p_interface_header_attribute2;
7384    l_trx_rec.interface_header_attribute3    := p_interface_header_attribute3;
7385    l_trx_rec.interface_header_attribute4    := p_interface_header_attribute4;
7386    l_trx_rec.interface_header_attribute5    := p_interface_header_attribute5;
7387    l_trx_rec.interface_header_attribute6    := p_interface_header_attribute6;
7388    l_trx_rec.interface_header_attribute7    := p_interface_header_attribute7;
7389    l_trx_rec.interface_header_attribute8    := p_interface_header_attribute8;
7390    l_trx_rec.interface_header_attribute9    := p_interface_header_attribute9;
7391    l_trx_rec.interface_header_attribute10   := p_interface_header_attribute10;
7392    l_trx_rec.interface_header_attribute11   := p_interface_header_attribute11;
7393    l_trx_rec.interface_header_attribute12   := p_interface_header_attribute12;
7394    l_trx_rec.interface_header_attribute13   := p_interface_header_attribute13;
7395    l_trx_rec.interface_header_attribute14   := p_interface_header_attribute14;
7396    l_trx_rec.interface_header_attribute15   := p_interface_header_attribute15;
7397    l_trx_rec.attribute_category             := p_attribute_category;
7398    l_trx_rec.attribute1                     := p_attribute1;
7399    l_trx_rec.attribute2                     := p_attribute2;
7400    l_trx_rec.attribute3                     := p_attribute3;
7401    l_trx_rec.attribute4                     := p_attribute4;
7402    l_trx_rec.attribute5                     := p_attribute5;
7403    l_trx_rec.attribute6                     := p_attribute6;
7404    l_trx_rec.attribute7                     := p_attribute7;
7405    l_trx_rec.attribute8                     := p_attribute8;
7406    l_trx_rec.attribute9                     := p_attribute9;
7407    l_trx_rec.attribute10                    := p_attribute10;
7408    l_trx_rec.attribute11                    := p_attribute11;
7409    l_trx_rec.attribute12                    := p_attribute12;
7410    l_trx_rec.attribute13                    := p_attribute13;
7411    l_trx_rec.attribute14                    := p_attribute14;
7412    l_trx_rec.attribute15                    := p_attribute15;
7413    l_trx_rec.global_attribute_category             := p_global_attribute_category;
7414    l_trx_rec.global_attribute1                     := p_global_attribute1;
7415    l_trx_rec.global_attribute2                     := p_global_attribute2;
7416    l_trx_rec.global_attribute3                     := p_global_attribute3;
7417    l_trx_rec.global_attribute4                     := p_global_attribute4;
7418    l_trx_rec.global_attribute5                     := p_global_attribute5;
7419    l_trx_rec.global_attribute6                     := p_global_attribute6;
7420    l_trx_rec.global_attribute7                     := p_global_attribute7;
7421    l_trx_rec.global_attribute8                     := p_global_attribute8;
7422    l_trx_rec.global_attribute9                     := p_global_attribute9;
7423    l_trx_rec.global_attribute10                    := p_global_attribute10;
7424    l_trx_rec.global_attribute11                    := p_global_attribute11;
7425    l_trx_rec.global_attribute12                    := p_global_attribute12;
7426    l_trx_rec.global_attribute13                    := p_global_attribute13;
7427    l_trx_rec.global_attribute14                    := p_global_attribute14;
7428    l_trx_rec.global_attribute15                    := p_global_attribute15;
7429    l_trx_rec.global_attribute16                    := p_global_attribute16;
7430    l_trx_rec.global_attribute17                    := p_global_attribute17;
7431    l_trx_rec.global_attribute18                    := p_global_attribute18;
7432    l_trx_rec.global_attribute19                    := p_global_attribute19;
7433    l_trx_rec.global_attribute20                    := p_global_attribute20;
7434    l_trx_rec.global_attribute21                    := p_global_attribute21;
7435    l_trx_rec.global_attribute22                    := p_global_attribute22;
7436    l_trx_rec.global_attribute23                    := p_global_attribute23;
7437    l_trx_rec.global_attribute24                    := p_global_attribute24;
7438    l_trx_rec.global_attribute25                    := p_global_attribute25;
7439    l_trx_rec.global_attribute26                    := p_global_attribute26;
7440    l_trx_rec.global_attribute27                    := p_global_attribute27;
7441    l_trx_rec.global_attribute28                    := p_global_attribute28;
7442    l_trx_rec.global_attribute29                    := p_global_attribute29;
7443    l_trx_rec.global_attribute30                    := p_global_attribute30;
7444    l_trx_rec.legal_entity_id                       := p_legal_entity_id;
7445    /* PAYMENT_UPTAKE */
7446    l_trx_rec.payment_trxn_extension_id             := p_payment_trxn_extension_id;
7447    l_trx_rec.billing_date                          := p_billing_date;
7448 
7449 
7450   /*-----------------------------------------+
7451    |  Call the standard header table handler |
7452    +-----------------------------------------*/
7453 
7454    lock_compare_p( l_trx_rec, p_customer_trx_id);
7455 
7456    arp_util.debug('arp_ct_pkg.lock_compare_cover()-');
7457 
7458 EXCEPTION
7459   WHEN OTHERS THEN
7460     arp_util.debug('EXCEPTION : arp_ct_pkg.lock_compare_cover()');
7461 
7462     arp_util.debug('----- parameters for lock_compare_cover() ' ||
7463                    '-----');
7464     arp_util.debug('p_customer_trx_id			= ' ||
7465                    TO_CHAR(p_customer_trx_id));
7466     arp_util.debug('p_trx_number			= ' ||
7467                    p_trx_number);
7468     arp_util.debug('p_posting_control_id		= ' ||
7469                    TO_CHAR(p_posting_control_id));
7470     arp_util.debug('p_ra_post_loop_number		= ' ||
7471                    p_ra_post_loop_number);
7472     arp_util.debug('p_complete_flag			= ' ||
7473                    p_complete_flag);
7474     arp_util.debug('p_initial_customer_trx_id		= ' ||
7475                    TO_CHAR(p_initial_customer_trx_id));
7476     arp_util.debug('p_previous_customer_trx_id		= ' ||
7477                    TO_CHAR(p_previous_customer_trx_id));
7478     arp_util.debug('p_related_customer_trx_id		= ' ||
7479                    TO_CHAR(p_related_customer_trx_id));
7480     arp_util.debug('p_recurred_from_trx_number		= ' ||
7481                    p_recurred_from_trx_number);
7482     arp_util.debug('p_cust_trx_type_id			= ' ||
7483                    TO_CHAR(p_cust_trx_type_id));
7484     arp_util.debug('p_batch_id				= ' ||
7485                    TO_CHAR(p_batch_id));
7486     arp_util.debug('p_batch_source_id			= ' ||
7487                    TO_CHAR(p_batch_source_id));
7488     arp_util.debug('p_agreement_id			= ' ||
7489                    TO_CHAR(p_agreement_id));
7490     arp_util.debug('p_trx_date				= ' ||
7491                    p_trx_date);
7492     arp_util.debug('p_bill_to_customer_id		= ' ||
7493                    TO_CHAR(p_bill_to_customer_id));
7494     arp_util.debug('p_bill_to_contact_id		= ' ||
7495                    TO_CHAR(p_bill_to_contact_id));
7496     arp_util.debug('p_bill_to_site_use_id		= ' ||
7497                    TO_CHAR(p_bill_to_site_use_id));
7498     arp_util.debug('p_ship_to_customer_id		= ' ||
7499                    TO_CHAR(p_ship_to_customer_id));
7500     arp_util.debug('p_ship_to_contact_id		= ' ||
7501                    TO_CHAR(p_ship_to_contact_id));
7502     arp_util.debug('p_ship_to_site_use_id		= ' ||
7503                    TO_CHAR(p_ship_to_site_use_id));
7504     arp_util.debug('p_sold_to_customer_id		= ' ||
7505                    TO_CHAR(p_sold_to_customer_id));
7506     arp_util.debug('p_sold_to_site_use_id		= ' ||
7507                    TO_CHAR(p_sold_to_site_use_id));
7508     arp_util.debug('p_sold_to_contact_id		= ' ||
7509                    TO_CHAR(p_sold_to_contact_id));
7510     arp_util.debug('p_customer_reference		= ' ||
7511                    p_customer_reference);
7512     arp_util.debug('p_customer_reference_date		= ' ||
7513                    p_customer_reference_date);
7514     arp_util.debug('p_cr_method_for_installments	= ' ||
7515                    p_cr_method_for_installments);
7516     arp_util.debug('p_credit_method_for_rules		= ' ||
7517                    p_credit_method_for_rules);
7518     arp_util.debug('p_start_date_commitment		= ' ||
7519                    p_start_date_commitment);
7520     arp_util.debug('p_end_date_commitment		= ' ||
7521                    p_end_date_commitment);
7522     arp_util.debug('p_exchange_date			= ' ||
7523                    p_exchange_date);
7524     arp_util.debug('p_exchange_rate			= ' ||
7525                    p_exchange_rate);
7526     arp_util.debug('p_exchange_rate_type		= ' ||
7527                    p_exchange_rate_type);
7528     arp_util.debug('p_customer_bank_account_id		= ' ||
7529                    TO_CHAR(p_customer_bank_account_id));
7530     arp_util.debug('p_finance_charges			= ' ||
7531                    p_finance_charges);
7532     arp_util.debug('p_fob_point				= ' ||
7533                    p_fob_point);
7534     arp_util.debug('p_comments				= ' ||
7535                    p_comments);
7536     arp_util.debug('p_internal_notes			= ' ||
7537                    p_internal_notes);
7538     arp_util.debug('p_invoice_currency_code		= ' ||
7539                    p_invoice_currency_code);
7540     arp_util.debug('p_invoicing_rule_id			= ' ||
7541                    TO_CHAR(p_invoicing_rule_id));
7542     arp_util.debug('p_last_printed_sequence_num		= ' ||
7543                    p_last_printed_sequence_num);
7544     arp_util.debug('p_orig_system_batch_name		= ' ||
7545                    p_orig_system_batch_name);
7546     arp_util.debug('p_primary_salesrep_id		= ' ||
7547                    TO_CHAR(p_primary_salesrep_id));
7548     arp_util.debug('p_printing_count			= ' ||
7549                    p_printing_count);
7550     arp_util.debug('p_printing_last_printed		= ' ||
7551                    p_printing_last_printed);
7552     arp_util.debug('p_printing_option			= ' ||
7553                    p_printing_option);
7554     arp_util.debug('p_printing_original_date		= ' ||
7555                    p_printing_original_date);
7556     arp_util.debug('p_printing_pending			= ' ||
7557                    p_printing_pending);
7558     arp_util.debug('p_purchase_order			= ' ||
7559                    p_purchase_order);
7560     arp_util.debug('p_purchase_order_date		= ' ||
7561                    p_purchase_order_date);
7562     arp_util.debug('p_purchase_order_revision		= ' ||
7563                    p_purchase_order_revision);
7564     arp_util.debug('p_receipt_method_id			= ' ||
7565                    TO_CHAR(p_receipt_method_id));
7566     arp_util.debug('p_remit_to_address_id		= ' ||
7567                    TO_CHAR(p_remit_to_address_id));
7568     arp_util.debug('p_shipment_id			= ' ||
7569                    TO_CHAR(p_shipment_id));
7570     arp_util.debug('p_ship_date_actual			= ' ||
7571                    p_ship_date_actual);
7572     arp_util.debug('p_ship_via				= ' ||
7573                    p_ship_via);
7574     arp_util.debug('p_term_due_date			= ' ||
7575                    p_term_due_date);
7576     arp_util.debug('p_term_id				= ' ||
7577                    TO_CHAR(p_term_id));
7578     arp_util.debug('p_territory_id			= ' ||
7579                    TO_CHAR(p_territory_id));
7580     arp_util.debug('p_waybill_number			= ' ||
7581                    p_waybill_number);
7582     arp_util.debug('p_status_trx			= ' ||
7583                    p_status_trx);
7584     arp_util.debug('p_reason_code			= ' ||
7585                    p_reason_code);
7586     arp_util.debug('p_doc_sequence_id			= ' ||
7587                    TO_CHAR(p_doc_sequence_id));
7588     arp_util.debug('p_doc_sequence_value		= ' ||
7589                    p_doc_sequence_value);
7590     arp_util.debug('p_paying_customer_id		= ' ||
7591                    TO_CHAR(p_paying_customer_id));
7592     arp_util.debug('p_paying_site_use_id		= ' ||
7593                    TO_CHAR(p_paying_site_use_id));
7594     arp_util.debug('p_related_batch_source_id		= ' ||
7595                    TO_CHAR(p_related_batch_source_id));
7596     arp_util.debug('p_default_tax_exempt_flag		= ' ||
7597                    p_default_tax_exempt_flag);
7598     arp_util.debug('p_created_from			= ' ||
7599                    p_created_from);
7600     arp_util.debug('p_deflt_ussgl_trx_code_context	= ' ||
7601                    p_deflt_ussgl_trx_code_context);
7602     arp_util.debug('p_deflt_ussgl_transaction_code	= ' ||
7603                    p_deflt_ussgl_transaction_code);
7604     arp_util.debug('p_old_trx_number                    = ' ||
7605                    p_old_trx_number);
7606     arp_util.debug('p_interface_header_context		= ' ||
7607                    p_interface_header_context);
7608     arp_util.debug('p_interface_header_attribute1	= ' ||
7609                    p_interface_header_attribute1);
7610     arp_util.debug('p_interface_header_attribute2	= ' ||
7611                    p_interface_header_attribute2);
7612     arp_util.debug('p_interface_header_attribute3	= ' ||
7613                    p_interface_header_attribute3);
7614     arp_util.debug('p_interface_header_attribute4	= ' ||
7615                    p_interface_header_attribute4);
7616     arp_util.debug('p_interface_header_attribute5	= ' ||
7617                    p_interface_header_attribute5);
7618     arp_util.debug('p_interface_header_attribute6	= ' ||
7619                    p_interface_header_attribute6);
7620     arp_util.debug('p_interface_header_attribute7	= ' ||
7621                   p_interface_header_attribute7);
7622     arp_util.debug('p_interface_header_attribute8	= ' ||
7623                    p_interface_header_attribute8);
7624     arp_util.debug('p_interface_header_attribute9	= ' ||
7625                    p_interface_header_attribute9);
7626     arp_util.debug('p_interface_header_attribute10	= ' ||
7627                    p_interface_header_attribute10);
7628     arp_util.debug('p_interface_header_attribute11	= ' ||
7629                    p_interface_header_attribute11);
7630     arp_util.debug('p_interface_header_attribute12	= ' ||
7631                    p_interface_header_attribute12);
7632     arp_util.debug('p_interface_header_attribute13	= ' ||
7633                    p_interface_header_attribute13);
7634     arp_util.debug('p_interface_header_attribute14	= ' ||
7635                    p_interface_header_attribute14);
7636     arp_util.debug('p_interface_header_attribute15	= ' ||
7637                    p_interface_header_attribute15);
7638     arp_util.debug('p_attribute_category		= ' ||
7639                    p_attribute_category);
7640     arp_util.debug('p_attribute1			= ' ||
7641                    p_attribute1);
7642     arp_util.debug('p_attribute2			= ' ||
7643                    p_attribute2);
7644     arp_util.debug('p_attribute3			= ' ||
7645                    p_attribute3);
7646     arp_util.debug('p_attribute4			= ' ||
7647                    p_attribute4);
7648     arp_util.debug('p_attribute5			= ' ||
7649                    p_attribute5);
7650     arp_util.debug('p_attribute6			= ' ||
7651                    p_attribute6);
7652     arp_util.debug('p_attribute7			= ' ||
7653                    p_attribute7);
7654     arp_util.debug('p_attribute8			= ' ||
7655                    p_attribute8);
7656     arp_util.debug('p_attribute9			= ' ||
7657                    p_attribute9);
7658     arp_util.debug('p_attribute10			= ' ||
7659                    p_attribute10);
7660     arp_util.debug('p_attribute11			= ' ||
7661                    p_attribute11);
7662     arp_util.debug('p_attribute12			= ' ||
7663                    p_attribute12);
7664     arp_util.debug('p_attribute13			= ' ||
7665                    p_attribute13);
7666     arp_util.debug('p_attribute14			= ' ||
7667                    p_attribute14);
7668     arp_util.debug('p_attribute15			= ' ||
7669                    p_attribute15);
7670 
7671     RAISE;
7672 
7673 END;
7674 
7675   /*---------------------------------------------+
7676    |   Package initialization section.           |
7677    |   Sets WHO column variables for later use.  |
7678    +---------------------------------------------*/
7679 
7680 BEGIN
7681 
7682   pg_user_id          := fnd_global.user_id;
7683   pg_conc_login_id    := fnd_global.conc_login_id;
7684   pg_login_id         := fnd_global.login_id;
7685   pg_prog_appl_id     := fnd_global.prog_appl_id;
7686   pg_conc_program_id  := fnd_global.conc_program_id;
7687 
7688 
7689 END ARP_CT_PKG;