1 PACKAGE ARP_TRX_VALIDATE AS
2 /* $Header: ARTUVALS.pls 120.9.12010000.1 2008/07/24 16:58:24 appldev ship $ */
3
4 TYPE Message_Rec_Type IS RECORD
5 (
6 customer_trx_id ra_customer_trx.customer_trx_id%type,
7 line_number ra_customer_trx_lines.line_number%type,
8 other_line_number ra_customer_trx_lines.line_number%type,
9 line_index BINARY_INTEGER,
10 tax_index BINARY_INTEGER,
11 freight_index BINARY_INTEGER,
12 salescredit_index BINARY_INTEGER,
13 message_name VARCHAR2(30),
14 token_name_1 VARCHAR2(100),
15 token_1 VARCHAR2(2000),
16 token_name_2 VARCHAR2(100),
17 token_2 VARCHAR2(2000),
18 encoded_message VARCHAR2(2000),
19 translated_message VARCHAR2(1000)
20 );
21
22 TYPE Message_Tbl_Type IS TABLE OF Message_Rec_Type
23 INDEX BY BINARY_INTEGER;
24
25 pg_message_tbl Message_Tbl_Type;
26
27
28 PROCEDURE ar_entity_version_check(p_form_name IN varchar2,
29 p_form_version IN number);
30
31 PROCEDURE check_dup_line_number( p_line_number IN NUMBER,
32 p_customer_trx_id IN NUMBER,
33 p_customer_trx_line_id IN NUMBER);
34
35 PROCEDURE check_has_one_line( p_customer_trx_id IN NUMBER,
36 p_display_message IN varchar2 default 'Y');
37
38 PROCEDURE check_sign_and_overapp(
39 p_customer_trx_id IN NUMBER,
40 p_previous_customer_trx_id IN NUMBER,
41 p_trx_open_receivables_flag IN VARCHAR2,
42 p_prev_open_receivables_flag IN VARCHAR2,
43 p_creation_sign IN VARCHAR2,
44 p_allow_overapplication_flag IN VARCHAR2,
45 p_natural_application_flag IN VARCHAR2
46 );
47
48 PROCEDURE validate_trx_number( p_batch_source_id IN NUMBER,
49 p_trx_number IN VARCHAR2,
50 p_customer_trx_id IN NUMBER );
51
52 PROCEDURE validate_trx_date( p_trx_date IN DATE,
53 p_prev_trx_date IN DATE,
54 p_commitment_trx_date IN DATE,
55 p_customer_trx_id IN NUMBER,
56 p_trx_number IN VARCHAR2,
57 p_previous_customer_trx_id IN NUMBER,
58 p_initial_customer_trx_id IN NUMBER,
59 p_agreement_id IN NUMBER,
60 p_batch_source_id IN NUMBER,
61 p_cust_trx_type_id IN NUMBER,
62 p_term_id IN NUMBER,
63 p_ship_method_code IN VARCHAR2,
64 p_primary_salesrep_id IN NUMBER,
65 p_reason_code IN VARCHAR2,
66 p_status_trx IN VARCHAR2,
67 p_invoice_currency_code IN VARCHAR2,
68 p_receipt_method_id IN NUMBER,
69 p_bank_account_id IN NUMBER,
70 p_due_date OUT NOCOPY date,
71 p_result_flag OUT NOCOPY boolean,
72 p_commitment_invalid_flag OUT NOCOPY boolean,
73 p_invalid_agreement_flag OUT NOCOPY boolean,
74 p_invalid_source_flag OUT NOCOPY boolean,
75 p_invalid_type_flag OUT NOCOPY boolean,
76 p_invalid_term_flag OUT NOCOPY boolean,
77 p_invalid_ship_method_flag OUT NOCOPY boolean,
78 p_invalid_primary_srep_flag OUT NOCOPY boolean,
79 p_invalid_reason_flag OUT NOCOPY boolean,
80 p_invalid_status_flag OUT NOCOPY boolean,
81 p_invalid_currency_flag OUT NOCOPY boolean,
82 p_invalid_payment_mthd_flag OUT NOCOPY boolean,
83 p_invalid_bank_flag OUT NOCOPY boolean,
84 p_invalid_salesrep_flag OUT NOCOPY boolean,
85 p_invalid_memo_line_flag OUT NOCOPY boolean,
86 p_invalid_uom_flag OUT NOCOPY boolean,
87 p_invalid_tax_flag OUT NOCOPY boolean,
88 p_invalid_cm_date_flag OUT NOCOPY boolean,
89 p_invalid_child_date_flag OUT NOCOPY boolean,
90 p_error_count IN OUT NOCOPY integer
91 );
92
93 PROCEDURE validate_trx_date(
94 p_error_mode IN VARCHAR2,
95 p_trx_date IN DATE,
96 p_prev_trx_date IN DATE,
97 p_commitment_trx_date IN DATE,
98 p_customer_trx_id IN NUMBER,
99 p_trx_number IN VARCHAR2,
100 p_previous_customer_trx_id IN NUMBER,
101 p_initial_customer_trx_id IN NUMBER,
102 p_agreement_id IN NUMBER,
103 p_batch_source_id IN NUMBER,
104 p_cust_trx_type_id IN NUMBER,
105 p_term_id IN NUMBER,
106 p_ship_method_code IN VARCHAR2,
107 p_primary_salesrep_id IN NUMBER,
108 p_reason_code IN VARCHAR2,
109 p_status_trx IN VARCHAR2,
110 p_invoice_currency_code IN VARCHAR2,
111 p_receipt_method_id IN NUMBER,
112 p_bank_account_id IN NUMBER,
113 p_due_date OUT NOCOPY date,
114 p_result_flag OUT NOCOPY boolean,
115 p_commitment_invalid_flag OUT NOCOPY boolean,
116 p_invalid_agreement_flag OUT NOCOPY boolean,
117 p_invalid_source_flag OUT NOCOPY boolean,
118 p_invalid_type_flag OUT NOCOPY boolean,
119 p_invalid_term_flag OUT NOCOPY boolean,
120 p_invalid_ship_method_flag OUT NOCOPY boolean,
121 p_invalid_primary_srep_flag OUT NOCOPY boolean,
122 p_invalid_reason_flag OUT NOCOPY boolean,
123 p_invalid_status_flag OUT NOCOPY boolean,
124 p_invalid_currency_flag OUT NOCOPY boolean,
125 p_invalid_payment_mthd_flag OUT NOCOPY boolean,
126 p_invalid_bank_flag OUT NOCOPY boolean,
127 p_invalid_salesrep_flag OUT NOCOPY boolean,
128 p_invalid_memo_line_flag OUT NOCOPY boolean,
129 p_invalid_uom_flag OUT NOCOPY boolean,
130 p_invalid_tax_flag OUT NOCOPY boolean,
131 p_invalid_cm_date_flag OUT NOCOPY boolean,
132 p_invalid_child_date_flag OUT NOCOPY boolean,
133 p_error_count IN OUT NOCOPY integer
134 );
135
136 PROCEDURE val_gl_dist_amounts(
137 p_customer_trx_line_id IN NUMBER,
138 p_result OUT NOCOPY boolean );
139
140 FUNCTION validate_paying_customer( p_paying_customer_id IN NUMBER,
141 p_trx_date IN date,
142 p_bill_to_customer_id IN NUMBER,
143 p_ct_prev_paying_customer_id IN NUMBER,
144 p_currency_code IN varchar2,
145 p_pay_unrelated_invoices_flag IN varchar2,
146 p_ct_prev_trx_date IN date)
147 RETURN BOOLEAN;
148
149 PROCEDURE val_and_dflt_pay_mthd_and_bank(
150 p_trx_date IN date,
151 p_currency_code IN varchar2,
152 p_paying_customer_id IN number,
153 p_paying_site_use_id IN number,
154 p_bill_to_customer_id IN number,
155 p_bill_to_site_use_id IN number,
156 p_in_receipt_method_id IN number,
157 p_in_customer_bank_account_id IN number,
158 p_payment_type_code IN varchar2,
159 p_payment_method_name OUT NOCOPY varchar2,
160 p_receipt_method_id OUT NOCOPY number,
161 p_creation_method_code OUT NOCOPY varchar2,
162 p_customer_bank_account_id OUT NOCOPY number,
163 p_bank_account_num OUT NOCOPY varchar2,
164 p_bank_name OUT NOCOPY varchar2,
165 p_bank_branch_name OUT NOCOPY varchar2,
166 p_bank_branch_id OUT NOCOPY number,
167 p_trx_manual_flag IN VARCHAR2 DEFAULT 'N'
168 );
169
170 PROCEDURE do_completion_checking(
171 p_customer_trx_id IN NUMBER,
172 p_so_source_code IN varchar2,
173 p_so_installed_flag IN varchar2,
174 p_error_mode IN VARCHAR2,
175 p_error_count OUT NOCOPY number
176 );
177
178 PROCEDURE add_to_error_list(
179 p_mode IN VARCHAR2,
180 p_error_count IN OUT NOCOPY INTEGER,
181 p_customer_trx_id IN NUMBER,
182 p_trx_number IN VARCHAR2,
183 p_line_number IN NUMBER,
184 p_other_line_number IN NUMBER,
185 p_message_name IN VARCHAR2,
186 p_error_location IN varchar2 DEFAULT NULL,
187 p_token_name_1 IN varchar2 DEFAULT NULL,
188 p_token_1 IN varchar2 DEFAULT NULL,
189 p_token_name_2 IN varchar2 DEFAULT NULL,
190 p_token_2 IN varchar2 DEFAULT NULL,
191 p_line_index IN NUMBER DEFAULT NULL,
192 p_tax_index IN NUMBER DEFAULT NULL,
193 p_freight_index IN NUMBER DEFAULT NULL,
194 p_salescredit_index IN NUMBER DEFAULT NULL
195 );
196
197 PROCEDURE validate_doc_number( p_cust_trx_type_id IN NUMBER,
198 p_doc_sequence_value IN NUMBER,
199 p_customer_trx_id IN NUMBER );
200
201 /*Bug3041195*/
202 PROCEDURE check_sign_and_overapp(
203 p_customer_trx_id IN NUMBER,
204 p_previous_customer_trx_id IN NUMBER,
205 p_trx_open_receivables_flag IN VARCHAR2,
206 p_prev_open_receivables_flag IN VARCHAR2,
207 p_creation_sign IN VARCHAR2,
208 p_allow_overapplication_flag IN VARCHAR2,
209 p_natural_application_flag IN VARCHAR2,
210 p_error_mode IN VARCHAR2,
211 p_error_count OUT NOCOPY NUMBER
212 );
213
214 PROCEDURE init;
215
216 END ARP_TRX_VALIDATE;