1 package AR_BILLS_MAIN as
2 /* $Header: ARBRCOMS.pls 120.3 2005/06/02 19:18:14 vcrisost ship $ */
3 --
4
5
6 --
7 /*-------------------------------------------------------------------+
8 | 12-AUG-2000 J Rautiainen BR Implementation |
9 | Forms and libraries cannot directly refer to PL/SQL package global|
10 | variables, these record types are used to relay API constants |
11 | to client side using a function returning a record of this type. |
12 +-------------------------------------------------------------------*/
13 TYPE fnd_api_constants_type IS RECORD (
14 G_MISS_NUM NUMBER := FND_API.G_MISS_NUM,
15 G_MISS_CHAR VARCHAR2(1) := FND_API.G_MISS_CHAR,
16 G_MISS_DATE DATE := FND_API.G_MISS_DATE,
17 G_VALID_LEVEL_NONE NUMBER := FND_API.G_VALID_LEVEL_NONE,
18 G_VALID_LEVEL_FULL NUMBER := FND_API.G_VALID_LEVEL_FULL,
19 G_RET_STS_SUCCESS VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS,
20 G_RET_STS_ERROR VARCHAR2(1) := FND_API.G_RET_STS_ERROR,
21 G_RET_STS_UNEXP_ERROR VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR,
22 G_TRUE VARCHAR2(1) := FND_API.G_TRUE,
23 G_FALSE VARCHAR2(1) := FND_API.G_FALSE);
24
25 TYPE fnd_msg_pub_constants_type IS RECORD (
26 G_FIRST NUMBER := FND_MSG_PUB.G_FIRST,
27 G_NEXT NUMBER := FND_MSG_PUB.G_NEXT,
28 G_LAST NUMBER := FND_MSG_PUB.G_LAST,
29 G_PREVIOUS NUMBER := FND_MSG_PUB.G_PREVIOUS,
30 G_msg_level_threshold NUMBER := FND_MSG_PUB.G_msg_level_threshold,
31 G_MSG_LVL_UNEXP_ERROR NUMBER := FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR,
32 G_MSG_LVL_ERROR NUMBER := FND_MSG_PUB.G_MSG_LVL_ERROR,
33 G_MSG_LVL_SUCCESS NUMBER := FND_MSG_PUB.G_MSG_LVL_SUCCESS,
34 G_MSG_LVL_DEBUG_HIGH NUMBER := FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH,
35 G_MSG_LVL_DEBUG_MEDIUM NUMBER := FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM,
36 G_MSG_LVL_DEBUG_LOW NUMBER := FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
37
38
39 TYPE disallowedrectyp IS RECORD (
40 cf_block_item VARCHAR2(50));
41 TYPE disallowedtabtyp is TABLE OF disallowedrectyp
42 INDEX by BINARY_INTEGER;
43
44
45 currentform disallowedtabtyp;
46 disallowed disallowedtabtyp;
47
48
49 --
50 -- Definition of the BLOCKITEM record and table type
51 --
52 -- Used by the forms module as a list of canvas fields and flag indicating if they are accessible
53 --
54
55 TYPE blockitemrectyp is RECORD
56 (br_block_item VARCHAR2(50) , /* Format is block.item separated by a point */
57 update_allowed VARCHAR2(1)); /* Y or N depending if the user should have access to the field */
58
59 TYPE blockitemtabtyp is TABLE of blockitemrectyp
60 INDEX BY BINARY_INTEGER;
61
62
63
64
65
66
67
68 -- Definition of the STATE Record type and table type
69 --
70 -- Master table of the rules governing access to fields (only used in the server side)
71 --
72 --
73
74 TYPE stateRecTyp IS RECORD
75 (br_module VARCHAR2(30) , /* Module which the fields are to be controlled */
76 br_block_item VARCHAR2(50), /* Format is block.item separated by a point */
77 br_state varchar2(30) , /* State of the Bills Receivable */
78 update_allowed VARCHAR2(1)) ; /* Y or N depending if the user should have access to the field */
79
80
81 /* The column State holds either the Status of the Bill Receivable INCOMPLETE , PENDING_ACCEPTANCE etc
82 as defined in the look up type TRANSACTION_HISTORY_STATUS
83 and also the values ACTIVITES , POSTED for these additional criteria */
84
85 TYPE statetabTyp is TABLE OF staterectyp
86 INDEX BY BINARY_INTEGER;
87
88
89 blockitem ar_bills_main.blockitemtabtyp;
90
91 BrState statetabtyp;
92
93
94
95
96 -- ===============================================================================================
97 --
98 -- The assignments page uses a cursor for the QuickAssign to select
99 -- and fetch from the database.
100 --
101
102 -- The cursor first fetches into a Pl/SQL table which is passed to the form.
103
104
105 -- First Define the AssignRecType and AssignTabTyp
106
107 TYPE assignRecTyp is RECORD
108 (
109 trx_number RA_CUSTOMER_TRX.trx_number%TYPE ,
110 doc_sequence_value RA_CUSTOMER_TRX.doc_sequence_value%TYPE ,
111 trx_date RA_CUSTOMER_TRX.trx_date%TYPE ,
112 comments RA_CUSTOMER_TRX.comments%TYPE ,
113 purchase_order RA_CUSTOMER_TRX.purchase_order%TYPE ,
114 invoice_currency_code AR_PAYMENT_SCHEDULES.invoice_currency_code%TYPE ,
115 customer_trx_id RA_CUSTOMER_TRX.customer_trx_id%TYPE ,
116 payment_schedule_id AR_PAYMENT_SCHEDULES.payment_schedule_id%TYPE ,
117 amount_due_original AR_PAYMENT_SCHEDULES.amount_due_original%TYPE ,
118 amount_due_remaining AR_PAYMENT_SCHEDULES.amount_due_remaining%TYPE ,
119 acctd_amount_due_remaining AR_PAYMENT_SCHEDULES.acctd_amount_due_remaining%TYPE ,
120 due_date AR_PAYMENT_SCHEDULES.due_date%TYPE ,
121 exchange_rate AR_PAYMENT_SCHEDULES.exchange_rate%TYPE ,
122 terms_sequence_number AR_PAYMENT_SCHEDULES.terms_sequence_number%TYPE ,
123 jgzz_fiscal_code HZ_PARTIES.jgzz_fiscal_code%TYPE ,
124 customer_number HZ_CUST_ACCOUNTS.account_number%TYPE ,
125 customer_name HZ_PARTIES.party_name%TYPE ,
126 customer_class_code HZ_CUST_ACCOUNTS.customer_class_code%TYPE ,
127 customer_category_code HZ_PARTIES.category_code%TYPE ,
128 customer_category_meaning AR_LOOKUPS.meaning%TYPE ,
129 trx_type_name RA_CUST_TRX_TYPES.name%TYPE ,
130 trx_type_class AR_LOOKUPS.meaning%TYPE ,
131 trx_type_type RA_CUST_TRX_TYPES.type%TYPE ,
132 receipt_method_name AR_RECEIPT_METHODS.NAME%TYPE ,
133 receipt_method_id AR_RECEIPT_METHODS.receipt_method_id%TYPE ,
134 location HZ_CUST_SITE_USES.location%type ,
135 bill_to_site_use_id RA_CUSTOMER_TRX.bill_to_site_use_id%TYPE ,
136 bank_name ce_bank_branches_v.bank_name%TYPE ,
137 bank_branch_id ce_bank_branches_v.branch_party_id%TYPE ,
138 bank_account_id ap_bank_accounts.bank_account_id%TYPE ,
139 cons_billing_number AR_CONS_INV_ALL.cons_billing_number%TYPE ,
140 cons_inv_id AR_CONS_INV.cons_inv_id%TYPE ,
141 br_ref_customer_trx_id RA_CUSTOMER_TRX_LINES.br_ref_customer_trx_id%TYPE ,
142 br_ref_payment_schedule_id RA_CUSTOMER_TRX_LINES.br_ref_payment_schedule_id%TYPE ,
143 extended_amount RA_CUSTOMER_TRX_LINES.extended_amount%TYPE ,
144 extended_acctd_amount RA_CUSTOMER_TRX_LINES.extended_acctd_amount%TYPE ,
145 customer_trx_line_id RA_CUSTOMER_TRX_LINES.customer_trx_line_id%TYPE );
146
147 AssignRec AssignRecTyp;
148
149
150 TYPE AssignTabTyp is TABLE OF AssignRecTyp
151 INDEX BY BINARY_INTEGER;
152
153 /* This is the actual table which is passed between the ON-SELECT trigger of ARBRMAIN.fmb
154 Assignments block and the package ar_bills_main */
155
156 AssignTab AssignTabTyp;
157
158
159
160
161 --
162 --
163 -- ===============================================================================================
164
165
166
167 function load_table (pbr_module IN VARCHAR2 ) return Statetabtyp;
168
169 function get_all_items(pbr_module in varchar2) RETURN blockitemtabtyp;
170
171 function get_all_items_status (pbr_module in varchar2 , pbr_blockitem blockitemtabtyp , pbr_state1 in varchar2 ,
172 pbr_state2 in varchar2 , pbr_state3 in varchar2 , pbr_state4 in varchar2) RETURN blockitemtabtyp;
173
174
175
176 FUNCTION br_seq_enterable(p_sob_id in number , p_trans_type in varchar2 , p_trx_date in date ) RETURN BOOLEAN;
177
178
179 FUNCTION br_posted(p_customer_trx_id in number) return VARCHAR2;
180
181 FUNCTION br_selected(p_customer_trx_id in number) return VARCHAR2;
182
183
184 FUNCTION fetch_assignments(Customer_Trx_Id IN NUMBER , Drawee_id in NUMBER ,
185 Pay_unrelated_invoices IN VARCHAR2 , pg_where_clause In VARCHAR2 ,
186 pg_order_clause IN VARCHAR2 , p_le_id in NUMBER, AssignmentAmount IN NUMBER , AssignTab IN OUT NOCOPY AssignTabTyp ,
187 Extended_total OUT NOCOPY NUMBER) RETURN BOOLEAN;
188
189 FUNCTION GTRUE RETURN VARCHAR2;
190 FUNCTION GFALSE RETURN VARCHAR2;
191 FUNCTION get_fnd_api_constants_rec RETURN fnd_api_constants_type;
192 FUNCTION get_fnd_msg_pub_constants_rec RETURN fnd_msg_pub_constants_type;
193
194
195 FUNCTION revision RETURN VARCHAR2;
196 end;