[Home] [Help]
PACKAGE BODY: APPS.CE_STAT_LINES_DML_PKG
Source
1 PACKAGE BODY CE_STAT_LINES_DML_PKG as
2 /* $Header: cestlthb.pls 120.5.12010000.3 2009/12/02 08:17:15 ckansara ship $ */
3
4 FUNCTION body_revision RETURN VARCHAR2 IS
5 BEGIN
6
7 RETURN '$Revision: 120.5.12010000.3 $';
8
9 END body_revision;
10
11 FUNCTION spec_revision RETURN VARCHAR2 IS
12 BEGIN
13
14 RETURN G_spec_revision;
15
16 END spec_revision;
17
18 PROCEDURE Insert_Row(
19 X_Row_Id IN OUT NOCOPY VARCHAR2,
20 X_statement_line_id IN OUT NOCOPY NUMBER,
21 X_statement_header_id IN OUT NOCOPY NUMBER,
22 X_line_number NUMBER,
23 X_trx_date DATE,
24 X_trx_type VARCHAR2,
25 X_trx_status VARCHAR2,
26 X_trx_code VARCHAR2, --5131976
27 X_effective_date IN OUT NOCOPY DATE,
28 X_bank_trx_number VARCHAR2,
29 X_trx_text VARCHAR2,
30 X_customer_text VARCHAR2,
31 X_invoice_text VARCHAR2,
32 X_bank_account_text VARCHAR2,
33 X_amount NUMBER,
34 X_charges_amount NUMBER,
35 X_status VARCHAR2,
36 X_created_by NUMBER,
37 X_creation_date DATE,
38 X_last_updated_by NUMBER,
39 X_last_update_date DATE,
40 X_currency_code VARCHAR2,
41 X_original_amount NUMBER,
42 X_exchange_rate NUMBER,
43 X_exchange_rate_type VARCHAR2,
44 X_exchange_rate_date DATE,
45 X_attribute_category VARCHAR2,
46 X_attribute1 VARCHAR2,
47 X_attribute2 VARCHAR2,
48 X_attribute3 VARCHAR2,
49 X_attribute4 VARCHAR2,
50 X_attribute5 VARCHAR2,
51 X_attribute6 VARCHAR2,
52 X_attribute7 VARCHAR2,
53 X_attribute8 VARCHAR2,
54 X_attribute9 VARCHAR2,
55 X_attribute10 VARCHAR2,
56 X_attribute11 VARCHAR2,
57 X_attribute12 VARCHAR2,
58 X_attribute13 VARCHAR2,
59 X_attribute14 VARCHAR2,
60 X_attribute15 VARCHAR2,
61 --5916290: GDF Changes
62 X_global_att_category VARCHAR2,
63 X_global_attribute1 VARCHAR2,
64 X_global_attribute2 VARCHAR2,
65 X_global_attribute3 VARCHAR2,
66 X_global_attribute4 VARCHAR2,
67 X_global_attribute5 VARCHAR2,
68 X_global_attribute6 VARCHAR2,
69 X_global_attribute7 VARCHAR2,
70 X_global_attribute8 VARCHAR2,
71 X_global_attribute9 VARCHAR2,
72 X_global_attribute10 VARCHAR2,
73 X_global_attribute11 VARCHAR2,
74 X_global_attribute12 VARCHAR2,
75 X_global_attribute13 VARCHAR2,
76 X_global_attribute14 VARCHAR2,
77 X_global_attribute15 VARCHAR2,
78 X_global_attribute16 VARCHAR2,
79 X_global_attribute17 VARCHAR2,
80 X_global_attribute18 VARCHAR2,
81 X_global_attribute19 VARCHAR2,
82 X_global_attribute20 VARCHAR2
83 ) IS
84 CURSOR C IS SELECT rowid FROM CE_STATEMENT_LINES
85 WHERE statement_line_id = X_Statement_line_Id;
86 CURSOR C1 IS SELECT ce_statement_lines_s.nextval from sys.dual;
87 CURSOR C2 IS SELECT NVL(MAX(line_number),0) + 10 FROM CE_STATEMENT_LINES
88 WHERE statement_header_id = X_statement_header_Id;
89 CURSOR C3 IS SELECT ce_statement_headers_s.nextval FROM sys.dual;
90 sl_number NUMBER;
91 line_type VARCHAR2(20);
92 line_amount NUMBER;
93 p_float_days DATE;
94 dates_out_of_range EXCEPTION;
95 PRAGMA EXCEPTION_INIT(dates_out_of_range, -01841);
96
97
98 BEGIN
99 --
100 -- Determine new line number
101 --
102 IF( X_line_number IS NULL ) THEN
103 OPEN C2;
104 FETCH C2 INTO sl_number;
105 CLOSE C2;
106 ELSE
107 sl_number := X_line_number;
108 END IF;
109 --
110 -- X_statement_header would be NULL if passing from manual form, and header
111 -- is created on the fly
112 --
113 IF ( X_statement_header_id IS NULL) THEN
114 OPEN C3;
115 FETCH C3 INTO X_statement_header_id;
116 CLOSE C3;
117 END IF;
118 --
119 -- Determine a new statement_line_id
120 --
121 IF( X_statement_line_id IS NULL ) THEN
122 OPEN C1;
123 FETCH C1 into X_statement_line_id;
124 CLOSE C1;
125 END IF;
126 --
127 -- Determine the trx type of the statement line to be created
128 -- First check status of transaction, if 'STOP'/'VOID' check, create 'STOP' stmt line
129 -- If 'REVERSED' receipt, create 'NSF' stmt line.
130 --
131 IF( X_trx_status IN ( 'STOP INITIATED', 'VOIDED', 'V' )) THEN
132 line_type := 'STOP';
133 ELSIF( X_trx_status = 'REVERSED' ) THEN
134 line_type := 'NSF';
135 --
136 -- Then, if create line from ARP_AUTO_BANK_CLEAR.reconcile_trx (from stmt header)
137 -- X_trx_type is the type of transaction, which can be PAYMENT/CASH/RECEIPT/MISC
138 --
139 ELSIF( X_trx_type IN ('PAYMENT','PBATCH')) THEN
140 line_type := 'DEBIT';
141 ELSIF( X_trx_type IN ('CASH', 'RECEIPT','RBATCH')) THEN
142 line_type := 'CREDIT';
143 -- bug 5072557 -- remittance batches with negative amounts,
144 -- set stmt ln type to misc payment
145 IF ((X_trx_type = 'RECEIPT') and ( X_original_amount < 0 )) THEN
146 line_type := 'MISC_DEBIT';
147 END IF;
148 ELSIF( X_trx_type = 'MISC' ) THEN
149 IF( X_original_amount > 0 ) THEN
150 line_type := 'MISC_CREDIT';
151 line_amount := X_amount;
152 ELSE
153 line_type := 'MISC_DEBIT';
154 line_amount := -(X_amount);
155 END IF;
156 --
157 -- Last, create line from stmt line, which X_trx_type is the line defined by the user
158 --
159 ELSE
160 line_type := X_trx_type;
161 line_amount := X_amount;
162 END IF;
163 --
164 -- If X_effective_date is NULL and X_trx_code IS NOT NULL, determine the effective_date
165 -- by the float date of the X_trx_code
166 --
167
168 IF(X_effective_date IS NULL) THEN
169 X_effective_date := X_trx_date;
170 /* bug 4435028 BAT: cannot get float_days, there can be multiple rows for each trx_code
171 IF(X_trx_code_id IS NULL) THEN
172 X_effective_date := X_trx_date;
173 ELSE
174 BEGIN
175 SELECT X_trx_date + float_days
176 INTO X_effective_date
177 FROM ce_transaction_codes
178 WHERE transaction_code_id = X_trx_code_id;
179 EXCEPTION
180 WHEN dates_out_of_range THEN
181 X_effective_date := NULL;
182 END;
183 END IF;
184 */
185 END IF;
186 --
187 INSERT INTO CE_STATEMENT_LINES
188 (statement_line_id,
189 statement_header_id,
190 line_number,
191 trx_date,
192 trx_type,
193 trx_code,
194 effective_date,
195 bank_trx_number,
196 trx_text,
197 customer_text,
198 invoice_text,
199 bank_account_text,
200 amount,
201 charges_amount,
202 status,
203 created_by,
204 creation_date,
205 last_updated_by,
206 last_update_date,
207 currency_code,
208 original_amount,
209 exchange_rate,
210 exchange_rate_type,
211 exchange_rate_date,
212 attribute_category,
213 attribute1,
214 attribute2,
215 attribute3,
216 attribute4,
217 attribute5,
218 attribute6,
219 attribute7,
220 attribute8,
221 attribute9,
222 attribute10,
223 attribute11,
224 attribute12,
225 attribute13,
226 attribute14,
227 attribute15,
228 -- 5916290: GDF Changes
229 global_attribute_category,
230 global_attribute1,
231 global_attribute2,
232 global_attribute3,
233 global_attribute4,
234 global_attribute5,
235 global_attribute6,
236 global_attribute7,
237 global_attribute8,
238 global_attribute9,
239 global_attribute10,
240 global_attribute11,
241 global_attribute12,
242 global_attribute13,
243 global_attribute14,
244 global_attribute15,
245 global_attribute16,
246 global_attribute17,
247 global_attribute18,
248 global_attribute19,
249 global_attribute20
250 ) VALUES (
251 X_statement_line_id,
252 X_statement_header_id,
253 sl_number,
254 X_trx_date,
255 line_type,
256 X_trx_code,
257 X_effective_date,
258 X_bank_trx_number,
259 X_trx_text,
260 X_customer_text,
261 X_invoice_text,
262 X_bank_account_text,
263 NVL(line_amount, X_amount),
264 X_charges_amount,
265 X_status,
266 X_created_by,
267 X_creation_date,
268 X_last_updated_by,
269 X_last_update_date,
270 X_currency_code,
271 abs(X_original_amount),
272 X_exchange_rate,
273 X_exchange_rate_type,
274 X_exchange_rate_date,
275 X_attribute_category,
276 X_attribute1,
277 X_attribute2,
278 X_attribute3,
279 X_attribute4,
280 X_attribute5,
281 X_attribute6,
282 X_attribute7,
283 X_attribute8,
284 X_attribute9,
285 X_attribute10,
286 X_attribute11,
287 X_attribute12,
288 X_attribute13,
289 X_attribute14,
290 X_attribute15,
291 X_global_att_category,
292 X_global_attribute1,
293 X_global_attribute2,
294 X_global_attribute3,
295 X_global_attribute4,
296 X_global_attribute5,
297 X_global_attribute6,
298 X_global_attribute7,
299 X_global_attribute8,
300 X_global_attribute9,
301 X_global_attribute10,
302 X_global_attribute11,
303 X_global_attribute12,
304 X_global_attribute13,
305 X_global_attribute14,
306 X_global_attribute15,
307 X_global_attribute16,
308 X_global_attribute17,
309 X_global_attribute18,
310 X_global_attribute19,
311 X_global_attribute20);
312 OPEN C;
313 FETCH C INTO X_Row_Id;
314 if (C%NOTFOUND) then
315 CLOSE C;
316 Raise NO_DATA_FOUND;
317 end if;
318 CLOSE C;
319 END insert_row;
320
321 PROCEDURE Delete_Row( X_Row_Id VARCHAR2 ) IS
322 L_STMT_LINE_ID CE_STATEMENT_LINES.STATEMENT_LINE_ID%TYPE; -- Bug 9099087
323 BEGIN
324 -- Bug 9099087 Start
325 SELECT STATEMENT_LINE_ID INTO L_STMT_LINE_ID
326 FROM CE_STATEMENT_LINES
327 WHERE rowid = X_Row_Id;
328
329 DELETE FROM CE_STATEMENT_RECONCILS_ALL
330 WHERE STATEMENT_LINE_ID = L_STMT_LINE_ID;
331
332 -- Bug 9099087 Start
333
334 DELETE FROM CE_STATEMENT_LINES
335 WHERE rowid = X_Row_Id;
336
337 if (SQL%NOTFOUND) then
338 Raise NO_DATA_FOUND;
339 end if;
340 END Delete_Row;
341
342 PROCEDURE Update_Row (
343 X_Row_Id VARCHAR2,
344 X_statement_line_id NUMBER,
345 X_statement_header_id NUMBER,
346 X_line_number NUMBER,
347 X_trx_date DATE,
348 X_trx_type VARCHAR2,
349 X_trx_code VARCHAR2, --5131976
350 X_effective_date DATE,
351 X_bank_trx_number VARCHAR2,
352 X_trx_text VARCHAR2,
353 X_customer_text VARCHAR2,
354 X_invoice_text VARCHAR2,
355 X_bank_account_text VARCHAR2,
356 X_amount NUMBER,
357 X_charges_amount NUMBER,
358 X_status VARCHAR2,
359 X_last_updated_by NUMBER,
360 X_last_update_date DATE,
361 X_attribute_category VARCHAR2,
362 X_original_amount NUMBER,
363 X_currency_code VARCHAR2,
364 X_exchange_rate NUMBER,
365 X_exchange_rate_type VARCHAR2,
366 X_exchange_rate_date DATE,
367 X_attribute1 VARCHAR2,
368 X_attribute2 VARCHAR2,
369 X_attribute3 VARCHAR2,
370 X_attribute4 VARCHAR2,
371 X_attribute5 VARCHAR2,
372 X_attribute6 VARCHAR2,
373 X_attribute7 VARCHAR2,
374 X_attribute8 VARCHAR2,
375 X_attribute9 VARCHAR2,
376 X_attribute10 VARCHAR2,
377 X_attribute11 VARCHAR2,
378 X_attribute12 VARCHAR2,
379 X_attribute13 VARCHAR2,
380 X_attribute14 VARCHAR2,
381 X_attribute15 VARCHAR2,
382 --5916290: GDF Changes
383 X_global_att_category VARCHAR2,
384 X_global_attribute1 VARCHAR2,
385 X_global_attribute2 VARCHAR2,
386 X_global_attribute3 VARCHAR2,
387 X_global_attribute4 VARCHAR2,
388 X_global_attribute5 VARCHAR2,
389 X_global_attribute6 VARCHAR2,
390 X_global_attribute7 VARCHAR2,
391 X_global_attribute8 VARCHAR2,
392 X_global_attribute9 VARCHAR2,
393 X_global_attribute10 VARCHAR2,
394 X_global_attribute11 VARCHAR2,
395 X_global_attribute12 VARCHAR2,
396 X_global_attribute13 VARCHAR2,
397 X_global_attribute14 VARCHAR2,
398 X_global_attribute15 VARCHAR2,
399 X_global_attribute16 VARCHAR2,
400 X_global_attribute17 VARCHAR2,
401 X_global_attribute18 VARCHAR2,
402 X_global_attribute19 VARCHAR2,
403 X_global_attribute20 VARCHAR2
404 ) IS
405 BEGIN
406 UPDATE CE_STATEMENT_LINES
407 SET
408 statement_line_id = X_statement_line_id,
409 statement_header_id = X_statement_header_id,
410 line_number = X_line_number,
411 trx_date = X_trx_date,
412 trx_type = X_trx_type,
413 trx_code = X_trx_code,
414 effective_date = X_effective_date,
415 bank_trx_number = X_bank_trx_number,
416 trx_text = X_trx_text,
417 customer_text = X_customer_text,
418 invoice_text = X_invoice_text,
419 bank_account_text = X_bank_account_text,
420 amount = X_amount,
421 charges_amount= X_charges_amount,
422 status = X_status,
423 last_updated_by = X_last_updated_by,
424 last_update_date = X_last_update_date,
425 attribute_category = X_attribute_category,
426 original_amount = X_original_amount,
427 currency_code = X_currency_code,
428 exchange_rate = X_exchange_rate,
432 attribute2 = X_attribute2,
429 exchange_rate_type = X_exchange_rate_type,
430 exchange_rate_date = X_exchange_rate_date,
431 attribute1 = X_attribute1,
433 attribute3 = X_attribute3,
434 attribute4 = X_attribute4,
435 attribute5 = X_attribute5,
436 attribute6 = X_attribute6,
437 attribute7 = X_attribute7,
438 attribute8 = X_attribute8,
439 attribute9 = X_attribute9,
440 attribute10 = X_attribute10,
441 attribute11 = X_attribute11,
442 attribute12 = X_attribute12,
443 attribute13 = X_attribute13,
444 attribute14 = X_attribute14,
445 attribute15 = X_attribute15,
446 --Bug 6899211
447 global_attribute_category = X_global_att_category,
448 --5916290: GDF Changes
449 global_attribute1 = X_global_attribute1,
450 global_attribute2 = X_global_attribute2,
451 global_attribute3 = X_global_attribute3,
452 global_attribute4 = X_global_attribute4,
453 global_attribute5 = X_global_attribute5,
454 global_attribute6 = X_global_attribute6,
455 global_attribute7 = X_global_attribute7,
456 global_attribute8 = X_global_attribute8,
457 global_attribute9 = X_global_attribute9,
458 global_attribute10 = X_global_attribute10,
459 global_attribute11 = X_global_attribute11,
460 global_attribute12 = X_global_attribute12,
461 global_attribute13 = X_global_attribute13,
462 global_attribute14 = X_global_attribute14,
463 global_attribute15 = X_global_attribute15,
464 global_attribute16 = X_global_attribute16,
465 global_attribute17 = X_global_attribute17,
466 global_attribute18 = X_global_attribute18,
467 global_attribute19 = X_global_attribute19,
468 global_attribute20 = X_global_attribute20
469 WHERE rowid = X_Row_Id;
470 if (SQL%NOTFOUND) then
471 Raise NO_DATA_FOUND;
472 end if;
473 END Update_Row;
474
475 PROCEDURE Lock_Row(
476 X_Row_Id VARCHAR2,
477 X_statement_line_id NUMBER,
478 X_statement_header_id NUMBER,
479 X_line_number NUMBER,
480 X_trx_date DATE,
481 X_trx_type VARCHAR2,
482 X_trx_code VARCHAR2, --5131976
483 X_effective_date DATE,
484 X_bank_trx_number VARCHAR2,
485 X_trx_text VARCHAR2,
486 X_customer_text VARCHAR2,
487 X_invoice_text VARCHAR2,
488 X_bank_account_text VARCHAR2,
489 X_amount NUMBER,
490 X_charges_amount NUMBER,
491 X_status VARCHAR2,
492 X_original_amount NUMBER,
493 X_currency_code VARCHAR2,
494 X_exchange_rate NUMBER,
495 X_exchange_rate_type VARCHAR2,
496 X_exchange_rate_date DATE,
497 X_attribute_category VARCHAR2,
498 X_attribute1 VARCHAR2,
499 X_attribute2 VARCHAR2,
500 X_attribute3 VARCHAR2,
501 X_attribute4 VARCHAR2,
502 X_attribute5 VARCHAR2,
503 X_attribute6 VARCHAR2,
504 X_attribute7 VARCHAR2,
505 X_attribute8 VARCHAR2,
506 X_attribute9 VARCHAR2,
507 X_attribute10 VARCHAR2,
508 X_attribute11 VARCHAR2,
509 X_attribute12 VARCHAR2,
510 X_attribute13 VARCHAR2,
511 X_attribute14 VARCHAR2,
512 X_attribute15 VARCHAR2,
513 --5916290: GDF Changes
514 X_global_att_category VARCHAR2,
515 X_global_attribute1 VARCHAR2,
516 X_global_attribute2 VARCHAR2,
517 X_global_attribute3 VARCHAR2,
518 X_global_attribute4 VARCHAR2,
519 X_global_attribute5 VARCHAR2,
520 X_global_attribute6 VARCHAR2,
521 X_global_attribute7 VARCHAR2,
522 X_global_attribute8 VARCHAR2,
523 X_global_attribute9 VARCHAR2,
524 X_global_attribute10 VARCHAR2,
525 X_global_attribute11 VARCHAR2,
526 X_global_attribute12 VARCHAR2,
527 X_global_attribute13 VARCHAR2,
528 X_global_attribute14 VARCHAR2,
529 X_global_attribute15 VARCHAR2,
530 X_global_attribute16 VARCHAR2,
531 X_global_attribute17 VARCHAR2,
532 X_global_attribute18 VARCHAR2,
533 X_global_attribute19 VARCHAR2,
534 X_global_attribute20 VARCHAR2
535 ) IS
536 CURSOR C IS
537 SELECT *
538 FROM CE_STATEMENT_LINES
539 WHERE rowid = X_Row_Id
540 FOR UPDATE OF statement_line_id NOWAIT;
541 Recinfo C%ROWTYPE;
542 BEGIN
543 OPEN C;
544 FETCH C INTO Recinfo;
545 IF (C%NOTFOUND) THEN
546 CLOSE C;
547 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
548 APP_EXCEPTION.raise_exception;
549 END IF;
550 CLOSE C;
551 if (
552 (Recinfo.statement_line_id = X_statement_line_id )
553 AND (Recinfo.statement_header_id = X_statement_header_id )
554 AND (Recinfo.line_number = X_line_number )
555 AND (Recinfo.trx_date = X_trx_date )
556 AND (Recinfo.trx_type = X_trx_type )
557 AND (Recinfo.amount = X_amount )
558 AND (Recinfo.status = X_status )
559 AND ( ( (Recinfo.trx_code = X_trx_code )
560 OR ( (Recinfo.trx_code IS NULL)
561 AND (X_trx_code IS NULL))))
562 AND ( ( (Recinfo.effective_date = X_effective_date )
566 OR ( (Recinfo.bank_trx_number IS NULL)
563 OR ( (Recinfo.effective_date IS NULL)
564 AND (X_effective_date IS NULL))))
565 AND ( ( (Recinfo.bank_trx_number = X_bank_trx_number )
567 AND (X_bank_trx_number IS NULL))))
568 AND ( ( (Recinfo.trx_text = X_trx_text )
569 OR ( (Recinfo.trx_text IS NULL)
570 AND (X_trx_text IS NULL))))
571 AND ( ( (Recinfo.customer_text = X_customer_text )
572 OR ( (Recinfo.customer_text IS NULL)
573 AND (X_customer_text IS NULL))))
574 AND ( ( (Recinfo.invoice_text = X_invoice_text )
575 OR ( (Recinfo.invoice_text IS NULL)
576 AND (X_invoice_text IS NULL))))
577 AND ( ( (Recinfo.bank_account_text = X_bank_account_text )
578 OR ( (Recinfo.bank_account_text IS NULL)
579 AND (X_bank_account_text IS NULL))))
580 AND ( ( (Recinfo.original_amount = X_original_amount )
581 OR ( (Recinfo.original_amount IS NULL)
582 AND (X_original_amount IS NULL))))
583 AND ( ( (Recinfo.charges_amount = X_charges_amount )
584 OR ( (Recinfo.charges_amount IS NULL)
585 AND (X_charges_amount IS NULL))))
586 AND ( ( (Recinfo.currency_code = X_currency_code )
587 OR ( (Recinfo.currency_code IS NULL)
588 AND (X_currency_code IS NULL))))
589 AND ( ( (Recinfo.exchange_rate = X_exchange_rate )
590 OR ( (Recinfo.exchange_rate IS NULL)
591 AND (X_exchange_rate IS NULL))))
592 AND ( ( (Recinfo.exchange_rate_type = X_exchange_rate_type )
593 OR ( (Recinfo.exchange_rate_type IS NULL)
594 AND (X_exchange_rate_type IS NULL))))
595 AND ( ( (Recinfo.exchange_rate_date = X_exchange_rate_date )
596 OR ( (Recinfo.exchange_rate_date IS NULL)
597 AND (X_exchange_rate_date IS NULL))))
598 AND ( ( (Recinfo.attribute_category = X_attribute_category )
599 OR ( (Recinfo.attribute_category IS NULL)
600 AND (X_attribute_category IS NULL))))
601 AND ( ( (Recinfo.attribute1 = X_attribute1 )
602 OR ( (Recinfo.attribute1 IS NULL)
603 AND (X_attribute1 IS NULL))))
604 AND ( ( (Recinfo.attribute2 = X_attribute2 )
605 OR ( (Recinfo.attribute2 IS NULL)
606 AND (X_attribute2 IS NULL))))
607 AND ( ( (Recinfo.attribute3 = X_attribute3 )
608 OR ( (Recinfo.attribute3 IS NULL)
609 AND (X_attribute3 IS NULL))))
610 AND ( ( (Recinfo.attribute4 = X_attribute4 )
611 OR ( (Recinfo.attribute4 IS NULL)
612 AND (X_attribute4 IS NULL))))
613 AND ( ( (Recinfo.attribute5 = X_attribute5 )
614 OR ( (Recinfo.attribute5 IS NULL)
615 AND (X_attribute5 IS NULL))))
616 AND ( ( (Recinfo.attribute6 = X_attribute6 )
617 OR ( (Recinfo.attribute6 IS NULL)
618 AND (X_attribute6 IS NULL))))
619 AND ( ( (Recinfo.attribute7 = X_attribute7 )
620 OR ( (Recinfo.attribute7 IS NULL)
621 AND (X_attribute7 IS NULL))))
622 AND ( ( (Recinfo.attribute8 = X_attribute8 )
623 OR ( (Recinfo.attribute8 IS NULL)
624 AND (X_attribute8 IS NULL))))
625 AND ( ( (Recinfo.attribute9 = X_attribute9 )
626 OR ( (Recinfo.attribute9 IS NULL)
627 AND (X_attribute9 IS NULL))))
628 AND ( ( (Recinfo.attribute10 = X_attribute10 )
629 OR ( (Recinfo.attribute10 IS NULL)
630 AND (X_attribute10 IS NULL))))
631 AND ( ( (Recinfo.attribute11 = X_attribute11 )
632 OR ( (Recinfo.attribute11 IS NULL)
633 AND (X_attribute11 IS NULL))))
634 AND ( ( (Recinfo.attribute12 = X_attribute12 )
635 OR ( (Recinfo.attribute12 IS NULL)
636 AND (X_attribute12 IS NULL))))
637 AND ( ( (Recinfo.attribute13 = X_attribute13 )
638 OR ( (Recinfo.attribute13 IS NULL)
639 AND (X_attribute13 IS NULL))))
640 AND ( ( (Recinfo.attribute14 = X_attribute14 )
641 OR ( (Recinfo.attribute14 IS NULL)
642 AND (X_attribute14 IS NULL))))
643 AND ( ( (Recinfo.attribute15 = X_attribute15 )
644 OR ( (Recinfo.attribute15 IS NULL)
645 AND (X_attribute15 IS NULL))))
646 --5916290: GDF Changes
647 AND ( ( (Recinfo.global_attribute_category = X_global_att_category)
648 OR ( (Recinfo.global_attribute_category IS NULL)
649 AND (X_global_att_category IS NULL))))
650 AND ( ( (Recinfo.global_attribute1 = X_global_attribute1)
651 OR ( (Recinfo.global_attribute1 IS NULL)
652 AND (X_global_attribute1 IS NULL))))
653 AND ( ( (Recinfo.global_attribute2 = X_global_attribute2)
654 OR ( (Recinfo.global_attribute2 IS NULL)
655 AND (X_global_attribute2 IS NULL))))
656 AND ( ( (Recinfo.global_attribute3 = X_global_attribute3)
657 OR ( (Recinfo.global_attribute3 IS NULL)
658 AND (X_global_attribute3 IS NULL))))
659 AND ( ( (Recinfo.global_attribute4 = X_global_attribute4)
660 OR ( (Recinfo.global_attribute4 IS NULL)
661 AND (X_global_attribute4 IS NULL))))
662 AND ( ( (Recinfo.global_attribute5 = X_global_attribute5)
663 OR ( (Recinfo.global_attribute5 IS NULL)
664 AND (X_global_attribute5 IS NULL))))
665 AND ( ( (Recinfo.global_attribute6 = X_global_attribute6)
666 OR ( (Recinfo.global_attribute6 IS NULL)
670 AND (X_global_attribute7 IS NULL))))
667 AND (X_global_attribute6 IS NULL))))
668 AND ( ( (Recinfo.global_attribute7 = X_global_attribute7)
669 OR ( (Recinfo.global_attribute7 IS NULL)
671 AND ( ( (Recinfo.global_attribute8 = X_global_attribute8)
672 OR ( (Recinfo.global_attribute8 IS NULL)
673 AND (X_global_attribute8 IS NULL))))
674 AND ( ( (Recinfo.global_attribute9 = X_global_attribute9)
675 OR ( (Recinfo.global_attribute9 IS NULL)
676 AND (X_global_attribute9 IS NULL))))
677 AND ( ( (Recinfo.global_attribute10 = X_global_attribute10)
678 OR ( (Recinfo.global_attribute10 IS NULL)
679 AND (X_global_attribute10 IS NULL))))
680 AND ( ( (Recinfo.global_attribute11 = X_global_attribute11)
681 OR ( (Recinfo.global_attribute11 IS NULL)
682 AND (X_global_attribute11 IS NULL))))
683 AND ( ( (Recinfo.global_attribute12 = X_global_attribute12)
684 OR ( (Recinfo.global_attribute12 IS NULL)
685 AND (X_global_attribute12 IS NULL))))
686 AND ( ( (Recinfo.global_attribute13 = X_global_attribute13)
687 OR ( (Recinfo.global_attribute13 IS NULL)
688 AND (X_global_attribute13 IS NULL))))
689 AND ( ( (Recinfo.global_attribute14 = X_global_attribute14)
690 OR ( (Recinfo.global_attribute14 IS NULL)
691 AND (X_global_attribute14 IS NULL))))
692 AND ( ( (Recinfo.global_attribute15 = X_global_attribute15)
693 OR ( (Recinfo.global_attribute15 IS NULL)
694 AND (X_global_attribute15 IS NULL))))
695 AND ( ( (Recinfo.global_attribute16 = X_global_attribute16)
696 OR ( (Recinfo.global_attribute16 IS NULL)
697 AND (X_global_attribute16 IS NULL))))
698 AND ( ( (Recinfo.global_attribute17 = X_global_attribute17)
699 OR ( (Recinfo.global_attribute17 IS NULL)
700 AND (X_global_attribute17 IS NULL))))
701 AND ( ( (Recinfo.global_attribute18 = X_global_attribute18)
702 OR ( (Recinfo.global_attribute18 IS NULL)
703 AND (X_global_attribute18 IS NULL))))
704 AND ( ( (Recinfo.global_attribute19 = X_global_attribute19)
705 OR ( (Recinfo.global_attribute19 IS NULL)
706 AND (X_global_attribute19 IS NULL))))
707 AND ( ( (Recinfo.global_attribute20 = X_global_attribute20)
708 OR ( (Recinfo.global_attribute20 IS NULL)
709 AND (X_global_attribute20 IS NULL))))
710 ) THEN
711 return;
712 ELSE
713 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
714 APP_EXCEPTION.raise_exception;
715 END IF;
716 END Lock_Row;
717
718 END CE_STAT_LINES_DML_PKG;