4: /*=============================================================================
5: | FUNCTION - Calling_eTax()
6: |
7: | DESCRIPTION
8: | Public function that will call the requested AP_ETAX_SERVICES_PKG function
9: | This API is called from different points throughout AP.
10: | This API assumes the calling code controls the commit cycle.
11: | This function returns TRUE if the call to the service is successful.
12: | Otherwise, FALSE.
74: -- Bug 9034372. Added new calling mode : 'QUICK CANCEL'
75:
76: IF (P_Calling_Mode IN ('CALCULATE', 'APPLY PREPAY', 'QUICK CANCEL')) THEN
77: -------------------------------------------------------------------
78: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Calculate';
79: -------------------------------------------------------------------
80: -- BUG 8911181 START : Updating Invoice Lines Assessable Value --
81:
82: SELECT to_number(fnd_profile.value('AP_JEA_TAX_ASSESSABLE_VALUE'))
113: END IF; -- l_assessable_value IS NOT NULL
114: -- BUG 8911181 ENDS
115:
116:
117: IF NOT (AP_ETAX_SERVICES_PKG.Calculate(
118: P_Invoice_id => P_Invoice_Id,
119: P_Line_Number => P_Line_Number,
120: P_Calling_Mode => P_Calling_Mode,
121: P_All_Error_Messages => P_All_Error_Messages,
126: END IF;
127:
128: ELSIF (P_Calling_Mode = 'CALCULATE IMPORT') THEN
129: -------------------------------------------------------------------
130: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Calculate_Import';
131: -------------------------------------------------------------------
132:
133: IF NOT (AP_ETAX_SERVICES_PKG.Calculate_Import(
134: P_Invoice_id => P_Invoice_Id,
129: -------------------------------------------------------------------
130: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Calculate_Import';
131: -------------------------------------------------------------------
132:
133: IF NOT (AP_ETAX_SERVICES_PKG.Calculate_Import(
134: P_Invoice_id => P_Invoice_Id,
135: P_Calling_Mode => P_Calling_Mode,
136: P_Interface_Invoice_Id => P_Interface_Invoice_Id,
137: P_All_Error_Messages => P_All_Error_Messages,
143:
144:
145: ELSIF (P_Calling_Mode IN ('DISTRIBUTE', 'DISTRIBUTE RECOUP')) THEN
146: -------------------------------------------------------------------
147: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Distribute';
148: -------------------------------------------------------------------
149:
150: IF NOT (AP_ETAX_SERVICES_PKG.Distribute(
151: P_Invoice_id => P_Invoice_Id,
146: -------------------------------------------------------------------
147: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Distribute';
148: -------------------------------------------------------------------
149:
150: IF NOT (AP_ETAX_SERVICES_PKG.Distribute(
151: P_Invoice_id => P_Invoice_Id,
152: P_Line_Number => P_Line_Number,
153: P_Calling_Mode => P_Calling_Mode,
154: P_All_Error_Messages => P_All_Error_Messages,
159: END IF;
160:
161: ELSIF (P_Calling_Mode = 'DISTRIBUTE IMPORT') THEN
162: -------------------------------------------------------------------
163: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Distribute_Import';
164: -------------------------------------------------------------------
165:
166: IF NOT (AP_ETAX_SERVICES_PKG.Distribute_Import(
167: P_Invoice_id => P_Invoice_Id,
162: -------------------------------------------------------------------
163: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Distribute_Import';
164: -------------------------------------------------------------------
165:
166: IF NOT (AP_ETAX_SERVICES_PKG.Distribute_Import(
167: P_Invoice_id => P_Invoice_Id,
168: P_Calling_Mode => P_Calling_Mode,
169: P_All_Error_Messages => P_All_Error_Messages,
170: P_Error_Code => P_Error_Code,
174: END IF;
175:
176: ELSIF (P_Calling_Mode = 'IMPORT INTERFACE') THEN
177: -------------------------------------------------------------------
178: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Import_Interface';
179: -------------------------------------------------------------------
180:
181: IF NOT (AP_ETAX_SERVICES_PKG.Import_Interface(
182: P_Invoice_id => P_Invoice_Id,
177: -------------------------------------------------------------------
178: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Import_Interface';
179: -------------------------------------------------------------------
180:
181: IF NOT (AP_ETAX_SERVICES_PKG.Import_Interface(
182: P_Invoice_id => P_Invoice_Id,
183: P_Calling_Mode => P_Calling_Mode,
184: P_Interface_Invoice_Id => P_Interface_Invoice_Id,
185: P_All_Error_Messages => P_All_Error_Messages,
190: END IF;
191:
192: ELSIF (P_Calling_Mode = 'REVERSE INVOICE') THEN
193: -------------------------------------------------------------------
194: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Reverse_Invoice';
195: -------------------------------------------------------------------
196:
197: IF NOT (AP_ETAX_SERVICES_PKG.Reverse_Invoice(
198: P_Invoice_id => P_Invoice_Id,
193: -------------------------------------------------------------------
194: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Reverse_Invoice';
195: -------------------------------------------------------------------
196:
197: IF NOT (AP_ETAX_SERVICES_PKG.Reverse_Invoice(
198: P_Invoice_id => P_Invoice_Id,
199: P_Calling_Mode => P_Calling_Mode,
200: P_All_Error_Messages => P_All_Error_Messages,
201: P_Error_Code => P_Error_Code,
205: END IF;
206:
207: ELSIF (P_Calling_Mode = 'OVERRIDE TAX') THEN
208: -------------------------------------------------------------------
209: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Override_Tax';
210: -------------------------------------------------------------------
211:
212: IF NOT (AP_ETAX_SERVICES_PKG.Override_Tax(
213: P_Invoice_id => P_Invoice_Id,
208: -------------------------------------------------------------------
209: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Override_Tax';
210: -------------------------------------------------------------------
211:
212: IF NOT (AP_ETAX_SERVICES_PKG.Override_Tax(
213: P_Invoice_id => P_Invoice_Id,
214: P_Calling_Mode => P_Calling_Mode,
215: P_Override_Status => P_Override_Status,
216: P_Event_Id => P_Event_Id,
222: END IF;
223:
224: ELSIF (P_Calling_Mode = 'OVERRIDE RECOVERY') THEN
225: -------------------------------------------------------------------
226: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Override_Recovery';
227: -------------------------------------------------------------------
228:
229: IF NOT (AP_ETAX_SERVICES_PKG.Override_Recovery(
230: P_Invoice_id => P_Invoice_Id,
225: -------------------------------------------------------------------
226: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Override_Recovery';
227: -------------------------------------------------------------------
228:
229: IF NOT (AP_ETAX_SERVICES_PKG.Override_Recovery(
230: P_Invoice_id => P_Invoice_Id,
231: P_Calling_Mode => P_Calling_Mode,
232: P_All_Error_Messages => P_All_Error_Messages,
233: P_Error_Code => P_Error_Code,
241: 'UNFREEZE INVOICE',
242: 'DISCARD LINE',
243: 'UNAPPLY PREPAY')) THEN --bugfix:5697764
244: -------------------------------------------------------------------
245: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Global_Document_Update';
246: -------------------------------------------------------------------
247:
248: IF P_Calling_Mode IN ('DISCARD LINE', 'UNAPPLY PREPAY') THEN
249: IF NOT (AP_ETAX_SERVICES_PKG.Global_Document_Update(
245: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Global_Document_Update';
246: -------------------------------------------------------------------
247:
248: IF P_Calling_Mode IN ('DISCARD LINE', 'UNAPPLY PREPAY') THEN
249: IF NOT (AP_ETAX_SERVICES_PKG.Global_Document_Update(
250: P_Invoice_id => P_Invoice_Id,
251: P_Line_Number => P_Line_Number,
252: P_Calling_Mode => P_Calling_Mode,
253: P_All_Error_Messages => P_All_Error_Messages,
256:
257: l_return_status := FALSE;
258: END IF;
259: ELSE
260: IF NOT (AP_ETAX_SERVICES_PKG.Global_Document_Update(
261: P_Invoice_id => P_Invoice_Id,
262: P_Calling_Mode => P_Calling_Mode,
263: P_All_Error_Messages => P_All_Error_Messages,
264: P_Error_Code => P_Error_Code,
269: END IF;
270:
271: ELSIF (P_Calling_Mode = 'MARK TAX LINES DELETED') THEN
272: -------------------------------------------------------------------
273: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Mark_Tax_Lines_Deleted';
274: -------------------------------------------------------------------
275:
276: IF NOT (AP_ETAX_SERVICES_PKG.Mark_Tax_Lines_Deleted(
277: P_Invoice_id => P_Invoice_Id,
272: -------------------------------------------------------------------
273: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Mark_Tax_Lines_Deleted';
274: -------------------------------------------------------------------
275:
276: IF NOT (AP_ETAX_SERVICES_PKG.Mark_Tax_Lines_Deleted(
277: P_Invoice_id => P_Invoice_Id,
278: P_Calling_Mode => P_Calling_Mode,
279: P_Line_Number_To_Delete => P_Line_Number_To_Delete,
280: P_All_Error_Messages => P_All_Error_Messages,
286:
287:
288: ELSIF (P_Calling_Mode = 'VALIDATE') THEN
289: -------------------------------------------------------------------
290: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Validate_Invoice';
291: -------------------------------------------------------------------
292:
293: IF NOT (AP_ETAX_SERVICES_PKG.Validate_Invoice(
294: P_Invoice_id => P_Invoice_Id,
289: -------------------------------------------------------------------
290: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Validate_Invoice';
291: -------------------------------------------------------------------
292:
293: IF NOT (AP_ETAX_SERVICES_PKG.Validate_Invoice(
294: P_Invoice_id => P_Invoice_Id,
295: P_Calling_Mode => P_Calling_Mode,
296: P_All_Error_Messages => P_All_Error_Messages,
297: P_Error_Code => P_Error_Code,
301: END IF;
302:
303: ELSIF (P_Calling_Mode = 'RECOUPMENT') THEN
304: -------------------------------------------------------------------
305: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Generate_Recouped_Tax';
306: -------------------------------------------------------------------
307:
308: IF NOT (AP_ETAX_SERVICES_PKG.Generate_Recouped_Tax(
309: P_Invoice_id => P_Invoice_Id,
304: -------------------------------------------------------------------
305: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Generate_Recouped_Tax';
306: -------------------------------------------------------------------
307:
308: IF NOT (AP_ETAX_SERVICES_PKG.Generate_Recouped_Tax(
309: P_Invoice_id => P_Invoice_Id,
310: P_Invoice_Line_Number => P_Line_Number,
311: P_Calling_Mode => P_Calling_Mode,
312: P_All_Error_Messages => P_All_Error_Messages,
317: END IF;
318:
319: ELSIF (P_Calling_Mode = 'DELETE_TAX_DIST') THEN
320: -------------------------------------------------------------------
321: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Delete_Tax_Distributions';
322: -------------------------------------------------------------------
323:
324: IF NOT (AP_ETAX_SERVICES_PKG.Delete_Tax_Distributions
325: (p_invoice_id => P_Invoice_Id,
320: -------------------------------------------------------------------
321: l_debug_info := 'Step 2: Calling AP_ETAX_SERVICES_PKG.Delete_Tax_Distributions';
322: -------------------------------------------------------------------
323:
324: IF NOT (AP_ETAX_SERVICES_PKG.Delete_Tax_Distributions
325: (p_invoice_id => P_Invoice_Id,
326: p_calling_mode => P_Calling_Mode,
327: p_all_error_messages => P_All_Error_Messages,
328: p_error_code => P_Error_Code,
400:
401:
402: IF P_Calling_Mode = 'CALCULATE QUOTE' THEN
403:
404: IF NOT (AP_ETAX_SERVICES_PKG.CALCULATE_QUOTE(
405: P_Invoice_Header_Rec => p_invoice_header_rec,
406: P_Invoice_Lines_Rec => p_invoice_lines_rec,
407: P_Calling_Mode => p_calling_mode,
408: P_Tax_Amount => p_tax_amount,
433: /*=============================================================================
434: | FUNCTION - callETax()
435: |
436: | DESCRIPTION
437: | Public function that will call the requested AP_ETAX_SERVICES_PKG function
438: |
439: | This API is a wrapper of the calling_etax() api, mainly used by JDBC calls
440: | from OA based applications.
441: | This API will commit at the end.