1 PACKAGE AP_INVOICE_DISTRIBUTIONS_PKG AUTHID CURRENT_USER as
2 /* $Header: apiindis.pls 120.17 2011/09/22 06:43:06 nbshaik ship $ */
3
4 --Invoice Lines: Distributions
5 PROCEDURE CHECK_UNIQUE (X_ROWID VARCHAR2,
6 X_INVOICE_ID NUMBER,
7 X_INVOICE_LINE_NUMBER NUMBER,
8 X_DISTRIBUTION_LINE_NUMBER NUMBER,
9 X_Calling_Sequence VARCHAR2);
10
11 FUNCTION Get_UOM(X_CCID NUMBER, X_Ch_Of_Accts_Id NUMBER) RETURN VARCHAR2;
12
13 FUNCTION Get_Posted_Status(X_Accrual_Posted_Flag VARCHAR2,
14 X_Cash_Posted_Flag VARCHAR2,
18
15 X_Posted_Flag VARCHAR2,
16 X_Org_Id IN NUMBER DEFAULT
17 mo_global.get_current_org_id ) RETURN VARCHAR2;
19 PROCEDURE Select_Summary(X_Invoice_Id IN NUMBER,
20 X_Total IN OUT NOCOPY NUMBER,
21 X_Total_Rtot_DB IN OUT NOCOPY NUMBER,
22 X_LINE_NUMBER IN NUMBER, --Bug4539547
23 X_Calling_Sequence IN VARCHAR2);
24
25 PROCEDURE Set_Inv_Packet_Id(X_Invoice_Id IN NUMBER,
26 X_Packet_Id IN OUT NOCOPY NUMBER,
27 X_Calling_Sequence IN VARCHAR2);
28 FUNCTION Query_New_Packet_Id(X_Rowid VARCHAR2,
29 X_Packet_Id NUMBER,
30 X_Calling_Sequence VARCHAR2) RETURN BOOLEAN;
31
32 FUNCTION All_Encumbered(X_Invoice_Id NUMBER,
33 X_Rowid VARCHAR2,
34 X_Calling_Sequence VARCHAR2) RETURN BOOLEAN;
35 FUNCTION Check_Cash_Basis_Paid(X_Invoice_Id NUMBER,
36 X_Calling_Sequence VARCHAR2) RETURN BOOLEAN;
37
38 PROCEDURE Adjust_PO(X_PO_Distribution_Id NUMBER,
39 X_Line_Location_id NUMBER,
40 X_Quantity_Billed NUMBER,
41 X_Amount_Billed NUMBER,
42 X_Match_Basis VARCHAR2, /* Amount Based Matching */
43 X_Matched_Uom VARCHAR2, /* Bug 4121303 */
44 X_Calling_Sequence VARCHAR2);
45
46 FUNCTION Substrbyte(X_String IN VARCHAR2,
47 X_Start IN NUMBER,
48 X_End IN NUMBER,
49 X_Calling_Sequence IN VARCHAR2) RETURN VARCHAR2;
50
51 /*==========================================================================*/
52 /* */
53 /* This function is called from ap_invoice_lines_pkg.insert_from_dist_set */
54 /* to generate invoice distributions from a distribution set given an */
55 /* existing invoice line. This function will: */
56 /* 1) create distributions in either candidate or permanent mode depending */
57 /* X_generate_permanent parameter. */
58 /* 2) if an error is encountered, the debug info and context will be */
59 /* populated into the OUT parameters. */
60 /* 3) return TRUE if the generation was successful or FALSE otherwise. */
61 /* */
62 /*==========================================================================*/
63
64 FUNCTION Insert_From_Dist_Set(
65 X_batch_id IN NUMBER,
66 X_invoice_id IN NUMBER,
67 X_line_number IN NUMBER,
68 X_dist_tab IN AP_INVOICE_LINES_PKG.dist_tab_type,
69 X_Generate_Permanent IN VARCHAR2 DEFAULT 'N',
70 X_Debug_Info OUT NOCOPY VARCHAR2,
71 X_Debug_Context OUT NOCOPY VARCHAR2,
72 X_Calling_Sequence IN VARCHAR2) RETURN BOOLEAN;
73
74 /*
75 * eTax Uptake. Commenting out this function. It will
76 * be obsolete
77 PROCEDURE insert_prepay_dist (X_invoice_id IN number,
78 X_GL_Date IN date,
79 X_Period_Name IN varchar2,
80 X_Type_1099 IN varchar2,
81 X_Income_Tax_Region IN varchar2,
82 X_Offset_VAT_code IN varchar2,
83 X_calling_sequence IN varchar2);
84 */
85
86 --ETAX: Invwkb
87 /*
88 PROCEDURE insert_dist (
89 X_invoice_id IN number,
90 X_invoice_line_number IN number,
91 X_invoice_distribution_id IN number,
92 X_Line_Type IN varchar2,
93 X_GL_Date IN date,
94 X_Period_Name IN varchar2,
95 X_Type_1099 IN varchar2,
96 X_Income_Tax_Region IN varchar2,
97 X_Amount IN number,
98 X_Code_Combination_Id IN number,
99 X_PA_Quantity IN number,
100 X_Description IN varchar2,
101 X_tax_recoverable_flag IN varchar2,
102 X_po_distribution_id IN number,
103 X_Attribute_Category IN varchar2,
104 X_Attribute1 IN varchar2,
105 X_Attribute2 IN varchar2,
106 X_Attribute3 IN varchar2,
107 X_Attribute4 IN varchar2,
108 X_Attribute5 IN varchar2,
109 X_Attribute6 IN varchar2,
110 X_Attribute7 IN varchar2,
111 X_Attribute8 IN varchar2,
112 X_Attribute9 IN varchar2,
113 X_Attribute10 IN varchar2,
114 X_Attribute11 IN varchar2,
115 X_Attribute12 IN varchar2,
116 X_Attribute13 IN varchar2,
117 X_Attribute14 IN varchar2,
121 X_cc_reversal_flag IN varchar2 DEFAULT NULL);
118 X_Attribute15 IN varchar2,
119 X_Calling_Sequence IN varchar2,
120 X_company_prepaid_invoice_id IN number DEFAULT NULL,
122 */
123
124 PROCEDURE update_distributions (
125 X_invoice_id IN number,
126 X_line_number IN number,
127 X_type_1099 IN varchar2,
128 X_income_tax_region IN varchar2,
129 X_vendor_changed_flag IN OUT NOCOPY varchar2,
130 X_update_base IN OUT NOCOPY varchar2,
131 X_reset_match_status IN OUT NOCOPY varchar2,
132 X_update_occurred IN OUT NOCOPY varchar2,
133 X_calling_sequence IN varchar2);
134
135 PROCEDURE Insert_Row(X_Rowid IN OUT NOCOPY VARCHAR2,
136 X_Invoice_Id NUMBER,
137 -- Invoice Lines Project Stage 1
138 X_Invoice_Line_Number NUMBER,
139 X_Distribution_Class VARCHAR2,
140 X_Invoice_Distribution_Id IN OUT NOCOPY NUMBER,
141 X_Dist_Code_Combination_Id NUMBER,
142 X_Last_Update_Date DATE,
143 X_Last_Updated_By NUMBER,
144 X_Accounting_Date DATE,
145 X_Period_Name VARCHAR2,
146 X_Set_Of_Books_Id NUMBER,
147 X_Amount NUMBER,
148 X_Description VARCHAR2,
149 X_Type_1099 VARCHAR2,
150 X_Posted_Flag VARCHAR2,
151 X_Batch_Id NUMBER,
152 X_Quantity_Invoiced NUMBER,
153 X_Unit_Price NUMBER,
154 X_Match_Status_Flag VARCHAR2,
155 X_Attribute_Category VARCHAR2,
156 X_Attribute1 VARCHAR2,
157 X_Attribute2 VARCHAR2,
158 X_Attribute3 VARCHAR2,
159 X_Attribute4 VARCHAR2,
160 X_Attribute5 VARCHAR2,
161 X_Prepay_Amount_Remaining NUMBER,
162 X_Assets_Addition_Flag VARCHAR2,
163 X_Assets_Tracking_Flag VARCHAR2,
164 X_Distribution_Line_Number NUMBER,
165 X_Line_Type_Lookup_Code VARCHAR2,
166 X_Po_Distribution_Id NUMBER,
167 X_Base_Amount NUMBER,
168 X_Pa_Addition_Flag VARCHAR2,
169 X_Posted_Amount NUMBER,
170 X_Posted_Base_Amount NUMBER,
171 X_Encumbered_Flag VARCHAR2,
172 X_Accrual_Posted_Flag VARCHAR2,
173 X_Cash_Posted_Flag VARCHAR2,
174 X_Last_Update_Login NUMBER,
175 X_Creation_Date DATE,
176 X_Created_By NUMBER,
177 X_Stat_Amount NUMBER,
178 X_Attribute11 VARCHAR2,
179 X_Attribute12 VARCHAR2,
180 X_Attribute13 VARCHAR2,
181 X_Attribute14 VARCHAR2,
182 X_Attribute6 VARCHAR2,
183 X_Attribute7 VARCHAR2,
184 X_Attribute8 VARCHAR2,
185 X_Attribute9 VARCHAR2,
186 X_Attribute10 VARCHAR2,
187 X_Attribute15 VARCHAR2,
188 X_Accts_Pay_Code_Comb_Id NUMBER,
189 X_Reversal_Flag VARCHAR2,
190 X_Parent_Invoice_Id NUMBER,
191 X_Income_Tax_Region VARCHAR2,
192 X_Final_Match_Flag VARCHAR2,
193 X_Expenditure_Item_Date DATE,
194 X_Expenditure_Organization_Id NUMBER,
195 X_Expenditure_Type VARCHAR2,
196 X_Pa_Quantity NUMBER,
197 X_Project_Id NUMBER,
198 X_Task_Id NUMBER,
199 X_Quantity_Variance NUMBER,
200 X_Base_Quantity_Variance NUMBER,
201 X_Packet_Id NUMBER,
202 X_Awt_Flag VARCHAR2,
203 X_Awt_Group_Id NUMBER,
204 X_Pay_Awt_Group_Id NUMBER,--bug6639866
205 X_Awt_Tax_Rate_Id NUMBER,
206 X_Awt_Gross_Amount NUMBER,
207 X_Reference_1 VARCHAR2,
208 X_Reference_2 VARCHAR2,
209 X_Org_Id NUMBER,
210 X_Other_Invoice_Id NUMBER,
214 X_Program_Id NUMBER,
211 X_Awt_Invoice_Id NUMBER,
212 X_Awt_Origin_Group_Id NUMBER,
213 X_Program_Application_Id NUMBER,
215 X_Program_Update_Date DATE,
216 X_Request_Id NUMBER,
217 X_Tax_Recoverable_Flag VARCHAR2,
218 X_Award_Id NUMBER,
219 X_Start_Expense_Date DATE,
220 X_Merchant_Document_Number VARCHAR2,
221 X_Merchant_Name VARCHAR2,
222 X_Merchant_Reference VARCHAR2,
223 X_Merchant_Tax_Reg_Number VARCHAR2,
224 X_Merchant_Taxpayer_Id VARCHAR2,
225 X_Country_Of_Supply VARCHAR2,
226 X_Parent_Reversal_id NUMBER,
227 X_rcv_transaction_id NUMBER,
228 X_matched_uom_lookup_code VARCHAR2,
229 X_global_attribute_category VARCHAR2 DEFAULT NULL,
230 X_global_attribute1 VARCHAR2 DEFAULT NULL,
231 X_global_attribute2 VARCHAR2 DEFAULT NULL,
232 X_global_attribute3 VARCHAR2 DEFAULT NULL,
233 X_global_attribute4 VARCHAR2 DEFAULT NULL,
234 X_global_attribute5 VARCHAR2 DEFAULT NULL,
235 X_global_attribute6 VARCHAR2 DEFAULT NULL,
236 X_global_attribute7 VARCHAR2 DEFAULT NULL,
237 X_global_attribute8 VARCHAR2 DEFAULT NULL,
238 X_global_attribute9 VARCHAR2 DEFAULT NULL,
239 X_global_attribute10 VARCHAR2 DEFAULT NULL,
240 X_global_attribute11 VARCHAR2 DEFAULT NULL,
241 X_global_attribute12 VARCHAR2 DEFAULT NULL,
242 X_global_attribute13 VARCHAR2 DEFAULT NULL,
243 X_global_attribute14 VARCHAR2 DEFAULT NULL,
244 X_global_attribute15 VARCHAR2 DEFAULT NULL,
245 X_global_attribute16 VARCHAR2 DEFAULT NULL,
246 X_global_attribute17 VARCHAR2 DEFAULT NULL,
247 X_global_attribute18 VARCHAR2 DEFAULT NULL,
248 X_global_attribute19 VARCHAR2 DEFAULT NULL,
249 X_global_attribute20 VARCHAR2 DEFAULT NULL,
250 -- Invoice Lines Project Stage 1
251 X_rounding_amt NUMBER DEFAULT NULL,
252 X_charge_applicable_to_dist_id NUMBER DEFAULT NULL,
253 X_corrected_invoice_dist_id NUMBER DEFAULT NULL,
254 X_related_id NUMBER DEFAULT NULL,
255 X_asset_book_type_code VARCHAR2 DEFAULT NULL,
256 X_asset_category_id NUMBER DEFAULT NULL ,
257 X_intended_use VARCHAR2 DEFAULT NULL,
258 x_calling_sequence VARCHAR2 );
259
260 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
261 X_Invoice_Id NUMBER,
262 -- Invoice Lines Project Stage 1
263 X_Invoice_Line_Number NUMBER,
264 X_Distribution_Class VARCHAR2,
265 X_Invoice_Distribution_Id NUMBER,
266 X_Dist_Code_Combination_Id NUMBER,
267 X_Accounting_Date DATE,
268 X_Period_Name VARCHAR2,
269 X_Set_Of_Books_Id NUMBER,
270 X_Amount NUMBER,
271 X_Description VARCHAR2,
272 X_Type_1099 VARCHAR2,
273 X_Posted_Flag VARCHAR2,
274 X_Batch_Id NUMBER,
275 X_Quantity_Invoiced NUMBER,
276 X_Unit_Price NUMBER,
277 X_Match_Status_Flag VARCHAR2,
278 X_Attribute_Category VARCHAR2,
279 X_Attribute1 VARCHAR2,
280 X_Attribute2 VARCHAR2,
281 X_Attribute3 VARCHAR2,
282 X_Attribute4 VARCHAR2,
283 X_Attribute5 VARCHAR2,
284 X_Prepay_Amount_Remaining NUMBER,
285 X_Assets_Addition_Flag VARCHAR2,
286 X_Assets_Tracking_Flag VARCHAR2,
287 X_Distribution_Line_Number NUMBER,
288 X_Line_Type_Lookup_Code VARCHAR2,
289 X_Po_Distribution_Id NUMBER,
290 X_Base_Amount NUMBER,
291 X_Pa_Addition_Flag VARCHAR2,
292 X_Posted_Amount NUMBER,
293 X_Posted_Base_Amount NUMBER,
294 X_Encumbered_Flag VARCHAR2,
295 X_Accrual_Posted_Flag VARCHAR2,
296 X_Cash_Posted_Flag VARCHAR2,
297 X_Stat_Amount NUMBER,
298 X_Attribute11 VARCHAR2,
302 X_Attribute6 VARCHAR2,
299 X_Attribute12 VARCHAR2,
300 X_Attribute13 VARCHAR2,
301 X_Attribute14 VARCHAR2,
303 X_Attribute7 VARCHAR2,
304 X_Attribute8 VARCHAR2,
305 X_Attribute9 VARCHAR2,
306 X_Attribute10 VARCHAR2,
307 X_Attribute15 VARCHAR2,
308 X_Accts_Pay_Code_Comb_Id NUMBER,
309 X_Reversal_Flag VARCHAR2,
310 X_Parent_Invoice_Id NUMBER,
311 X_Income_Tax_Region VARCHAR2,
312 X_Final_Match_Flag VARCHAR2,
313 X_Expenditure_Item_Date DATE,
314 X_Expenditure_Organization_Id NUMBER,
315 X_Expenditure_Type VARCHAR2,
316 X_Pa_Quantity NUMBER,
317 X_Project_Id NUMBER,
318 X_Task_Id NUMBER,
319 X_Quantity_Variance NUMBER,
320 X_Base_Quantity_Variance NUMBER,
321 X_Packet_Id NUMBER,
322 X_Awt_Flag VARCHAR2,
323 X_Awt_Group_Id NUMBER,
324 X_Pay_Awt_Group_Id NUMBER,--bug6639866
325 X_Awt_Tax_Rate_Id NUMBER,
326 X_Awt_Gross_Amount NUMBER,
327 X_Reference_1 VARCHAR2,
328 X_Reference_2 VARCHAR2,
329 X_Org_Id NUMBER,
330 X_Other_Invoice_Id NUMBER,
331 X_Awt_Invoice_Id NUMBER,
332 X_Awt_Origin_Group_Id NUMBER,
333 X_Program_Application_Id NUMBER,
334 X_Program_Id NUMBER,
335 X_Program_Update_Date DATE,
336 X_Request_Id NUMBER,
337 X_Tax_Recoverable_Flag VARCHAR2,
338 X_Award_Id NUMBER,
339 X_Start_Expense_Date DATE,
340 X_Merchant_Document_Number VARCHAR2,
341 X_Merchant_Name VARCHAR2,
342 X_Merchant_Reference VARCHAR2,
343 X_Merchant_Tax_Reg_Number VARCHAR2,
344 X_Merchant_Taxpayer_Id VARCHAR2,
345 X_Country_Of_Supply VARCHAR2,
346 X_global_attribute_category VARCHAR2 DEFAULT NULL,
347 X_global_attribute1 VARCHAR2 DEFAULT NULL,
348 X_global_attribute2 VARCHAR2 DEFAULT NULL,
349 X_global_attribute3 VARCHAR2 DEFAULT NULL,
350 X_global_attribute4 VARCHAR2 DEFAULT NULL,
351 X_global_attribute5 VARCHAR2 DEFAULT NULL,
352 X_global_attribute6 VARCHAR2 DEFAULT NULL,
353 X_global_attribute7 VARCHAR2 DEFAULT NULL,
354 X_global_attribute8 VARCHAR2 DEFAULT NULL,
355 X_global_attribute9 VARCHAR2 DEFAULT NULL,
356 X_global_attribute10 VARCHAR2 DEFAULT NULL,
357 X_global_attribute11 VARCHAR2 DEFAULT NULL,
358 X_global_attribute12 VARCHAR2 DEFAULT NULL,
359 X_global_attribute13 VARCHAR2 DEFAULT NULL,
360 X_global_attribute14 VARCHAR2 DEFAULT NULL,
361 X_global_attribute15 VARCHAR2 DEFAULT NULL,
362 X_global_attribute16 VARCHAR2 DEFAULT NULL,
363 X_global_attribute17 VARCHAR2 DEFAULT NULL,
364 X_global_attribute18 VARCHAR2 DEFAULT NULL,
365 X_global_attribute19 VARCHAR2 DEFAULT NULL,
366 X_global_attribute20 VARCHAR2 DEFAULT NULL,
367 -- Invoice Lines Project Stage 1
368 X_rounding_amt NUMBER DEFAULT NULL,
369 X_charge_applicable_to_dist_id NUMBER DEFAULT NULL,
370 X_corrected_invoice_dist_id NUMBER DEFAULT NULL,
374 --ETAX: Invoice Workbench
371 X_related_id NUMBER DEFAULT NULL,
372 X_asset_book_type_code VARCHAR2 DEFAULT NULL,
373 X_asset_category_id NUMBER DEFAULT NULL,
375 X_Intended_Use VARCHAR2 DEFAULT NULL,
376 X_Calling_Sequence VARCHAR2 );
377
378
379
380
381 PROCEDURE Update_Row(X_Rowid VARCHAR2,
382 X_Invoice_Id NUMBER,
383 -- Invoice Lines Project Stage 1
384 X_Invoice_Line_Number NUMBER,
385 X_Distribution_Class VARCHAR2,
386 X_Dist_Code_Combination_Id NUMBER,
387 X_Last_Update_Date DATE,
388 X_Last_Updated_By NUMBER,
389 X_Accounting_Date DATE,
390 X_Period_Name VARCHAR2,
391 X_Set_Of_Books_Id NUMBER,
392 X_Amount NUMBER,
393 X_Description VARCHAR2,
394 X_Type_1099 VARCHAR2,
395 X_Posted_Flag VARCHAR2,
396 X_Batch_Id NUMBER,
397 X_Quantity_Invoiced NUMBER,
398 X_Unit_Price NUMBER,
399 X_Match_Status_Flag VARCHAR2,
400 X_Attribute_Category VARCHAR2,
401 X_Attribute1 VARCHAR2,
402 X_Attribute2 VARCHAR2,
403 X_Attribute3 VARCHAR2,
404 X_Attribute4 VARCHAR2,
405 X_Attribute5 VARCHAR2,
406 X_Prepay_Amount_Remaining NUMBER,
407 X_Assets_Addition_Flag VARCHAR2,
408 X_Assets_Tracking_Flag VARCHAR2,
409 X_Distribution_Line_Number NUMBER,
410 X_Line_Type_Lookup_Code VARCHAR2,
411 X_Po_Distribution_Id NUMBER,
412 X_Base_Amount NUMBER,
413 X_Pa_Addition_Flag VARCHAR2,
414 X_Posted_Amount NUMBER,
415 X_Posted_Base_Amount NUMBER,
416 X_Encumbered_Flag VARCHAR2,
417 X_Accrual_Posted_Flag VARCHAR2,
418 X_Cash_Posted_Flag VARCHAR2,
419 X_Last_Update_Login NUMBER,
420 X_Stat_Amount NUMBER,
421 X_Attribute11 VARCHAR2,
422 X_Attribute12 VARCHAR2,
423 X_Attribute13 VARCHAR2,
424 X_Attribute14 VARCHAR2,
425 X_Attribute6 VARCHAR2,
426 X_Attribute7 VARCHAR2,
427 X_Attribute8 VARCHAR2,
428 X_Attribute9 VARCHAR2,
429 X_Attribute10 VARCHAR2,
430 X_Attribute15 VARCHAR2,
431 X_Accts_Pay_Code_Comb_Id NUMBER,
432 X_Reversal_Flag VARCHAR2,
433 X_Parent_Invoice_Id NUMBER,
434 X_Income_Tax_Region VARCHAR2,
435 X_Final_Match_Flag VARCHAR2,
436 X_Expenditure_Item_Date DATE,
437 X_Expenditure_Organization_Id NUMBER,
438 X_Expenditure_Type VARCHAR2,
439 X_Pa_Quantity NUMBER,
440 X_Project_Id NUMBER,
441 X_Task_Id NUMBER,
442 X_Quantity_Variance NUMBER,
443 X_Base_Quantity_Variance NUMBER,
444 X_Packet_Id NUMBER,
445 X_Awt_Flag VARCHAR2,
446 X_Awt_Group_Id NUMBER,
447 X_Pay_Awt_Group_Id NUMBER,--bug6639866
448 X_Awt_Tax_Rate_Id NUMBER,
449 X_Awt_Gross_Amount NUMBER,
450 X_Reference_1 VARCHAR2,
451 X_Reference_2 VARCHAR2,
452 X_Org_Id NUMBER,
453 X_Other_Invoice_Id NUMBER,
454 X_Awt_Invoice_Id NUMBER,
455 X_Awt_Origin_Group_Id NUMBER,
456 X_Program_Application_Id NUMBER,
457 X_Program_Id NUMBER,
458 X_Program_Update_Date DATE,
459 X_Request_Id NUMBER,
460 X_Tax_Recoverable_Flag VARCHAR2,
461 X_Award_Id NUMBER,
462 X_Start_Expense_Date DATE,
463 X_Merchant_Document_Number VARCHAR2,
467 X_Country_Of_Supply VARCHAR2,
464 X_Merchant_Name VARCHAR2,
465 X_Merchant_Tax_Reg_Number VARCHAR2,
466 X_Merchant_Taxpayer_Id VARCHAR2,
468 X_Merchant_Reference VARCHAR2,
469 X_global_attribute_category VARCHAR2 DEFAULT NULL,
470 X_global_attribute1 VARCHAR2 DEFAULT NULL,
471 X_global_attribute2 VARCHAR2 DEFAULT NULL,
472 X_global_attribute3 VARCHAR2 DEFAULT NULL,
473 X_global_attribute4 VARCHAR2 DEFAULT NULL,
474 X_global_attribute5 VARCHAR2 DEFAULT NULL,
475 X_global_attribute6 VARCHAR2 DEFAULT NULL,
476 X_global_attribute7 VARCHAR2 DEFAULT NULL,
477 X_global_attribute8 VARCHAR2 DEFAULT NULL,
478 X_global_attribute9 VARCHAR2 DEFAULT NULL,
479 X_global_attribute10 VARCHAR2 DEFAULT NULL,
480 X_global_attribute11 VARCHAR2 DEFAULT NULL,
481 X_global_attribute12 VARCHAR2 DEFAULT NULL,
482 X_global_attribute13 VARCHAR2 DEFAULT NULL,
483 X_global_attribute14 VARCHAR2 DEFAULT NULL,
484 X_global_attribute15 VARCHAR2 DEFAULT NULL,
485 X_global_attribute16 VARCHAR2 DEFAULT NULL,
486 X_global_attribute17 VARCHAR2 DEFAULT NULL,
487 X_global_attribute18 VARCHAR2 DEFAULT NULL,
488 X_global_attribute19 VARCHAR2 DEFAULT NULL,
489 X_global_attribute20 VARCHAR2 DEFAULT NULL,
490 X_Calling_Sequence VARCHAR2,
491 -- Invoice Lines Project Stage 1
492 X_rounding_amt NUMBER DEFAULT NULL,
493 X_charge_applicable_to_dist_id NUMBER DEFAULT NULL,
494 X_corrected_invoice_dist_id NUMBER DEFAULT NULL,
495 X_related_id NUMBER DEFAULT NULL,
496 X_asset_book_type_code VARCHAR2 DEFAULT NULL,
497 X_asset_category_id NUMBER DEFAULT NULL,
498 X_Intended_Use VARCHAR2 DEFAULT NULL);
499
500 PROCEDURE Delete_Row(X_Rowid VARCHAR2,
501 X_Calling_Sequence VARCHAR2);
502
503 FUNCTION Get_UOM_From_Segments(
504 X_Concatenated_Segments IN VARCHAR2,
505 X_Ch_Of_Accts_Id IN NUMBER) RETURN VARCHAR2;
506
507 -- Bug 1567235
508 /* Function to get the sum of distribution amount for a given invoice
509 and the balancing segment */
510 FUNCTION Get_Segment_Dist_Amount(
511 X_invoice_id IN NUMBER,
512 X_Prepay_Dist_CCID IN NUMBER,
513 X_Sob_Id IN NUMBER) RETURN NUMBER;
514
515 -- Bug 1567235.
516 /* Procedure to get the sum of distribution amount for a given invoice
517 and the sum of the distribution amount for a given prepayment */
518 PROCEDURE Get_Prepay_Amount_Available(
519 X_Invoice_ID IN NUMBER,
520 X_Prepay_ID IN NUMBER,
521 X_Sob_Id IN NUMBER,
522 X_Balancing_Segment OUT NOCOPY VARCHAR2,
526 -- Bug 1648309
523 X_Prepay_Amount OUT NOCOPY NUMBER,
524 X_Invoice_Amount OUT NOCOPY NUMBER);
525
527 FUNCTION Check_Diff_Dist_Segments(
528 X_Invoice_Id IN NUMBER,
529 X_Sob_Id IN NUMBER) RETURN BOOLEAN;
530
531 -- Bug 1567235
532 /* Function to get the value of the balancing segment for a given
533 CCID */
534 FUNCTION get_balancing_segment_value(
535 X_dist_code_combination_id IN NUMBER,
536 X_Sob_Id IN NUMBER) RETURN VARCHAR2;
537
538 -- Bug 2118673
539 /* Function to get the value of the balancing segment for a given
540 account */
541 FUNCTION get_balancing_seg_from_acc(
542 X_Account IN VARCHAR2,
543 X_Sob_Id IN NUMBER) RETURN VARCHAR2;
544
545 -- This function corrects error roundings in the biggest distribution
546 -- for a given non-base currency invoice.
547 PROCEDURE Round_Biggest_Distribution(
548 X_Base_Currency_Code IN VARCHAR2,
549 X_Invoice_Id IN NUMBER,
550 X_Calling_Sequence IN VARCHAR2);
551
552 /*==========================================================================*/
553 /* */
554 /* This function may be called from any process that needs to insert a dist */
555 /* from a line that is not PO/RCV matched or distribution set based. */
556 /* This function should only be called if a default account is available at */
557 /* the line level either standalone or to be built from overlay code concat.*/
558 /* If a freight or misc line, then there should be no allocations associated*/
559 /* with it. */
560 /* The following are the parameters and how/which should be populated by a */
561 /* calling module: */
562 /* 1) X_batch_id -- If batch control enabled, this is a mandatory parameter */
563 /* 2) X_invoice_id - This is mutually exclusive with X_invoice_lines_rec. */
564 /* -- If calling module provides invoice id and line number */
565 /* -- this function will read from trx table into a line */
566 /* -- record, else it will use the X_invoice_lines_rec as */
567 /* -- line record. */
568 /* 3) X_invoice_date - Mandatory parameter. */
569 /* 4) X_vendor_id - Mandatory parameter. */
570 /* 5) X_invoice_currency - Mandatory parameter. */
571 /* 6) X_exchange_rate - Mandatory if foreign currency invoice. */
572 /* 7) X_exchange_rate_type - Mandatory if foreign currency invoice. */
573 /* 8) X_line_number - Line number for line to generate dist for. Should */
574 /* -- be populated if calling module does not pass line */
575 /* -- record. */
576 /* 9) X_invoice_lines_rec - Line record requesting generation of dist */
577 /* -- If the calling module has it (as in Import) */
578 /* -- it is most performant to pass it as argument */
579 /* -- rather than invoice id and line number combo. */
580 /* 10)X_line_source - Should be populated with 'IMPORT' if called from the */
581 /* -- Open interface. This will improve performance for */
582 /* -- the interface, since account derivation should have */
583 /* -- already been done there. */
584 /* 11)X_Generate_Permanent - Pass Y if calling module wants to create */
585 /* -- permanent distributions, N otherwise. */
586 /* 12)X_Validate_Info - Indicates whether calling module requests this */
587 /* -- function to perform validations */
588 /* 13)Other parameters are used for error handling. */
589 /* This function will: */
590 /* 1) create a distributions in either candidate or permanent mode depending*/
591 /* X_generate_permanent parameter. */
592 /* 2) if an error is encountered, and the error refers to invalid data the */
593 /* error code will be populated as follows: */
594 /* 'INVALID_ACCOUNT' - Account provided did not pass validation */
595 /* 'CANNOT_OVERLAY' - Cannot produce a valid account using overlay info */
596 /* 'NO_OPEN_PERIOD' - Cannot find an open period. */
597 /* 'GL_DATE_PA_NOT_OPEN' - GL date is not open period for PA. */
598 /* 3) if an unexpected error occurs, the debug info and context will be */
599 /* populated into the OUT parameters. */
600 /* 4) if an error occurs while validating PA information, the */
601 /* X_Msg_Application and X_Msg_Data will be returned in OUT parameters. */
602 /* 5) return TRUE if the generation was successful or FALSE otherwise. */
603 /* 6) If called from the Interface Import, most validations will be ignored */
604 /* as they are assumed to be handled by the Import Validation. We */
605 /* distinguish the case by whether the invoice_lines_rec parameter is */
606 /* populated or null. It should only be populated when called from the */
607 /* Import. */
608 /* */
609 /*==========================================================================*/
610 FUNCTION Insert_Single_Dist_From_Line(
611 X_batch_id IN AP_INVOICES.BATCH_ID%TYPE,
612 X_invoice_id IN NUMBER,
616 X_exchange_rate IN AP_INVOICES.EXCHANGE_RATE%TYPE,
613 X_invoice_date IN AP_INVOICES.INVOICE_DATE%TYPE,
614 X_vendor_id IN AP_INVOICES.VENDOR_ID%TYPE,
615 X_invoice_currency IN AP_INVOICES.INVOICE_CURRENCY_CODE%TYPE,
617 X_exchange_rate_type IN AP_INVOICES.EXCHANGE_RATE_TYPE%TYPE,
618 X_exchange_date IN AP_INVOICES.EXCHANGE_DATE%TYPE,
619 X_line_number IN NUMBER,
620 X_invoice_lines_rec IN AP_INVOICES_PKG.r_invoice_line_rec,
621 X_line_source IN VARCHAR2,
622 X_Generate_Permanent IN VARCHAR2 DEFAULT 'N',
623 X_Validate_Info IN BOOLEAN DEFAULT TRUE,
624 X_Error_Code OUT NOCOPY VARCHAR2,
625 X_Debug_Info OUT NOCOPY VARCHAR2,
626 X_Debug_Context OUT NOCOPY VARCHAR2,
627 X_Msg_Application OUT NOCOPY VARCHAR2,
628 X_Msg_Data OUT NOCOPY VARCHAR2,
629 X_Calling_Sequence IN VARCHAR2) RETURN BOOLEAN;
630
631 --Bug 8346277
632 FUNCTION Insert_AWT_Dist_From_Line(
633 X_batch_id IN AP_INVOICES.BATCH_ID%TYPE,
634 X_invoice_id IN NUMBER,
635 X_invoice_date IN AP_INVOICES.INVOICE_DATE%TYPE,
636 X_vendor_id IN AP_INVOICES.VENDOR_ID%TYPE,
637 X_invoice_currency IN AP_INVOICES.INVOICE_CURRENCY_CODE%TYPE,
638 X_exchange_rate IN AP_INVOICES.EXCHANGE_RATE%TYPE,
639 X_exchange_rate_type IN AP_INVOICES.EXCHANGE_RATE_TYPE%TYPE,
640 X_exchange_date IN AP_INVOICES.EXCHANGE_DATE%TYPE,
641 X_line_number IN NUMBER,
642 X_invoice_lines_rec IN AP_INVOICES_PKG.r_invoice_line_rec,
643 X_line_source IN VARCHAR2,
644 X_Generate_Permanent IN VARCHAR2 DEFAULT 'N',
645 X_Validate_Info IN BOOLEAN DEFAULT TRUE,
646 X_Error_Code OUT NOCOPY VARCHAR2,
647 X_Debug_Info OUT NOCOPY VARCHAR2,
648 X_Debug_Context OUT NOCOPY VARCHAR2,
649 X_Msg_Application OUT NOCOPY VARCHAR2,
650 X_Msg_Data OUT NOCOPY VARCHAR2,
651 X_Calling_Sequence IN VARCHAR2) RETURN BOOLEAN;
652
653 /*========================================================================*/
654 /* */
655 /* This function may be called from any process that needs to insert dists*/
656 /* from a charge line that has an associated allocation rule. */
657 /* This function will: */
658 /* 1) create a distributions in either candidate or permanent mode */
659 /* depending on X_generate_permanent parameter. */
660 /* 2) X_Validate_Info parameter indicates whether validations should be */
661 /* performed. This parameter should be FALSE if calling module */
662 /* already performed validations e.g. Open Interface Import. However, */
663 /* the overlay process/PA account process will still take place */
664 /* and may produce an error. */
665 /* 3) if an error is encountered, and the error refers to invalid data the*/
666 /* error code will be populated as follows: */
667 /* 'NO_ALLOCATION_RULE_FOUND' - No allocation rule was found associated */
668 /* with the charge line */
669 /* 'ALLOCATION_ALREADY_EXECUTED' - The allocation rule has already been */
670 /* executed. */
671 /* 'NON_FULL_INVOICE' - Allocation rule indicates full proration but */
672 /* invoice is not complete. */
673 /* 'UNDISTRIBUTED_LINE_EXISTS' - Allocating to an undistributed line is */
674 /* not possible and one such line exists. */
675 /* 'IMPROPER_LINE_IN_ALLOC_RULE' -A line contains 0 total distributions */
676 /* and we cannot allocate against it. */
677 /* 'CANNOT_READ_EXP_DATE' - Failed to read expenditure item date. */
678 /* 'INVALID_ACCOUNT' - Account provided did not pass validation */
679 /* 'CANNOT_OVERLAY' - Cannot produce a valid a/c using overlay info */
680 /* 'NO_OPEN_PERIOD' - Cannot find an open period. */
681 /* 'GL_DATE_PA_NOT_OPEN' - GL date is not open period for PA. */
682 /* 4) if an unexpected error occurs, the debug info and context will be */
683 /* populated into the OUT parameters. */
684 /* 5) if an error occurs while validating PA information, the */
685 /* X_Msg_Application and X_Msg_Data will be returned in OUT parameters.*/
686 /* 6) return TRUE if the generation was successful or FALSE otherwise. */
687 /* */
688 /*========================================================================*/
689 FUNCTION Insert_Charge_From_Alloc(
690 X_invoice_id IN NUMBER,
691 X_line_number IN NUMBER,
692 X_Generate_Permanent IN VARCHAR2 DEFAULT 'N',
693 X_Validate_Info IN BOOLEAN DEFAULT TRUE,
694 X_Error_Code OUT NOCOPY VARCHAR2,
695 X_Debug_Info OUT NOCOPY VARCHAR2,
696 X_Debug_Context OUT NOCOPY VARCHAR2,
697 X_Msg_Application OUT NOCOPY VARCHAR2,
698 X_Msg_Data OUT NOCOPY VARCHAR2,
699 X_Calling_Sequence IN VARCHAR2) RETURN BOOLEAN;
700
701 /*========================================================================*/
702 /* */
703 /* This function may be called to get the original amount for an ITEM */
704 /* or ACCRUAL type line that has been split into ITEM/ACCRUAL, IPV and ERV*/
705 /* It may also be called in Price Corrections where there was no original */
706 /* ITEM/ACCRUAL but simply IPV which may have been split into IPV and ERV.*/
707 /* */
708 /*========================================================================*/
709 FUNCTION Get_Total_Dist_Amount(
710 X_invoice_distribution_id IN NUMBER) RETURN NUMBER;
711
712 /*========================================================================*/
713 /* */
714 /* Function to get the distribution line number by given distribution id */
715 /* */
716 /*========================================================================*/
717
718 FUNCTION GET_DIST_LINE_NUM(
719 X_invoice_dist_id IN NUMBER) RETURN NUMBER;
720
721 /*========================================================================*/
722 /* */
723 /* Function to get the invoice line number by given distribution id */
724 /* */
725 /*========================================================================*/
726
727 FUNCTION GET_INV_LINE_NUM(
728 X_invoice_dist_id IN NUMBER) RETURN NUMBER;
729
730 /*========================================================================*/
731 /* */
732 /* Function to get the invoice number by given distribution id */
733 /* */
734 /*========================================================================*/
735
736 FUNCTION GET_INVOICE_NUM(
737 X_invoice_dist_id IN NUMBER) RETURN VARCHAR2;
738
739 /*========================================================================*/
740 /* */
741 /* Function to get the correct related_id for reveral distribution line */
742 /* when system is reversing the distribution or discard inv line */
743 /* */
744 /*========================================================================*/
745
746 FUNCTION GET_REVERSAL_RELATED_ID(
747 X_related_dist_id IN NUMBER) RETURN NUMBER;
748
749
750 --Invoice Lines: Distributions
751 /*========================================================================*/
752 /* Function to get the reversing distribution num for a particular */
753 /* invoice distribution id */
754 /*=======================================================================*/
755
756 FUNCTION GET_REVERSING_DIST_NUM (
757 X_Invoice_Dist_id IN NUMBER) RETURN NUMBER;
758
759 FUNCTION Calculate_Variance(
760 X_DISTRIBUTION_ID IN NUMBER,
761 X_REPORTING_LEDGER_ID IN NUMBER,
762 X_DISTRIBUTION_AMT OUT NOCOPY NUMBER,
763 X_DIST_BASE_AMT OUT NOCOPY NUMBER,
764 X_IPV IN OUT NOCOPY NUMBER,
765 X_BIPV IN OUT NOCOPY NUMBER,
766 X_ERV IN OUT NOCOPY NUMBER,
767 X_DEBUG_INFO IN OUT NOCOPY VARCHAR2,
768 X_DEBUG_CONTEXT IN OUT NOCOPY VARCHAR2,
769 X_CALLING_SEQUENCE IN OUT NOCOPY VARCHAR2) Return Boolean;
770
771 --Invoice Lines: Distributions
772 FUNCTION Dist_Refer_Active_Corr(P_Invoice_Dist_ID IN NUMBER,
773 P_Calling_Sequence IN VARCHAR2) RETURN BOOLEAN;
774
775 --Invoice Lines: Distributions
776 FUNCTION Chrg_Refer_Active_Dist(P_Invoice_Dist_Id IN NUMBER,
777 P_Calling_Sequence IN VARCHAR2) RETURN BOOLEAN;
778 --Invoice Lines: Distributions
779 PROCEDURE Make_Distributions_Permanent
780 (P_Invoice_Id IN NUMBER,
781 P_Invoice_Line_Number IN NUMBER DEFAULT NULL,
782 P_Calling_Sequence IN VARCHAR2);
783
784 --Invoice Lines: Distributions
785 Function Associated_Charges(
786 P_Invoice_Id IN NUMBER,
787 P_Invoice_Distribution_Id IN NUMBER) RETURN NUMBER;
788
789 --Invoice Lines: Distributions: Wrapper for Java. -- Bug 9374412
790 FUNCTION Dist_Refer_Active_Corr_Wrap(P_Invoice_Dist_ID IN NUMBER,
791 P_Calling_Sequence IN VARCHAR2) RETURN NUMBER;
792
793 --Invoice Lines: Distributions: Wrapper for Java. -- Bug 9374412
794 FUNCTION Chrg_Refer_Active_Dist_Wrap(P_Invoice_Dist_Id IN NUMBER,
795 P_Calling_Sequence IN VARCHAR2) RETURN NUMBER;
796
797 --bug 12557265 to check if the distribution is parent of any awt distribution
798 FUNCTION IS_AWT_COMPUTED_dist(P_DISTRIBUTION_ID IN varchar2, P_INVOICE_ID IN VARCHAR2)
799 RETURN VARCHAR2 ;
800
801
802 END AP_INVOICE_DISTRIBUTIONS_PKG;
803