DBA Data[Home] [Help]

PACKAGE: APPS.IBY_UTILITY_PVT

Source


1 PACKAGE IBY_UTILITY_PVT AS
2 /* $Header: ibyvutls.pls 120.9.12010000.4 2008/11/21 09:53:04 vkarlapu ship $ */
3 
4 
5 -- iPayment trxn and batch status codes
6 -- must be in sync with mid-tier definition
7 -- in iby.ecapp.Constants
8 -- For an example of using these constants
9 -- in iby PL/SQL packages, see IBY_BANKPAYMENT_UPDT_PUB package body
10 
11 -- for obselete statuses
12 STATUS_OBSELETE CONSTANT NUMBER :=-1;
13 
14 STATUS_SUCCESS CONSTANT NUMBER := 0;
15 
16 STATUS_COMM_ERROR CONSTANT NUMBER :=1;
17 
18 STATUS_DUP_ORDER_ID CONSTANT NUMBER :=2;
19 
20 STATUS_DUP_BATCH_ID CONSTANT NUMBER :=3;
21 
22 STATUS_FIELD_MISSING CONSTANT NUMBER :=4;
23 
24 STATUS_BEP_ERROR CONSTANT NUMBER :=5;
25 
26 STATUS_BATCH_PARTIAL CONSTANT NUMBER :=6;
27 
28 STATUS_BATCH_FAIL CONSTANT NUMBER :=7;
29 
30 STATUS_NOT_SUPPORTED CONSTANT NUMBER :=8;
31 
32 -- trxn interuppted before final status could be saved;
33 -- requires query of BEP to sync final statuses
34 STATUS_TRANSITIONAL CONSTANT NUMBER :=9;
35 
36 STATUS_PENDING  CONSTANT NUMBER := 11;
37 
38 STATUS_INVALID  CONSTANT NUMBER := -99;
39 
40 STATUS_SCHED_IN_PROGRESS  CONSTANT NUMBER := 12;
41 
42 STATUS_SCHED_SUCCESS  CONSTANT NUMBER := 13;
43 
44 STATUS_CANCELLED  CONSTANT NUMBER := 14;
45 
46 STATUS_SCHED_FAILED  CONSTANT NUMBER := 15;
47 
48 STATUS_BEP_FAILED  CONSTANT NUMBER := 16;
49 
50 STATUS_UNABLE_TO_PAY  CONSTANT NUMBER := 17;
51 
52 STATUS_SUBMITTED  CONSTANT NUMBER := 18;
53 
54 STATUS_INVALID_CC  CONSTANT NUMBER := 19;
55 
56 STATUS_TRXN_DECLINED  CONSTANT NUMBER := 20;
57 
58 -- trxn is waiting in an open batch
59 STATUS_OPEN_BATCHED  CONSTANT NUMBER := 100;
60 
61 -- trxn was sent in a batch that resulted in comm error
62 STATUS_BATCH_COMM_ERROR  CONSTANT NUMBER := 101;
63 
64 
65 -- trxn is about to be sent out as part of a batch.
66 -- Used to delimit which transactions were actually
67 -- sent out so that batched transactions which arrive
68 -- concurrently are not mistakenly updated to
69 -- see STATUS_BATCH_PENDING
70 STATUS_BATCH_TRANSITIONAL  CONSTANT NUMBER := 109;
71 
72 -- trxn is in a submitted batch
73 STATUS_BATCH_PENDING  CONSTANT NUMBER := 111;
74 
75 -- trxn was cancelled an open batch
76 STATUS_BATCH_CANCELLED  CONSTANT NUMBER := 114;
77 
78 -- iPayment has exceeded the number of batches
79 -- allowed in a day
80 STATUS_BATCH_MAX_EXCEEDED  CONSTANT NUMBER := 120;
81 
82 -- The statuses of all child trxns (and the EC batches
83 -- in turn for payable merged iby batches) are obtained
84 -- through querying the BEP. Some child trxns succeeded,
85 -- some failed. This is considered a final status
86 -- Usage: payable EC batch - iby_pay_batches_all.batch_status
87 --        payable iby merged batch - iby_batches_all.batchstatus
88 STATUS_QRY_BATCH_PARTIAL CONSTANT NUMBER :=206;
89 
90 -- The batch is failed at the BEP side.
91 -- This can happen when the batch has a syntax error,
92 -- for example. As BEP generally take a batch as
93 -- an atomic entity, batch failure means all
94 -- child trxns are failed.
95 -- This status is also used when all trxns in
96 -- a batch failed on individual basis on the BEP side.
97 -- Usage: payable EC batch - iby_pay_batches_all.batch_status
98 --        payable iby merged batch - iby_batches_all.batchstatus
99 STATUS_QRY_BATCH_FAIL CONSTANT NUMBER :=207;
100 
101 -- The statuses of some child trxns are obtained
102 -- through querying the BEP. Others are still unknown
103 -- (they will remain in STATUS_BATCH_PENDING).
104 -- Usage: payable EC batch - iby_pay_batches_all.batch_status
105 --        payable iby merged batch - iby_batches_all.batchstatus
106 STATUS_QRY_BATCH_PENDING CONSTANT NUMBER :=211;
107 
108 -- This is the companion status for STATUS_QRY_BATCH_FAIL.
109 -- For trxn level. When a batch is failed at BEP side,
110 -- all it's child trxns will be failed also.
111 -- For a failed batch/trxn user must make corrections
112 -- in the originating EC app and submit them
113 -- as new trxns to iPayment.
114 -- Note for trxn only failure such as country rule
115 -- validation error for the trxn, it will get
116 -- STATUS_BEP_ERROR
117 -- Usage: payable trxn - iby_pay_payments_all.pmt_status
118 STATUS_QRY_TRXN_FAIL CONSTANT NUMBER :=220;
119 
120 -- obseleted financing statuses
121 STATUS_LENDER_APPROVED CONSTANT NUMBER :=STATUS_OBSELETE;
122 STATUS_FINANCE_TIMEOUT CONSTANT NUMBER :=STATUS_OBSELETE;
123 STATUS_FINAPP_DRAFT_SAVED CONSTANT NUMBER :=STATUS_OBSELETE;
124 STATUS_FINAPP_RECEIVED CONSTANT NUMBER :=STATUS_OBSELETE;
125 STATUS_FINAPP_SENT CONSTANT NUMBER :=STATUS_OBSELETE;
126 STATUS_ADDINFO_SENT CONSTANT NUMBER :=STATUS_OBSELETE;
127 STATUS_ADDINFO_RECEIVED CONSTANT NUMBER :=STATUS_OBSELETE;
128 STATUS_FINAPP_EXTENDED CONSTANT NUMBER :=STATUS_OBSELETE;
129 STATUS_FINAPP_EXPIRED CONSTANT NUMBER :=STATUS_OBSELETE;
130 STATUS_FIN_OFFER_EXPIRED CONSTANT NUMBER :=STATUS_OBSELETE;
131 STATUS_FINANCE_OFFLINE CONSTANT NUMBER :=STATUS_OBSELETE;
132 STATUS_FINANCE_ADDINFO CONSTANT NUMBER :=STATUS_OBSELETE;
133 STATUS_FINANCE_CANCELLED CONSTANT NUMBER :=STATUS_OBSELETE;
134 STATUS_FIN_BUYER_ACCEPT CONSTANT NUMBER :=STATUS_OBSELETE;
135 STATUS_FIN_BUYER_DECLINE CONSTANT NUMBER :=STATUS_OBSELETE;
136 STATUS_LENDER_INIT_DECLINE CONSTANT NUMBER :=STATUS_OBSELETE;
137 STATUS_LENDER_DECLINE CONSTANT NUMBER :=STATUS_OBSELETE;
138 STATUS_FIN_COMPLETE CONSTANT NUMBER :=STATUS_OBSELETE;
139 STATUS_FIN_DOC_PROCESS CONSTANT NUMBER :=STATUS_OBSELETE;
140 STATUS_FIN_DOC_RECEIVED CONSTANT NUMBER :=STATUS_OBSELETE;
141 STATUS_FINAPP_PURGED CONSTANT NUMBER :=STATUS_OBSELETE;
142 
143 --------------------End of Status Codes Definition-----------------------
144 
145 
146 
147 G_EXPT_ERR         CONSTANT VARCHAR2(80) := 'FND_API.G_EXC_ERROR';
148 G_EXPT_UNEXP_ERR   CONSTANT VARCHAR2(80) := 'FND_API.G_EXC_UNEXPECTED_ERROR';
149 G_EXPT_OTR_ERR     CONSTANT VARCHAR2(80) := 'G_EXC_OTHER_ERROR';
150 
151 C_ERRCODE_PREFIX CONSTANT VARCHAR2(10) := 'IBY_';
152 C_TOKEN_CONCATENATOR CONSTANT VARCHAR2(1) := '#';
153 C_TOKEN_VAL_CONCATENATOR CONSTANT VARCHAR2(1) := '=';
154 
155 -- Yes/no values for 'boolean' parameters of
156 -- all functions in all IBY* packages
157 --
158 C_API_YES CONSTANT VARCHAR2(1) := 'Y';
159 C_API_NO CONSTANT VARCHAR2(1) := 'N';
160 
161 
162 --
163 -- to_number wrapper that catches exceptions
164 --
165 FUNCTION to_num( p_str IN VARCHAR2 ) RETURN NUMBER;
166 
167 -- Exceptions Handling Routine will do the following:
168 -- 1. Rollback to savepoint
169 -- 2. Handle expected, unexpected and other exceptions
170 -- 3. Add an error message to the API message list
171 -- 4. Return error status
172 --
173 -- The following is example of calling exception handling routines:
174 --
175 
176 PROCEDURE handle_exceptions(
177   p_api_name        IN  VARCHAR2,
178   p_pkg_name        IN  VARCHAR2,
179   p_rollback_point  IN  VARCHAR2,
180   p_exception_type  IN  VARCHAR2,
181   x_msg_count       OUT NOCOPY NUMBER,
182   x_msg_data        OUT NOCOPY VARCHAR2,
183   x_return_status   OUT NOCOPY VARCHAR2
184 );
185 
186 
187 --
188 -- Name: handleException
189 -- Args: p_err_msg => The error message associated with the exception
190 --       p_err_code => The error code generated by the exception
191 -- Notes: Scans the error message for the generated exception; if of the
192 --        form 'IBY_[0-9]*' then this is an iPayment internal error message
193 --        intended for Java which the procedure will then parse and correctly
194 --        put on the message stack
195 --
196 PROCEDURE handleException
197         (
198         p_err_msg IN VARCHAR2,
199         p_err_code IN VARCHAR2
200         );
201 
202 
203 --
204 -- Name: get_property
205 -- Args: p_name => property name
206 -- Outs: x_val => property value
207 --
208 -- Notes: gets an application-wide property
209 --
210 PROCEDURE get_property
211 	(
212 	p_name      IN  VARCHAR2,
213 	x_val       OUT NOCOPY VARCHAR2
214 	);
215 
216 --
217 -- Name: set_property
218 -- Args: p_name => property name
219 --       p_val => property value
220 -- Notes: properties are set at the site level
221 --
222 --
223 PROCEDURE set_property
224 	(
225 	p_name      IN  VARCHAR2,
226 	p_val       IN  VARCHAR2
227 	);
228 
229 --
230 -- Name: get_jtf_property
231 -- Args: p_name => property name
232 -- Outs: x_val => property value
233 --
234 -- Notes: gets an IBY property from old JTF Property manager tables.
235 --        only the first element of the value list is returned.
236 --        this function is used by ibyprupg.sql
237 --
238 FUNCTION get_jtf_property(p_name IN  VARCHAR2) RETURN VARCHAR2;
239 
240 
241 --
242 -- Name: encode64
243 -- Args: s => string to encode
244 -- Return: the given string in base64 encoding
245 --
246 FUNCTION encode64(s IN VARCHAR2) RETURN VARCHAR2;
247 
248 --
249 -- Name: decode64
250 -- Args: s => base64 encoded string
251 -- Return: the given string decoded
252 --
253 FUNCTION decode64(s IN VARCHAR2) RETURN VARCHAR2;
254 
255 
256 --
257 -- Name: get_local_nls
258 -- Args: none
259 -- Return: the local (i.e. database) characterset.
260 --
261 FUNCTION get_local_nls RETURN VARCHAR2;
262 
263 --
264 -- Name: get_nls_charset
265 -- Args: p_nls => NLSLang parameter (e.g. AMERICAN_AMERICA.US7ASCII)
266 -- Return: The character set encoding portion of the
267 --         NLSLang, e.g.:
268 --         get_nls_charset('AMERICAN_AMERICA.US7ASCII') = 'US7ASCII'
269 --
270 FUNCTION get_nls_charset( p_nls VARCHAR2 ) RETURN VARCHAR2;
271 
272 --
273 -- Name: MAKE_ASCII
274 -- Args: p_from_text => text to be converted.
275 -- Return: The text converted to the US7ASCII character set.
276 --
277 FUNCTION MAKE_ASCII(p_from_text IN VARCHAR2) RETURN VARCHAR2;
278 
279 --
280 -- Name: get_call_exec
281 -- Args: p_pkg_name => name of the package in which the procedure is defined
282 --       p_function_name => name of the function/procedure to invoke
283 --       p_params => Array of fixed parameters to the call; all positions
284 --                   should be represented, with arguments that will
285 --                   take bind variables given null values
286 -- Return: String usable by EXECUTE IMMEDIATE to invoke the
287 --         PL/SQL procedure
288 --
289 FUNCTION get_call_exec
290 (
291 p_pkg_name VARCHAR2,
292 p_function_name VARCHAR2,
293 p_params JTF_VARCHAR2_TABLE_200
294 )
295 RETURN VARCHAR2;
296 
297 --
298 -- Name: set_view_param
299 -- Args: p_name => view parameter name
300 --       p_val => view parameter value
301 --
302 -- Notes: The name-value pair is lost at the end of
303 --        the current transaction
304 --
305 PROCEDURE set_view_param
306 (
307 p_name iby_view_parameters_gt.name%TYPE,
308 p_val iby_view_parameters_gt.value%TYPE
309 );
310 
311 --
312 -- Name: get_view_param
313 -- Args: p_name => view parameter name
314 -- Return: The value of the parameter, or NULL if not defined
315 --
316 FUNCTION get_view_param( p_name iby_view_parameters_gt.name%TYPE )
317 RETURN iby_view_parameters_gt.value%TYPE;
318 
319 --
320 -- Name: check_lookup_val
321 -- Args: p_val => lookup value
322 --       p_lookup => lookup name code
323 -- Return: True if the lookup contains that value code
324 --
325 --
326 FUNCTION check_lookup_val(p_val IN VARCHAR2, p_lookup IN VARCHAR2)
327 RETURN BOOLEAN;
328 
329 --
330 -- Return: True if the party id is valid
331 FUNCTION validate_party_id(p_party_id IN hz_parties.party_id%TYPE)
332 RETURN BOOLEAN;
333 
334 --
335 -- Return: True if the application id is valid
336 FUNCTION validate_app_id( p_app_id IN fnd_application.application_id%TYPE )
337 RETURN BOOLEAN;
338 
339 --
340 -- Return: True if the territory code is valid
341 FUNCTION validate_territory
342 ( p_territory IN fnd_territories.territory_code%TYPE )
343 RETURN BOOLEAN;
344 
345 --
346 -- Return: True if the string is trivial
347 FUNCTION is_trivial(p_string VARCHAR2)
348 RETURN BOOLEAN;
349 
350 FUNCTION validate_organization(p_org_id IN iby_trxn_summaries_all.org_id%TYPE,
351                                p_org_type IN iby_trxn_summaries_all.org_type%TYPE)
352 RETURN VARCHAR2;
353 
354 
355 PROCEDURE validate_pmt_channel_code(p_instrument_type IN iby_creditcard.instrument_type%TYPE,
356                                     p_payment_channel_code IN OUT NOCOPY iby_trxn_summaries_all.payment_channel_code%TYPE,
357                                     p_valid OUT NOCOPY VARCHAR2);
358 
359 
360 
361 /*-----------------------------------------------------------------------------------------
362  |  FUNCTION     - get_psr_snapshot_count
363  |  DESCRIPTION  - This function is designed for the Payables Payment Manager
364  |                 Home Page . The function returns the total count of Payment
365  |                 Process Requests with a particular Status or a combination
366  |                 of Payment Process Request Statuses that map to a particular
367  |                 snapshot code
368  |
369  |   SNAPSHOT CODE           STATUS
370  |   -------------           ------------------------------------------------
371  |   NEED_ACTION_BY_ME       AP:
372  |                             'REVIEW', 'MISSING RATES'
373  |                            IBY:
374  |                              'INFORMATION_REQUIRED'
375  |                              'PENDING_REVIEW_DOC_VAL_ERRORS',
376  |                              'PENDING_REVIEW_PMT_VAL_ERRORS',
377  |                              'PENDING_REVIEW'
378  |
379  |   PROCESSING              AP:
380  |                             'UNSTARTED', 'SELECTING', 'CANCELING',
381  |                             'CALCULATING', 'SELECTED'
382  |                           IBY:
383  |                             'INSERTED', 'SUBMITTED',
384  |                             'ASSIGNMENT_COMPLETE','DOCUMENTS_VALIDATED',
385  |                             'RETRY_DOCUMENT_VALIDATION',
386  |                             'RETRY_PAYMENT_CREATION'
387  |
388  |   USER_TERMINATED         AP:
389  |                             'CANCELED' , 'CANCELLED NO PAYMENTS'
390  |                           IBY:
391  |                             'TERMINATED'
392  |
393  |   PROGRAM_ERRORS          IBY:
394  |                             'PENDING_REVIEW_DOC_VAL_ERRORS'
395  |                             'PENDING_REVIEW_PMT_VAL_ERRORS'
396  |
397  |   COMPLETED               IBY:
398  |                           'PAYMENTS_CREATED'
399  |
400  |   TOTAL                   COUNT(*) IN AP
401  |
402   -----------------------------------------------------------------------------------------
403  */
404 FUNCTION get_psr_snapshot_count(p_snapshot_code      IN       VARCHAR2)
405 RETURN NUMBER;
406 
407 
408  /*-----------------------------------------------------------------------------------------
409   FUNCTION    - get_payment_status_flag
410   DESCRIPTION - This function returns the status w.r.t payments that have been
411                 created in IBY for this Payment Process Request(payment_service_request_id)
412   ------------------------------------------------------------------------------------------
413  */
414 
415 FUNCTION get_payment_status_flag(p_psr_id      IN         NUMBER)
416 RETURN VARCHAR2;
417 
418 
419 /*-----------------------------------------------------------------------------------------
420   FUNCTION    - get_psr_status
421   DESCRIPTION - This function returns the status w.r.t payments that have been
422                 created in IBY for this Payment Process Request(payment_service_request_id)
423 
424  ------------------------------------------------------------------------------------------
425  */
426 FUNCTION get_psr_status(p_psr_id      IN         NUMBER,
427                         p_psr_status  IN         VARCHAR2)
428 RETURN VARCHAR2;
429 
430 /* Bug Number: 7279395
431  * This procedure is used to initialize the table type variable
432  * g_psr_table.
433  * The pages which are accessing the functions get_psr_status and
434  * get_payment_status_flag should take the responsibility of initializing
435  * g_psr_table by calling this procedure.
436  */
437 PROCEDURE initialize;
438 
439 Function check_user_access(p_pay_instruction_id IN Number) RETURN VARCHAR2;
440 
441 
442 END IBY_UTILITY_PVT;