[Home] [Help]
PACKAGE BODY: APPS.MTL_CC_TRANSACT_PKG
Source
1 PACKAGE BODY MTL_CC_TRANSACT_PKG as
2 /* $Header: INVATC2B.pls 120.2 2010/12/31 12:00:12 mporecha ship $ */
3
4 function CC_TRANSACT ( org_id NUMBER ,
5 cc_header_id NUMBER ,
6 item_id NUMBER ,
7 sub VARCHAR2 ,
8 PUOMQty NUMBER ,
9 TxnQty NUMBER ,
10 TxnUOM VARCHAR2 ,
11 TxnDate DATE ,
12 TxnAcctId NUMBER ,
13 LotNum VARCHAR2 ,
14 LotExpDate DATE ,
15 rev VARCHAR2 ,
16 locator_id NUMBER ,
17 TxnRef VARCHAR2 ,
18 ReasonId NUMBER ,
19 UserId NUMBER ,
20 cc_entry_id NUMBER ,
21 LoginId NUMBER ,
22 TxnProcMode NUMBER ,
23 TxnHeaderId NUMBER ,
24 SerialNum VARCHAR2 ,
25 TxnTempId NUMBER ,
26 SerialPrefix VARCHAR2 ,
27 lpn_id NUMBER ,
28 transfer_sub VARCHAR2 DEFAULT NULL ,
29 transfer_loc_id NUMBER DEFAULT NULL ,
30 cost_group_id NUMBER DEFAULT NULL ,
31 lpn_discrepancy NUMBER DEFAULT 2
32 ,secUOM VARCHAR2 DEFAULT NULL -- INVCONV,NSRIVAST
33 ,secQty NUMBER DEFAULT NULL -- INVCONV,NSRIVAST
34
35 ) RETURN NUMBER
36 IS
37
38 v_period_id NUMBER;
39 v_open_past_period BOOLEAN := FALSE;
40 v_profile_value NUMBER := 0;
41 v_transaction_action_id NUMBER;
42 l_transaction_temp_id NUMBER;
43 l_serial_temp_id NUMBER;
44 v_transaction_type_id NUMBER; --4159102
45
46 /* WMS variables needed */
47 l_result NUMBER;
48 l_proc_msg VARCHAR2(300);
49 l_wms_installed VARCHAR2(10);
50 l_lot_exp_date DATE;
51 l_serial_prefix VARCHAR2(30);
52
53 l_debug number := NVL(FND_PROFILE.VALUE('INV_DEBUG_TRACE'),0);
54 BEGIN
55 IF (fnd_profile.defined('TRANSACTION_DATE')) THEN
56 v_profile_value := TO_NUMBER(fnd_profile.value('TRANSACTION_DATE'));
57
58 -- Profile value of:
59 -- 1 = Any open period
60 -- 2 = No past date
61 -- 3 = No past periods
62 -- 4 = Warn when past period
63
64 IF (v_profile_value = 3) THEN
65 v_open_past_period := TRUE;
66 END IF;
67 ELSE
68 FND_MESSAGE.SET_NAME('FND','PROFILES-CANNOT READ');
69 FND_MESSAGE.SET_TOKEN('OPTION','TRANSACTION_DATE',TRUE);
70 FND_MESSAGE.SET_TOKEN('ROUTINE',
71 'MTL_CC_TRANSACT_PKG.CC_TRANSACT ',TRUE);
72
73 --Bug 4171757- Added the below statement to capture messages in the calling program
74 FND_MSG_PUB.ADD;
75 --End of fix for Bug 4171757
76
77 --Bug 4171757 -Added the following for messages in the INV debug file.
78 IF (l_debug = 1) THEN
79 inv_log_util.TRACE('Errors out here with the message to user: ' || 'PROFILES-CANNOT READ', 'MTL_CC_TRANSACT_PKG', 9);
80 END IF;
81 --End of fix for Bug 4171757
82
83 APP_EXCEPTION.RAISE_EXCEPTION;
84 RETURN -1;
85 END IF;
86
87 IF (v_profile_value = 2 AND TxnDate < TRUNC(SYSDATE)) THEN
88 FND_MESSAGE.SET_NAME('INV', 'INV_NO_PAST_TXN_DATES');
89
90 --Bug 4171757- Added the below statement to capture messages in the calling program
91 FND_MSG_PUB.ADD;
92 --End of fix for Bug 4171757
93
94 --Bug 4171757 -Added the following for messages in the INV debug file.
95 IF (l_debug = 1) THEN
96 inv_log_util.TRACE('Errors out here with the message to user: ' || 'INV_NO_PAST_TXN_DATES', 'MTL_CC_TRANSACT_PKG', 9);
97 END IF;
98 --End of fix for Bug 4171757
99
100 app_exception.raise_exception;
101 RETURN -1;
102 END IF;
103
104 invttmtx.tdatechk(org_id,
105 TxnDate,
106 v_period_id,
107 v_open_past_period);
108
109 IF (v_period_id = 0) THEN
110 FND_MESSAGE.SET_NAME('INV', 'INV_NO_OPEN_PERIOD');
111
112 --Bug 4171757- Added the below statement to capture messages in the calling program
113 FND_MSG_PUB.ADD;
114 --End of fix for Bug 4171757
115
116 --Bug 4171757 -Added the following for messages in the INV debug file.
117 IF (l_debug = 1) THEN
118 inv_log_util.TRACE('Errors out here with the message to user: ' || 'INV_NO_OPEN_PERIOD', 'MTL_CC_TRANSACT_PKG', 9);
119 END IF;
120 --End of fix for Bug 4171757
121
122 app_exception.raise_exception;
123 RETURN -1;
124 ELSIF (v_period_id = -1) THEN
125 app_exception.raise_exception;
126 RETURN -1;
127 ELSE
128 IF (v_profile_value = 3) AND
129 NOT (v_open_past_period) THEN
130 FND_MESSAGE.SET_NAME('INV', 'INV_NO_PAST_TXN_PERIODS');
131
132 --Bug 4171757- Added the below statement to capture messages in the calling program
133 FND_MSG_PUB.ADD;
134 --End of fix for Bug 4171757
135
136 --Bug 4171757 -Added the following for messages in the INV debug file.
137 IF (l_debug = 1) THEN
138 inv_log_util.TRACE('Errors out here with the message to user: ' || 'INV_NO_PAST_TXN_PERIODS', 'MTL_CC_TRANSACT_PKG', 9);
139 END IF;
140 --End of fix for Bug 4171757
141
142 app_exception.raise_exception;
143 RETURN -1;
144 END IF;
145 END IF;
146
147 --Check whether WMS is installed
148 IF inv_install.adv_inv_installed(NULL) THEN
149 l_wms_installed := 'TRUE';
150 ELSE
151 l_wms_installed := 'FALSE';
152 END IF;
153
154 --Check the materisl status applicability for the org, item and lot number
155 --combination for the cycle count adjust transaction. If it is not valid
156 --then set the return value to "2" to indicate invalid lot status
157 IF l_wms_installed = 'TRUE' AND LotNum IS NOT NULL THEN
158 IF inv_material_status_grp.is_status_applicable
159 ( l_wms_installed,
160 NULL,
161 4,
162 NULL,
163 NULL,
164 org_id,
165 item_id,
166 NULL,
167 NULL,
168 LotNum,
169 NULL,
170 'O') = 'Y' THEN
171 NULL;
172 ELSE
173 RETURN 2;
174 END IF;
175 END IF;
176
177 --Check the material status applicability for the org, item and serial number
178 --combination for the cycle count adjust transaction. If it is not valid
179 --then set the return value to "3" to indicate invalid serial status
180 IF l_wms_installed = 'TRUE' AND SerialNum IS NOT NULL THEN
181 IF inv_material_status_grp.is_status_applicable
182 ( l_wms_installed,
183 NULL,
184 4, --transaction_type_id
185 NULL,
186 NULL,
187 org_id,
188 item_id,
189 NULL,
190 NULL,
191 NULL,
192 SerialNum,
193 'S') = 'Y' THEN
194 NULL;
195 ELSE
196 RETURN 3;
197 END IF;
198 END IF;
199
200 IF transfer_sub IS NOT NULL AND transfer_loc_id IS NOT NULL THEN
201 v_transaction_action_id := 2;
202 v_transaction_type_id := 5; -- 4159102
203 ELSE
204 v_transaction_action_id := 4;
205 v_transaction_type_id := 4; -- 4159102
206 END IF;
207 --inv_debug.message('ssia', 'In INVATC2B.pls ');
208 --inv_debug.message('ssia', 'Transaction header id is ' || TxnHeaderId);
209 --inv_Debug.message('ssia', 'Transaction temp id is ' || TxnTempId);
210 --inv_Debug.message('ssia', 'Item id is ' || item_id);
211 --inv_Debug.message('ssia', 'Sub is ' ||sub);
212 IF (TxnTempId IS NULL) THEN
213 SELECT mtl_material_transactions_s.NEXTVAL
214 INTO l_transaction_temp_id
215 FROM dual;
216 ELSE
217 l_transaction_temp_id := TxnTempId;
218 END IF;
219
220 -- Whether WMS is installed or not installed,
221 -- it is required to insert a record into MMTT.
222
223 IF (lpn_discrepancy = 2) THEN
224 -- Normal cycle count transaction insertion
225
226 -- Insert adjustment record into MMTT with no
227 -- values for Lot_Number and Serial_Number
228 IF (txnqty < 0) THEN
229 -- Negative adjustment quantity so the LPN column to insert into
230 -- should be LPN_ID
231
232 -- Bug# 2872044
233 -- TM orders by the txn batch ID instead of txn temp ID as of
234 -- patchset I so store the value of the txn temp ID in the batch
235 -- ID column to maintain the order in which MMTT records are processed
236 INSERT INTO MTL_MATERIAL_TRANSACTIONS_TEMP
237 (
238 TRANSACTION_HEADER_ID,
239 TRANSACTION_TEMP_ID,
240 INVENTORY_ITEM_ID,
241 SUBINVENTORY_CODE,
242 PRIMARY_QUANTITY,
243 TRANSACTION_QUANTITY,
244 TRANSACTION_UOM,
245 TRANSACTION_DATE,
246 ORGANIZATION_ID,
247 ACCT_PERIOD_ID,
248 TRANSACTION_MODE,
249 LAST_UPDATE_DATE,
250 LAST_UPDATED_BY,
251 TRANSACTION_SOURCE_ID,
252 TRANSACTION_SOURCE_TYPE_ID,
253 CYCLE_COUNT_ID,
254 TRANSACTION_TYPE_ID,
255 TRANSACTION_ACTION_ID,
256 TRANSACTION_REFERENCE,
257 REASON_ID,
258 DISTRIBUTION_ACCOUNT_ID,
259 --LOT_NUMBER,
260 --WAYBILL_AIRBILL, /* Lot expiration date */
261 REVISION,
262 LOCATOR_ID,
263 --SERIAL_NUMBER,
264 PROCESS_FLAG,
265 LAST_UPDATE_LOGIN,
266 CREATED_BY,
267 CREATION_DATE,
268 LPN_ID,
269 TRANSFER_SUBINVENTORY,
270 TRANSFER_TO_LOCATION,
271 COST_GROUP_ID,
272 TRANSACTION_BATCH_ID,
273 TRANSACTION_BATCH_SEQ,
274 -- BEGIN INVCONV
275 SECONDARY_UOM_CODE,
276 SECONDARY_TRANSACTION_QUANTITY
277 -- END INVCONV
278 )
279 VALUES
280 (
281 TxnHeaderId,
282 l_transaction_Temp_id,
283 item_id,
284 sub,
285 PUOMQty,
286 TxnQty,
287 TxnUOM,
288 TxnDate,
289 org_id,
290 v_period_id,
291 TxnProcMode,
292 SYSDATE,
293 UserID,
294 cc_header_id,
295 9,
296 cc_entry_id,
297 v_transaction_type_id, -- 4159102
298 v_transaction_action_id,
299 TxnRef,
300 ReasonId,
301 TxnAcctID,
302 --LotNum,
303 --LotExpDate,
304 rev,
305 locator_id,
306 --SerialNum,
307 'Y',
308 LoginID,
309 UserID,
310 SYSDATE,
311 lpn_id,
312 transfer_sub,
313 transfer_loc_id,
317 -- BEGIN INVCONV
314 cost_group_id,
315 l_transaction_Temp_id,
316 l_transaction_Temp_id,
318 secUOM,
319 secQty
320 -- END INVCONV
321 );
322 ELSE
323 -- Positive adjustment quantity so the LPN column to insert into
324 -- should be TRANSFER_LPN_ID
325
326 -- Bug# 2872044
327 -- TM orders by the txn batch ID instead of txn temp ID as of
328 -- patchset I so store the value of the txn temp ID in the batch
329 -- ID column to maintain the order in which MMTT records are processed
330 INSERT INTO MTL_MATERIAL_TRANSACTIONS_TEMP
331 (
332 TRANSACTION_HEADER_ID,
333 TRANSACTION_TEMP_ID,
334 INVENTORY_ITEM_ID,
335 SUBINVENTORY_CODE,
336 PRIMARY_QUANTITY,
337 TRANSACTION_QUANTITY,
338 TRANSACTION_UOM,
339 TRANSACTION_DATE,
340 ORGANIZATION_ID,
341 ACCT_PERIOD_ID,
342 TRANSACTION_MODE,
343 LAST_UPDATE_DATE,
344 LAST_UPDATED_BY,
345 TRANSACTION_SOURCE_ID,
346 TRANSACTION_SOURCE_TYPE_ID,
347 CYCLE_COUNT_ID,
348 TRANSACTION_TYPE_ID,
349 TRANSACTION_ACTION_ID,
350 TRANSACTION_REFERENCE,
351 REASON_ID,
352 DISTRIBUTION_ACCOUNT_ID,
353 --LOT_NUMBER,
354 --WAYBILL_AIRBILL, /* Lot expiration date */
355 REVISION,
356 LOCATOR_ID,
357 --SERIAL_NUMBER,
358 PROCESS_FLAG,
359 LAST_UPDATE_LOGIN,
360 CREATED_BY,
361 CREATION_DATE,
362 TRANSFER_LPN_ID,
363 TRANSFER_SUBINVENTORY,
364 TRANSFER_TO_LOCATION,
365 COST_GROUP_ID,
366 TRANSACTION_BATCH_ID,
367 TRANSACTION_BATCH_SEQ,
368 -- BEGIN INVCONV
369 SECONDARY_UOM_CODE,
370 SECONDARY_TRANSACTION_QUANTITY
371 -- END INVCONV
372 )
373 VALUES
374 (
375 TxnHeaderId,
376 l_transaction_Temp_id,
377 item_id,
378 sub,
379 PUOMQty,
380 TxnQty,
381 TxnUOM,
382 TxnDate,
383 org_id,
384 v_period_id,
385 TxnProcMode,
386 SYSDATE,
387 UserID,
388 cc_header_id,
389 9,
390 cc_entry_id,
391 v_transaction_type_id, -- 4159102
392 v_transaction_action_id,
393 TxnRef,
394 ReasonId,
395 TxnAcctID,
396 --LotNum,
397 --LotExpDate,
398 rev,
399 locator_id,
400 --SerialNum,
401 'Y',
402 LoginID,
403 UserID,
404 SYSDATE,
405 lpn_id,
406 transfer_sub,
407 transfer_loc_id,
408 cost_group_id,
409 l_transaction_Temp_id,
410 l_transaction_Temp_id,
411 -- BEGIN INVCONV
412 secUOM,
413 secQty
414 -- END INVCONV
415 );
416 END IF;
417
418 -- Item is lot controlled
419 IF (LotNum IS NOT NULL) THEN
420
421 -- If item is also serial controlled,
422 -- generate a serial transaction temp ID
423 IF (SerialNum IS NOT NULL) THEN
424 SELECT MTL_MATERIAL_TRANSACTIONS_S.NEXTVAL
425 INTO l_serial_temp_id
426 FROM DUAL;
427 ELSE
428 l_serial_temp_id := NULL;
429 END IF;
430
431 -- Get the Lot Expiration Date
432 -- for this Lot Number if none was passed in
433 IF (LotExpDate IS NULL) THEN
434 SELECT EXPIRATION_DATE
435 INTO l_lot_exp_date
436 FROM MTL_LOT_NUMBERS
437 WHERE INVENTORY_ITEM_ID = item_id
438 AND ORGANIZATION_ID = org_id
439 AND LOT_NUMBER = LotNum;
440 ELSE
441 l_lot_exp_date := LotExpDate;
442 END IF;
443
444 -- Insert a record into MTLT
445 INSERT INTO MTL_TRANSACTION_LOTS_TEMP
446 ( TRANSACTION_TEMP_ID,
447 LAST_UPDATE_DATE,
448 LAST_UPDATED_BY,
449 CREATION_DATE,
450 CREATED_BY,
451 LAST_UPDATE_LOGIN,
452 TRANSACTION_QUANTITY,
453 PRIMARY_QUANTITY,
454 LOT_NUMBER,
455 LOT_EXPIRATION_DATE,
456 SERIAL_TRANSACTION_TEMP_ID,
457 GROUP_HEADER_ID
458 , secondary_quantity -- INVCONV,NSRIVAST
459 , secondary_unit_of_measure -- INVCONV,NSRIVAST
460 )
461 VALUES
462 ( l_transaction_Temp_id,
463 SYSDATE,
464 UserID,
465 SYSDATE,
466 UserID,
467 LoginID,
468 TxnQty,
469 PUOMQty,
470 LotNum,
471 l_lot_exp_date,
472 l_serial_temp_id,
473 TxnHeaderId
474 ,secQty -- INVCONV,NSRIVAST
475 ,secUOM -- INVCONV,NSRIVAST
479 -- Item is serial controlled
476 );
477 END IF;
478
480 IF (SerialNum IS NOT NULL) THEN
481
482 -- If Item is not Lot controlled,
483 -- then use the transaction temp ID
484 -- from the MMTT record
485 IF (LotNum IS NULL) THEN
486 l_serial_temp_id := l_transaction_temp_id;
487 END IF;
488
489 --Get the serial prefix for this serial number
490 SELECT AUTO_SERIAL_ALPHA_PREFIX
491 INTO l_serial_prefix
492 FROM MTL_SYSTEM_ITEMS
493 WHERE INVENTORY_ITEM_ID = item_id
494 AND ORGANIZATION_ID = org_id;
495
496 --Bug 10313532: Fetch serial attributes from MSN
497 INSERT INTO MTL_SERIAL_NUMBERS_TEMP
498 ( TRANSACTION_TEMP_ID
499 ,LAST_UPDATE_DATE
500 ,LAST_UPDATED_BY
501 ,CREATION_DATE
502 ,CREATED_BY
503 ,LAST_UPDATE_LOGIN
504 ,FM_SERIAL_NUMBER
505 ,TO_SERIAL_NUMBER
506 ,SERIAL_PREFIX
507 ,GROUP_HEADER_ID
508 ,C_ATTRIBUTE1
509 ,C_ATTRIBUTE10
510 ,C_ATTRIBUTE11
511 ,C_ATTRIBUTE12
512 ,C_ATTRIBUTE13
513 ,C_ATTRIBUTE14
514 ,C_ATTRIBUTE15
515 ,C_ATTRIBUTE16
516 ,C_ATTRIBUTE17
517 ,C_ATTRIBUTE18
518 ,C_ATTRIBUTE19
519 ,C_ATTRIBUTE2
520 ,C_ATTRIBUTE20
521 ,C_ATTRIBUTE3
522 ,C_ATTRIBUTE4
523 ,C_ATTRIBUTE5
524 ,C_ATTRIBUTE6
525 ,C_ATTRIBUTE7
526 ,C_ATTRIBUTE8
527 ,C_ATTRIBUTE9
528 ,CYCLES_SINCE_MARK
529 ,CYCLES_SINCE_NEW
530 ,CYCLES_SINCE_OVERHAUL
531 ,CYCLES_SINCE_REPAIR
532 ,CYCLES_SINCE_VISIT
533 ,D_ATTRIBUTE1
534 ,D_ATTRIBUTE10
535 ,D_ATTRIBUTE2
536 ,D_ATTRIBUTE3
537 ,D_ATTRIBUTE4
538 ,D_ATTRIBUTE5
539 ,D_ATTRIBUTE6
540 ,D_ATTRIBUTE7
541 ,D_ATTRIBUTE8
542 ,D_ATTRIBUTE9
543 ,N_ATTRIBUTE1
544 ,N_ATTRIBUTE10
545 ,N_ATTRIBUTE2
546 ,N_ATTRIBUTE3
547 ,N_ATTRIBUTE4
548 ,N_ATTRIBUTE5
549 ,N_ATTRIBUTE6
550 ,N_ATTRIBUTE7
551 ,N_ATTRIBUTE8
552 ,N_ATTRIBUTE9
553 ,NUMBER_OF_REPAIRS
554 ,SERIAL_ATTRIBUTE_CATEGORY
555 ,TERRITORY_CODE
556 ,TIME_SINCE_MARK
557 ,TIME_SINCE_NEW
558 ,TIME_SINCE_OVERHAUL
559 ,TIME_SINCE_REPAIR
560 ,TIME_SINCE_VISIT
561 )
562 SELECT
563 l_serial_temp_id
564 ,SYSDATE
565 ,UserID
566 ,SYSDATE
567 ,UserID
568 ,LoginID
569 ,SerialNum
570 ,SerialNum
571 ,l_serial_prefix
572 ,TxnHeaderId
573 ,C_ATTRIBUTE1
574 ,C_ATTRIBUTE10
575 ,C_ATTRIBUTE11
576 ,C_ATTRIBUTE12
577 ,C_ATTRIBUTE13
578 ,C_ATTRIBUTE14
579 ,C_ATTRIBUTE15
580 ,C_ATTRIBUTE16
581 ,C_ATTRIBUTE17
582 ,C_ATTRIBUTE18
583 ,C_ATTRIBUTE19
584 ,C_ATTRIBUTE2
585 ,C_ATTRIBUTE20
586 ,C_ATTRIBUTE3
587 ,C_ATTRIBUTE4
588 ,C_ATTRIBUTE5
589 ,C_ATTRIBUTE6
590 ,C_ATTRIBUTE7
591 ,C_ATTRIBUTE8
592 ,C_ATTRIBUTE9
593 ,CYCLES_SINCE_MARK
594 ,CYCLES_SINCE_NEW
595 ,CYCLES_SINCE_OVERHAUL
596 ,CYCLES_SINCE_REPAIR
597 ,CYCLES_SINCE_VISIT
598 ,D_ATTRIBUTE1
599 ,D_ATTRIBUTE10
600 ,D_ATTRIBUTE2
601 ,D_ATTRIBUTE3
602 ,D_ATTRIBUTE4
603 ,D_ATTRIBUTE5
604 ,D_ATTRIBUTE6
605 ,D_ATTRIBUTE7
606 ,D_ATTRIBUTE8
607 ,D_ATTRIBUTE9
608 ,N_ATTRIBUTE1
609 ,N_ATTRIBUTE10
610 ,N_ATTRIBUTE2
611 ,N_ATTRIBUTE3
612 ,N_ATTRIBUTE4
613 ,N_ATTRIBUTE5
614 ,N_ATTRIBUTE6
615 ,N_ATTRIBUTE7
616 ,N_ATTRIBUTE8
617 ,N_ATTRIBUTE9
618 ,NUMBER_OF_REPAIRS
619 ,SERIAL_ATTRIBUTE_CATEGORY
620 ,TERRITORY_CODE
621 ,TIME_SINCE_MARK
622 ,TIME_SINCE_NEW
623 ,TIME_SINCE_OVERHAUL
624 ,TIME_SINCE_REPAIR
625 ,TIME_SINCE_VISIT
626 FROM mtl_serial_numbers
627 WHERE inventory_item_id = item_id
628 AND serial_number = SerialNum;
629
630 END IF;
631
632 ELSE -- lpn_discrepancy = 1
633 -- LPN discrepancy transaction so the LPN column to
634 -- insert into is CONTENT_LPN_ID
635 INSERT INTO MTL_MATERIAL_TRANSACTIONS_TEMP
636 (
637 TRANSACTION_HEADER_ID,
638 TRANSACTION_TEMP_ID,
639 INVENTORY_ITEM_ID,
640 SUBINVENTORY_CODE,
641 PRIMARY_QUANTITY,
645 ORGANIZATION_ID,
642 TRANSACTION_QUANTITY,
643 TRANSACTION_UOM,
644 TRANSACTION_DATE,
646 ACCT_PERIOD_ID,
647 TRANSACTION_MODE,
648 LAST_UPDATE_DATE,
649 LAST_UPDATED_BY,
650 TRANSACTION_SOURCE_ID,
651 TRANSACTION_SOURCE_TYPE_ID,
652 CYCLE_COUNT_ID,
653 TRANSACTION_TYPE_ID,
654 TRANSACTION_ACTION_ID,
655 TRANSACTION_REFERENCE,
656 REASON_ID,
657 DISTRIBUTION_ACCOUNT_ID,
658 LOT_NUMBER,
659 WAYBILL_AIRBILL, /* Lot expiration date */
660 REVISION,
661 LOCATOR_ID,
662 SERIAL_NUMBER,
663 PROCESS_FLAG,
664 LAST_UPDATE_LOGIN,
665 CREATED_BY,
666 CREATION_DATE,
667 CONTENT_LPN_ID,
668 TRANSFER_SUBINVENTORY,
669 TRANSFER_TO_LOCATION,
670 COST_GROUP_ID,
671 TRANSACTION_BATCH_ID,
672 TRANSACTION_BATCH_SEQ,
673 -- BEGIN INVCONV
674 SECONDARY_UOM_CODE,
675 SECONDARY_TRANSACTION_QUANTITY
676 -- END INVCONV
677 )
678 VALUES
679 (
680 TxnHeaderId,
681 l_transaction_Temp_id,
682 item_id,
683 sub,
684 PUOMQty,
685 TxnQty,
686 TxnUOM,
687 TxnDate,
688 org_id,
689 v_period_id,
690 TxnProcMode,
691 SYSDATE,
692 UserID,
693 cc_header_id,
694 9,
695 NULL, --cc_entry_id,9452528
696 v_transaction_type_id, --4159102
697 v_transaction_action_id,
698 TxnRef,
699 ReasonId,
700 TxnAcctID,
701 LotNum,
702 LotExpDate,
703 rev,
704 locator_id,
705 SerialNum,
706 'Y',
707 LoginID,
708 UserID,
709 SYSDATE,
710 lpn_id,
711 transfer_sub,
712 transfer_loc_id,
713 cost_group_id,
714 l_transaction_Temp_id,
715 l_transaction_Temp_id,
716 -- BEGIN INVCONV
717 secUOM,
718 secQty
719 -- END INVCONV
720 );
721 END IF;
722
723 RETURN 1;
724
725 EXCEPTION
726 WHEN OTHERS THEN
727 --Bug 4171757 -Throwing the error message "Transaction Failed " to the user if an exception is raised.
728
729 FND_MESSAGE.SET_NAME('INV','INV_FAILED');
730 FND_MSG_PUB.ADD ;
731
732 --End of fix for Bug 4171757
733
734 --Bug 4171757 -Added the following for messages in the INV debug file.
735 IF (l_debug = 1) THEN
736 inv_log_util.TRACE('In the exception block, here throwing the message to the user: ' || 'INV_FAILED', 'MTL_CC_TRANSACT_PKG', 9);
737 END IF;
738 --End of fix for Bug 4171757
739
740 RETURN - 1;
741
742 END CC_TRANSACT;
743
744
745 END MTL_CC_TRANSACT_PKG;