1 PACKAGE pa_retention_pkg AS
2 /* $Header: PAXIRTNS.pls 120.3 2005/08/19 17:14:44 mwasowic noship $ */
3 --- Retention Invoice Format Structure
4
5 TYPE InvRetnLineFormat IS RECORD (
6 column_code VARCHAR2(30),
7 usertext varchar2(80),
8 start_position NUMBER,
9 end_position NUMBER,
10 right_justify_flag VARCHAR2(1));
11
12 TYPE TabInvRetnLineFormat IS TABLE OF InvRetnLineFormat
13 INDEX BY BINARY_INTEGER;
14
15 -- Function Get_Invoice_Max_Line
16 -- Purpose Get the Maximum Invoice Line Number
17
18 FUNCTION Get_Invoice_Max_Line(p_project_id IN NUMBER,
19 p_draft_invoice_num IN NUMBER) RETURN NUMBER;
20
21 -- Function Get_NetZero_Line
22 -- Purpose Get the NetZero Invoice Line Number
23
24 FUNCTION Get_NetZero_Line(p_project_id IN NUMBER,
25 p_draft_invoice_num IN NUMBER) RETURN NUMBER;
26
27 -- Procdure Proj_Invoice_Retn_PRocessing
28 -- Purpose To retain the retention amount.
29 -- This will be called after project invoice generation
30
31 PROCEDURE Proj_Invoice_Retn_Processing( p_project_id IN NUMBER,
32 p_request_id IN NUMBER,
33 x_return_status OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
34
35 PROCEDURE Create_Proj_Inv_Retn_Lines( p_project_id IN NUMBER,
36 p_customer_id IN NUMBER,
37 p_agreement_id IN NUMBER,
38 p_draft_invoice_num IN NUMBER,
39 p_cust_retn_level IN VARCHAR2,
40 p_request_id IN NUMBER,
41 p_output_tax_code IN VARCHAR2,
42 p_Output_tax_exempt_flag IN VARCHAR2,
43 p_Output_tax_exempt_number IN VARCHAR2,
44 p_Output_exempt_reason_code IN VARCHAR2);
45 -- Function Get_Proj_Inv_Retn_Format
46 -- Purpose Function to return the project invoice retention line format
47
48 Function Get_Proj_Inv_Retn_Format(p_project_id IN NUMBER) RETURN pa_retention_pkg.TabInvRetnLineFormat;
49
50 -- Procedure Update_Retention_Balances
51 -- Purpose Called from retention package and retention billing package
52 -- Used to update the retained and billed balances
53
54 PROCEDURE Update_Retention_Balances( p_retention_rule_id IN NUMBER DEFAULT NULL,
55 p_project_id IN NUMBER,
56 p_task_id IN NUMBER DEFAULT NULL,
57 p_agreement_id IN NUMBER,
58 p_customer_id IN NUMBER,
59 p_amount IN NUMBER,
60 p_change_type IN VARCHAR2,
61 p_request_id IN NUMBER ,
62 p_invproc_currency IN VARCHAR2,
63 p_project_currency IN VARCHAR2,
64 p_project_amount IN NUMBER,
65 p_projfunc_currency IN VARCHAR2,
66 p_projfunc_amount IN NUMBER,
67 p_funding_currency IN VARCHAR2,
68 p_funding_amount IN NUMBER);
69
70 PROCEDURE Proj_Invoice_Credit_Memo(p_request_id IN NUMBER,
71 p_project_id IN NUMBER,
72 x_return_status OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
73
74 PROCEDURE Invoice_Cancel_Action(p_request_id IN NUMBER,
75 p_invoice_type IN VARCHAR2,
76 p_project_id IN NUMBER,
77 p_draft_invoice_num IN NUMBER,
78 x_return_status OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
79
80 PROCEDURE Invoice_Delete_Action(p_request_id IN NUMBER,
81 p_invoice_type IN VARCHAR2,
82 p_project_id IN NUMBER,
83 p_draft_invoice_num IN NUMBER,
84 x_return_status OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
85
86 PROCEDURE Update_Retn_Bill_Trans_Amount(p_project_id IN NUMBER,
87 p_draft_invoice_num IN NUMBER,
88 p_bill_trans_currency IN VARCHAR2,
89 p_request_id IN NUMBER);
90
91 /* Procedure added for bug 2770738 */
92 PROCEDURE update_credit_retn_balances(p_request_id IN NUMBER,
93 p_invoice_type IN VARCHAR2,
94 p_credit_action IN VARCHAR2,
95 p_project_id IN NUMBER,
96 p_draft_invoice_num IN NUMBER,
97 x_return_status OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
98
99 /* Procedure added for bug 3889175 */
100 PROCEDURE Delete_Unused_Retention_Lines(
101 P_Project_ID IN NUMBER,
102 P_Task_ID IN NUMBER,
103 X_Return_Status OUT NOCOPY VARCHAR2); --File.Sql.39 bug 4440895
104
105 END pa_retention_pkg;