1 PACKAGE ZX_TPI_SERVICES_PKG AS
2 /* $Header: zxiftpisrvcpkgs.pls 120.13 2006/09/06 18:04:09 svaze ship $ */
3 /* ======================================================================*
4 | Global Data Types |
5 * ======================================================================*/
6
7 /* Bug 5515283: To determine if provider is applicable (get_service_subscriber procedure) for a given regime,
8 we are currently looping over the detail tax lines since it returns the regimes applicable
9 for a transaction line. In order to avoid unwanted multiple calls to the procedure for same regime
10 we are storing hit regimes in a temporary structure*/
11 TYPE tax_regime_prvdr_rec_type is record(
12 srvc_provider_id zx_srvc_subscriptions.SRVC_PROVIDER_ID%type
13 );
14 TYPE tax_regime_tmp_tbl_type is table of tax_regime_prvdr_rec_type index by BINARY_INTEGER;
15 tax_regime_tmp_tbl tax_regime_tmp_tbl_type;
16
17
18 /* ==============================================*
19 | Procedure definition |
20 * ==============================================*/
21
22 PROCEDURE popl_pvrdr_info_tax_reg_tbl (
23 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
24 p_trx_line_index IN BINARY_INTEGER,
25 x_return_status OUT NOCOPY VARCHAR2
26 ) ;
27
28 PROCEDURE derive_ext_attrs (
29 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
30 p_tax_regime_code IN VARCHAR2,
31 p_provider_id IN NUMBER,
32 p_service_type_code IN VARCHAR2,
33 x_return_status OUT NOCOPY VARCHAR2
34 );
35
36 PROCEDURE partner_pre_processing(
37 p_tax_regime_id IN NUMBER,
38 p_tax_regime_code IN VARCHAR2,
39 p_tax_provider_id IN NUMBER,
40 p_ptnr_processing_flag IN VARCHAR2,
41 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
42 x_return_status OUT NOCOPY VARCHAR2
43 );
44
45
46 PROCEDURE call_partner_service(
47 p_tax_regime_code IN VARCHAR2,
48 p_tax_provider_id IN NUMBER,
49 p_service_type_code IN VARCHAR2,
50 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
51 x_return_status OUT NOCOPY VARCHAR2
52 );
53
54 PROCEDURE ptnr_post_processing_calc_tax(
55 p_tax_regime_code IN VARCHAR2,
56 p_tax_provider_id IN NUMBER,
57 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
58 x_return_status OUT NOCOPY VARCHAR2
59 );
60
61 PROCEDURE ptnr_post_proc_sync_tax(
62 p_tax_regime_code IN VARCHAR2,
63 p_tax_provider_id IN NUMBER,
64 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
65 x_return_status OUT NOCOPY VARCHAR2
66 );
67
68 /* Table handler routines to insert/update/delete on zx_trx_line_app_Regimes*/
69 PROCEDURE trx_line_app_regimes_tbl_hdl(
70 p_event_class_rec IN ZX_API_PUB.event_class_rec_type,
71 p_event IN VARCHAR2,
72 p_tax_regime_code IN VARCHAR2,
73 p_provider_id IN NUMBER,
74 p_trx_line_id IN NUMBER,
75 p_trx_level_type IN VARCHAR2,
76 x_return_status OUT NOCOPY VARCHAR2
77 );
78
79
80 PROCEDURE get_service_provider (
81 p_application_id IN NUMBER,
82 p_entity_code IN VARCHAR2,
83 p_event_class_code IN VARCHAR2,
84 p_tax_regime_code IN VARCHAR2,
85 x_provider_id OUT NOCOPY NUMBER,
86 x_return_status OUT NOCOPY VARCHAR2
87 );
88
89 /*Overloaded version of above*/
90 PROCEDURE get_service_provider(
91 p_tax_regime_code IN VARCHAR2,
92 x_provider_id OUT NOCOPY NUMBER,
93 x_return_status OUT NOCOPY VARCHAR2
94 );
95
96 FUNCTION get_incl_tax_amt (
97 p_application_id IN NUMBER,
98 p_entity_code IN VARCHAR2,
99 p_event_class_code IN VARCHAR2,
100 p_trx_id IN NUMBER,
101 p_trx_line_id IN NUMBER,
102 p_trx_level_type IN VARCHAR2,
103 p_tax_provider_id IN NUMBER
104 )RETURN NUMBER;
105
106 END ZX_TPI_SERVICES_PKG;