[Home] [Help]
15: G_MSG_MEDIUM CONSTANT NUMBER := FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM;
16: G_MSG_LOW CONSTANT NUMBER := FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW;
17: G_LINES_PER_FETCH CONSTANT NUMBER := 1000;
18:
19: G_CURRENT_RUNTIME_LEVEL CONSTANT NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
20: G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
16: G_MSG_LOW CONSTANT NUMBER := FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW;
17: G_LINES_PER_FETCH CONSTANT NUMBER := 1000;
18:
19: G_CURRENT_RUNTIME_LEVEL CONSTANT NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
20: G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
24: G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
17: G_LINES_PER_FETCH CONSTANT NUMBER := 1000;
18:
19: G_CURRENT_RUNTIME_LEVEL CONSTANT NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
20: G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
24: G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
25: G_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
18:
19: G_CURRENT_RUNTIME_LEVEL CONSTANT NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
20: G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
24: G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
25: G_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
26: G_MODULE_NAME CONSTANT VARCHAR2(30) := 'AP.PLSQL.AP_ETAX_UTILITY_PKG.';
19: G_CURRENT_RUNTIME_LEVEL CONSTANT NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
20: G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
24: G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
25: G_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
26: G_MODULE_NAME CONSTANT VARCHAR2(30) := 'AP.PLSQL.AP_ETAX_UTILITY_PKG.';
27:
20: G_LEVEL_UNEXPECTED CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
24: G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
25: G_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
26: G_MODULE_NAME CONSTANT VARCHAR2(30) := 'AP.PLSQL.AP_ETAX_UTILITY_PKG.';
27:
28: -- This record type is used for ap_invoice_distributions_all and ap_self_assessed_tax_dist_all
21: G_LEVEL_ERROR CONSTANT NUMBER := FND_LOG.LEVEL_ERROR;
22: G_LEVEL_EXCEPTION CONSTANT NUMBER := FND_LOG.LEVEL_EXCEPTION;
23: G_LEVEL_EVENT CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
24: G_LEVEL_PROCEDURE CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
25: G_LEVEL_STATEMENT CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
26: G_MODULE_NAME CONSTANT VARCHAR2(30) := 'AP.PLSQL.AP_ETAX_UTILITY_PKG.';
27:
28: -- This record type is used for ap_invoice_distributions_all and ap_self_assessed_tax_dist_all
29:
988:
989: -------------------------------------------------------------------
990: l_debug_info := 'Incorrect Summary Tax Line Check';
991: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
992: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
993: END IF;
994: -------------------------------------------------------------------
995:
996: BEGIN
1059:
1060: -------------------------------------------------------------------
1061: l_debug_info := 'Invoice Line Number that causes this failure: '||l_invoice_line_number;
1062: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1063: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1064: END IF;
1065:
1066: l_debug_info := 'Summary Tax Line ID for this line: '||l_ap_summary_tax_line_id;
1067: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1064: END IF;
1065:
1066: l_debug_info := 'Summary Tax Line ID for this line: '||l_ap_summary_tax_line_id;
1067: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1068: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1069: END IF;
1070: -------------------------------------------------------------------
1071:
1072: FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
1086:
1087: -------------------------------------------------------------------
1088: l_debug_info := 'Get ap_system_parameters data';
1089: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1090: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1091: END IF;
1092: -------------------------------------------------------------------
1093: BEGIN
1094: SELECT
1113:
1114: -------------------------------------------------------------------
1115: l_debug_info := 'Update existing exclusive tax lines';
1116: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1117: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1118: END IF;
1119: -------------------------------------------------------------------
1120: BEGIN
1121: UPDATE ap_invoice_lines_all ail
1190: for manual tax lines and tax only lines so that we do not delete and regenerate the tax lines . */
1191: -------------------------------------------------------------------
1192: l_debug_info := 'Update summary tax line id for manual tax lines';
1193: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1194: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1195: END IF;
1196: -------------------------------------------------------------------
1197: BEGIN
1198:
1255:
1256: -------------------------------------------------------------------
1257: l_debug_info := 'Delete exclusive tax lines if required';
1258: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1259: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1260: END IF;
1261: -------------------------------------------------------------------
1262: BEGIN
1263: DELETE ap_invoice_lines_all ail
1311:
1312: -------------------------------------------------------------------
1313: l_debug_info := 'Get open gl_date';
1314: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1315: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1316: END IF;
1317: -------------------------------------------------------------------
1318:
1319: l_period_name := AP_UTILITIES_PKG.get_current_gl_date (P_Invoice_Header_Rec.gl_date, P_Invoice_header_Rec.org_id);
1336:
1337: -------------------------------------------------------------------
1338: l_debug_info := 'Insert exclusive tax lines';
1339: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1340: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1341: END IF;
1342: -------------------------------------------------------------------
1343: BEGIN
1344: INSERT INTO ap_invoice_lines_all (
1749:
1750: -------------------------------------------------------------------
1751: l_debug_info := 'Update Inclusive tax amount';
1752: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1753: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1754: END IF;
1755: -------------------------------------------------------------------
1756: BEGIN
1757: --bug 6931461
1791:
1792: --------------------------------------------------
1793: l_debug_info := 'Create Tax Allocations';
1794: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1795: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1796: END IF;
1797: --------------------------------------------------
1798: BEGIN
1799: OPEN c_item_line(P_Invoice_Header_Rec.invoice_id);
1823: FND_MESSAGE.SET_TOKEN('DEBUG_INFO',l_debug_info);
1824: END IF;
1825:
1826: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1827: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,sqlerrm);
1828: END IF;
1829:
1830: IF ( c_item_line%ISOPEN ) THEN
1831: CLOSE c_item_line;
1836:
1837: -------------------------------------------------------------------
1838: l_debug_info := 'Update total_tax_amount and self_assessed tax';
1839: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1840: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1841: END IF;
1842: -------------------------------------------------------------------
1843: BEGIN
1844: UPDATE ap_invoices_all ai
1881:
1882: -----------------------------------------------------------------
1883: l_debug_info := 'Update tax_already_calculated_flag';
1884: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1885: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1886: END IF;
1887: -----------------------------------------------------------------
1888: BEGIN
1889: UPDATE ap_invoice_lines_all ail
1913:
1914: -----------------------------------------------------------------
1915: l_debug_info := 'Update Invoice Includes Prepay Flag';
1916: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
1917: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
1918: END IF;
1919: -----------------------------------------------------------------
1920:
1921: UPDATE ap_invoice_lines_all tax
3581: l_curr_calling_sequence := 'AP_ETAX_UTILITY_PKG.Return_Tax_Distributions<-'||
3582: P_calling_sequence;
3583:
3584: IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL) THEN
3585: FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_ETAX_UTILITY_PKG.Return_Tax_Distributions(+)');
3586: END IF;
3587:
3588: DELETE FROM AP_Line_Temp_GT;
3589:
3611: -------------------------------------------------------------------
3612: l_debug_info := 'Tax distributions updated: '||l_inv_dist_upd.count;
3613: -------------------------------------------------------------------
3614: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
3615: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
3616: END IF;
3617:
3618: IF (l_inv_dist_upd.COUNT <> 0) THEN
3619:
3729: -------------------------------------------------------------------
3730: l_debug_info := 'Tax Variance distributions updated: '||l_inv_dist_upd.count;
3731: -------------------------------------------------------------------
3732: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
3733: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
3734: END IF;
3735:
3736: IF (l_inv_dist_upd.COUNT <> 0) THEN
3737:
3845: -------------------------------------------------------------------
3846: l_debug_info := 'Step 5: Self assessed dist updated: '||l_inv_self_upd.COUNT;
3847: -------------------------------------------------------------------
3848: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
3849: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
3850: END IF;
3851:
3852: IF (l_inv_self_upd.COUNT <> 0) THEN
3853:
3960: -------------------------------------------------------------------
3961: l_debug_info := 'Tax distributions to insert: '||l_inv_dist_ins.COUNT;
3962: -------------------------------------------------------------------
3963: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
3964: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
3965: END IF;
3966:
3967: FOR i IN l_inv_dist_ins.FIRST..l_inv_dist_ins.LAST LOOP
3968:
3978: -------------------------------------------------------------------
3979: l_debug_info := 'PO: Setting Non-Rec tax account same as its parent';
3980: -------------------------------------------------------------------
3981: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
3982: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
3983: END IF;
3984:
3985: l_dist_code_combination_id := l_inv_dist_ins(i).dist_code_combination_id;
3986:
3994: END IF;
3995:
3996:
3997: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
3998: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'before geting ccid from corresponding tax distribution');
3999: END IF;
4000: -- This section to get ccid from corresponding tax distribution if
4001: -- line discard/invoice cancellation or correction
4002: -- quick credit or prepayment application/unapplication
4008: and l_inv_dist_ins(i).parent_dist_parent_reversal_id IS NOT NULL
4009: AND l_inv_dist_ins(i).reversed_tax_dist_id IS NOT NULL)) THEN -- bug 7389822
4010:
4011: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4012: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'geting ccid for discard, cancellation');
4013: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_cancellation_flag'||l_inv_dist_ins(i).parent_dist_cancellation_flag);
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4009: AND l_inv_dist_ins(i).reversed_tax_dist_id IS NOT NULL)) THEN -- bug 7389822
4010:
4011: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4012: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'geting ccid for discard, cancellation');
4013: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_cancellation_flag'||l_inv_dist_ins(i).parent_dist_cancellation_flag);
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4017: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_parent_reversal_id'||to_char(l_inv_dist_ins(i).parent_dist_parent_reversal_id));
4010:
4011: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4012: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'geting ccid for discard, cancellation');
4013: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_cancellation_flag'||l_inv_dist_ins(i).parent_dist_cancellation_flag);
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4017: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_parent_reversal_id'||to_char(l_inv_dist_ins(i).parent_dist_parent_reversal_id));
4018: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).reversed_tax_dist_id'||to_char(l_inv_dist_ins(i).reversed_tax_dist_id));
4011: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4012: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'geting ccid for discard, cancellation');
4013: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_cancellation_flag'||l_inv_dist_ins(i).parent_dist_cancellation_flag);
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4017: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_parent_reversal_id'||to_char(l_inv_dist_ins(i).parent_dist_parent_reversal_id));
4018: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).reversed_tax_dist_id'||to_char(l_inv_dist_ins(i).reversed_tax_dist_id));
4019: END IF;
4012: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'geting ccid for discard, cancellation');
4013: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_cancellation_flag'||l_inv_dist_ins(i).parent_dist_cancellation_flag);
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4017: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_parent_reversal_id'||to_char(l_inv_dist_ins(i).parent_dist_parent_reversal_id));
4018: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).reversed_tax_dist_id'||to_char(l_inv_dist_ins(i).reversed_tax_dist_id));
4019: END IF;
4020:
4013: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_cancellation_flag'||l_inv_dist_ins(i).parent_dist_cancellation_flag);
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4017: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_parent_reversal_id'||to_char(l_inv_dist_ins(i).parent_dist_parent_reversal_id));
4018: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).reversed_tax_dist_id'||to_char(l_inv_dist_ins(i).reversed_tax_dist_id));
4019: END IF;
4020:
4021: --Bug fix 6653070, bug fix 6687031
4014: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.quick_credit'||p_invoice_header_rec.quick_credit);
4015: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'p_invoice_header_rec.credited_invoice_id'||to_char(p_invoice_header_rec.credited_invoice_id));
4016: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_reversal_flag'||l_inv_dist_ins(i).parent_dist_reversal_flag);
4017: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).parent_dist_parent_reversal_id'||to_char(l_inv_dist_ins(i).parent_dist_parent_reversal_id));
4018: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'l_inv_dist_ins(i).reversed_tax_dist_id'||to_char(l_inv_dist_ins(i).reversed_tax_dist_id));
4019: END IF;
4020:
4021: --Bug fix 6653070, bug fix 6687031
4022: SELECT dist_code_combination_id
4026: AND line_type_lookup_code IN ('REC_TAX', 'NONREC_TAX','TIPV', 'TRV', 'TERV')
4027: AND rownum =1;--Bug7241425
4028:
4029: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4030: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'after geting ccid for discard, cancellation');
4031: END IF;
4032:
4033: ELSIF (l_inv_dist_ins(i).corrected_invoice_dist_id IS NOT NULL) THEN
4034:
4032:
4033: ELSIF (l_inv_dist_ins(i).corrected_invoice_dist_id IS NOT NULL) THEN
4034:
4035: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4036: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'geting ccid for correction case');
4037: END IF;
4038:
4039: SELECT dist_code_combination_id
4040: INTO l_dist_code_combination_id
4042: WHERE detail_tax_dist_id = l_inv_dist_ins(i).adjusted_doc_tax_dist_id
4043: AND line_type_lookup_code IN ('REC_TAX','NONREC_TAX','TIPV','TRV','TERV')--Bug7241425
4044: AND rownum =1;--Bug7241425
4045: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4046: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,'after geting ccid from corresponding tax distribution for correction case');
4047: END IF;
4048: ELSIF (l_inv_dist_ins(i).applied_from_tax_dist_id IS NOT NULL) THEN
4049:
4050: l_dist_code_combination_id := l_inv_dist_ins(i).dist_code_combination_id;
4073: -----------------------------------------------------------
4074: l_debug_info := 'Call zx_api_pub.get_tax_distribution_ccids';
4075: -----------------------------------------------------------
4076: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4077: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4078: END IF;
4079:
4080: zx_api_pub.get_tax_distribution_ccids(
4081: p_api_version => 1.0,
4094: -----------------------------------------------------------
4095: l_debug_info := 'Handle errors returned by API';
4096: -----------------------------------------------------------
4097: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4098: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4099: END IF;
4100:
4101: IF NOT(AP_ETAX_UTILITY_PKG.Return_Error_Messages(
4102: P_All_Error_Messages => P_All_Error_Messages,
4115: -------------------------------------------------------------------
4116: l_debug_info := 'Insert REC/NONREC distributions';
4117: -------------------------------------------------------------------
4118: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4119: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4120: END IF;
4121:
4122: ap_etax_utility_pkg.insert_tax_distributions
4123: (p_invoice_header_rec => p_invoice_header_rec,
4183: -------------------------------------------------------------------
4184: l_debug_info := 'Insert Tax Variance Distributions';
4185: -------------------------------------------------------------------
4186: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4187: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4188: END IF;
4189:
4190: ap_etax_utility_pkg.insert_tax_distributions(
4191: p_invoice_header_rec => p_invoice_header_rec,
4219: -------------------------------------------------------------------
4220: l_debug_info := 'Insert self assessed tax distributions';
4221: -------------------------------------------------------------------
4222: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4223: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4224: END IF;
4225:
4226: FOR i IN l_inv_self_ins.FIRST..l_inv_self_ins.LAST LOOP
4227:
4228: -------------------------------------------------------------------
4229: l_debug_info := 'Get ccid for self assessed distributions';
4230: -------------------------------------------------------------------
4231: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4232: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4233: END IF;
4234:
4235: IF (l_inv_self_ins(i).line_type_lookup_code = 'NONREC_TAX') THEN
4236:
4244: -------------------------------------------------------------------
4245: l_debug_info := 'PO: Setting Self Assessed Non-Rec tax account same as its parent';
4246: -------------------------------------------------------------------
4247: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4248: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4249: END IF;
4250:
4251: l_dist_code_combination_id := l_inv_self_ins(i).dist_code_combination_id;
4252:
4331: -----------------------------------------------------------
4332: l_debug_info := 'Handle errors returned by API';
4333: -----------------------------------------------------------
4334: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4335: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4336: END IF;
4337:
4338: IF NOT(AP_ETAX_UTILITY_PKG.Return_Error_Messages(
4339: P_All_Error_Messages => P_All_Error_Messages,
4351: -------------------------------------------------------------------
4352: l_debug_info := 'Insert self assessed distributions';
4353: -------------------------------------------------------------------
4354: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4355: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4356: END IF;
4357:
4358: BEGIN
4359: INSERT INTO ap_self_assessed_tax_dist_all (
4708: FND_MESSAGE.SET_TOKEN('DEBUG_INFO',l_debug_info);
4709: END IF;
4710:
4711: IF (G_LEVEL_EXCEPTION >= G_CURRENT_RUNTIME_LEVEL) THEN
4712: FND_LOG.STRING(G_LEVEL_EXCEPTION,G_MODULE_NAME||l_api_name,SQLERRM);
4713: END IF;
4714:
4715: APP_EXCEPTION.RAISE_EXCEPTION;
4716: END;
4726: -------------------------------------------------------------------
4727: l_debug_info := 'Delete tax distributions';
4728: -------------------------------------------------------------------
4729: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4730: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4731: END IF;
4732:
4733: DELETE FROM ap_invoice_distributions_all aid
4734: WHERE aid.invoice_distribution_id IN
4754: -------------------------------------------------------------------
4755: l_debug_info := 'Get self assessed distributions to delete';
4756: -------------------------------------------------------------------
4757: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4758: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4759: END IF;
4760:
4761: DELETE FROM ap_self_assessed_tax_dist_all aid
4762: WHERE aid.invoice_distribution_id IN
4781: -------------------------------------------------------------------
4782: l_debug_info := 'Synchronize line numbers for orphan distributions';
4783: -------------------------------------------------------------------
4784: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4785: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
4786: END IF;
4787:
4788: UPDATE ap_invoice_distributions_all aid
4789: SET invoice_line_number = (SELECT line_number
4807: WHERE al.invoice_id = dist.invoice_id)
4808: );
4809:
4810: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4811: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name, 'Orphan Distributions updated: '||sql%rowcount);
4812: END IF;
4813:
4814: RETURN TRUE;
4815:
4830: CLOSE insert_tax_dist;
4831: END IF;
4832:
4833: IF ( G_LEVEL_EXCEPTION >= G_CURRENT_RUNTIME_LEVEL) THEN
4834: FND_LOG.STRING(G_LEVEL_EXCEPTION,G_MODULE_NAME||l_api_name,SQLERRM);
4835: END IF;
4836:
4837: APP_EXCEPTION.RAISE_EXCEPTION;
4838:
4922: -----------------------------------------------------------------
4923: l_debug_info := 'Step 1: Get rejections from zx_trans_lines_val_errs'||
4924: ' table';
4925: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4926: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
4927: l_api_name,l_debug_info);
4928: END IF;
4929: -----------------------------------------------------------------
4930: BEGIN
4939: -----------------------------------------------------------------
4940: l_debug_info := 'Step 2: Create rejections in the import rejections '||
4941: 'table';
4942: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4943: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
4944: l_api_name,l_debug_info);
4945: END IF;
4946: -----------------------------------------------------------------
4947: IF (rej_lines(i).line_number IS NULL) THEN -- rejection is at invoice level
4981:
4982: -----------------------------------------------------------------
4983: l_debug_info := 'Step 3: Loop through lines import pl/sql table';
4984: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4985: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
4986: l_api_name,l_debug_info);
4987: END IF;
4988: -----------------------------------------------------------------
4989: IF (P_Invoice_Lines_Tab.COUNT > 0) THEN
4992: -------------------------------------------------------------------
4993: l_debug_info := 'Step 4: Get trx and tax line info to update pl/sql '||
4994: 'table';
4995: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
4996: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
4997: l_api_name,l_debug_info);
4998: END IF;
4999: -------------------------------------------------------------------
5000: IF (P_Invoice_Lines_Tab(i).line_type_lookup_code <> 'TAX') THEN
5007:
5008: -----------------------------------------------------------------
5009: l_debug_info := 'Step 5: Update non-tax lines in pl/sql table';
5010: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5011: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
5012: l_api_name,l_debug_info);
5013: END IF;
5014: -----------------------------------------------------------------
5015: P_Invoice_Lines_Tab(i).trx_business_category := trans_lines_gt.trx_business_category;
5024: -----------------------------------------------------------------
5025: l_debug_info := 'Step 5.1 Getting INPUT_TAX_CLASSIFICATION_CODE:'
5026: ||trans_lines_gt.INPUT_TAX_CLASSIFICATION_CODE;
5027: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5028: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
5029: l_api_name,l_debug_info);
5030: END IF;
5031: -----------------------------------------------------------------
5032: P_Invoice_Lines_Tab(i).tax_classification_code :=
5041:
5042: -----------------------------------------------------------------
5043: l_debug_info := 'Step 6: Update tax lines in pl/sql table';
5044: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5045: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
5046: l_api_name,l_debug_info);
5047: END IF;
5048: -----------------------------------------------------------------
5049: --6255826 Added Tax_regime_code and Tax assignments
5068:
5069: -----------------------------------------------------------------
5070: l_debug_info := 'Step 7: Update tax line if tax only invoice in pl/sql table';
5071: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5072: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||
5073: l_api_name,l_debug_info);
5074: END IF;
5075: -----------------------------------------------------------------
5076: P_Invoice_Lines_Tab(i).trx_business_category :=
5226:
5227: -------------------------------------------------------------------
5228: l_debug_info := 'Get error message from eTax API';
5229: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5230: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
5231: END IF;
5232: -------------------------------------------------------------------
5233:
5234: BEGIN
5240: WHEN OTHERS THEN
5241: -------------------------------------------------------------------
5242: l_debug_info := 'Get error message from stack';
5243: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5244: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
5245: END IF;
5246: -------------------------------------------------------------------
5247: IF (NVL(P_Msg_Count, 0) <= 1) THEN
5248: P_Error_Code := P_Msg_Data;
5259: END IF;
5260: END;
5261:
5262: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
5263: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,p_error_code);
5264: END IF;
5265:
5266: RETURN TRUE;
5267:
7033:
7034: l_curr_calling_sequence := 'Insert_Tax_Distributions <- '||p_calling_sequence;
7035:
7036: IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL) THEN
7037: FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_ETAX_UTILITY_PKG.Insert_Tax_Distributions(+)');
7038: END IF;
7039:
7040: l_debug_info := 'Step 11: Insert new distributions including variances';
7041:
7039:
7040: l_debug_info := 'Step 11: Insert new distributions including variances';
7041:
7042: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
7043: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
7044: END IF;
7045:
7046: -- bug 7126676
7047: select ap_invoice_distributions_s.NEXTVAL into l_invoice_distribution_id from dual;
7377: 'N' -- rcv_charge_addition_flag
7378: );
7379:
7380: IF (G_LEVEL_PROCEDURE >= G_CURRENT_RUNTIME_LEVEL) THEN
7381: FND_LOG.STRING(G_LEVEL_PROCEDURE,G_MODULE_NAME||l_api_name,'AP_ETAX_UTILITY_PKG.Insert_Tax_Distributions(-)');
7382: END IF;
7383:
7384: -- Following code was introduce because of bug 7126676
7385: -- This code will generate withholding applicability for
7387: IF (AP_EXTENDED_WITHHOLDING_PKG.AP_EXTENDED_WITHHOLDING_ACTIVE) THEN
7388:
7389: l_debug_info := 'Call the Ap_Ext_Withholding_Default from match';
7390: IF (G_LEVEL_STATEMENT >= G_CURRENT_RUNTIME_LEVEL) THEN
7391: FND_LOG.STRING(G_LEVEL_STATEMENT,G_MODULE_NAME||l_api_name,l_debug_info);
7392: END IF;
7393:
7394: Ap_Extended_Withholding_Pkg.Ap_Ext_Withholding_Default
7395: (p_invoice_id => p_inv_dist_rec.invoice_id,
7417: FND_MESSAGE.SET_TOKEN('DEBUG_INFO',l_debug_info);
7418: END IF;
7419:
7420: IF ( G_LEVEL_EXCEPTION >= G_CURRENT_RUNTIME_LEVEL) THEN
7421: FND_LOG.STRING(G_LEVEL_EXCEPTION,G_MODULE_NAME||l_api_name,SQLERRM);
7422: END IF;
7423:
7424: APP_EXCEPTION.RAISE_EXCEPTION;
7425: END;