[Home] [Help]
177: IS
178:
179: itemtype VARCHAR2(30);
180: itemkey VARCHAR2(60);
181: l_tu_id igi_exp_dus.tu_id%TYPE;
182: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
183:
184: l_du_list VARCHAR2(28000);
185: l_du VARCHAR2(4000);
178:
179: itemtype VARCHAR2(30);
180: itemkey VARCHAR2(60);
181: l_tu_id igi_exp_dus.tu_id%TYPE;
182: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
183:
184: l_du_list VARCHAR2(28000);
185: l_du VARCHAR2(4000);
186:
526: ' updating igi_exp_tus setting tu_status = TRA for tu_id ' || p_tu_id);
527: -- =============== END DEBUG LOG ==================
528:
529: -- Update the status of all DUs in the TU to 'Transmitted'
530: UPDATE igi_exp_dus dus
531: SET dus.du_status = 'TRA'
532: WHERE dus.tu_id = p_tu_id;
533:
534: -- =============== START DEBUG LOG ================
532: WHERE dus.tu_id = p_tu_id;
533:
534: -- =============== START DEBUG LOG ================
535: DEBUG_LOG_STRING (l_proc_level, 'Start_approval_workflow.Msg3',
536: ' updating igi_exp_dus setting du_status = TRA for tu_id ' || p_tu_id);
537: -- =============== END DEBUG LOG ==================
538:
539: -- Get approval run id
540: SELECT igi_exp_tu_run_s1.nextval
2075: actid IN NUMBER,
2076: funcmode IN VARCHAR2,
2077: result OUT NOCOPY VARCHAR2) IS
2078:
2079: l_tu_id igi_exp_dus.tu_id%TYPE;
2080:
2081: BEGIN
2082:
2083: -- =============== START DEBUG LOG ================
2113:
2114: -- Update the status of the DUs in the TU
2115: -- to 'ITU' for 'In a Transmission Unit'
2116:
2117: UPDATE igi_exp_dus dus
2118: SET dus.du_status = 'ITU'
2119: WHERE dus.tu_id = l_tu_id;
2120:
2121: -- =============== START DEBUG LOG ================
2119: WHERE dus.tu_id = l_tu_id;
2120:
2121: -- =============== START DEBUG LOG ================
2122: DEBUG_LOG_STRING (l_proc_level, 'Update_dus_to_in_a_tu.Msg4',
2123: ' UPDATE igi_exp_dus du_status = ITU ');
2124: -- =============== END DEBUG LOG ==================
2125:
2126: END IF;
2127:
3611: ' GetItemAttrNumber TU_ID --> ' || l_tu_id);
3612: -- =============== END DEBUG LOG ==================
3613:
3614: -- Change the status of the dialog units on hold
3615: UPDATE igi_exp_dus dus
3616: SET dus.du_status = 'APP'
3617: WHERE dus.du_status = 'HLD'
3618: AND dus.tu_id = l_tu_id;
3619:
3618: AND dus.tu_id = l_tu_id;
3619:
3620: -- =============== START DEBUG LOG ================
3621: DEBUG_LOG_STRING (l_proc_level, 'Reset_du_statuses.Msg3',
3622: ' UPDATE igi_exp_dus dus HLD to APP ' || SQL%ROWCOUNT);
3623: -- =============== END DEBUG LOG ==================
3624:
3625: -- Change the status of dialog units which have been rejected
3626: -- but still contain transactions.
3623: -- =============== END DEBUG LOG ==================
3624:
3625: -- Change the status of dialog units which have been rejected
3626: -- but still contain transactions.
3627: UPDATE igi_exp_dus dus
3628: SET dus.du_status = 'APP'
3629: WHERE dus.du_status = 'REJ'
3630: AND dus.tu_id = l_tu_id
3631: AND EXISTS (SELECT 'AR'
3637: WHERE ap.du_id = dus.du_id);
3638:
3639: -- =============== START DEBUG LOG ================
3640: DEBUG_LOG_STRING (l_proc_level, 'Reset_du_statuses.Msg4',
3641: ' UPDATE igi_exp_dus status - REJ to APP' || SQL%ROWCOUNT);
3642: -- =============== END DEBUG LOG ==================
3643:
3644: -- Change the status of the dialog units which are in status
3645: -- approved and transmitted
3642: -- =============== END DEBUG LOG ==================
3643:
3644: -- Change the status of the dialog units which are in status
3645: -- approved and transmitted
3646: UPDATE igi_exp_dus dus
3647: SET dus.du_status = 'APP'
3648: WHERE dus.du_status = 'ATR'
3649: AND dus.tu_id = l_tu_id;
3650:
3649: AND dus.tu_id = l_tu_id;
3650:
3651: -- =============== START DEBUG LOG ================
3652: DEBUG_LOG_STRING (l_proc_level, 'Reset_du_statuses.Msg5',
3653: ' UPDATE igi_exp_dus status -- ATR to APP ' || SQL%ROWCOUNT);
3654: -- =============== END DEBUG LOG ==================
3655:
3656: END IF;
3657:
3719: -- i.e. that they have been set to a status of Approved(APP)
3720: -- Rejected (REJ) or On Hold (HLD)
3721: SELECT count(*)
3722: INTO l_no_of_dus
3723: FROM igi_exp_dus
3724: WHERE tu_id = l_tu_id
3725: AND du_status NOT IN ('APP','REJ','HLD');
3726:
3727: -- =============== START DEBUG LOG ================
3804: DEBUG_LOG_STRING (l_proc_level, 'Set_dus_to_atr.Msg2',
3805: ' GetItemAttrNumber TU_ID --> ' || l_tu_id);
3806: -- =============== END DEBUG LOG ==================
3807:
3808: UPDATE igi_exp_dus
3809: SET du_status = 'ATR'
3810: WHERE du_status = 'APP'
3811: AND tu_id = l_tu_id;
3812:
3811: AND tu_id = l_tu_id;
3812:
3813: -- =============== START DEBUG LOG ================
3814: DEBUG_LOG_STRING (l_proc_level, 'Set_dus_to_atr.Msg3',
3815: ' UPDATE igi_exp_dus APP - ATR');
3816: -- =============== END DEBUG LOG ==================
3817:
3818: END IF;
3819:
3852: result OUT NOCOPY VARCHAR2)
3853: IS
3854:
3855:
3856: CURSOR c_du_hold_info(p_tu_id igi_exp_dus.tu_id%TYPE)
3857: IS
3858: SELECT du_order_number
3859: ,du_legal_number
3860: FROM igi_exp_dus
3856: CURSOR c_du_hold_info(p_tu_id igi_exp_dus.tu_id%TYPE)
3857: IS
3858: SELECT du_order_number
3859: ,du_legal_number
3860: FROM igi_exp_dus
3861: WHERE tu_id = p_tu_id
3862: AND du_status = 'HLD';
3863:
3864: l_tu_id igi_exp_dus.tu_id%TYPE;
3860: FROM igi_exp_dus
3861: WHERE tu_id = p_tu_id
3862: AND du_status = 'HLD';
3863:
3864: l_tu_id igi_exp_dus.tu_id%TYPE;
3865: l_hold_count NUMBER;
3866: l_du_hold_list VARCHAR2(28000);
3867:
3868: BEGIN
3886: -- =============== END DEBUG LOG ==================
3887:
3888: SELECT count(*)
3889: INTO l_hold_count
3890: FROM igi_exp_dus
3891: WHERE du_status = 'HLD'
3892: AND tu_id = l_tu_id;
3893:
3894: -- =============== START DEBUG LOG ================
4074: actid IN NUMBER,
4075: funcmode IN VARCHAR2,
4076: result OUT NOCOPY VARCHAR2) IS
4077:
4078: CURSOR c_next_du_hld(p_tu_id igi_exp_dus.tu_id%TYPE)
4079: IS
4080: SELECT du_id
4081: ,du_by_user_id
4082: FROM igi_exp_dus
4078: CURSOR c_next_du_hld(p_tu_id igi_exp_dus.tu_id%TYPE)
4079: IS
4080: SELECT du_id
4081: ,du_by_user_id
4082: FROM igi_exp_dus
4083: WHERE tu_id = p_tu_id
4084: AND du_status = 'HLD'
4085: AND rownum = 1;
4086:
4083: WHERE tu_id = p_tu_id
4084: AND du_status = 'HLD'
4085: AND rownum = 1;
4086:
4087: CURSOR c_du_info(p_tu_id igi_exp_dus.tu_id%TYPE
4088: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4089: IS
4090: SELECT du_order_number
4091: ,du_legal_number
4084: AND du_status = 'HLD'
4085: AND rownum = 1;
4086:
4087: CURSOR c_du_info(p_tu_id igi_exp_dus.tu_id%TYPE
4088: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4089: IS
4090: SELECT du_order_number
4091: ,du_legal_number
4092: FROM igi_exp_dus
4088: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4089: IS
4090: SELECT du_order_number
4091: ,du_legal_number
4092: FROM igi_exp_dus
4093: WHERE tu_id = p_tu_id
4094: AND du_status = 'HLD'
4095: AND du_by_user_id = p_du_preparer_id;
4096:
4093: WHERE tu_id = p_tu_id
4094: AND du_status = 'HLD'
4095: AND du_by_user_id = p_du_preparer_id;
4096:
4097: l_tu_id igi_exp_dus.tu_id%TYPE;
4098: l_du_id igi_exp_dus.du_id%TYPE;
4099: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4100: l_du_prep_name fnd_user.user_name%TYPE;
4101: l_du_by_prep_list VARCHAR2(28000);
4094: AND du_status = 'HLD'
4095: AND du_by_user_id = p_du_preparer_id;
4096:
4097: l_tu_id igi_exp_dus.tu_id%TYPE;
4098: l_du_id igi_exp_dus.du_id%TYPE;
4099: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4100: l_du_prep_name fnd_user.user_name%TYPE;
4101: l_du_by_prep_list VARCHAR2(28000);
4102:
4095: AND du_by_user_id = p_du_preparer_id;
4096:
4097: l_tu_id igi_exp_dus.tu_id%TYPE;
4098: l_du_id igi_exp_dus.du_id%TYPE;
4099: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4100: l_du_prep_name fnd_user.user_name%TYPE;
4101: l_du_by_prep_list VARCHAR2(28000);
4102:
4103: BEGIN
4341: actid IN NUMBER,
4342: funcmode IN VARCHAR2,
4343: result OUT NOCOPY VARCHAR2) IS
4344:
4345: l_tu_id igi_exp_dus.tu_id%TYPE;
4346: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4347: l_du_amount igi_exp_dus.du_amount%TYPE;
4348:
4349: BEGIN
4342: funcmode IN VARCHAR2,
4343: result OUT NOCOPY VARCHAR2) IS
4344:
4345: l_tu_id igi_exp_dus.tu_id%TYPE;
4346: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4347: l_du_amount igi_exp_dus.du_amount%TYPE;
4348:
4349: BEGIN
4350:
4343: result OUT NOCOPY VARCHAR2) IS
4344:
4345: l_tu_id igi_exp_dus.tu_id%TYPE;
4346: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4347: l_du_amount igi_exp_dus.du_amount%TYPE;
4348:
4349: BEGIN
4350:
4351: -- =============== START DEBUG LOG ================
4381: -- i.e. New TU amount = TU amount - released DU amount
4382: -- Find the total amount of all DUs about to be released
4383: SELECT sum(du_amount)
4384: INTO l_du_amount
4385: FROM igi_exp_dus
4386: WHERE tu_id = l_tu_id
4387: AND du_by_user_id = l_du_prep_id
4388: AND du_status = 'HLD';
4389:
4404:
4405: -- Want to release all DUs in this TU with status 'On Hold' which
4406: -- have been prepared by this user.
4407:
4408: UPDATE igi_exp_dus
4409: SET tu_id = null
4410: WHERE tu_id = l_tu_id
4411: AND du_by_user_id = l_du_prep_id
4412: AND du_status = 'HLD';
4412: AND du_status = 'HLD';
4413:
4414: -- =============== START DEBUG LOG ================
4415: DEBUG_LOG_STRING (l_proc_level, 'Remove_dus_on_hold.Msg6',
4416: ' UPDATE igi_exp_dus tu_id to NULL --> ' || SQL%ROWCOUNT);
4417: -- =============== END DEBUG LOG ==================
4418:
4419: END IF;
4420:
4460: actid IN NUMBER,
4461: funcmode IN VARCHAR2,
4462: result OUT NOCOPY VARCHAR2) IS
4463:
4464: CURSOR c_du_rej_info(p_tu_id igi_exp_dus.tu_id%TYPE)
4465: IS
4466: SELECT du_order_number
4467: ,du_legal_number
4468: FROM igi_exp_dus du
4464: CURSOR c_du_rej_info(p_tu_id igi_exp_dus.tu_id%TYPE)
4465: IS
4466: SELECT du_order_number
4467: ,du_legal_number
4468: FROM igi_exp_dus du
4469: WHERE tu_id = p_tu_id
4470: AND du_status = 'REJ';
4471:
4472: l_tu_id igi_exp_dus.tu_id%TYPE;
4468: FROM igi_exp_dus du
4469: WHERE tu_id = p_tu_id
4470: AND du_status = 'REJ';
4471:
4472: l_tu_id igi_exp_dus.tu_id%TYPE;
4473: l_rej_count NUMBER;
4474: l_du_rej_list VARCHAR2(28000);
4475:
4476:
4497: -- Find out NOCOPY if there are any DUs which have been rejected
4498: -- (i.e. if the status of the DU is 'Rejected' )
4499: SELECT count(*)
4500: INTO l_rej_count
4501: FROM igi_exp_dus du
4502: WHERE tu_id = l_tu_id
4503: AND du_status = 'REJ';
4504:
4505: -- =============== START DEBUG LOG ================
4688: actid IN NUMBER,
4689: funcmode IN VARCHAR2,
4690: result OUT NOCOPY VARCHAR2) IS
4691:
4692: CURSOR c_next_du_rej(p_tu_id igi_exp_dus.tu_id%TYPE)
4693: IS
4694: SELECT du_id
4695: ,du_by_user_id
4696: FROM igi_exp_dus du
4692: CURSOR c_next_du_rej(p_tu_id igi_exp_dus.tu_id%TYPE)
4693: IS
4694: SELECT du_id
4695: ,du_by_user_id
4696: FROM igi_exp_dus du
4697: WHERE tu_id = p_tu_id
4698: AND du_status = 'REJ'
4699: AND EXISTS (SELECT 'AR'
4700: FROM igi_exp_ar_trans ar
4704: FROM igi_exp_ap_trans ap
4705: WHERE ap.du_id = du.du_id)
4706: AND rownum = 1;
4707:
4708: CURSOR c_rej_du_info(p_tu_id igi_exp_dus.tu_id%TYPE
4709: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4710: IS
4711: SELECT du_order_number
4712: ,du_legal_number
4705: WHERE ap.du_id = du.du_id)
4706: AND rownum = 1;
4707:
4708: CURSOR c_rej_du_info(p_tu_id igi_exp_dus.tu_id%TYPE
4709: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4710: IS
4711: SELECT du_order_number
4712: ,du_legal_number
4713: FROM igi_exp_dus du
4709: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4710: IS
4711: SELECT du_order_number
4712: ,du_legal_number
4713: FROM igi_exp_dus du
4714: WHERE tu_id = p_tu_id
4715: AND du_status = 'REJ'
4716: AND du_by_user_id = p_du_preparer_id;
4717:
4714: WHERE tu_id = p_tu_id
4715: AND du_status = 'REJ'
4716: AND du_by_user_id = p_du_preparer_id;
4717:
4718: l_tu_id igi_exp_dus.tu_id%TYPE;
4719: l_du_id igi_exp_dus.du_id%TYPE;
4720: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4721: l_du_prep_name fnd_user.user_name%TYPE;
4722: l_no NUMBER := 0 ;
4715: AND du_status = 'REJ'
4716: AND du_by_user_id = p_du_preparer_id;
4717:
4718: l_tu_id igi_exp_dus.tu_id%TYPE;
4719: l_du_id igi_exp_dus.du_id%TYPE;
4720: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4721: l_du_prep_name fnd_user.user_name%TYPE;
4722: l_no NUMBER := 0 ;
4723: l_du_rej_list VARCHAR2(28000);
4716: AND du_by_user_id = p_du_preparer_id;
4717:
4718: l_tu_id igi_exp_dus.tu_id%TYPE;
4719: l_du_id igi_exp_dus.du_id%TYPE;
4720: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4721: l_du_prep_name fnd_user.user_name%TYPE;
4722: l_no NUMBER := 0 ;
4723: l_du_rej_list VARCHAR2(28000);
4724:
4964: actid IN NUMBER,
4965: funcmode IN VARCHAR2,
4966: result OUT NOCOPY VARCHAR2) IS
4967:
4968: CURSOR c_rej_dus(p_tu_id igi_exp_dus.tu_id%TYPE
4969: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4970: IS
4971: SELECT du_id
4972: FROM igi_exp_dus du
4965: funcmode IN VARCHAR2,
4966: result OUT NOCOPY VARCHAR2) IS
4967:
4968: CURSOR c_rej_dus(p_tu_id igi_exp_dus.tu_id%TYPE
4969: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4970: IS
4971: SELECT du_id
4972: FROM igi_exp_dus du
4973: WHERE tu_id = p_tu_id
4968: CURSOR c_rej_dus(p_tu_id igi_exp_dus.tu_id%TYPE
4969: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
4970: IS
4971: SELECT du_id
4972: FROM igi_exp_dus du
4973: WHERE tu_id = p_tu_id
4974: AND du_status = 'REJ'
4975: AND du_by_user_id = p_du_preparer_id
4976: AND EXISTS (SELECT 'AR'
4980: SELECT 'AP'
4981: FROM igi_exp_ap_trans ap
4982: WHERE ap.du_id = du.du_id);
4983:
4984: l_tu_id igi_exp_dus.tu_id%TYPE;
4985: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4986: l_du_id igi_exp_dus.du_id%TYPE;
4987: l_du_amount igi_exp_dus.du_amount%TYPE;
4988:
4981: FROM igi_exp_ap_trans ap
4982: WHERE ap.du_id = du.du_id);
4983:
4984: l_tu_id igi_exp_dus.tu_id%TYPE;
4985: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4986: l_du_id igi_exp_dus.du_id%TYPE;
4987: l_du_amount igi_exp_dus.du_amount%TYPE;
4988:
4989: BEGIN
4982: WHERE ap.du_id = du.du_id);
4983:
4984: l_tu_id igi_exp_dus.tu_id%TYPE;
4985: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4986: l_du_id igi_exp_dus.du_id%TYPE;
4987: l_du_amount igi_exp_dus.du_amount%TYPE;
4988:
4989: BEGIN
4990:
4983:
4984: l_tu_id igi_exp_dus.tu_id%TYPE;
4985: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
4986: l_du_id igi_exp_dus.du_id%TYPE;
4987: l_du_amount igi_exp_dus.du_amount%TYPE;
4988:
4989: BEGIN
4990:
4991: -- =============== START DEBUG LOG ================
5049:
5050: -- First find the total DU amount
5051: SELECT sum(du_amount)
5052: INTO l_du_amount
5053: FROM igi_exp_dus
5054: WHERE tu_id = l_tu_id
5055: AND du_by_user_id = l_du_prep_id
5056: AND du_status = 'REJ';
5057:
5070: ' UPDATE igi_exp_tus --> ' || SQL%ROWCOUNT);
5071: -- =============== END DEBUG LOG ==================
5072:
5073: -- Now update the DU amount to 0
5074: UPDATE igi_exp_dus
5075: SET du_amount = 0
5076: WHERE tu_id = l_tu_id
5077: AND du_by_user_id = l_du_prep_id
5078: AND du_status = 'REJ';
5080: -- OPSF(I) EXP Bug 2415293 S Brewer 18-JUL-2002 End(2)
5081:
5082: -- =============== START DEBUG LOG ================
5083: DEBUG_LOG_STRING (l_proc_level, 'Rem_trx_from_rej_dus.Msg8',
5084: ' UPDATE igi_exp_dus du_amount = 0 --> ' || SQL%ROWCOUNT);
5085: -- =============== END DEBUG LOG ==================
5086:
5087: END IF;
5088:
5212: actid IN NUMBER,
5213: funcmode IN VARCHAR2,
5214: result OUT NOCOPY VARCHAR2) IS
5215:
5216: l_tu_id igi_exp_dus.tu_id%TYPE;
5217: l_tu_type_header_id igi_exp_tus.tu_type_header_id%TYPE;
5218: l_tu_fiscal_year igi_exp_tus.tu_fiscal_year%TYPE;
5219: l_tu_legal_number igi_exp_tus.tu_legal_number%TYPE;
5220: l_tu_full_number VARCHAR2(240);
5388: actid IN NUMBER,
5389: funcmode IN VARCHAR2,
5390: result OUT NOCOPY VARCHAR2) IS
5391:
5392: CURSOR c_get_du(p_tu_id igi_exp_dus.tu_id%TYPE)
5393: IS
5394: SELECT du_id
5395: ,du_type_header_id
5396: ,du_fiscal_year
5394: SELECT du_id
5395: ,du_type_header_id
5396: ,du_fiscal_year
5397: ,du_order_number
5398: FROM igi_exp_dus
5399: WHERE tu_id = p_tu_id
5400: AND du_status = 'ATR';
5401:
5402: l_tu_id igi_exp_dus.tu_id%TYPE;
5398: FROM igi_exp_dus
5399: WHERE tu_id = p_tu_id
5400: AND du_status = 'ATR';
5401:
5402: l_tu_id igi_exp_dus.tu_id%TYPE;
5403: l_du_id igi_exp_dus.du_id%TYPE;
5404: l_du_type_header_id igi_exp_dus.du_type_header_id%TYPE;
5405: l_du_fiscal_year igi_exp_dus.du_fiscal_year%TYPE;
5406: l_du_order_number igi_exp_dus.du_order_number%TYPE;
5399: WHERE tu_id = p_tu_id
5400: AND du_status = 'ATR';
5401:
5402: l_tu_id igi_exp_dus.tu_id%TYPE;
5403: l_du_id igi_exp_dus.du_id%TYPE;
5404: l_du_type_header_id igi_exp_dus.du_type_header_id%TYPE;
5405: l_du_fiscal_year igi_exp_dus.du_fiscal_year%TYPE;
5406: l_du_order_number igi_exp_dus.du_order_number%TYPE;
5407: l_du_legal_number igi_exp_dus.du_legal_number%TYPE;
5400: AND du_status = 'ATR';
5401:
5402: l_tu_id igi_exp_dus.tu_id%TYPE;
5403: l_du_id igi_exp_dus.du_id%TYPE;
5404: l_du_type_header_id igi_exp_dus.du_type_header_id%TYPE;
5405: l_du_fiscal_year igi_exp_dus.du_fiscal_year%TYPE;
5406: l_du_order_number igi_exp_dus.du_order_number%TYPE;
5407: l_du_legal_number igi_exp_dus.du_legal_number%TYPE;
5408: l_error_message VARCHAR2(250);
5401:
5402: l_tu_id igi_exp_dus.tu_id%TYPE;
5403: l_du_id igi_exp_dus.du_id%TYPE;
5404: l_du_type_header_id igi_exp_dus.du_type_header_id%TYPE;
5405: l_du_fiscal_year igi_exp_dus.du_fiscal_year%TYPE;
5406: l_du_order_number igi_exp_dus.du_order_number%TYPE;
5407: l_du_legal_number igi_exp_dus.du_legal_number%TYPE;
5408: l_error_message VARCHAR2(250);
5409: l_du_failed VARCHAR2(1):='N';
5402: l_tu_id igi_exp_dus.tu_id%TYPE;
5403: l_du_id igi_exp_dus.du_id%TYPE;
5404: l_du_type_header_id igi_exp_dus.du_type_header_id%TYPE;
5405: l_du_fiscal_year igi_exp_dus.du_fiscal_year%TYPE;
5406: l_du_order_number igi_exp_dus.du_order_number%TYPE;
5407: l_du_legal_number igi_exp_dus.du_legal_number%TYPE;
5408: l_error_message VARCHAR2(250);
5409: l_du_failed VARCHAR2(1):='N';
5410:
5403: l_du_id igi_exp_dus.du_id%TYPE;
5404: l_du_type_header_id igi_exp_dus.du_type_header_id%TYPE;
5405: l_du_fiscal_year igi_exp_dus.du_fiscal_year%TYPE;
5406: l_du_order_number igi_exp_dus.du_order_number%TYPE;
5407: l_du_legal_number igi_exp_dus.du_legal_number%TYPE;
5408: l_error_message VARCHAR2(250);
5409: l_du_failed VARCHAR2(1):='N';
5410:
5411: BEGIN
5528: ELSE
5529:
5530: -- DU Legal number was generated successfully
5531: -- Apply the legal number to the DU
5532: UPDATE igi_exp_dus
5533: SET du_legal_number = l_du_legal_number
5534: WHERE du_id = l_du_id;
5535:
5536: -- =============== START DEBUG LOG ================
5534: WHERE du_id = l_du_id;
5535:
5536: -- =============== START DEBUG LOG ================
5537: DEBUG_LOG_STRING (l_proc_level, 'Apply_du_legal_num.Msg12',
5538: ' UPDATE igi_exp_dus --> ' || SQL%ROWCOUNT);
5539: -- =============== END DEBUG LOG ==================
5540:
5541: END IF;
5542: END LOOP;
5596: actid IN NUMBER,
5597: funcmode IN VARCHAR2,
5598: result OUT NOCOPY VARCHAR2) IS
5599:
5600: l_tu_id igi_exp_dus.tu_id%TYPE;
5601: l_tu_status igi_exp_tus.tu_status%TYPE;
5602: l_atr_du_count NUMBER;
5603:
5604: -- Bug 4051910
5655:
5656: -- Find how many DUs in the TU are approved
5657: SELECT count(*)
5658: INTO l_atr_du_count
5659: FROM igi_exp_dus
5660: WHERE tu_id = l_tu_id
5661: AND du_status = 'ATR';
5662:
5663: -- =============== START DEBUG LOG ================
5909: actid IN NUMBER,
5910: funcmode IN VARCHAR2,
5911: result OUT NOCOPY VARCHAR2) IS
5912:
5913: l_tu_id igi_exp_dus.tu_id%TYPE;
5914: l_du_prep_name fnd_user.user_name%TYPE;
5915: l_du_id igi_exp_dus.du_id%TYPE;
5916:
5917: BEGIN
5911: result OUT NOCOPY VARCHAR2) IS
5912:
5913: l_tu_id igi_exp_dus.tu_id%TYPE;
5914: l_du_prep_name fnd_user.user_name%TYPE;
5915: l_du_id igi_exp_dus.du_id%TYPE;
5916:
5917: BEGIN
5918:
5919: -- =============== START DEBUG LOG ================
5938: SELECT du.du_id
5939: ,fnd.user_name
5940: INTO l_du_id
5941: ,l_du_prep_name
5942: FROM igi_exp_dus du
5943: ,fnd_user fnd
5944: WHERE du.tu_id = l_tu_id
5945: AND du.du_status = 'ATR'
5946: AND du.du_by_user_id = fnd.user_id
6008: actid IN NUMBER,
6009: funcmode IN VARCHAR2,
6010: result OUT NOCOPY VARCHAR2) IS
6011:
6012: l_du_id igi_exp_dus.du_id%TYPE;
6013: l_app_id igi_exp_du_type_headers.application_id%TYPE;
6014: l_order_number igi_exp_dus.du_order_number%TYPE;
6015: l_legal_number igi_exp_dus.du_legal_number%TYPE;
6016: l_failed_du VARCHAR2(510);
6010: result OUT NOCOPY VARCHAR2) IS
6011:
6012: l_du_id igi_exp_dus.du_id%TYPE;
6013: l_app_id igi_exp_du_type_headers.application_id%TYPE;
6014: l_order_number igi_exp_dus.du_order_number%TYPE;
6015: l_legal_number igi_exp_dus.du_legal_number%TYPE;
6016: l_failed_du VARCHAR2(510);
6017: l_failed_trx VARCHAR2(50);
6018: l_gl_date DATE := sysdate;
6011:
6012: l_du_id igi_exp_dus.du_id%TYPE;
6013: l_app_id igi_exp_du_type_headers.application_id%TYPE;
6014: l_order_number igi_exp_dus.du_order_number%TYPE;
6015: l_legal_number igi_exp_dus.du_legal_number%TYPE;
6016: l_failed_du VARCHAR2(510);
6017: l_failed_trx VARCHAR2(50);
6018: l_gl_date DATE := sysdate;
6019: l_error_message VARCHAR2(4000);
6043: -- Get the application id for the du
6044: SELECT du_type.application_id
6045: INTO l_app_id
6046: FROM igi_exp_du_type_headers_all du_type
6047: ,igi_exp_dus du
6048: WHERE du.du_id = l_du_id
6049: AND du.du_type_header_id = du_type.du_type_header_id;
6050:
6051: -- =============== START DEBUG LOG ================
6070: IF (l_error_message <> 'Success') THEN
6071:
6072: SELECT du_order_number, du_legal_number
6073: INTO l_order_number, l_legal_number
6074: FROM igi_exp_dus
6075: WHERE du_id = l_du_id;
6076:
6077: -- =============== START DEBUG LOG ================
6078: DEBUG_LOG_STRING (l_proc_level, 'Process_transactions.Msg6',
6245: actid IN NUMBER,
6246: funcmode IN VARCHAR2,
6247: result OUT NOCOPY VARCHAR2) IS
6248:
6249: l_du_id igi_exp_dus.du_id%TYPE;
6250:
6251: BEGIN
6252:
6253: -- =============== START DEBUG LOG ================
6267: DEBUG_LOG_STRING (l_proc_level, 'Set_du_to_complete.Msg1',
6268: ' GetItemAttrNumber DU_ID_FOR_COMPLETION --> '|| l_du_id);
6269: -- =============== END DEBUG LOG ==================
6270:
6271: UPDATE igi_exp_dus
6272: SET du_status = 'COM'
6273: WHERE du_id = l_du_id;
6274:
6275: -- =============== START DEBUG LOG ================
6273: WHERE du_id = l_du_id;
6274:
6275: -- =============== START DEBUG LOG ================
6276: DEBUG_LOG_STRING (l_proc_level, 'Set_du_to_complete.Msg1',
6277: ' UPDATE igi_exp_dus status - COM --> ' || SQL%ROWCOUNT);
6278: -- =============== END DEBUG LOG ==================
6279:
6280: END IF;
6281:
6315: actid IN NUMBER,
6316: funcmode IN VARCHAR2,
6317: result OUT NOCOPY VARCHAR2) IS
6318:
6319: l_du_id igi_exp_dus.du_id%TYPE;
6320:
6321: BEGIN
6322:
6323: -- =============== START DEBUG LOG ================
6337: DEBUG_LOG_STRING (l_proc_level, 'Put_failed_du_on_hold.Msg2',
6338: ' GetItemAttrNumber DU_ID_FOR_COMPLETION --> ' || l_du_id);
6339: -- =============== END DEBUG LOG ==================
6340:
6341: UPDATE igi_exp_dus
6342: SET du_status = 'HLD'
6343: WHERE du_id = l_du_id;
6344:
6345: -- =============== START DEBUG LOG ================
6343: WHERE du_id = l_du_id;
6344:
6345: -- =============== START DEBUG LOG ================
6346: DEBUG_LOG_STRING (l_proc_level, 'Put_failed_du_on_hold.Msg3',
6347: ' UPDATE igi_exp_dus du_status = HLD --> ' || SQL%ROWCOUNT);
6348: -- =============== END DEBUG LOG ==================
6349:
6350: END IF;
6351:
6384: actid IN NUMBER,
6385: funcmode IN VARCHAR2,
6386: result OUT NOCOPY VARCHAR2) IS
6387:
6388: l_tu_id igi_exp_dus.tu_id%TYPE;
6389: l_incom_count NUMBER;
6390:
6391: BEGIN
6392:
6409: -- =============== END DEBUG LOG ==================
6410:
6411: SELECT count(*)
6412: INTO l_incom_count
6413: FROM igi_exp_dus
6414: WHERE tu_id = l_tu_id
6415: AND du_status = 'ATR';
6416:
6417: -- =============== START DEBUG LOG ================
6473: funcmode IN VARCHAR2,
6474: result OUT NOCOPY VARCHAR2) IS
6475:
6476:
6477: l_tu_id igi_exp_dus.tu_id%TYPE;
6478: l_failed_du_count NUMBER;
6479: l_du_hold_list VARCHAR2(28000);
6480:
6481: CURSOR c_du_hold_info(p_tu_id igi_exp_dus.tu_id%TYPE)
6477: l_tu_id igi_exp_dus.tu_id%TYPE;
6478: l_failed_du_count NUMBER;
6479: l_du_hold_list VARCHAR2(28000);
6480:
6481: CURSOR c_du_hold_info(p_tu_id igi_exp_dus.tu_id%TYPE)
6482: IS
6483: SELECT du_order_number
6484: ,du_legal_number
6485: FROM igi_exp_dus
6481: CURSOR c_du_hold_info(p_tu_id igi_exp_dus.tu_id%TYPE)
6482: IS
6483: SELECT du_order_number
6484: ,du_legal_number
6485: FROM igi_exp_dus
6486: WHERE tu_id = p_tu_id
6487: AND du_status = 'HLD';
6488:
6489: BEGIN
6507: -- =============== END DEBUG LOG ==================
6508:
6509: SELECT count(*)
6510: INTO l_failed_du_count
6511: FROM igi_exp_dus
6512: WHERE tu_id = l_tu_id
6513: AND du_status = 'HLD';
6514:
6515: -- =============== START DEBUG LOG ================
6691: actid IN NUMBER,
6692: funcmode IN VARCHAR2,
6693: result OUT NOCOPY VARCHAR2) IS
6694:
6695: l_tu_id igi_exp_dus.tu_id%TYPE;
6696: l_du_amount igi_exp_dus.du_amount%TYPE;
6697:
6698: BEGIN
6699:
6692: funcmode IN VARCHAR2,
6693: result OUT NOCOPY VARCHAR2) IS
6694:
6695: l_tu_id igi_exp_dus.tu_id%TYPE;
6696: l_du_amount igi_exp_dus.du_amount%TYPE;
6697:
6698: BEGIN
6699:
6700: -- =============== START DEBUG LOG ================
6724:
6725: -- Find the total DU amount
6726: SELECT sum(du_amount)
6727: INTO l_du_amount
6728: FROM igi_exp_dus
6729: WHERE tu_id = l_tu_id
6730: AND du_status = 'HLD';
6731:
6732: -- =============== START DEBUG LOG ================
6748: -- OPSF(I) EXP Bug 2415293 S Brewer 18-JUL-2002 End(3)
6749:
6750: -- Remove the DUs which were put on hold (due to transaction
6751: -- completion failure) from the TU
6752: UPDATE igi_exp_dus
6753: SET tu_id = null
6754: WHERE tu_id = l_tu_id
6755: AND du_status = 'HLD';
6756:
6755: AND du_status = 'HLD';
6756:
6757: -- =============== START DEBUG LOG ================
6758: DEBUG_LOG_STRING (l_proc_level, 'Remove_all_on_hold_dus.Msg5',
6759: ' UPDATE igi_exp_dus status = HLD --> ' || SQL%ROWCOUNT);
6760: -- =============== END DEBUG LOG ==================
6761:
6762: END IF;
6763:
6797: actid IN NUMBER,
6798: funcmode IN VARCHAR2,
6799: result OUT NOCOPY VARCHAR2) IS
6800:
6801: l_tu_id igi_exp_dus.tu_id%TYPE;
6802: l_com_du_count NUMBER;
6803:
6804: BEGIN
6805:
6822: -- =============== END DEBUG LOG ==================
6823:
6824: SELECT count(*)
6825: INTO l_com_du_count
6826: FROM igi_exp_dus
6827: WHERE tu_id = l_tu_id
6828: AND du_status = 'COM';
6829:
6830: -- =============== START DEBUG LOG ================
6883: actid IN NUMBER,
6884: funcmode IN VARCHAR2,
6885: result OUT NOCOPY VARCHAR2) IS
6886:
6887: CURSOR c_prep_list(p_tu_id igi_exp_dus.tu_id%TYPE)
6888: IS
6889: SELECT distinct du_by_user_id
6890: FROM igi_exp_dus
6891: WHERE tu_id = p_tu_id
6886:
6887: CURSOR c_prep_list(p_tu_id igi_exp_dus.tu_id%TYPE)
6888: IS
6889: SELECT distinct du_by_user_id
6890: FROM igi_exp_dus
6891: WHERE tu_id = p_tu_id
6892: AND du_status = 'COM';
6893:
6894: l_tu_id igi_exp_dus.tu_id%TYPE;
6890: FROM igi_exp_dus
6891: WHERE tu_id = p_tu_id
6892: AND du_status = 'COM';
6893:
6894: l_tu_id igi_exp_dus.tu_id%TYPE;
6895: l_user_id igi_exp_dus.du_by_user_id%TYPE;
6896: l_user_list VARCHAR2(1000);
6897:
6898:
6891: WHERE tu_id = p_tu_id
6892: AND du_status = 'COM';
6893:
6894: l_tu_id igi_exp_dus.tu_id%TYPE;
6895: l_user_id igi_exp_dus.du_by_user_id%TYPE;
6896: l_user_list VARCHAR2(1000);
6897:
6898:
6899: BEGIN
6979: l_num NUMBER;
6980: l_prep_list VARCHAR2(1000);
6981: l_next_prep NUMBER;
6982: l_next_prep_name fnd_user.user_name%TYPE;
6983: l_tu_id igi_exp_dus.tu_id%TYPE;
6984:
6985: l_com_du_list VARCHAR2(28000);
6986:
6987: CURSOR c_com_dus(p_tu_id igi_exp_dus.tu_id%TYPE
6983: l_tu_id igi_exp_dus.tu_id%TYPE;
6984:
6985: l_com_du_list VARCHAR2(28000);
6986:
6987: CURSOR c_com_dus(p_tu_id igi_exp_dus.tu_id%TYPE
6988: ,p_du_by_user_id igi_exp_dus.du_by_user_id%TYPE)
6989: IS
6990: SELECT du_order_number
6991: ,du_legal_number
6984:
6985: l_com_du_list VARCHAR2(28000);
6986:
6987: CURSOR c_com_dus(p_tu_id igi_exp_dus.tu_id%TYPE
6988: ,p_du_by_user_id igi_exp_dus.du_by_user_id%TYPE)
6989: IS
6990: SELECT du_order_number
6991: ,du_legal_number
6992: FROM igi_exp_dus
6988: ,p_du_by_user_id igi_exp_dus.du_by_user_id%TYPE)
6989: IS
6990: SELECT du_order_number
6991: ,du_legal_number
6992: FROM igi_exp_dus
6993: WHERE tu_id = p_tu_id
6994: AND du_status = 'COM'
6995: AND du_by_user_id = p_du_by_user_id;
6996:
7328: actid IN NUMBER,
7329: funcmode IN VARCHAR2,
7330: result OUT NOCOPY VARCHAR2) IS
7331:
7332: l_tu_id igi_exp_dus.tu_id%TYPE;
7333:
7334: BEGIN
7335:
7336: -- =============== START DEBUG LOG ================
7402: actid IN NUMBER,
7403: funcmode IN VARCHAR2,
7404: result OUT NOCOPY VARCHAR2) IS
7405:
7406: l_tu_id igi_exp_dus.tu_id%TYPE;
7407: l_tu_legal_number igi_exp_tus.tu_legal_number%TYPE;
7408: -- Check if the TU has a legal number
7409: -- Bug 4051910
7410: CURSOR c_leg_num(c_tu_id number) is
7498: actid IN NUMBER,
7499: funcmode IN VARCHAR2,
7500: result OUT NOCOPY VARCHAR2) IS
7501:
7502: l_tu_id igi_exp_dus.tu_id%TYPE;
7503: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
7504:
7505: BEGIN
7506:
7499: funcmode IN VARCHAR2,
7500: result OUT NOCOPY VARCHAR2) IS
7501:
7502: l_tu_id igi_exp_dus.tu_id%TYPE;
7503: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
7504:
7505: BEGIN
7506:
7507: -- =============== START DEBUG LOG ================
7537: -- Remove the rejected DUs (prepared by user l_du_prep_id) from the
7538: -- TU
7539:
7540: -- FP Bug 7711356 (not updating the tu_id as null for rejected DU's)
7541: /*UPDATE igi_exp_dus
7542: SET tu_id = null
7543: WHERE tu_id = l_tu_id
7544: AND du_by_user_id = l_du_prep_id
7545: AND du_status = 'REJ';*/
7545: AND du_status = 'REJ';*/
7546:
7547: -- =============== START DEBUG LOG ================
7548: DEBUG_LOG_STRING (l_proc_level, 'Remove_rej_dus_from_tu.Msg4',
7549: ' UPDATE igi_exp_dus du_status = REJ --> ' || SQL%ROWCOUNT);
7550: -- =============== END DEBUG LOG ==================
7551:
7552: END IF;
7553:
7585: actid IN NUMBER,
7586: funcmode IN VARCHAR2,
7587: result OUT NOCOPY VARCHAR2) IS
7588:
7589: CURSOR c_next_du_rej(p_tu_id igi_exp_dus.tu_id%TYPE)
7590: IS
7591: SELECT du_id
7592: ,du_by_user_id
7593: FROM igi_exp_dus du
7589: CURSOR c_next_du_rej(p_tu_id igi_exp_dus.tu_id%TYPE)
7590: IS
7591: SELECT du_id
7592: ,du_by_user_id
7593: FROM igi_exp_dus du
7594: WHERE tu_id = p_tu_id
7595: AND du_status = 'REJ'
7596: AND EXISTS (SELECT 'AR'
7597: FROM igi_exp_ar_trans ar
7602: WHERE ap.du_id = du.du_id)
7603: AND rownum = 1;
7604:
7605:
7606: CURSOR c_rej_du_info(p_tu_id igi_exp_dus.tu_id%TYPE
7607: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
7608: IS
7609: SELECT du_order_number
7610: ,du_legal_number
7603: AND rownum = 1;
7604:
7605:
7606: CURSOR c_rej_du_info(p_tu_id igi_exp_dus.tu_id%TYPE
7607: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
7608: IS
7609: SELECT du_order_number
7610: ,du_legal_number
7611: FROM igi_exp_dus du
7607: ,p_du_preparer_id igi_exp_dus.du_by_user_id%TYPE)
7608: IS
7609: SELECT du_order_number
7610: ,du_legal_number
7611: FROM igi_exp_dus du
7612: WHERE tu_id = p_tu_id
7613: AND du_status = 'REJ'
7614: AND du_by_user_id = p_du_preparer_id;
7615:
7613: AND du_status = 'REJ'
7614: AND du_by_user_id = p_du_preparer_id;
7615:
7616:
7617: l_tu_id igi_exp_dus.tu_id%TYPE;
7618: l_du_id igi_exp_dus.du_id%TYPE;
7619: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
7620: l_du_prep_name fnd_user.user_name%TYPE;
7621:
7614: AND du_by_user_id = p_du_preparer_id;
7615:
7616:
7617: l_tu_id igi_exp_dus.tu_id%TYPE;
7618: l_du_id igi_exp_dus.du_id%TYPE;
7619: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
7620: l_du_prep_name fnd_user.user_name%TYPE;
7621:
7622: l_du_rej_list VARCHAR2(28000);
7615:
7616:
7617: l_tu_id igi_exp_dus.tu_id%TYPE;
7618: l_du_id igi_exp_dus.du_id%TYPE;
7619: l_du_prep_id igi_exp_dus.du_by_user_id%TYPE;
7620: l_du_prep_name fnd_user.user_name%TYPE;
7621:
7622: l_du_rej_list VARCHAR2(28000);
7623: