DBA Data[Home] [Help]

PACKAGE BODY: APPS.ZX_MIGRATE_AR_TAX_DEF

Source


1 PACKAGE BODY zx_migrate_ar_tax_def AS
2 /* $Header: zxartaxdefmigb.pls 120.119.12010000.4 2009/02/05 12:16:47 srajapar ship $ */
3 
4 -- ****** PACKAGE GLOBAL VARIABLES ******
5 L_LTE_USED          VARCHAR2(1) DEFAULT NULL;
6 L_JATW_USED         VARCHAR2(1) DEFAULT NULL;
7 
8 L_MIN_START_DATE    DATE;
9 
10 l_multi_org_flag fnd_product_groups.multi_org_flag%type;
11 l_org_id NUMBER(15);
12 
13 
14 
15 
16 PG_DEBUG CONSTANT VARCHAR(1) DEFAULT
17                   NVL(FND_PROFILE.value('AFLOG_ENABLED'), 'N');
18 
19 -- ****** FORWARD DECLARATIONS ******
20 PROCEDURE migrate_ar_vat_tax (p_tax_id  NUMBER);
21 PROCEDURE create_zx_status (p_tax_id  NUMBER);
22 PROCEDURE create_zx_taxes (p_tax_id  NUMBER);
23 PROCEDURE create_zx_regimes (p_tax_id  NUMBER);
24 PROCEDURE migrate_fnd_lookups;
25 PROCEDURE create_tax_classifications (p_tax_id  NUMBER);
26 PROCEDURE migrate_profile;
27 PROCEDURE backward_updation; --bug4216592: activating it
28 PROCEDURE insert_tax_for_loc (p_min_start_date           DATE,
29                       p_tax_regime_code          VARCHAR2,
30                       p_seg_att_type             VARCHAR2,
31                       p_country_code             VARCHAR2,
32                       p_tax_currency_code        VARCHAR2,  -- OU partitioned
33                       p_tax_precision            VARCHAR2,  -- OU partitioned
34                       p_tax_mau                  NUMBER,    -- OU partitioned
35                       p_rounding_rule_code       VARCHAR2,  -- OU partitioned
36                       p_allow_rounding_override  VARCHAR2,  -- OU partitioned
37                       p_loc_str_id               NUMBER,    -- Bug 4225216
38                       p_tax_acct_cr_method       VARCHAR2,  -- Bug 4204464
39                       p_tax_acct_source_tax      VARCHAR2,
40                       p_tax_exmpt_cr_mthd        VARCHAR2,
41                       p_tax_exmpt_src_tax        VARCHAR2,
42                       p_compounding_precedence   NUMBER,
43                       -- Bug 4539221
44                       p_cross_curr_rate_type     VARCHAR2,
45                       -- Bug 3985196
46                       p_tax_type                 VARCHAR2,
47                       p_live_for_processing_flag VARCHAR2,
48                       p_live_for_applic_flag     VARCHAR2
49                      );
50 PROCEDURE populate_mls_tables;
51 PROCEDURE insert_tax_rate_code (p_tax_regime_code    VARCHAR2,
52                                 p_tax                VARCHAR2,
53                                 p_tax_status_code    VARCHAR2,
54                                 p_tax_rate_code      VARCHAR2,
55                                 p_content_owner_id   NUMBER,
56                                 p_org_id             NUMBER,
57                                 p_active_flag        VARCHAR2,
58                                 p_effective_from     DATE,
59                                 p_adhoc_rate_flag    VARCHAR2,
60                                 p_tax_account_ccid   NUMBER,
61                                 p_ledger_id          NUMBER);
62 
63 
64 FUNCTION  is_update_needed_for_loc_tax (p_tax_id   NUMBER,
65                                         p_tax_type VARCHAR2  DEFAULT  NULL
66                                        )  RETURN  BOOLEAN;
67 FUNCTION  is_update_needed_for_vnd_tax (p_tax_id   NUMBER,
68                                         p_tax_type VARCHAR2  DEFAULT  NULL
69                                        )  RETURN  BOOLEAN;
70 
71 PROCEDURE update_criteria_results;
72 
73 PROCEDURE stm_exmpt_excpt_flg;
74 
75 
76 -- ****** PUBLIC PROCEUDRES ******
77 /*===========================================================================+
78  | PROCEDURE
79  |    migrate_ar_tax_code_setup
80  |
81  | IN
82  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
83  |               AR Tax Codes form for synchronization.
84  |
85  | OUT
86  |
87  | DESCRIPTION
88  |     This routine is a wrapper for migration of O2C TAX SETUP.
89  |
90  | SCOPE - PUBLIC
91  |
92  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
93  |
94  | CALLED FROM
95  |
96  | NOTES
97  |
98  | MODIFICATION HISTORY
99  | 08/31/2004   Yoshimichi Konishi   Created.
100  |
101  +==========================================================================*/
102 PROCEDURE migrate_ar_tax_code_setup (p_tax_id  NUMBER) AS
103 BEGIN
104 
105 
106   arp_util_tax.debug('b: create_tax_classifications');
107   create_tax_classifications (p_tax_id);
108   arp_util_tax.debug('a: create_tax_classifications');
109 
110   arp_util_tax.debug('b: migrate_ar_vat_tax');
111   migrate_ar_vat_tax (p_tax_id);
112   arp_util_tax.debug('a: migrate_ar_vat_tax');
113 
114   /* Bug 4710118 : To Ensure that atleast one rate code gets created with default_rate_flag = 'Y' for a particular
115    Combination of regime , tax , status and Content Owner */
116 
117   update zx_rates_b_tmp rates
118   set rates.default_rate_flag = 'Y' ,
119   rates.default_flg_effective_from = rates.effective_from, --Bug 5104891
120         rates.default_flg_effective_to = rates.effective_to -- Bug 6680676
121   where rates.tax_rate_code in ( select rates1.tax_rate_code from zx_rates_b rates1
122             where rates.tax_regime_code = rates1.tax_regime_code
123             and rates.tax = rates1.tax
124             and rates.tax_status_code = rates1.tax_status_code
125             and rates.content_owner_id = rates1.content_owner_id
126             and rates1.record_type_code = 'MIGRATED'
127             and rates1.rate_type_code <> 'RECOVERY'
128                               and sysdate between rates1.effective_from
129             and nvl(rates1.effective_to,sysdate)
130             and rownum = 1)
131   /* Not Exists is to prevent the default_rate_flag to be updated to 'Y' for 2 rates under the same combination of
132   regime,tax,status and Content owner */
133 
134   and not exists (select 1 from zx_rates_b rates2
135              where rates2.tax_regime_code = rates.tax_regime_code
136             and rates2.tax = rates.tax
137             and rates2.tax_status_code = rates.tax_status_code
138             and rates2.content_owner_id = rates.content_owner_id
139                   and rates2.rate_type_code <> 'RECOVERY'
140             and rates2.default_rate_flag = 'Y' );
141 
142 
143   arp_util_tax.debug('b: create_zx_status');
144   create_zx_status (p_tax_id);
145   arp_util_tax.debug('a: create_zx_status');
146 
147   arp_util_tax.debug('b: update_criteria_results');
148   --update_criteria_results;
149   arp_util_tax.debug('a: update_criteria_results');
150 
151   arp_util_tax.debug('b: create_zx_taxes');
152   create_zx_taxes (p_tax_id);
153   arp_util_tax.debug('a: create_zx_taxes');
154 
155   arp_util_tax.debug('b: create_zx_regimes');
156   --create_zx_regimes (p_tax_id);
157   arp_util_tax.debug('a: create_zx_regimes');
158 
159   arp_util_tax.debug('b: migrate_fnd_lookups');
160   migrate_fnd_lookups;
161   arp_util_tax.debug('a: migrate_fnd_lookups');
162 
163   arp_util_tax.debug('b: migrate_profile');
164   migrate_profile;
165   arp_util_tax.debug('a: migrate_profile');
166 
167   --Bug # 4215331
168   IF p_tax_id IS NULL THEN
169     -- backward_updation should not be called from pre-migration
170     -- synch logic. For details, refer to procedure body.
171     arp_util_tax.debug('b: backward_updation');
172     backward_updation;
173     arp_util_tax.debug('a: backward_updation');
174   END IF;
175 
176   arp_util_tax.debug('b: migrate_loc_tax_code');
177   migrate_loc_tax_code (p_tax_id);
178   arp_util_tax.debug('a: migrate_loc_tax_code');
179 
180   arp_util_tax.debug('b: migrate_vnd_tax_code');
181   migrate_vnd_tax_code (p_tax_id);
182   arp_util_tax.debug('a: migrate_vnd_tax_code');
183 
184   arp_util_tax.debug('b: stamp_exe_exc_flag');
185   stm_exmpt_excpt_flg;
186   arp_util_tax.debug('b: stamp_exe_exc_flag');
187 
188   arp_util_tax.debug('b: populate_mls_tables');
189   populate_mls_tables;
190   arp_util_tax.debug('a: populate_mls_tables');
191 
192 
193 EXCEPTION
194   WHEN OTHERS THEN
195     arp_util_tax.debug('E: migrate_ar_tax_code_setup : ' || sqlcode || ' : ' || sqlerrm);
196 
197 END;
198 
199 /*===========================================================================+
200  | PROCEDURE
201  |    get_r2r_for_ar_taxcode
202  | IN
203  |    p_tax_code: varchar2: AR Tax Code (ar_vat_tax_all_b.tax_code)
204  |    p_org_id  : number  : Org ID for AR Tax Code (ar_vat_tax_all_b.org_id)
205  | OUT
206  |    p_tax_regime_code : varchar2: Tax Regime Code derived for AR Tax Code
207  |    p_tax             : varchar2: Tax derived for AR Tax Code
208  |    p_tax_status_code : varchar2: Tax Status Code derived for AR Tax Code
209  |    p_tax_rate_code   : varchar2" Tax Rate Code derived for AR Tax Code
210  |
211  | DESCRIPTION
212  |     This routine returns Tax Regime Code, Tax, Tax Status Code, Tax Rate
213  |     Code derived for AR Tax Code during eBTax tax definition migration.
214  |
215  | SCOPE - PUBLIC
216  |
217  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
218  |
219  | CALLED FROM
220  |
221  | NOTES
222  |    Although this procedure is opened to public it should only be called from
223  |    eBTax migration related pl/sql packages after AR Tax Definition migration
224  |    has been completed successfully.
225  |
226  | MODIFICATION HISTORY
227  | 12/21/2004   Yoshimichi Konishi   Created.
228  |
229  +==========================================================================*/
230 PROCEDURE get_r2r_for_ar_taxcode
231 (p_tax_code        IN VARCHAR2,
232  p_org_id          IN NUMBER,
233  p_tax_class       IN VARCHAR2,
234  p_tax_regime_code OUT NOCOPY VARCHAR2,
235  p_tax             OUT NOCOPY VARCHAR2,
236  p_tax_status_code OUT NOCOPY VARCHAR2,
237  p_tax_rate_code   OUT NOCOPY VARCHAR2)
238 AS
239 BEGIN
240   SELECT tax_regime_code,
241          tax,
242          tax_status_code,
243          tax_rate_code
244   INTO   p_tax_regime_code,
245          p_tax,
246          p_tax_status_code,
247          p_tax_rate_code
248   FROM   zx_rates_b  zrb,
249          zx_party_tax_profile  zptp
250   WHERE
251          zptp.party_type_code = 'OU'
252   AND    zptp.party_tax_profile_id = zrb.content_owner_id
253   AND    zrb.record_type_code = 'MIGRATED'
254   AND    zrb.tax_class = 'OUTPUT'
255   AND    zptp.party_id = p_org_id
256   AND    zrb.tax_rate_code = p_tax_code
257   AND    rownum = 1;
258 
259 EXCEPTION
260   WHEN OTHERS THEN
261     NULL;
262 END;
263 
264 /*===========================================================================+
265  | PROCEDURE
266  |    migrate_loc_tax_code
267  |
268  | IN
269  |    p_tax_id  NUMBER                : NULL for initial load.
270  |                                      NOT NULL when it is called for SYNCH.
271  |    p_tax_type VARCHAR2 DEFAULT NULL: NULL for initial load.
272  |                                      NOT NULL when it is called for SYNCH.
273  |
274  | OUT
275  |
276  | DESCRIPTION
277  |     This routine creates records in zx_taxes_b/tl for tax code with tax
278  |     type = 'LOCATION' and tax code used by tax vendors.
279  |     It creates regime, tax, status.
280  |
281  | SCOPE - PUBLIC
282  |
283  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
284  |
285  | CALLED FROM
286  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
287  |        zx_upgrade_control_pkg
288  |
289  | NOTES
290  | 8/31/2004 : The logic could be distributed to create_zx_regime, create_zx_tax,
291  |             create_zx_status, migrate_ar_vat_tax after the approach is finalized.
292  | 9/28/2004 : May need a synch logic.
293  |
294  | MODIFICATION HISTORY
295  | 08/31/2004   Yoshimichi Konishi   Created.
296  | 09/28/2004   Yoshimichi Konishi   Modified ZX_TAX population logic.
297  | 10/29/2004   Yoshimichi Konishi   Bug 3961322. Modified ZX_TAX population logic.
298  | 11/05/2004   Yoshimichi Konishi   Bug 3961322. Added logic to derive parent_
299  |                                   geography_id.
300  | 01/10/2005   Yoshimichi Konishi   Reimplemented logic:
301  |                                   -Populates regimes per location structure.
302  |                                   -Populates taxes using segment qualifier.
303  |
304  +==========================================================================*/
305 PROCEDURE migrate_loc_tax_code (
306   p_tax_id    NUMBER,
307   p_tax_type  VARCHAR2  DEFAULT  NULL) AS
308   -- ****** TYPES ******
309   TYPE loc_str_rec_type IS RECORD
310   (country_code              VARCHAR2(60),
311    id_flex_num               NUMBER,
312    seg_att_type1             VARCHAR2(30),
313    seg_att_type2             VARCHAR2(30),
314    seg_att_type3             VARCHAR2(30),
315    seg_att_type4             VARCHAR2(30),
316    seg_att_type5             VARCHAR2(30),
317    seg_att_type6             VARCHAR2(30),
318    seg_att_type7             VARCHAR2(30),
319    seg_att_type8             VARCHAR2(30),
320    seg_att_type9             VARCHAR2(30),
321    seg_att_type10            VARCHAR2(30),
322    tax_currency_code         VARCHAR2(15),
323    tax_precision             NUMBER(1),
324    tax_mau                   NUMBER,
325    rounding_rule_code        VARCHAR2(30),
326    allow_rounding_override   VARCHAR2(30),
327    org_id                    NUMBER,
328    tax_account_id            NUMBER(15),
329    seg_name1                 VARCHAR2(30),  --Bug 4204464
330    seg_name2                 VARCHAR2(30),
331    seg_name3                 VARCHAR2(30),
332    seg_name4                 VARCHAR2(30),
333    seg_name5                 VARCHAR2(30),
334    seg_name6                 VARCHAR2(30),
335    seg_name7                 VARCHAR2(30),
336    seg_name8                 VARCHAR2(30),
337    seg_name9                 VARCHAR2(30),
338    seg_name10                VARCHAR2(30),
339    appl_col_name1            VARCHAR2(30),
340    appl_col_name2            VARCHAR2(30),
341    appl_col_name3            VARCHAR2(30),
342    appl_col_name4            VARCHAR2(30),
343    appl_col_name5            VARCHAR2(30),
344    appl_col_name6            VARCHAR2(30),
345    appl_col_name7            VARCHAR2(30),
346    appl_col_name8            VARCHAR2(30),
347    appl_col_name9            VARCHAR2(30),
348    appl_col_name10           VARCHAR2(30),
349    tax_acct_flag1            VARCHAR2(1),
350    tax_acct_flag2            VARCHAR2(1),
351    tax_acct_flag3            VARCHAR2(1),
352    tax_acct_flag4            VARCHAR2(1),
353    tax_acct_flag5            VARCHAR2(1),
354    tax_acct_flag6            VARCHAR2(1),
355    tax_acct_flag7            VARCHAR2(1),
356    tax_acct_flag8            VARCHAR2(1),
357    tax_acct_flag9            VARCHAR2(1),
358    tax_acct_flag10           VARCHAR2(1),
359    exempt_flag1              VARCHAR2(1),
360    exempt_flag2              VARCHAR2(1),
364    exempt_flag6              VARCHAR2(1),
361    exempt_flag3              VARCHAR2(1),
362    exempt_flag4              VARCHAR2(1),
363    exempt_flag5              VARCHAR2(1),
365    exempt_flag7              VARCHAR2(1),
366    exempt_flag8              VARCHAR2(1),
367    exempt_flag9              VARCHAR2(1),
368    exempt_flag10             VARCHAR2(1),
369    tax_acct_src_tax          VARCHAR2(30),
370    exmpt_src_tax             VARCHAR2(30),
371    tax_acc_src_str           VARCHAR2(30),
372    exmpt_src_str             VARCHAR2(30),
373    -- Bug 4539221
374    cross_curr_rate_type      VARCHAR2(30)
375   );
376   TYPE denorm_tbl_type IS TABLE OF loc_str_rec_type INDEX BY BINARY_INTEGER;
377   TYPE v15_tbl_type    IS TABLE OF VARCHAR2(15) INDEX BY BINARY_INTEGER;
378   TYPE num1_tbl_type   IS TABLE OF NUMBER(1) INDEX BY BINARY_INTEGER;
379   TYPE num_tbl_type    IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
380 
381   -- ****** VARIABLES ******
382   loc_str_rec                loc_str_rec_type;
383   null_loc_str_rec           loc_str_rec_type;
384   denorm_tbl                 denorm_tbl_type;
385   denorm_err_tbl             denorm_tbl_type;
386   tax_currency_code_tbl      v15_tbl_type;
387   tax_precision_tbl          num1_tbl_type;
388   tax_mau_tbl                num_tbl_type;
389   cnt                        PLS_INTEGER;
390   i                          PLS_INTEGER;
391   d                          PLS_INTEGER;
392   l_temp_id_flex_num         fnd_id_flex_segments.id_flex_num%TYPE; --NUMBER;
393   l_temp_seg_num             fnd_id_flex_segments.segment_num%TYPE; --NUMBER(15)
394   l_temp_seg_att_type        fnd_segment_attribute_values.segment_attribute_type%TYPE; --VARCHAR2(30)
395   l_temp_tax_currency_code   ar_system_parameters_all.tax_currency_code%TYPE;  --VARCHAR2(15)
396   l_temp_tax_precision       ar_system_parameters_all.tax_precision%TYPE;      --NUMBER(1)
397   l_temp_tax_mau             ar_system_parameters_all.tax_minimum_accountable_unit%TYPE; --NUMBER
398   l_temp_country_code        ar_system_parameters_all.default_country%TYPE; --VARCHAR2(60)
399   l_temp_org_id              ar_system_parameters_all.org_id%TYPE;          --NUMBER(15)
400   l_temp_rounding_rule_code  ar_system_parameters_all.tax_rounding_rule%TYPE; --VARCHAR2(30)
401   l_temp_tax_invoice_print   ar_system_parameters_all.tax_invoice_print%TYPE; --VARCHAR2(30)
402   l_temp_allow_rounding_override   ar_system_parameters_all.tax_rounding_allow_override%TYPE; --VARCHAR2(30)
403   --l_temp_tax_account_id           ar_vat_tax_all_b.tax_account_id%TYPE;  --NUMBER(15)
404   l_temp_seg_name            VARCHAR2(30);   --Bug 4204464
405   l_temp_appl_col_name       VARCHAR2(30);
406 
407   l_min_start_date           DATE;
408   l_tax_regime_name          zx_regimes_tl.tax_regime_name%TYPE; --VARCHAR2(30)
409   l_tax_regime_code          zx_regimes_b.tax_regime_code%TYPE;  --VARCHAR2(80)
410   l_count                    PLS_INTEGER;  --Bug 4204464
411   l_tax_acct_cr_method       VARCHAR2(30);
412   l_tax_acct_source_tax      VARCHAR2(30);
413   l_tax_exmpt_cr_mthd  VARCHAR2(30);
414   l_tax_exmpt_src_tax  VARCHAR2(30);
415   l_temp_string              VARCHAR2(10);
416   l_pos                      PLS_INTEGER;
417 
418   l_tax_acct_src_str         VARCHAR2(30);
419   l_exmpt_src_str            VARCHAR2(30);
420 
421   -- ****** CURSORS ******
422   CURSOR loc_str_cur IS
423   SELECT  DISTINCT
424           segment.id_flex_num                id_flex_num,
425           asp.default_country                default_country,
426           segment.segment_num                seg_num,
427           qual.segment_attribute_type        seg_att_type,
428           decode(l_multi_org_flag,'N',l_org_id,asp.org_id) org_id,
429           gsob.currency_code
430                                              tax_currency_code,
431           asp.tax_precision                  tax_precision,
432           asp.tax_minimum_accountable_unit   tax_mau,
433           asp.tax_rounding_rule              rounding_rule_code,
434           asp.tax_rounding_allow_override    allow_rounding_override,
435           segment.segment_name               seg_name,
436           segment.application_column_name    appl_col_name,
437           -- Bug 4539221
438     -- Bug 6006519/5654551, 'User' is not a valid exchange rate type
439           --decode(asp.cross_currency_rate_type,'User','Corporate',asp.cross_currency_rate_type)       cross_curr_rate_type
440           NULL             cross_curr_rate_type
441   FROM    fnd_id_flex_structures         str,
442           fnd_id_flex_segments           segment,
443     fnd_segment_attribute_values   qual,
444     ar_system_parameters_all       asp,
445     ar_vat_tax_all_b               avt,
446           gl_sets_of_books               gsob
447   WHERE   str.id_flex_code = 'RLOC'
448   AND     str.application_id = 222
449   AND     str.application_id = segment.application_id
450   AND     str.id_flex_num = segment.id_flex_num
451   AND     str.id_flex_code = segment.id_flex_code
452   AND     segment.application_id = 222
453   AND     segment.id_flex_code = 'RLOC'
454   AND     segment.application_id= qual.application_id
455   AND     segment.id_flex_code = qual.id_flex_code
456   AND     segment.id_flex_num = qual.id_flex_num
457   AND     segment.application_column_name = qual.application_column_name
458   AND     segment.enabled_flag = 'Y'
459   AND     qual.attribute_value = 'Y'
460   AND     qual.segment_attribute_type NOT IN ('EXEMPT_LEVEL', 'TAX_ACCOUNT')
461   AND     asp.location_structure_id = str.id_flex_num
465   AND     asp.set_of_books_id = gsob.set_of_books_id
462   AND     decode(l_multi_org_flag,'N',l_org_id,avt.org_id) = decode(l_multi_org_flag,'N',l_org_id,asp.org_id)
463   AND     avt.tax_type = 'LOCATION'
464   AND     asp.tax_database_view_set IN ('O', '_V', '_A')
466   ORDER   BY 1,2,3,4,5;
467 
468 /*
469   **
470   ** This procedure populates data in regime to rate as follows:
471   **
472   ** 1. One regime is created for one location structure.
473   ** 2. Segment qualifiers are used to create taxes.
474   ** 3. In addition to that one tax name 'LOCATION' is created for each OU under a regime.
475   ** 4. Each tax has status named 'STANDARD'.
476   ** 5. Rate code is created from AR tax codes with  tax type 'LOCATION' for 'LOCATION' tax
477   **    but not for taxes created from segment qualifiers.
478   ** 6. Rates for segument qualifiers taxes is created as part of jurisdiction migration.
479   **
480   **
481   ** Code naming convention:
482   **
483   ** REGIME CODE  : Country Code || '-SALES-TAX-' || location structure id
484   ** REGIME NAME  : Country Code || '-SALES-TAX-' || Qualifier1 ||'-'|| Qualifier2..
485   ** TAX (for qualifier)          : Location segument qualifiers (ie. CITY, COUNTY..)
486   ** TAX (for location tax code)  : 'LOCATION'
487   ** STATUS CODE                  : STANDARD
488   ** RATE (for location tax code) : Derived from ar_vat_tax_all_b.tax_code
489   **
490   ** i.e.
491   **
492   ** REGIME            TAX       STATUS          RATES
493   ** US-SALES-TAX-123  CITY      STANDARD   NA (zx_migrate_ar_tax_def does not create it)
494   ** US-SALES-TAX-123  COUNTY    STANDARD   NA (zx_migrate_ar_tax_def does not create it)
495   ** US-SALES-TAX-123  STATE     STANDARD   NA (zx_migrate_ar_tax_def does not create it)
496   ** US-SALES-TAX-123  LOCATION  STANDARD   Location
497   **
498   **
499   **
500   ** Cursor loc_str_cur_rec selects as records as follows:
501   **
502   **  str country num qualifier org_id tax_currency tax_precision tax_mau
503   **  101 US      1   CITY      200    USD          2             .2
504   **  101 US      1   CITY      400    JPY          3             .1
505   **  101 US      1   CITY      500    THB          2             .2
506   **  >>101 UK      1   CITY      600    GBP          2             .1<<It shouldn't happen due to order by.
507   **  101 US      2   COUNTY    200    USD          2             .2
508   **  101 US      2   COUNTY    400    JPY          3             .1
509   **  101 US      2   COUNTY    500    THB          2             .2
510   **  101 UK      1   CITY      600    GBP          2             .1
511   **  101 UK      2   COUNTY    600    GBP          2             .1
512   **
513   **
514   ** The program takes records above and denormalizes them in pl/sql table (denorm_tbl).
515   **
516   ** str country  seg1  seg2    seg3 ..   org_id  currency
517   ** 101 US       CITY  COUNTY  STATE     200     USD
518   ** 200 US       CITY  COUNTY  STATE     300     USD
519   **
520   **
521   ** Records in denorm_tbl is used to insert records in zx_regimes_b and zx_taxes_b.
522   ** The program creates one regime record for each location structure.
523   ** The program creates as many tax records s as the number of segments in a location structure.
524   **
525   ** If same structure is shared among different OUs
526   ** then information on lowest org_id is used to create regime and tax.
527   ** Information in other OU is stored in pl/sql table (denorm_err_tbl) temporarily.
528   **
529   **
530   **
531   **
532   */
533 
534   -- Bug 4204464: Check TAX_ACCOUNT
535   CURSOR chk_tax_acct_cur (p_flex_num        NUMBER,
536                            p_appl_col_name   VARCHAR2) IS
537   SELECT  count(attribute_value)   l_count
538   FROM    fnd_segment_attribute_values  fsav
539   WHERE   fsav.application_id = 222
540   AND     fsav.id_flex_code = 'RLOC'
541   AND     fsav.id_flex_num = p_flex_num
542   AND     fsav.application_column_name = p_appl_col_name
543   AND     fsav.segment_attribute_type = 'TAX_ACCOUNT'
544   AND     fsav.attribute_value = 'Y';
545 
546   CURSOR chk_exemptions_cur (p_flex_num        NUMBER,
547                             p_appl_col_name   VARCHAR2) IS
548   SELECT  count(attribute_value)   l_count
549   FROM    fnd_segment_attribute_values  fsav
550   WHERE   fsav.application_id = 222
551   AND     fsav.id_flex_code = 'RLOC'
552   AND     fsav.id_flex_num = p_flex_num
553   AND     fsav.application_column_name = p_appl_col_name
554   AND     fsav.segment_attribute_type = 'EXEMPT_LEVEL'
555   AND     fsav.attribute_value = 'Y';
556 
557 -- ***** MAIN PROCESS *****
558 BEGIN
559 IF is_update_needed_for_loc_tax(p_tax_id) THEN
560   i := 1;
561   d := 1;
562   FOR loc_str_cur_rec IN loc_str_cur LOOP
563     IF loc_str_cur%ROWCOUNT = 1 THEN
564       loc_str_rec.country_code      := loc_str_cur_rec.default_country;
565       loc_str_rec.id_flex_num       := loc_str_cur_rec.id_flex_num;
566       loc_str_rec.seg_att_type1     := loc_str_cur_rec.seg_att_type;
567       loc_str_rec.tax_currency_code := loc_str_cur_rec.tax_currency_code;
568       loc_str_rec.tax_precision     := loc_str_cur_rec.tax_precision;
569       loc_str_rec.tax_mau           := loc_str_cur_rec.tax_mau;
570       loc_str_rec.rounding_rule_code      := loc_str_cur_rec.rounding_rule_code;
571       loc_str_rec.allow_rounding_override := loc_str_cur_rec.allow_rounding_override;
575       loc_str_rec.appl_col_name1      := loc_str_cur_rec.appl_col_name;
572       loc_str_rec.org_id            := loc_str_cur_rec.org_id;
573       --loc_str_rec.tax_account_id    := loc_str_cur_rec.tax_account_id;
574       loc_str_rec.seg_name1           := loc_str_cur_rec.seg_name;
576 
577       -- Cursor chk_tax_acct_cur fetches one row
578       FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
579                                                 loc_str_rec.appl_col_name1) LOOP
580         IF chk_tax_acct_rec.l_count > 0 THEN
581            loc_str_rec.tax_acct_flag1 := 'Y';
582         ELSE
583            loc_str_rec.tax_acct_flag1 := 'N';
584         END IF;
585       END LOOP;
586 
587       -- Cursor chk_exmptions_cur fetches one row
588       FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
589                                                     loc_str_rec.appl_col_name1) LOOP
590         IF chk_exemptions_rec.l_count > 0 THEN
591            loc_str_rec.exempt_flag1 := 'Y';
592         ELSE
593            loc_str_rec.exempt_flag1 := 'N';
594         END IF;
595       END LOOP;
596 
597       l_temp_id_flex_num            := loc_str_cur_rec.id_flex_num;
598       l_temp_country_code           := loc_str_cur_rec.default_country;
599       l_temp_org_id                 := loc_str_cur_rec.org_id;
600       l_temp_seg_num                := loc_str_cur_rec.seg_num;
601       l_temp_seg_att_type           := loc_str_cur_rec.seg_att_type;
602       l_temp_tax_currency_code      := loc_str_cur_rec.tax_currency_code;
603       l_temp_tax_precision          := loc_str_cur_rec.tax_precision;
604       l_temp_tax_mau                := loc_str_cur_rec.tax_mau;
605       l_temp_rounding_rule_code      := loc_str_cur_rec.rounding_rule_code;
606       l_temp_allow_rounding_override := loc_str_cur_rec.allow_rounding_override;
607       --l_temp_tax_account_id          := loc_str_cur_rec.tax_account_id;
608       l_temp_seg_name                  := loc_str_cur_rec.seg_name;
609       l_temp_appl_col_name             := loc_str_cur_rec.appl_col_name;
610 
611       cnt := 1; --Counter for seg_att_type
612     ELSE
613       IF l_temp_id_flex_num = loc_str_cur_rec.id_flex_num AND
614          l_temp_country_code = loc_str_cur_rec.default_country THEN
615         IF l_temp_seg_num <> loc_str_cur_rec.seg_num THEN
616      cnt := cnt + 1;
617     IF cnt = 2 THEN
618       loc_str_rec.seg_att_type2 := loc_str_cur_rec.seg_att_type;
619             loc_str_rec.seg_name2     := loc_str_cur_rec.seg_name;
620             loc_str_rec.appl_col_name2 := loc_str_cur_rec.appl_col_name;
621 
622             -- Cursor chk_tax_acct_cur fetches one row
623             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
624                                                       loc_str_rec.appl_col_name2) LOOP
625               IF chk_tax_acct_rec.l_count > 0 THEN
626                 loc_str_rec.tax_acct_flag2 := 'Y';
627               ELSE
628                 loc_str_rec.tax_acct_flag2 := 'N';
629               END IF;
630             END LOOP;
631 
632             -- Cursor chk_exmptions_cur fetches one row
633             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
634                                                           loc_str_rec.appl_col_name2) LOOP
635               IF chk_exemptions_rec.l_count > 0 THEN
636                 loc_str_rec.exempt_flag2 := 'Y';
637               ELSE
638                  loc_str_rec.exempt_flag2 := 'N';
639               END IF;
640             END LOOP;
641 
642     ELSIF cnt = 3 THEN
643       loc_str_rec.seg_att_type3 := loc_str_cur_rec.seg_att_type;
644             loc_str_rec.seg_name3     := loc_str_cur_rec.seg_name;
645             loc_str_rec.appl_col_name3 := loc_str_cur_rec.appl_col_name;
646 
647             -- Cursor chk_tax_acct_cur fetches one row
648             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
649                                                       loc_str_rec.appl_col_name3) LOOP
650               IF chk_tax_acct_rec.l_count > 0 THEN
651                 loc_str_rec.tax_acct_flag3 := 'Y';
652               ELSE
653                 loc_str_rec.tax_acct_flag3 := 'N';
654               END IF;
655             END LOOP;
656 
657             -- Cursor chk_exmptions_cur fetches one row
658             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
659                                                           loc_str_rec.appl_col_name3) LOOP
660               IF chk_exemptions_rec.l_count > 0 THEN
661                 loc_str_rec.exempt_flag3 := 'Y';
662               ELSE
663                  loc_str_rec.exempt_flag3 := 'N';
664               END IF;
665             END LOOP;
666 
667     ELSIF cnt = 4 THEN
668       loc_str_rec.seg_att_type4 := loc_str_cur_rec.seg_att_type;
669             loc_str_rec.seg_name4     := loc_str_cur_rec.seg_name;
670             loc_str_rec.appl_col_name4 := loc_str_cur_rec.appl_col_name;
671 
672             -- Cursor chk_tax_acct_cur fetches one row
673             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
674                                                       loc_str_rec.appl_col_name4) LOOP
675               IF chk_tax_acct_rec.l_count > 0 THEN
676                 loc_str_rec.tax_acct_flag4 := 'Y';
677               ELSE
678                 loc_str_rec.tax_acct_flag4 := 'N';
682             -- Cursor chk_exmptions_cur fetches one row
679               END IF;
680             END LOOP;
681 
683             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
684                                                           loc_str_rec.appl_col_name4) LOOP
685               IF chk_exemptions_rec.l_count > 0 THEN
686                 loc_str_rec.exempt_flag4 := 'Y';
687               ELSE
688                 loc_str_rec.exempt_flag4 := 'N';
689               END IF;
690             END LOOP;
691 
692     ELSIF cnt = 5 THEN
693       loc_str_rec.seg_att_type5 := loc_str_cur_rec.seg_att_type;
694             loc_str_rec.seg_name5     := loc_str_cur_rec.seg_name;
695             loc_str_rec.appl_col_name5 := loc_str_cur_rec.appl_col_name;
696 
697             -- Cursor chk_tax_acct_cur fetches one row
698             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
699                                                       loc_str_rec.appl_col_name5) LOOP
700               IF chk_tax_acct_rec.l_count > 0 THEN
701                 loc_str_rec.tax_acct_flag5 := 'Y';
702               ELSE
703                 loc_str_rec.tax_acct_flag5 := 'N';
704               END IF;
705             END LOOP;
706 
707             -- Cursor chk_exmptions_cur fetches one row
708             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
709                                                           loc_str_rec.appl_col_name5) LOOP
710               IF chk_exemptions_rec.l_count > 0 THEN
711                 loc_str_rec.exempt_flag5 := 'Y';
712               ELSE
713                  loc_str_rec.exempt_flag5 := 'N';
714               END IF;
715             END LOOP;
716     ELSIF cnt = 6 THEN
717       loc_str_rec.seg_att_type6 := loc_str_cur_rec.seg_att_type;
718             loc_str_rec.seg_name6     := loc_str_cur_rec.seg_name;
719             loc_str_rec.appl_col_name6 := loc_str_cur_rec.appl_col_name;
720 
721             -- Cursor chk_tax_acct_cur fetches one row
722             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
723                                                       loc_str_rec.appl_col_name6) LOOP
724               IF chk_tax_acct_rec.l_count > 0 THEN
725                 loc_str_rec.tax_acct_flag6 := 'Y';
726               ELSE
727                 loc_str_rec.tax_acct_flag6 := 'N';
728               END IF;
729             END LOOP;
730 
731             -- Cursor chk_exmptions_cur fetches one row
732             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
733                                                           loc_str_rec.appl_col_name6) LOOP
734               IF chk_exemptions_rec.l_count > 0 THEN
735                 loc_str_rec.exempt_flag6 := 'Y';
736               ELSE
737                  loc_str_rec.exempt_flag6 := 'N';
738               END IF;
739             END LOOP;
740 
741     ELSIF cnt = 7 THEN
742       loc_str_rec.seg_att_type7 := loc_str_cur_rec.seg_att_type;
743             loc_str_rec.seg_name7     := loc_str_cur_rec.seg_name;
744             loc_str_rec.appl_col_name7 := loc_str_cur_rec.appl_col_name;
745 
746             -- Cursor chk_tax_acct_cur fetches one row
747             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
748                                                       loc_str_rec.appl_col_name7) LOOP
749               IF chk_tax_acct_rec.l_count > 0 THEN
750                 loc_str_rec.tax_acct_flag7 := 'Y';
751               ELSE
752                 loc_str_rec.tax_acct_flag7 := 'N';
753               END IF;
754             END LOOP;
755 
756             -- Cursor chk_exmptions_cur fetches one row
757             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
758                                                           loc_str_rec.appl_col_name7) LOOP
759               IF chk_exemptions_rec.l_count > 0 THEN
760                 loc_str_rec.exempt_flag7 := 'Y';
761               ELSE
762                  loc_str_rec.exempt_flag7 := 'N';
763               END IF;
764             END LOOP;
765     ELSIF cnt = 8 THEN
766       loc_str_rec.seg_att_type8 := loc_str_cur_rec.seg_att_type;
767             loc_str_rec.seg_name8     := loc_str_cur_rec.seg_name;
768             loc_str_rec.appl_col_name8 := loc_str_cur_rec.appl_col_name;
769 
770             -- Cursor chk_tax_acct_cur fetches one row
771             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
772                                                       loc_str_rec.appl_col_name8) LOOP
773               IF chk_tax_acct_rec.l_count > 0 THEN
774                 loc_str_rec.tax_acct_flag8 := 'Y';
775               ELSE
776                 loc_str_rec.tax_acct_flag8 := 'N';
777               END IF;
778             END LOOP;
779 
780             -- Cursor chk_exmptions_cur fetches one row
784                 loc_str_rec.exempt_flag8 := 'Y';
781             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
782                                                           loc_str_rec.appl_col_name8) LOOP
783               IF chk_exemptions_rec.l_count > 0 THEN
785               ELSE
786                  loc_str_rec.exempt_flag8 := 'N';
787               END IF;
788             END LOOP;
789 
790     ELSIF cnt = 9 THEN
791       loc_str_rec.seg_att_type9 := loc_str_cur_rec.seg_att_type;
792             loc_str_rec.seg_name9     := loc_str_cur_rec.seg_name;
793             loc_str_rec.appl_col_name9 := loc_str_cur_rec.appl_col_name;
794 
795             -- Cursor chk_tax_acct_cur fetches one row
796             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
797                                                       loc_str_rec.appl_col_name9) LOOP
798               IF chk_tax_acct_rec.l_count > 0 THEN
799                 loc_str_rec.tax_acct_flag9 := 'Y';
800               ELSE
801                 loc_str_rec.tax_acct_flag9 := 'N';
802               END IF;
803             END LOOP;
804 
805             -- Cursor chk_eemptions_cur fetches one row
806             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
807                                                           loc_str_rec.appl_col_name9) LOOP
808               IF chk_exemptions_rec.l_count > 0 THEN
809                 loc_str_rec.exempt_flag9 := 'Y';
810               ELSE
811                  loc_str_rec.exempt_flag9 := 'N';
812               END IF;
813             END LOOP;
814 
815     ELSIF cnt = 10 THEN
816       loc_str_rec.seg_att_type10 := loc_str_cur_rec.seg_att_type;
817             loc_str_rec.seg_name10     := loc_str_cur_rec.seg_name;
818             loc_str_rec.appl_col_name10 := loc_str_cur_rec.appl_col_name;
819 
820             -- Cursor chk_tax_acct_cur fetches one row
821             FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
822                                                       loc_str_rec.appl_col_name10) LOOP
823               IF chk_tax_acct_rec.l_count > 0 THEN
824                 loc_str_rec.tax_acct_flag10 := 'Y';
825               ELSE
826                 loc_str_rec.tax_acct_flag10 := 'N';
827               END IF;
828             END LOOP;
829 
830             -- Cursor chk_eemptions_cur fetches one row
831             FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
832                                                           loc_str_rec.appl_col_name10) LOOP
833               IF chk_exemptions_rec.l_count > 0 THEN
834                 loc_str_rec.exempt_flag10 := 'Y';
835               ELSE
836                  loc_str_rec.exempt_flag10 := 'N';
837               END IF;
838             END LOOP;
839     END IF;
840 
841         ELSIF l_temp_seg_num = loc_str_cur_rec.seg_num THEN
842           IF l_temp_org_id <> loc_str_cur_rec.org_id THEN
843             -- ORGANIZATION MERGE HAPPEND --
844             /* Bug 5028254 : Commented below assignment , as the already obtained seg_att_type1 etc into loc_str_rec
845       were getting flushed because of assignment to a NULL record */
846       --loc_str_rec := null_loc_str_rec;
847             loc_str_rec.country_code      := loc_str_cur_rec.default_country;
848             loc_str_rec.id_flex_num       := loc_str_cur_rec.id_flex_num;
849             loc_str_rec.tax_currency_code := loc_str_cur_rec.tax_currency_code;
850             loc_str_rec.tax_precision     := loc_str_cur_rec.tax_precision;
851             loc_str_rec.tax_mau           := loc_str_cur_rec.tax_mau;
852             loc_str_rec.rounding_rule_code      := loc_str_cur_rec.rounding_rule_code;
853             loc_str_rec.allow_rounding_override := loc_str_cur_rec.allow_rounding_override;
854             loc_str_rec.org_id            := loc_str_cur_rec.org_id;
855             --loc_str_rec.tax_account_id    := loc_str_cur_rec.tax_account_id;
856             denorm_err_tbl(d) := loc_str_rec;
857             d := d + 1;
858           END IF;
859         END IF;
860 /* Bug 5028254 : Included the assignment of the l_temp_ variables .
861 Note :- The reassignment of the l_temp_ variables was not happening earlier while traversing within the same flexId ,
862 as a result of which the comparision is always done with values initialized from the 1st row for flexId */
863         l_temp_id_flex_num            := loc_str_cur_rec.id_flex_num;
864         l_temp_country_code           := loc_str_cur_rec.default_country;
865         l_temp_org_id                 := loc_str_cur_rec.org_id;
866         l_temp_seg_num                := loc_str_cur_rec.seg_num;
867         l_temp_seg_att_type           := loc_str_cur_rec.seg_att_type;
868         l_temp_tax_currency_code      := loc_str_cur_rec.tax_currency_code;
869         l_temp_tax_precision          := loc_str_cur_rec.tax_precision;
870         l_temp_tax_mau                := loc_str_cur_rec.tax_mau;
871         l_temp_rounding_rule_code      := loc_str_cur_rec.rounding_rule_code;
872         l_temp_allow_rounding_override := loc_str_cur_rec.allow_rounding_override;
873         --l_temp_tax_account_id          := loc_str_cur_rec.tax_account_id;
874         l_temp_seg_name                  := loc_str_cur_rec.seg_name;
875         l_temp_appl_col_name             := loc_str_cur_rec.appl_col_name;
876 
877       ELSE
878         -- Identify Account Source Tax
882                          loc_str_rec.tax_acct_flag5 || loc_str_rec.tax_acct_flag6 ||
879         l_temp_string := '';
880         l_temp_string := loc_str_rec.tax_acct_flag1 || loc_str_rec.tax_acct_flag2 ||
881                          loc_str_rec.tax_acct_flag3 || loc_str_rec.tax_acct_flag4 ||
883                          loc_str_rec.tax_acct_flag6 || loc_str_rec.tax_acct_flag7 ||
884                          loc_str_rec.tax_acct_flag8 || loc_str_rec.tax_acct_flag9 ||
885                          loc_str_rec.tax_acct_flag10;
886         loc_str_rec.tax_acc_src_str := l_temp_string;
887         l_pos := INSTR(l_temp_string, 'Y');
888 
889         IF l_pos = 1 THEN
890           loc_str_rec.tax_acct_src_tax := loc_str_rec.seg_att_type1;
891         ELSIF l_pos = 2 THEN
892           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type2;
893         ELSIF l_pos = 3 THEN
894           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type3;
895         ELSIF l_pos = 4 THEN
896           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type4;
897         ELSIF l_pos = 5 THEN
898           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type5;
899         ELSIF l_pos = 6 THEN
900           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type6;
901         ELSIF l_pos = 7 THEN
902           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type7;
903         ELSIF l_pos = 8 THEN
904           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type8;
905         ELSIF l_pos = 9 THEN
906           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type9;
907         ELSIF l_pos = 10 THEN
908           loc_str_rec.tax_acct_src_tax  := loc_str_rec.seg_att_type10;
909         END IF;
910 
911         -- Identify Exemption/Exception Source Tax
912         l_temp_string := '';
913         l_temp_string := loc_str_rec.exempt_flag1 || loc_str_rec.exempt_flag2 ||
914                          loc_str_rec.exempt_flag3 || loc_str_rec.exempt_flag4 ||
915                          loc_str_rec.exempt_flag5 || loc_str_rec.exempt_flag6 ||
916                          loc_str_rec.exempt_flag6 || loc_str_rec.exempt_flag7 ||
917                          loc_str_rec.exempt_flag8 || loc_str_rec.exempt_flag9 ||
918                          loc_str_rec.exempt_flag10;
919         loc_str_rec.exmpt_src_str := l_temp_string;
920         l_pos := INSTR(l_temp_string, 'Y');
921         IF l_pos = 1 THEN
922           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type1;
923         ELSIF l_pos = 2 THEN
924           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type2;
925         ELSIF l_pos = 3 THEN
926           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type3;
927         ELSIF l_pos = 4 THEN
928           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type4;
929         ELSIF l_pos = 5 THEN
930           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type5;
931         ELSIF l_pos = 6 THEN
932           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type6;
933         ELSIF l_pos = 7 THEN
934           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type7;
935         ELSIF l_pos = 8 THEN
936           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type8;
937         ELSIF l_pos = 9 THEN
938           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type9;
939         ELSIF l_pos = 10 THEN
940           loc_str_rec.exmpt_src_tax := loc_str_rec.seg_att_type10;
941         END IF;
942 
943         -- Populate record to PL/SQL table of records
944         denorm_tbl(i) := loc_str_rec;
945         loc_str_rec := null_loc_str_rec;
946         i := i + 1;
947 
948         loc_str_rec.country_code      := loc_str_cur_rec.default_country;
949         loc_str_rec.id_flex_num       := loc_str_cur_rec.id_flex_num;
950         loc_str_rec.seg_att_type1     := loc_str_cur_rec.seg_att_type;
951         loc_str_rec.tax_currency_code := loc_str_cur_rec.tax_currency_code;
952         loc_str_rec.tax_precision     := loc_str_cur_rec.tax_precision;
953         loc_str_rec.tax_mau           := loc_str_cur_rec.tax_mau;
954         loc_str_rec.rounding_rule_code      := loc_str_cur_rec.rounding_rule_code;
955         loc_str_rec.allow_rounding_override := loc_str_cur_rec.allow_rounding_override;
956         loc_str_rec.org_id            := loc_str_cur_rec.org_id;
957         --loc_str_rec.tax_account_id    := loc_str_cur_rec.tax_account_id;
958         loc_str_rec.seg_name1           := loc_str_cur_rec.seg_name;
959         loc_str_rec.appl_col_name1      := loc_str_cur_rec.appl_col_name;
960         -- Bug 4539221
961         loc_str_rec.cross_curr_rate_type := loc_str_cur_rec.cross_curr_rate_type;
962 
963         -- Bug 4204464 : Cursor chk_tax_acct_cur fetches one row
964         FOR chk_tax_acct_rec IN chk_tax_acct_cur (loc_str_rec.id_flex_num,
965                                                   loc_str_rec.appl_col_name1) LOOP
966           IF chk_tax_acct_rec.l_count > 0 THEN
967              loc_str_rec.tax_acct_flag1 := 'Y';
968           ELSE
969              loc_str_rec.tax_acct_flag1 := 'N';
970           END IF;
971         END LOOP;
972  -- Bug 4204464 : Cursor chk_exmptions_cur fetches one row
973         FOR chk_exemptions_rec IN chk_exemptions_cur (loc_str_rec.id_flex_num,
974                                                       loc_str_rec.appl_col_name1) LOOP
975           IF chk_exemptions_rec.l_count > 0 THEN
976              loc_str_rec.exempt_flag1 := 'Y';
977           ELSE
978              loc_str_rec.exempt_flag1 := 'N';
982         l_temp_id_flex_num            := loc_str_cur_rec.id_flex_num;
979           END IF;
980         END LOOP;
981 
983         l_temp_country_code           := loc_str_cur_rec.default_country;
984         l_temp_org_id                 := loc_str_cur_rec.org_id;
985         l_temp_seg_num                := loc_str_cur_rec.seg_num;
986         l_temp_seg_att_type           := loc_str_cur_rec.seg_att_type;
987         l_temp_tax_currency_code      := loc_str_cur_rec.tax_currency_code;
988         l_temp_tax_precision          := loc_str_cur_rec.tax_precision;
989         l_temp_tax_mau                := loc_str_cur_rec.tax_mau;
990         l_temp_rounding_rule_code      := loc_str_cur_rec.rounding_rule_code;
991         l_temp_allow_rounding_override := loc_str_cur_rec.allow_rounding_override;
992         --l_temp_tax_account_id          := loc_str_cur_rec.tax_account_id;
993         l_temp_seg_name                  := loc_str_cur_rec.seg_name;
994         l_temp_appl_col_name             := loc_str_cur_rec.appl_col_name;
995 
996         cnt := 1;
997       END IF;
998     END IF;
999   END LOOP;
1000   denorm_tbl(i) := loc_str_rec;
1001 
1002 -- ****** DEBUG ******
1003 FOR k in 1..denorm_tbl.count LOOP
1004   arp_util_tax.debug('***');
1005   arp_util_tax.debug('country_code: ' || denorm_tbl(k).country_code);
1006   arp_util_tax.debug('id_flex_num : ' || denorm_tbl(k).id_flex_num);
1007   arp_util_tax.debug('seg_att_type1: ' || denorm_tbl(k).seg_att_type1);
1008   arp_util_tax.debug('seg_att_type2: ' || denorm_tbl(k).seg_att_type2);
1009   arp_util_tax.debug('seg_att_type3: ' || denorm_tbl(k).seg_att_type3);
1010   arp_util_tax.debug('seg_att_type4: ' || denorm_tbl(k).seg_att_type4);
1011   arp_util_tax.debug('seg_att_type5: ' || denorm_tbl(k).seg_att_type5);
1012   arp_util_tax.debug('seg_att_type6: ' || denorm_tbl(k).seg_att_type6);
1013   arp_util_tax.debug('seg_att_type7: ' || denorm_tbl(k).seg_att_type7);
1014   arp_util_tax.debug('seg_att_type8: ' || denorm_tbl(k).seg_att_type8);
1015   arp_util_tax.debug('seg_att_type9: ' || denorm_tbl(k).seg_att_type9);
1016   arp_util_tax.debug('seg_att_type10: ' || denorm_tbl(k).seg_att_type10);
1017   arp_util_tax.debug('tax_curr_code : ' || denorm_tbl(k).tax_currency_code);
1018   arp_util_tax.debug('tax_precision : ' || denorm_tbl(k).tax_precision);
1019   arp_util_tax.debug('tax_man       : ' || denorm_tbl(k).tax_mau);
1020   arp_util_tax.debug('rounding_rule : ' || denorm_tbl(k).rounding_rule_code);
1021   arp_util_tax.debug('allow_rounding_over : ' || denorm_tbl(k).allow_rounding_override);
1022   arp_util_tax.debug('org_id : ' || denorm_tbl(k).org_id);
1023   arp_util_tax.debug('tax_acct_id : ' || denorm_tbl(k).tax_account_id);
1024   arp_util_tax.debug('seg_name1  : ' || denorm_tbl(k).seg_name1);
1025   arp_util_tax.debug('seg_name2  : ' || denorm_tbl(k).seg_name2);
1026   arp_util_tax.debug('seg_name3  : ' || denorm_tbl(k).seg_name3);
1027   arp_util_tax.debug('seg_name4  : ' || denorm_tbl(k).seg_name4);
1028   arp_util_tax.debug('seg_name5  : ' || denorm_tbl(k).seg_name5);
1029   arp_util_tax.debug('seg_name6  : ' || denorm_tbl(k).seg_name6);
1030   arp_util_tax.debug('seg_name7  : ' || denorm_tbl(k).seg_name7);
1031   arp_util_tax.debug('seg_name8  : ' || denorm_tbl(k).seg_name8);
1032   arp_util_tax.debug('seg_name9  : ' || denorm_tbl(k).seg_name9);
1033   arp_util_tax.debug('seg_name10 : ' || denorm_tbl(k).seg_name10);
1034   arp_util_tax.debug('appl_col_name1  : ' || denorm_tbl(k).appl_col_name1);
1035   arp_util_tax.debug('appl_col_name2  : ' || denorm_tbl(k).appl_col_name2);
1036   arp_util_tax.debug('appl_col_name3  : ' || denorm_tbl(k).appl_col_name3);
1037   arp_util_tax.debug('appl_col_name4  : ' || denorm_tbl(k).appl_col_name4);
1038   arp_util_tax.debug('appl_col_name5  : ' || denorm_tbl(k).appl_col_name5);
1039   arp_util_tax.debug('appl_col_name6  : ' || denorm_tbl(k).appl_col_name6);
1040   arp_util_tax.debug('appl_col_name7  : ' || denorm_tbl(k).appl_col_name7);
1041   arp_util_tax.debug('appl_col_name8  : ' || denorm_tbl(k).appl_col_name8);
1042   arp_util_tax.debug('appl_col_name9  : ' || denorm_tbl(k).appl_col_name9);
1043   arp_util_tax.debug('appl_col_name10  : ' || denorm_tbl(k).appl_col_name10);
1044   arp_util_tax.debug('tax_acct_src_tax : ' || denorm_tbl(k).tax_acct_src_tax);
1045   arp_util_tax.debug('exmpt_src_tax    : ' || denorm_tbl(k).exmpt_src_tax);
1046   arp_util_tax.debug('tax_acc_src_str  : ' || denorm_tbl(k).tax_acc_src_str);
1047   arp_util_tax.debug('exmpt_src_str   : ' || denorm_tbl(k).exmpt_src_str);
1048 END LOOP;
1049 arp_util_tax.debug('   ');
1050 IF denorm_err_tbl.count > 0 THEN
1051   arp_util_tax.debug('*** ORGANZATION MERGED RECORDS ***');
1052   FOR k in 1..denorm_err_tbl.count LOOP
1053     arp_util_tax.debug(denorm_err_tbl(k).country_code);
1054     arp_util_tax.debug(denorm_err_tbl(k).id_flex_num);
1055     arp_util_tax.debug(denorm_err_tbl(k).tax_currency_code);
1056     arp_util_tax.debug(denorm_err_tbl(k).tax_precision);
1057     arp_util_tax.debug(denorm_err_tbl(k).tax_mau);
1058     arp_util_tax.debug(denorm_err_tbl(k).rounding_rule_code);
1059     arp_util_tax.debug(denorm_err_tbl(k).allow_rounding_override);
1060     arp_util_tax.debug(denorm_err_tbl(k).org_id);
1061 --    arp_util_tax.debug(denorm_tbl(k).tax_account_id); -- Bug 5028254
1062   END LOOP;
1063 ELSE
1064   arp_util_tax.debug('*** NO ORGANZATION MERGED RECORDS ***');
1065 END IF;
1066 -- ****** DEBUG ******
1067 
1068  /*SELECT min(start_date)
1069   INTO   l_min_start_date
1070   FROM   ar_vat_tax_all_b
1071   WHERE  tax_type = 'LOCATION';*/
1072 
1073   l_min_start_date := to_date('01-01-1952','DD-MM-YYYY'); --Bug 5475175
1074 
1075   FOR k in 1..denorm_tbl.count LOOP
1079                          '-' || denorm_tbl(k).seg_att_type3 ||
1076     l_tax_regime_name := denorm_tbl(k).country_code || '-SALES-TAX' ||
1077                          '-' || denorm_tbl(k).seg_att_type1 ||
1078                          '-' || denorm_tbl(k).seg_att_type2 ||
1080                          '-' || denorm_tbl(k).seg_att_type4 ||
1081                          '-' || denorm_tbl(k).seg_att_type5 ||
1082                          '-' || denorm_tbl(k).seg_att_type6 ||
1083                          '-' || denorm_tbl(k).seg_att_type7 ||
1084                          '-' || denorm_tbl(k).seg_att_type8 ||
1085                          '-' || denorm_tbl(k).seg_att_type9 ||
1086                          '-' || denorm_tbl(k).seg_att_type10;
1087     l_tax_regime_name := RTRIM(l_tax_regime_name, '-');
1088     l_tax_regime_code := denorm_tbl(k).country_code || '-SALES-TAX-' || denorm_tbl(k).id_flex_num;
1089 
1090     /*
1091      * Commenting out zx_regime_b/_tl population logic for US Sales Tax Codes
1092      * It is executed at upg+2 using zx_migrate_tax_def_common.load_regimes
1093      *
1094 
1095     INSERT ALL
1096     WHEN (NOT EXISTS (SELECT 1
1097                       FROM   ZX_REGIMES_B
1098                       WHERE  TAX_REGIME_CODE = l_tax_regime_code
1099                      )
1100          ) THEN
1101     INTO ZX_REGIMES_B
1102     (
1103     TAX_REGIME_CODE                        ,
1104           PARENT_REGIME_CODE                     ,
1105     HAS_SUB_REGIME_FLAG                    ,
1106     COUNTRY_OR_GROUP_CODE                  ,
1107     COUNTRY_CODE                           ,
1108     GEOGRAPHY_TYPE                         ,
1109     EFFECTIVE_FROM                         ,
1110     EFFECTIVE_TO                           ,
1111     EXCHANGE_RATE_TYPE                     ,
1112     TAX_CURRENCY_CODE                      ,
1113     THRSHLD_GROUPING_LVL_CODE              ,
1114     ROUNDING_RULE_CODE                     ,
1115     TAX_PRECISION                          ,
1116     MINIMUM_ACCOUNTABLE_UNIT               ,
1117     TAX_STATUS_RULE_FLAG                   ,
1118     DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
1119     APPLICABILITY_RULE_FLAG                ,
1120     PLACE_OF_SUPPLY_RULE_FLAG              ,
1121     TAX_CALC_RULE_FLAG                     ,
1122     TAXABLE_BASIS_THRSHLD_FLAG             ,
1123     TAX_RATE_THRSHLD_FLAG                  ,
1124     TAX_AMT_THRSHLD_FLAG                   ,
1125     TAX_RATE_RULE_FLAG                     ,
1126     TAXABLE_BASIS_RULE_FLAG                ,
1127     DEF_INCLUSIVE_TAX_FLAG                 ,
1128     HAS_OTHER_JURISDICTIONS_FLAG           ,
1129     ALLOW_ROUNDING_OVERRIDE_FLAG           ,
1130     ALLOW_EXEMPTIONS_FLAG                  ,
1131     ALLOW_EXCEPTIONS_FLAG                  ,
1132     ALLOW_RECOVERABILITY_FLAG              ,
1133     -- RECOVERABILITY_OVERRIDE_FLAG           , Bug 3766372
1134     AUTO_PRVN_FLAG                         ,
1135     HAS_TAX_DET_DATE_RULE_FLAG             ,
1136     HAS_EXCH_RATE_DATE_RULE_FLAG           ,
1137     HAS_TAX_POINT_DATE_RULE_FLAG           ,
1138     USE_LEGAL_MSG_FLAG                     ,
1139     REGN_NUM_SAME_AS_LE_FLAG               ,
1140     DEF_REC_SETTLEMENT_OPTION_CODE         ,
1141     RECORD_TYPE_CODE                       ,
1142     ATTRIBUTE1                             ,
1143     ATTRIBUTE2                             ,
1144     ATTRIBUTE3                             ,
1145     ATTRIBUTE4                             ,
1146     ATTRIBUTE5                             ,
1147     ATTRIBUTE6                             ,
1148     ATTRIBUTE7                             ,
1149     ATTRIBUTE8                             ,
1150     ATTRIBUTE9                             ,
1151     ATTRIBUTE10                            ,
1152     ATTRIBUTE11                            ,
1153     ATTRIBUTE12                            ,
1154     ATTRIBUTE13                            ,
1155     ATTRIBUTE14                            ,
1156     ATTRIBUTE15                            ,
1157     ATTRIBUTE_CATEGORY                     ,
1158     DEF_REGISTR_PARTY_TYPE_CODE            ,
1159     REGISTRATION_TYPE_RULE_FLAG            ,
1160     TAX_INCLUSIVE_OVERRIDE_FLAG            ,
1161     REGIME_PRECEDENCE                      ,
1162     CROSS_REGIME_COMPOUNDING_FLAG          ,
1163     TAX_REGIME_ID                          ,
1164     GEOGRAPHY_ID                           ,
1165     THRSHLD_CHK_TMPLT_CODE                 ,
1166     PERIOD_SET_NAME                        ,
1167     REP_TAX_AUTHORITY_ID                   ,
1168     COLL_TAX_AUTHORITY_ID                  ,
1169     CREATED_BY                       ,
1170     CREATION_DATE                          ,
1171     LAST_UPDATED_BY                        ,
1172     LAST_UPDATE_DATE                       ,
1173     LAST_UPDATE_LOGIN                      ,
1174     REQUEST_ID                             ,
1175     PROGRAM_APPLICATION_ID                 ,
1176     PROGRAM_ID                             ,
1177     PROGRAM_LOGIN_ID                 ,
1178     OBJECT_VERSION_NUMBER
1179     )
1180     VALUES
1181     (
1182          l_tax_regime_code                       , --TAX_REGIME_CODE
1183          NULL                                    ,--PARENT_REGIME_CODE
1184    'N'                                     ,--HAS_SUB_REGIME_FLAG
1185    'COUNTRY'                               ,--COUNTRY_OR_GROUP_CODE
1189    NULL                                    ,--EFFECTIVE_TO
1186    denorm_tbl(k).country_code              ,--COUNTRY_CODE
1187    NULL                                    ,--GEOGRAPHY_TYPE
1188    l_min_start_date                          ,--EFFECTIVE_FROM
1190    NULL                                    ,--EXCHANGE_RATE_TYPE
1191    NULL                                    ,--TAX_CURRENCY_CODE
1192    NULL                                    ,--THRSHLD_GROUPING_LVL_CODE
1193    NULL                                    ,--ROUNDING_RULE_CODE
1194    NULL                                    ,--TAX_PRECISION
1195    NULL                                    ,--MINIMUM_ACCOUNTABLE_UNIT
1196    'N'                                     ,--TAX_STATUS_RULE_FLAG
1197     'SHIP_TO_BILL_TO'                      ,--DEF_PLACE_OF_SUPPLY_TYPE_CODE
1198    'N'                                     ,--APPLICABILITY_RULE_FLAG
1199    'N'                                     ,--PLACE_OF_SUPPLY_RULE_FLAG
1200    'N'                                     ,--TAX_CALC_RULE_FLAG
1201    'N'                                     ,--TAXABLE_BASIS_THRSHLD_FLAG
1202    'N'                                     ,--TAX_RATE_THRSHLD_FLAG
1203    'N'                                     ,--TAX_AMT_THRSHLD_FLAG
1204    'N'                                     ,--TAX_RATE_RULE_FLAG
1205    'N'                                     ,--TAXABLE_BASIS_RULE_FLAG
1206    'N'                                     ,--DEF_INCLUSIVE_TAX_FLAG
1207    'N'                                     ,--HAS_OTHER_JURISDICTIONS_FLAG
1208    'N'                                     ,--ALLOW_ROUNDING_OVERRIDE_FLAG
1209    'N'                                     ,--ALLOW_EXEMPTIONS_FLAG
1210    'N'                                     ,--ALLOW_EXCEPTIONS_FLAG
1211    'N'                                     ,--ALLOW_RECOVERABILITY_FLAG
1212    --'N'                                     ,--RECOVERABILITY_OVERRIDE_FLAG : Bug 3766372
1213    'N'                                     ,--AUTO_PRVN_FLAG
1214    'N'                                     ,--HAS_TAX_DET_DATE_RULE_FLAG
1215    'N'                                     ,--HAS_EXCH_RATE_DATE_RULE_FLAG
1216    'N'                                     ,--HAS_TAX_POINT_DATE_RULE_FLAG
1217    'N'                                     ,--USE_LEGAL_MSG_FLAG
1218    'N'                                     ,--REGN_NUM_SAME_AS_LE_FLAG
1219    'N'                                     ,--DEF_REC_SETTLE_OPTION_CODE
1220    'MIGRATED'                             ,--RECORD_TYPE_CODE
1221    NULL       ,
1222    NULL       ,
1223    NULL       ,
1224    NULL       ,
1225    NULL       ,
1226    NULL       ,
1227    NULL       ,
1228    NULL       ,
1229    NULL       ,
1230    NULL       ,
1231    NULL       ,
1232    NULL       ,
1233    NULL       ,
1234    NULL       ,
1235    NULL       ,
1236    NULL       ,
1237    'SHIP_TO_SITE'                         ,--DEF_REGISTR_PARTY_TYPE_CODE
1238    'N'                                    ,--REGISTRATION_TYPE_RULE_FLAG
1239    'Y'                                    ,--TAX_INCLUSIVE_OVERRIDE_FLAG
1240    NULL                                   ,--REGIME_PRECEDENCE
1241    'N'                                     ,--CROSS_REGIME_COMPOUNDING_FLAG
1242    ZX_REGIMES_B_S.NEXTVAL                 ,--TAX_REGIME_ID
1243    NULL                                   ,--GEOGRAPHY_ID
1244    NULL                                   ,--THRSHLD_CHK_TMPLT_CODE
1245    NULL                                   ,--PERIOD_SET_NAME
1246    NULL                                   ,--REP_TAX_AUTHORITY_ID
1247    NULL                                   ,--COLL_TAX_AUTHORITY_ID
1248    fnd_global.user_id                     ,
1249    SYSDATE                                ,
1250    fnd_global.user_id                     ,
1251    SYSDATE                                ,
1252    fnd_global.conc_login_id               ,
1253    fnd_global.conc_request_id             ,--Request Id
1254    fnd_global.prog_appl_id                ,--Program Application ID
1255    fnd_global.conc_program_id             ,--Program Id
1256    fnd_global.conc_login_id               , --Program Login ID
1257    1
1258     )
1259 
1260     WHEN (NOT EXISTS (SELECT 1
1261                       FROM   ZX_REGIMES_B
1262                       WHERE  TAX_REGIME_CODE = l_tax_regime_code
1263                      )
1264          ) THEN
1265     INTO ZX_REGIMES_TL
1266     (
1267        LANGUAGE                    ,
1268        SOURCE_LANG                 ,
1269        TAX_REGIME_NAME             ,
1270        CREATION_DATE               ,
1271        CREATED_BY                  ,
1272        LAST_UPDATE_DATE            ,
1273        LAST_UPDATED_BY             ,
1274        LAST_UPDATE_LOGIN           ,
1275        TAX_REGIME_ID
1276     )
1277     VALUES
1278     (
1279        userenv('LANG'),
1280        userenv('LANG'),
1281        l_tax_regime_name,
1282        SYSDATE,
1283        fnd_global.user_id       ,
1284        SYSDATE                  ,
1285        fnd_global.user_id       ,
1286        fnd_global.conc_login_id ,
1287        ZX_REGIMES_B_S.NEXTVAL
1288     )
1289     SELECT 1 FROM DUAL;
1290 
1291     *
1292     * End of commenting out zx_regimes_b/_tl population logic
1293     */
1294 
1295     -- ***** Inserting Taxes for location segnemt qualifiers *****
1296 
1297     -- Define tax_account_create_method
1298     IF denorm_tbl(k).seg_att_type1 IS NOT NULL THEN
1299 
1300       -- Check tax_account_create_method_code
1304       ELSE
1301       IF denorm_tbl(k).tax_acct_flag1 = 'Y' THEN
1302         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1303         l_tax_acct_source_tax := NULL;
1305         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1306         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1307       END IF;
1308 
1309       -- Define tax_exmpt_cr_method_code
1310       IF denorm_tbl(k).exempt_flag1 = 'Y' THEN
1311         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1312         l_tax_acct_source_tax := NULL;
1313       ELSE
1314         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1315         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1316       END IF;
1317 
1318       insert_tax_for_loc (l_min_start_date,
1319                   l_tax_regime_code,
1320                   denorm_tbl(k).seg_att_type1,
1321       denorm_tbl(k).country_code,
1322       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1323       denorm_tbl(k).tax_precision,      -- OU partitioned
1324       denorm_tbl(k).tax_mau,            -- OU partitioned
1325       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1326       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1327                   denorm_tbl(k).id_flex_num,
1328                   l_tax_acct_cr_method,
1329                   l_tax_acct_source_tax,
1330                   l_tax_exmpt_cr_mthd,
1331                   l_tax_exmpt_src_tax,
1332                   1,
1333                   denorm_tbl(k).cross_curr_rate_type,
1334                   'LOCATION',
1335                   'Y',
1336                   'Y'
1337                  );
1338     END IF;
1339 
1340     IF denorm_tbl(k).seg_att_type2 IS NOT NULL THEN
1341       -- Check tax_account_create_method_code
1342       IF denorm_tbl(k).tax_acct_flag2 = 'Y' THEN
1343         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1344         l_tax_acct_source_tax := NULL;
1345       ELSE
1346         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1347         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1348       END IF;
1349 
1350       -- Define tax_exmpt_cr_method_code
1351       IF denorm_tbl(k).exempt_flag2 = 'Y' THEN
1352         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1353         l_tax_acct_source_tax := NULL;
1354       ELSE
1355         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1356         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1357       END IF;
1358 
1359       insert_tax_for_loc (l_min_start_date,
1360       l_tax_regime_code,
1361       denorm_tbl(k).seg_att_type2,
1362       denorm_tbl(k).country_code,
1363       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1364       denorm_tbl(k).tax_precision,      -- OU partitioned
1365       denorm_tbl(k).tax_mau,            -- OU partitioned
1366       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1367       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1368                   denorm_tbl(k).id_flex_num,
1369                   l_tax_acct_cr_method,
1370                   l_tax_acct_source_tax,
1371                   l_tax_exmpt_cr_mthd,
1372                   l_tax_exmpt_src_tax,
1373                   2,
1374                   denorm_tbl(k).cross_curr_rate_type,
1375                   'LOCATION',
1376                   'Y',
1377                   'Y'
1378                  );
1379     END IF;
1380 
1381     IF denorm_tbl(k).seg_att_type3 IS NOT NULL THEN
1382       -- Check tax_account_create_method_code
1383       IF denorm_tbl(k).tax_acct_flag3 = 'Y' THEN
1384         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1385         l_tax_acct_source_tax := NULL;
1386       ELSE
1387         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1388         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1389       END IF;
1390 
1391       -- Define tax_exmpt_cr_method_code
1392       IF denorm_tbl(k).exempt_flag3 = 'Y' THEN
1393         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1394         l_tax_acct_source_tax := NULL;
1395       ELSE
1396         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1397         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1398       END IF;
1399 
1400       insert_tax_for_loc (l_min_start_date,
1401       l_tax_regime_code,
1402       denorm_tbl(k).seg_att_type3,
1403       denorm_tbl(k).country_code,
1404       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1405       denorm_tbl(k).tax_precision,      -- OU partitioned
1406       denorm_tbl(k).tax_mau,            -- OU partitioned
1407       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1408       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1409                   denorm_tbl(k).id_flex_num,
1410                   l_tax_acct_cr_method,
1411                   l_tax_acct_source_tax,
1412                   l_tax_exmpt_cr_mthd,
1413                   l_tax_exmpt_src_tax,
1414                   3,
1415                   denorm_tbl(k).cross_curr_rate_type,
1416                   'LOCATION',
1417                   'Y',
1418                   'Y'
1419                  );
1420     END IF;
1421 
1422     IF denorm_tbl(k).seg_att_type4 IS NOT NULL THEN
1423       -- Check tax_account_create_method_code
1424       IF denorm_tbl(k).tax_acct_flag4 = 'Y' THEN
1425         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1426         l_tax_acct_source_tax := NULL;
1427       ELSE
1428         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1432       -- Define tax_exmpt_cr_method_code
1429         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1430       END IF;
1431 
1433       IF denorm_tbl(k).exempt_flag4 = 'Y' THEN
1434         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1435         l_tax_acct_source_tax := NULL;
1436       ELSE
1437         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1438         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1439       END IF;
1440 
1441       insert_tax_for_loc (l_min_start_date,
1442       l_tax_regime_code,
1443       denorm_tbl(k).seg_att_type4,
1444       denorm_tbl(k).country_code,
1445       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1446       denorm_tbl(k).tax_precision,      -- OU partitioned
1447       denorm_tbl(k).tax_mau,            -- OU partitioned
1448       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1449       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1450                   denorm_tbl(k).id_flex_num,
1451                   l_tax_acct_cr_method,
1452                   l_tax_acct_source_tax,
1453                   l_tax_exmpt_cr_mthd,
1454                   l_tax_exmpt_src_tax,
1455                   4,
1456                   denorm_tbl(k).cross_curr_rate_type,
1457                   'LOCATION',
1458                   'Y',
1459                   'Y'
1460                  );
1461     END IF;
1462 
1463     IF denorm_tbl(k).seg_att_type5 IS NOT NULL THEN
1464       -- Check tax_account_create_method_code
1465       IF denorm_tbl(k).tax_acct_flag5 = 'Y' THEN
1466         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1467         l_tax_acct_source_tax := NULL;
1468       ELSE
1469         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1470         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1471       END IF;
1472 
1473       -- Define tax_exmpt_cr_method_code
1474       IF denorm_tbl(k).exempt_flag5 = 'Y' THEN
1475         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1476         l_tax_acct_source_tax := NULL;
1477       ELSE
1478         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1479         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1480       END IF;
1481 
1482       insert_tax_for_loc (l_min_start_date,
1483       l_tax_regime_code,
1484       denorm_tbl(k).seg_att_type5,
1485       denorm_tbl(k).country_code,
1486       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1487       denorm_tbl(k).tax_precision,      -- OU partitioned
1488       denorm_tbl(k).tax_mau,            -- OU partitioned
1489       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1490       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1491                   denorm_tbl(k).id_flex_num,
1492                   l_tax_acct_cr_method,
1493                   l_tax_acct_source_tax,
1494                   l_tax_exmpt_cr_mthd,
1495                   l_tax_exmpt_src_tax,
1496                   5,
1497                   denorm_tbl(k).cross_curr_rate_type,
1498                   'LOCATION',
1499                   'Y',
1500                   'Y'
1501      );
1502     END IF;
1503 
1504     IF denorm_tbl(k).seg_att_type6 IS NOT NULL THEN
1505       -- Check tax_account_create_method_code
1506       IF denorm_tbl(k).tax_acct_flag6 = 'Y' THEN
1507         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1508         l_tax_acct_source_tax := NULL;
1509       ELSE
1510         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1511         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1512       END IF;
1513 
1514       -- Define tax_exmpt_cr_method_code
1515       IF denorm_tbl(k).exempt_flag6 = 'Y' THEN
1516         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1517         l_tax_acct_source_tax := NULL;
1518       ELSE
1519         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1520         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1521       END IF;
1522       insert_tax_for_loc (l_min_start_date,
1523       l_tax_regime_code,
1524       denorm_tbl(k).seg_att_type6,
1525       denorm_tbl(k).country_code,
1526       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1527       denorm_tbl(k).tax_precision,      -- OU partitioned
1528       denorm_tbl(k).tax_mau,            -- OU partitioned
1529       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1530       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1531                   denorm_tbl(k).id_flex_num,
1532                   l_tax_acct_cr_method,
1533                   l_tax_acct_source_tax,
1534                   l_tax_exmpt_cr_mthd,
1535                   l_tax_exmpt_src_tax,
1536                   6,
1537                   denorm_tbl(k).cross_curr_rate_type,
1538                   'LOCATION',
1539                   'Y',
1540                   'Y'
1541                  );
1542     END IF;
1543 
1544     IF denorm_tbl(k).seg_att_type7 IS NOT NULL THEN
1545       -- Check tax_account_create_method_code
1546       IF denorm_tbl(k).tax_acct_flag7 = 'Y' THEN
1547         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1548         l_tax_acct_source_tax := NULL;
1549       ELSE
1550         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1551         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1552       END IF;
1553 
1554       -- Define tax_exmpt_cr_method_code
1555       IF denorm_tbl(k).exempt_flag7 = 'Y' THEN
1556         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1560         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1557         l_tax_acct_source_tax := NULL;
1558       ELSE
1559         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1561       END IF;
1562 
1563       insert_tax_for_loc (l_min_start_date,
1564       l_tax_regime_code,
1565       denorm_tbl(k).seg_att_type7,
1566       denorm_tbl(k).country_code,
1567       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1568       denorm_tbl(k).tax_precision,      -- OU partitioned
1569       denorm_tbl(k).tax_mau,            -- OU partitioned
1570       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1571       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1572                   denorm_tbl(k).id_flex_num,
1573                   l_tax_acct_cr_method,
1574                   l_tax_acct_source_tax,
1575                   l_tax_exmpt_cr_mthd,
1576                   l_tax_exmpt_src_tax,
1577                   7,
1578                   denorm_tbl(k).cross_curr_rate_type,
1579                   'LOCATION',
1580                   'Y',
1581                   'Y'
1582                  );
1583     END IF;
1584 
1585     IF denorm_tbl(k).seg_att_type8 IS NOT NULL THEN
1586       -- Check tax_account_create_method_code
1587       IF denorm_tbl(k).tax_acct_flag8 = 'Y' THEN
1588         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1589         l_tax_acct_source_tax := NULL;
1590       ELSE
1591         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1592         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1593       END IF;
1594 
1595       -- Define tax_exmpt_cr_method_code
1596       IF denorm_tbl(k).exempt_flag8 = 'Y' THEN
1597         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1598         l_tax_acct_source_tax := NULL;
1599       ELSE
1600         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1601         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1602       END IF;
1603       insert_tax_for_loc (l_min_start_date,
1604       l_tax_regime_code,
1605       denorm_tbl(k).seg_att_type8,
1606       denorm_tbl(k).country_code,
1607       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1608       denorm_tbl(k).tax_precision,      -- OU partitioned
1609       denorm_tbl(k).tax_mau,            -- OU partitioned
1610       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1611       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1612                   denorm_tbl(k).id_flex_num,
1613                   l_tax_acct_cr_method,
1614                   l_tax_acct_source_tax,
1615                   l_tax_exmpt_cr_mthd,
1616                   l_tax_exmpt_src_tax,
1617                   8,
1618                   denorm_tbl(k).cross_curr_rate_type,
1619                   'LOCATION',
1620                   'Y',
1621                   'Y'
1622                  );
1623     END IF;
1624 
1625     IF denorm_tbl(k).seg_att_type9 IS NOT NULL THEN
1626       -- Check tax_account_create_method_code
1627       IF denorm_tbl(k).tax_acct_flag9 = 'Y' THEN
1628         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1629         l_tax_acct_source_tax := NULL;
1630       ELSE
1631         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1632         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1633       END IF;
1634 
1635       -- Define tax_exmpt_cr_method_code
1636       IF denorm_tbl(k).exempt_flag9 = 'Y' THEN
1637         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1638         l_tax_acct_source_tax := NULL;
1639       ELSE
1640         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1641         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1642       END IF;
1643 
1644       insert_tax_for_loc (l_min_start_date,
1645       l_tax_regime_code,
1646       denorm_tbl(k).seg_att_type9,
1647       denorm_tbl(k).country_code,
1648       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1649       denorm_tbl(k).tax_precision,      -- OU partitioned
1650       denorm_tbl(k).tax_mau,            -- OU partitioned
1651       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1652       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1653                   denorm_tbl(k).id_flex_num,
1654                   l_tax_acct_cr_method,
1655                   l_tax_acct_source_tax,
1656                   l_tax_exmpt_cr_mthd,
1657                   l_tax_exmpt_src_tax,
1658                   9,
1659                   denorm_tbl(k).cross_curr_rate_type,
1660                   'LOCATION',
1661                   'Y',
1662                   'Y'
1663                  );
1664     END IF;
1665 
1666     IF denorm_tbl(k).seg_att_type10 IS NOT NULL THEN
1667       -- Check tax_account_create_method_code
1668       IF denorm_tbl(k).tax_acct_flag10 = 'Y' THEN
1669         l_tax_acct_cr_method := 'CREATE_ACCOUNTS';
1670         l_tax_acct_source_tax := NULL;
1671       ELSE
1672         l_tax_acct_cr_method := 'USE_ACCOUNTS';
1673         l_tax_acct_source_tax := denorm_tbl(k).tax_acct_src_tax;
1674       END IF;
1675 
1676       -- Define tax_exmpt_cr_method_code
1677       IF denorm_tbl(k).exempt_flag10 = 'Y' THEN
1678         l_tax_exmpt_cr_mthd := 'CREATE_EXEMPTIONS';
1679         l_tax_acct_source_tax := NULL;
1680       ELSE
1681         l_tax_exmpt_cr_mthd := 'USE_EXEMPTIONS';
1682         l_tax_exmpt_src_tax := denorm_tbl(k).exmpt_src_tax;
1683       END IF;
1684 
1685       insert_tax_for_loc (l_min_start_date,
1686       l_tax_regime_code,
1690       denorm_tbl(k).tax_precision,      -- OU partitioned
1687       denorm_tbl(k).seg_att_type10,
1688       denorm_tbl(k).country_code,
1689       denorm_tbl(k).tax_currency_code,  -- OU partitioned
1691       denorm_tbl(k).tax_mau,            -- OU partitioned
1692       denorm_tbl(k).rounding_rule_code, -- OU partitioned
1693       denorm_tbl(k).allow_rounding_override, -- OU partitioned
1694                   denorm_tbl(k).id_flex_num,
1695                   l_tax_acct_cr_method,
1696                   l_tax_acct_source_tax,
1697                   l_tax_exmpt_cr_mthd,
1698                   l_tax_exmpt_src_tax,
1699                   10,
1700                   denorm_tbl(k).cross_curr_rate_type,
1701                   'LOCATION',
1702                   'Y',
1703                   'Y'
1704                  );
1705     END IF;
1706 
1707   END LOOP;
1708 
1709 -- Inserting tax for LOCATION based AR Tax Codes (partition by content_owner_id)
1710 IF L_MULTI_ORG_FLAG = 'Y'
1711 THEN
1712   INSERT ALL
1713   INTO zx_taxes_b_tmp
1714   (
1715        TAX                                    ,
1716        EFFECTIVE_FROM                         ,
1717        EFFECTIVE_TO                           ,
1718        TAX_REGIME_CODE                        ,
1719        TAX_TYPE_CODE                          ,
1720        ALLOW_MANUAL_ENTRY_FLAG                ,
1721        ALLOW_TAX_OVERRIDE_FLAG                ,
1722        MIN_TXBL_BSIS_THRSHLD                  ,
1723        MAX_TXBL_BSIS_THRSHLD                  ,
1724        MIN_TAX_RATE_THRSHLD                   ,
1725        MAX_TAX_RATE_THRSHLD                   ,
1726        MIN_TAX_AMT_THRSHLD                    ,
1727        MAX_TAX_AMT_THRSHLD                    ,
1728        COMPOUNDING_PRECEDENCE                 ,
1729        PERIOD_SET_NAME                        ,
1730        EXCHANGE_RATE_TYPE                     ,
1731        TAX_CURRENCY_CODE                      ,
1732        TAX_PRECISION                          ,
1733        MINIMUM_ACCOUNTABLE_UNIT               ,
1734        ROUNDING_RULE_CODE                     ,
1735        TAX_STATUS_RULE_FLAG                   ,
1736        TAX_RATE_RULE_FLAG                     ,
1737        DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
1738        PLACE_OF_SUPPLY_RULE_FLAG              ,
1739        DIRECT_RATE_RULE_FLAG                  ,
1740        APPLICABILITY_RULE_FLAG                ,
1741        TAX_CALC_RULE_FLAG                     ,
1742        TXBL_BSIS_THRSHLD_FLAG                 ,
1743        TAX_RATE_THRSHLD_FLAG                  ,
1744        TAX_AMT_THRSHLD_FLAG                   ,
1745        TAXABLE_BASIS_RULE_FLAG                ,
1746        DEF_INCLUSIVE_TAX_FLAG                 ,
1747        THRSHLD_GROUPING_LVL_CODE              ,
1748        HAS_OTHER_JURISDICTIONS_FLAG           ,
1749        ALLOW_EXEMPTIONS_FLAG                  ,
1750        ALLOW_EXCEPTIONS_FLAG                  ,
1751        ALLOW_RECOVERABILITY_FLAG              ,
1752        DEF_TAX_CALC_FORMULA                   ,
1753        TAX_INCLUSIVE_OVERRIDE_FLAG            ,
1754        DEF_TAXABLE_BASIS_FORMULA              ,
1755        DEF_REGISTR_PARTY_TYPE_CODE            ,
1756        REGISTRATION_TYPE_RULE_FLAG            ,
1757        REPORTING_ONLY_FLAG                    ,
1758        AUTO_PRVN_FLAG                         ,
1759        LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
1760        LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
1761        HAS_DETAIL_TB_THRSHLD_FLAG             ,
1762        HAS_TAX_DET_DATE_RULE_FLAG             ,
1763        HAS_EXCH_RATE_DATE_RULE_FLAG           ,
1764        HAS_TAX_POINT_DATE_RULE_FLAG           ,
1765        PRINT_ON_INVOICE_FLAG                  ,
1766        USE_LEGAL_MSG_FLAG                     ,
1767        CALC_ONLY_FLAG                         ,
1768        PRIMARY_RECOVERY_TYPE_CODE             ,
1769        PRIMARY_REC_TYPE_RULE_FLAG             ,
1770        SECONDARY_RECOVERY_TYPE_CODE           ,
1771        SECONDARY_REC_TYPE_RULE_FLAG           ,
1772        PRIMARY_REC_RATE_DET_RULE_FLAG         ,
1773        SEC_REC_RATE_DET_RULE_FLAG             ,
1774        OFFSET_TAX_FLAG                        ,
1775        RECOVERY_RATE_OVERRIDE_FLAG            ,
1776        ZONE_GEOGRAPHY_TYPE                    ,
1777        REGN_NUM_SAME_AS_LE_FLAG               ,
1778        DEF_REC_SETTLEMENT_OPTION_CODE         ,
1779        RECORD_TYPE_CODE                       ,
1780        ALLOW_ROUNDING_OVERRIDE_FLAG           ,
1781        SOURCE_TAX_FLAG                        ,
1782        SPECIAL_INCLUSIVE_TAX_FLAG             ,
1783        ATTRIBUTE1                             ,
1784        ATTRIBUTE2                             ,
1785        ATTRIBUTE3                             ,
1786        ATTRIBUTE4                             ,
1787        ATTRIBUTE5                             ,
1788        ATTRIBUTE6                             ,
1789        ATTRIBUTE7                             ,
1790        ATTRIBUTE8                             ,
1791        ATTRIBUTE9                             ,
1792        ATTRIBUTE10                            ,
1793        ATTRIBUTE11                            ,
1794        ATTRIBUTE12                            ,
1795        ATTRIBUTE13                            ,
1796        ATTRIBUTE14                            ,
1797        ATTRIBUTE15                            ,
1798        ATTRIBUTE_CATEGORY                     ,
1799        PARENT_GEOGRAPHY_TYPE                  ,
1800        PARENT_GEOGRAPHY_ID                    ,
1801        ALLOW_MASS_CREATE_FLAG                 ,
1805        REP_TAX_AUTHORITY_ID                   ,
1802        APPLIED_AMT_HANDLING_FLAG              ,
1803        TAX_ID                                 ,
1804        CONTENT_OWNER_ID                       ,
1806        COLL_TAX_AUTHORITY_ID                  ,
1807        THRSHLD_CHK_TMPLT_CODE                 ,
1808        DEF_PRIMARY_REC_RATE_CODE              ,
1809        DEF_SECONDARY_REC_RATE_CODE            ,
1810        CREATED_BY                           ,
1811        CREATION_DATE                          ,
1812        LAST_UPDATED_BY                        ,
1813        LAST_UPDATE_DATE                       ,
1814        LAST_UPDATE_LOGIN                      ,
1815        REQUEST_ID                             ,
1816        PROGRAM_APPLICATION_ID                 ,
1817        PROGRAM_ID                             ,
1818        PROGRAM_LOGIN_ID                       ,
1819        OVERRIDE_GEOGRAPHY_TYPE                , --Bug 4163204
1820        OBJECT_VERSION_NUMBER                ,
1821        TAX_ACCOUNT_CREATE_METHOD_CODE         , --Bug 4204464
1822        TAX_ACCOUNT_SOURCE_TAX                 , --Bug 4204464
1823        TAX_EXMPT_CR_METHOD_CODE         , --Bug 4204464, 4295147
1824        TAX_EXMPT_SOURCE_TAX             ,
1825        APPLICABLE_BY_DEFAULT_FLAG         --Bug 4905771
1826   )
1827   VALUES
1828   (
1829        L_TAX                                    ,
1830        L_EFFECTIVE_FROM                         ,
1831        L_EFFECTIVE_TO                           ,
1832        L_TAX_REGIME_CODE                        ,
1833        L_TAX_TYPE_CODE                          ,
1834        L_ALLOW_MANUAL_ENTRY_FLAG                ,
1835        L_ALLOW_TAX_OVERRIDE_FLAG                ,
1836        L_MIN_TXBL_BSIS_THRSHLD                  ,
1837        L_MAX_TXBL_BSIS_THRSHLD                  ,
1838        L_MIN_TAX_RATE_THRSHLD                   ,
1839        L_MAX_TAX_RATE_THRSHLD                   ,
1840        L_MIN_TAX_AMT_THRSHLD                    ,
1841        L_MAX_TAX_AMT_THRSHLD                    ,
1842        L_COMPOUNDING_PRECEDENCE                 ,
1843        L_PERIOD_SET_NAME                        ,
1844        L_EXCHANGE_RATE_TYPE                     ,
1845        L_TAX_CURRENCY_CODE                      ,
1846        L_TAX_PRECISION                          ,
1847        L_MINIMUM_ACCOUNTABLE_UNIT               ,
1848        L_ROUNDING_RULE_CODE                     ,
1849        L_TAX_STATUS_RULE_FLAG                   ,
1850        L_TAX_RATE_RULE_FLAG                     ,
1851        L_DEF_PLC_OF_SPPLY_TYP_CD                ,
1852        L_PLACE_OF_SUPPLY_RULE_FLAG              ,
1853        L_DIRECT_RATE_RULE_FLAG                  ,
1854        L_APPLICABILITY_RULE_FLAG                ,
1855        L_TAX_CALC_RULE_FLAG                     ,
1856        L_TXBL_BSIS_THRSHLD_FLAG                 ,
1857        L_TAX_RATE_THRSHLD_FLAG                  ,
1858        L_TAX_AMT_THRSHLD_FLAG                   ,
1859        L_TAXABLE_BASIS_RULE_FLAG                ,
1860        L_DEF_INCLUSIVE_TAX_FLAG                 ,
1861        L_THRSHLD_GROUPING_LVL_CODE              ,
1862        L_HAS_OTHER_JURISDICTIONS_FLAG           ,
1863        L_ALLOW_EXEMPTIONS_FLAG                  ,
1864        L_ALLOW_EXCEPTIONS_FLAG                  ,
1865        L_ALLOW_RECOVERABILITY_FLAG              ,
1866        L_DEF_TAX_CALC_FORMULA                   ,
1867        L_TAX_INCLUSIVE_OVERRIDE_FLAG            ,
1868        L_DEF_TAXABLE_BASIS_FORMULA              ,
1869        L_DEF_REGISTR_PARTY_TYPE_CODE            ,
1870        L_REGISTRATION_TYPE_RULE_FLAG            ,
1871        L_REPORTING_ONLY_FLAG                    ,
1872        L_AUTO_PRVN_FLAG                         ,
1873        L_LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
1874        L_LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
1875        L_HAS_DETAIL_TB_THRSHLD_FLAG             ,
1876        L_HAS_TAX_DET_DATE_RULE_FLAG             ,
1877        L_HAS_EXCH_RATE_DATE_RULE_FLAG           ,
1878        L_HAS_TAX_POINT_DATE_RULE_FLAG           ,
1879        L_PRINT_ON_INVOICE_FLAG                  ,
1880        L_USE_LEGAL_MSG_FLAG                     ,
1881        L_CALC_ONLY_FLAG                         ,
1882        L_PRIMARY_RECOVERY_TYPE_CODE             ,
1883        L_PRIMARY_REC_TYPE_RULE_FLAG             ,
1884        L_SECONDARY_RECOVERY_TYPE_CODE           ,
1885        L_SECONDARY_REC_TYPE_RULE_FLAG           ,
1886        L_PRMRY_REC_RATE_DET_RULE_FLAG           ,
1887        L_SEC_REC_RATE_DET_RULE_FLAG             ,
1888        L_OFFSET_TAX_FLAG                        ,
1889        L_RECOVERY_RATE_OVERRIDE_FLAG            ,
1890        L_ZONE_GEOGRAPHY_TYPE                    ,
1891        L_REGN_NUM_SAME_AS_LE_FLAG               ,
1892        L_DEF_REC_STTLMNT_OPTN_CODE              ,
1893        L_RECORD_TYPE_CODE                       ,
1894        L_ALLOW_ROUNDING_OVERRIDE_FLAG           ,
1895        L_SOURCE_TAX_FLAG                        ,
1896        L_SPECIAL_INCLUSIVE_TAX_FLAG             ,
1897        L_ATTRIBUTE1                             ,
1898        L_ATTRIBUTE2                             ,
1899        L_ATTRIBUTE3                             ,
1900        L_ATTRIBUTE4                             ,
1901        L_ATTRIBUTE5                             ,
1902        L_ATTRIBUTE6                             ,
1903        L_ATTRIBUTE7                             ,
1904        L_ATTRIBUTE8                             ,
1905        L_ATTRIBUTE9                             ,
1909        L_ATTRIBUTE13                            ,
1906        L_ATTRIBUTE10                            ,
1907        L_ATTRIBUTE11                            ,
1908        L_ATTRIBUTE12                            ,
1910        L_ATTRIBUTE14                            ,
1911        L_ATTRIBUTE15                            ,
1912        L_ATTRIBUTE_CATEGORY                     ,
1913        L_PARENT_GEOGRAPHY_TYPE                  ,
1914        L_PARENT_GEOGRAPHY_ID                    ,
1915        L_ALLOW_MASS_CREATE_FLAG                 ,
1916        L_APPLIED_AMT_HANDLING_FLAG              ,
1917        ZX_TAXES_B_S.NEXTVAL                     ,
1918        L_CONTENT_OWNER_ID                       ,
1919        L_REP_TAX_AUTHORITY_ID                   ,
1920        L_COLL_TAX_AUTHORITY_ID                  ,
1921        L_THRSHLD_CHK_TMPLT_CODE                 ,
1922        L_DEF_PRIMARY_REC_RATE_CODE              ,
1923        L_DEF_SECONDARY_REC_RATE_CODE            ,
1924        L_CREATED_BY                       ,
1925        L_CREATION_DATE                          ,
1926        L_LAST_UPDATED_BY                        ,
1927        L_LAST_UPDATE_DATE                       ,
1928        L_LAST_UPDATE_LOGIN                      ,
1929        L_REQUEST_ID                             ,
1930        L_PROGRAM_APPLICATION_ID                 ,
1931        L_PROGRAM_ID                             ,
1932        L_PROGRAM_LOGIN_ID                       ,
1933        NULL           ,
1934   1                                       ,
1935        L_TAX_ACCOUNT_CR_METHOD_CODE             , --Bug 4204464
1936        L_TAX_ACCOUNT_SOURCE_TAX                 , --Bug 4204464
1937        L_TAX_EXMPT_CR_MTHD_CD             , --Bug 4204464,4295147
1938        L_TAX_EXMPT_SOURCE_TAX             ,
1939        L_APPLICABLE_BY_DEFAULT_FLAG         --Bug 4905771
1940   )
1941 /* --Bug4400704
1942   INTO zx_taxes_tl
1943   (
1944    TAX_ID                          ,
1945    LANGUAGE                        ,
1946    SOURCE_LANG                     ,
1947    TAX_FULL_NAME                   ,
1948    CREATED_BY                      ,
1949    CREATION_DATE                   ,
1950    LAST_UPDATED_BY                 ,
1951    LAST_UPDATE_DATE                ,
1952    LAST_UPDATE_LOGIN
1953   )
1954   VALUES
1955   (
1956    ZX_TAXES_B_S.NEXTVAL            ,
1957    USERENV('LANG')                 ,
1958    USERENV('LANG')                 ,
1959    'LOCATION'                      ,
1960    L_CREATED_BY                      ,
1961    L_CREATION_DATE                   ,
1962    L_LAST_UPDATED_BY                 ,
1963    L_LAST_UPDATE_DATE                ,
1964    L_LAST_UPDATE_LOGIN
1965   )
1966 */
1967   SELECT
1968        decode(avt.leasing_flag,'Y',avt.tax_code,'LOCATION')                          L_TAX, --Bug fix 5147333
1969        (select min(start_date) from ar_vat_tax_all_b where tax_type = 'LOCATION')    L_EFFECTIVE_FROM,
1970        NULL                               L_EFFECTIVE_TO,
1971        zrb.tax_regime_code                L_TAX_REGIME_CODE,
1972        'LOCATION'                         L_TAX_TYPE_CODE,
1973        --5713986, Update allow_manual_entry_flag, allow_tax_override_flag as 'Y' instead of 'N'
1974        'Y'                                L_ALLOW_MANUAL_ENTRY_FLAG,
1975        'Y'                                L_ALLOW_TAX_OVERRIDE_FLAG,
1976        NULL                               L_MIN_TXBL_BSIS_THRSHLD,
1977        NULL                               L_MAX_TXBL_BSIS_THRSHLD,
1978        NULL                               L_MIN_TAX_RATE_THRSHLD,
1979        NULL                               L_MAX_TAX_RATE_THRSHLD,
1980        NULL                               L_MIN_TAX_AMT_THRSHLD,
1981        NULL                               L_MAX_TAX_AMT_THRSHLD,
1982        NULL                               L_COMPOUNDING_PRECEDENCE,
1983        NULL                               L_PERIOD_SET_NAME,
1984        -- Bug 4539221
1985        -- Deriving exchange_rate_type
1986        -- If default_exchange_rate_type is NULL use most frequently
1987        -- used conversion_type from gl_daily_rates.
1988       -- CASE WHEN asp.cross_currency_rate_type IS NULL
1989       --     THEN
1990       --    'Corporate' --Bug Fix 5248597
1991       --      ELSE
1992            -- Bug 6006519/5654551. 'User' is not a valid exchange rate type
1993       --     DECODE(asp.cross_currency_rate_type,
1994       --            'User', 'Corporate',
1995       --            asp.cross_currency_rate_type)
1996       -- END                                L_EXCHANGE_RATE_TYPE,
1997        NULL          L_EXCHANGE_RATE_TYPE,
1998        gsob.currency_code                 L_TAX_CURRENCY_CODE,
1999        asp.tax_precision                  L_TAX_PRECISION,
2000        asp.tax_minimum_accountable_unit   L_MINIMUM_ACCOUNTABLE_UNIT,
2001        asp.tax_rounding_rule              L_ROUNDING_RULE_CODE,
2002        'N'                                L_TAX_STATUS_RULE_FLAG,
2003        'N'                                L_TAX_RATE_RULE_FLAG,
2004        'SHIP_TO_BILL_TO'                  L_DEF_PLC_OF_SPPLY_TYP_CD,
2005        'N'                                L_PLACE_OF_SUPPLY_RULE_FLAG,
2006        --  Bug 4575226 : direct_rate_rule_flag is N for US sales tax
2007        'N'                                L_DIRECT_RATE_RULE_FLAG,
2008        'N'                                L_APPLICABILITY_RULE_FLAG,
2009        'N'                                L_TAX_CALC_RULE_FLAG,
2010        'N'                                L_TXBL_BSIS_THRSHLD_FLAG,
2011        'N'                                L_TAX_RATE_THRSHLD_FLAG,
2012        'N'                                L_TAX_AMT_THRSHLD_FLAG,
2016        'N'                                L_HAS_OTHER_JURISDICTIONS_FLAG,
2013        'N'                                L_TAXABLE_BASIS_RULE_FLAG,
2014        'N'                                L_DEF_INCLUSIVE_TAX_FLAG,
2015        NULL                               L_THRSHLD_GROUPING_LVL_CODE,
2017        'Y'                                L_ALLOW_EXEMPTIONS_FLAG,
2018        'Y'                                L_ALLOW_EXCEPTIONS_FLAG,
2019        'N'                                      L_ALLOW_RECOVERABILITY_FLAG,
2020        'STANDARD_TC'                            L_DEF_TAX_CALC_FORMULA,
2021        'Y'                                      L_TAX_INCLUSIVE_OVERRIDE_FLAG,
2022        'STANDARD_TB'                            L_DEF_TAXABLE_BASIS_FORMULA,
2023        'SHIP_TO_SITE'                           L_DEF_REGISTR_PARTY_TYPE_CODE,
2024        'N'                                      L_REGISTRATION_TYPE_RULE_FLAG,
2025        'N'                                      L_REPORTING_ONLY_FLAG,
2026        'N'                                      L_AUTO_PRVN_FLAG,
2027        'Y'                                      L_LIVE_FOR_PROCESSING_FLAG,  --YK:3/16/2005
2028        'N'                                      L_LIVE_FOR_APPLICABILITY_FLAG, --Bug 4225216
2029        'N'                                      L_HAS_DETAIL_TB_THRSHLD_FLAG,
2030        'N'                                      L_HAS_TAX_DET_DATE_RULE_FLAG,
2031        'N'                                      L_HAS_EXCH_RATE_DATE_RULE_FLAG,
2032        'N'                                      L_HAS_TAX_POINT_DATE_RULE_FLAG,
2033        'Y'                                      L_PRINT_ON_INVOICE_FLAG,
2034        'N'                                      L_USE_LEGAL_MSG_FLAG,
2035        'N'                                      L_CALC_ONLY_FLAG,
2036        NULL                                     L_PRIMARY_RECOVERY_TYPE_CODE,
2037        'N'                                      L_PRIMARY_REC_TYPE_RULE_FLAG,
2038        NULL                                     L_SECONDARY_RECOVERY_TYPE_CODE,
2039        'N'                                      L_SECONDARY_REC_TYPE_RULE_FLAG,
2040        'N'                                      L_PRMRY_REC_RATE_DET_RULE_FLAG,
2041        'N'                                      L_SEC_REC_RATE_DET_RULE_FLAG,
2042        'N'                                      L_OFFSET_TAX_FLAG,
2043        'N'                                      L_RECOVERY_RATE_OVERRIDE_FLAG,
2044        NULL                                     L_ZONE_GEOGRAPHY_TYPE,
2045        'N'                                      L_REGN_NUM_SAME_AS_LE_FLAG,
2046        NULL                                     L_DEF_REC_STTLMNT_OPTN_CODE,
2047        'MIGRATED'                               L_RECORD_TYPE_CODE,
2048        'N'                                      L_ALLOW_ROUNDING_OVERRIDE_FLAG,
2049        'Y'                                      L_SOURCE_TAX_FLAG,
2050        'N'                                      L_SPECIAL_INCLUSIVE_TAX_FLAG,
2051        NULL                                     L_ATTRIBUTE1,
2052        NULL                                     L_ATTRIBUTE2,
2053        NULL                                     L_ATTRIBUTE3,
2054        NULL                                     L_ATTRIBUTE4,
2055        NULL                                     L_ATTRIBUTE5,
2056        NULL                                     L_ATTRIBUTE6,
2057        NULL                                     L_ATTRIBUTE7,
2058        NULL                                     L_ATTRIBUTE8,
2059        NULL                                     L_ATTRIBUTE9,
2060        NULL                                     L_ATTRIBUTE10,
2061        NULL                                     L_ATTRIBUTE11,
2062        NULL                                     L_ATTRIBUTE12,
2063        NULL                                     L_ATTRIBUTE13,
2064        NULL                                     L_ATTRIBUTE14,
2065        NULL                                     L_ATTRIBUTE15,
2066        NULL                                     L_ATTRIBUTE_CATEGORY,
2067        'COUNTRY'                                L_PARENT_GEOGRAPHY_TYPE,
2068        (SELECT geography_id
2069   FROM   hz_geographies
2070   WHERE  country_code = asp.default_country
2071   AND    rownum = 1)                      L_PARENT_GEOGRAPHY_ID,
2072        'N'                                      L_ALLOW_MASS_CREATE_FLAG,
2073        'P'                                      L_APPLIED_AMT_HANDLING_FLAG,
2074        --ZX_TAXES_B_S.NEXTVAL                     L_TAX_ID,
2075        ptp.party_tax_profile_id                 L_CONTENT_OWNER_ID,
2076        NULL                                     L_REP_TAX_AUTHORITY_ID,
2077        NULL                                     L_COLL_TAX_AUTHORITY_ID,
2078        NULL                                     L_THRSHLD_CHK_TMPLT_CODE,
2079        NULL                                     L_DEF_PRIMARY_REC_RATE_CODE,
2080        NULL                                     L_DEF_SECONDARY_REC_RATE_CODE,
2081        fnd_global.user_id                       L_CREATED_BY,
2082        SYSDATE                                  L_CREATION_DATE,
2083        fnd_global.user_id                       L_LAST_UPDATED_BY,
2084        SYSDATE                                  L_LAST_UPDATE_DATE,
2085        fnd_global.conc_login_id                 L_LAST_UPDATE_LOGIN,
2086        fnd_global.conc_request_id               L_REQUEST_ID,
2087        fnd_global.prog_appl_id                  L_PROGRAM_APPLICATION_ID,
2088        fnd_global.conc_program_id               L_PROGRAM_ID,
2089        fnd_global.conc_login_id                 L_PROGRAM_LOGIN_ID,
2090        'CREATE_ACCOUNTS'                        L_TAX_ACCOUNT_CR_METHOD_CODE,  --Bug 4204464
2091        NULL                                     L_TAX_ACCOUNT_SOURCE_TAX             , --Bug 4204464
2092        'CREATE_EXEMPTIONS'           L_TAX_EXMPT_CR_MTHD_CD         , --Bug 4204464
2096            ar_vat_tax_all_b          avt,
2093        NULL                                     L_TAX_EXMPT_SOURCE_TAX,
2094        'N'                                      L_APPLICABLE_BY_DEFAULT_FLAG   --Bug 4905771
2095   FROM
2097      zx_party_tax_profile      ptp,
2098      ar_system_parameters_all  asp,
2099      gl_sets_of_books          gsob,
2100      zx_regimes_b              zrb
2101   WHERE    avt.org_id = ptp.party_id
2102   AND      ptp.party_type_code = 'OU'
2103   AND      avt.org_id = asp.org_id
2104   AND      asp.set_of_books_id = gsob.set_of_books_id
2105   AND      avt.tax_type = 'LOCATION'
2106   AND      zrb.tax_regime_code like '%-SALES-TAX-%'
2107   -- Bug 4564206: Added condition to check active tax code at the time of sysdate
2108   AND      trunc(avt.start_date ) < sysdate
2109   AND      sysdate <= nvl(trunc(end_date), sysdate)
2110   AND      asp.location_structure_id = TO_NUMBER(
2111                                              NVL(LTRIM(
2112                                               TRANSLATE(zrb.tax_regime_code,
2113                                                 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_',
2114                                                 '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'
2115                                                          ),'@'
2116                                                        ),'-999'
2117                                                   )
2118                                                 )
2119   AND NOT EXISTS (SELECT 1
2120      FROM   zx_taxes_b  ztb
2121      WHERE  ztb.tax_regime_code = zrb.tax_regime_code
2122      AND    (ztb.tax = 'LOCATION' or ztb.tax = avt.tax_code)
2123      AND    ztb.content_owner_id = ptp.party_tax_profile_id);
2124  ELSE
2125 
2126    INSERT ALL
2127   INTO zx_taxes_b_tmp
2128   (
2129        TAX                                    ,
2130        EFFECTIVE_FROM                         ,
2131        EFFECTIVE_TO                           ,
2132        TAX_REGIME_CODE                        ,
2133        TAX_TYPE_CODE                          ,
2134        ALLOW_MANUAL_ENTRY_FLAG                ,
2135        ALLOW_TAX_OVERRIDE_FLAG                ,
2136        MIN_TXBL_BSIS_THRSHLD                  ,
2137        MAX_TXBL_BSIS_THRSHLD                  ,
2138        MIN_TAX_RATE_THRSHLD                   ,
2139        MAX_TAX_RATE_THRSHLD                   ,
2140        MIN_TAX_AMT_THRSHLD                    ,
2141        MAX_TAX_AMT_THRSHLD                    ,
2142        COMPOUNDING_PRECEDENCE                 ,
2143        PERIOD_SET_NAME                        ,
2144        EXCHANGE_RATE_TYPE                     ,
2145        TAX_CURRENCY_CODE                      ,
2146        TAX_PRECISION                          ,
2147        MINIMUM_ACCOUNTABLE_UNIT               ,
2148        ROUNDING_RULE_CODE                     ,
2149        TAX_STATUS_RULE_FLAG                   ,
2150        TAX_RATE_RULE_FLAG                     ,
2151        DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
2152        PLACE_OF_SUPPLY_RULE_FLAG              ,
2153        DIRECT_RATE_RULE_FLAG                  ,
2154        APPLICABILITY_RULE_FLAG                ,
2155        TAX_CALC_RULE_FLAG                     ,
2156        TXBL_BSIS_THRSHLD_FLAG                 ,
2157        TAX_RATE_THRSHLD_FLAG                  ,
2158        TAX_AMT_THRSHLD_FLAG                   ,
2159        TAXABLE_BASIS_RULE_FLAG                ,
2160        DEF_INCLUSIVE_TAX_FLAG                 ,
2161        THRSHLD_GROUPING_LVL_CODE              ,
2162        HAS_OTHER_JURISDICTIONS_FLAG           ,
2163        ALLOW_EXEMPTIONS_FLAG                  ,
2164        ALLOW_EXCEPTIONS_FLAG                  ,
2165        ALLOW_RECOVERABILITY_FLAG              ,
2166        DEF_TAX_CALC_FORMULA                   ,
2167        TAX_INCLUSIVE_OVERRIDE_FLAG            ,
2168        DEF_TAXABLE_BASIS_FORMULA              ,
2169        DEF_REGISTR_PARTY_TYPE_CODE            ,
2170        REGISTRATION_TYPE_RULE_FLAG            ,
2171        REPORTING_ONLY_FLAG                    ,
2172        AUTO_PRVN_FLAG                         ,
2173        LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
2174        LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
2175        HAS_DETAIL_TB_THRSHLD_FLAG             ,
2176        HAS_TAX_DET_DATE_RULE_FLAG             ,
2177        HAS_EXCH_RATE_DATE_RULE_FLAG           ,
2178        HAS_TAX_POINT_DATE_RULE_FLAG           ,
2179        PRINT_ON_INVOICE_FLAG                  ,
2180        USE_LEGAL_MSG_FLAG                     ,
2181        CALC_ONLY_FLAG                         ,
2182        PRIMARY_RECOVERY_TYPE_CODE             ,
2183        PRIMARY_REC_TYPE_RULE_FLAG             ,
2184        SECONDARY_RECOVERY_TYPE_CODE           ,
2185        SECONDARY_REC_TYPE_RULE_FLAG           ,
2186        PRIMARY_REC_RATE_DET_RULE_FLAG         ,
2187        SEC_REC_RATE_DET_RULE_FLAG             ,
2188        OFFSET_TAX_FLAG                        ,
2189        RECOVERY_RATE_OVERRIDE_FLAG            ,
2190        ZONE_GEOGRAPHY_TYPE                    ,
2191        REGN_NUM_SAME_AS_LE_FLAG               ,
2192        DEF_REC_SETTLEMENT_OPTION_CODE         ,
2193        RECORD_TYPE_CODE                       ,
2194        ALLOW_ROUNDING_OVERRIDE_FLAG           ,
2195        SOURCE_TAX_FLAG                        ,
2196        SPECIAL_INCLUSIVE_TAX_FLAG             ,
2197        ATTRIBUTE1                             ,
2198        ATTRIBUTE2                             ,
2199        ATTRIBUTE3                             ,
2200        ATTRIBUTE4                             ,
2201        ATTRIBUTE5                             ,
2205        ATTRIBUTE9                             ,
2202        ATTRIBUTE6                             ,
2203        ATTRIBUTE7                             ,
2204        ATTRIBUTE8                             ,
2206        ATTRIBUTE10                            ,
2207        ATTRIBUTE11                            ,
2208        ATTRIBUTE12                            ,
2209        ATTRIBUTE13                            ,
2210        ATTRIBUTE14                            ,
2211        ATTRIBUTE15                            ,
2212        ATTRIBUTE_CATEGORY                     ,
2213        PARENT_GEOGRAPHY_TYPE                  ,
2214        PARENT_GEOGRAPHY_ID                    ,
2215        ALLOW_MASS_CREATE_FLAG                 ,
2216        APPLIED_AMT_HANDLING_FLAG              ,
2217        TAX_ID                                 ,
2218        CONTENT_OWNER_ID                       ,
2219        REP_TAX_AUTHORITY_ID                   ,
2220        COLL_TAX_AUTHORITY_ID                  ,
2221        THRSHLD_CHK_TMPLT_CODE                 ,
2222        DEF_PRIMARY_REC_RATE_CODE              ,
2223        DEF_SECONDARY_REC_RATE_CODE            ,
2224        CREATED_BY                           ,
2225        CREATION_DATE                          ,
2226        LAST_UPDATED_BY                        ,
2227        LAST_UPDATE_DATE                       ,
2228        LAST_UPDATE_LOGIN                      ,
2229        REQUEST_ID                             ,
2230        PROGRAM_APPLICATION_ID                 ,
2231        PROGRAM_ID                             ,
2232        PROGRAM_LOGIN_ID                       ,
2233        OVERRIDE_GEOGRAPHY_TYPE                , --Bug 4163204
2234        OBJECT_VERSION_NUMBER                ,
2235        TAX_ACCOUNT_CREATE_METHOD_CODE         , --Bug 4204464
2236        TAX_ACCOUNT_SOURCE_TAX                 , --Bug 4204464
2237        TAX_EXMPT_CR_METHOD_CODE         , --Bug 4204464, 4295147
2238        TAX_EXMPT_SOURCE_TAX             ,
2239        APPLICABLE_BY_DEFAULT_FLAG         --Bug 4905771
2240   )
2241   VALUES
2242   (
2243        L_TAX                                    ,
2244        L_EFFECTIVE_FROM                         ,
2245        L_EFFECTIVE_TO                           ,
2246        L_TAX_REGIME_CODE                        ,
2247        L_TAX_TYPE_CODE                          ,
2248        L_ALLOW_MANUAL_ENTRY_FLAG                ,
2249        L_ALLOW_TAX_OVERRIDE_FLAG                ,
2250        L_MIN_TXBL_BSIS_THRSHLD                  ,
2251        L_MAX_TXBL_BSIS_THRSHLD                  ,
2252        L_MIN_TAX_RATE_THRSHLD                   ,
2253        L_MAX_TAX_RATE_THRSHLD                   ,
2254        L_MIN_TAX_AMT_THRSHLD                    ,
2255        L_MAX_TAX_AMT_THRSHLD                    ,
2256        L_COMPOUNDING_PRECEDENCE                 ,
2257        L_PERIOD_SET_NAME                        ,
2258        L_EXCHANGE_RATE_TYPE                     ,
2259        L_TAX_CURRENCY_CODE                      ,
2260        L_TAX_PRECISION                          ,
2261        L_MINIMUM_ACCOUNTABLE_UNIT               ,
2262        L_ROUNDING_RULE_CODE                     ,
2263        L_TAX_STATUS_RULE_FLAG                   ,
2264        L_TAX_RATE_RULE_FLAG                     ,
2265        L_DEF_PLC_OF_SPPLY_TYP_CD                ,
2266        L_PLACE_OF_SUPPLY_RULE_FLAG              ,
2267        L_DIRECT_RATE_RULE_FLAG                  ,
2268        L_APPLICABILITY_RULE_FLAG                ,
2269        L_TAX_CALC_RULE_FLAG                     ,
2270        L_TXBL_BSIS_THRSHLD_FLAG                 ,
2271        L_TAX_RATE_THRSHLD_FLAG                  ,
2272        L_TAX_AMT_THRSHLD_FLAG                   ,
2273        L_TAXABLE_BASIS_RULE_FLAG                ,
2274        L_DEF_INCLUSIVE_TAX_FLAG                 ,
2275        L_THRSHLD_GROUPING_LVL_CODE              ,
2276        L_HAS_OTHER_JURISDICTIONS_FLAG           ,
2277        L_ALLOW_EXEMPTIONS_FLAG                  ,
2278        L_ALLOW_EXCEPTIONS_FLAG                  ,
2279        L_ALLOW_RECOVERABILITY_FLAG              ,
2280        L_DEF_TAX_CALC_FORMULA                   ,
2281        L_TAX_INCLUSIVE_OVERRIDE_FLAG            ,
2282        L_DEF_TAXABLE_BASIS_FORMULA              ,
2283        L_DEF_REGISTR_PARTY_TYPE_CODE            ,
2284        L_REGISTRATION_TYPE_RULE_FLAG            ,
2285        L_REPORTING_ONLY_FLAG                    ,
2286        L_AUTO_PRVN_FLAG                         ,
2287        L_LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
2288        L_LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
2289        L_HAS_DETAIL_TB_THRSHLD_FLAG             ,
2290        L_HAS_TAX_DET_DATE_RULE_FLAG             ,
2291        L_HAS_EXCH_RATE_DATE_RULE_FLAG           ,
2292        L_HAS_TAX_POINT_DATE_RULE_FLAG           ,
2293        L_PRINT_ON_INVOICE_FLAG                  ,
2294        L_USE_LEGAL_MSG_FLAG                     ,
2295        L_CALC_ONLY_FLAG                         ,
2296        L_PRIMARY_RECOVERY_TYPE_CODE             ,
2297        L_PRIMARY_REC_TYPE_RULE_FLAG             ,
2298        L_SECONDARY_RECOVERY_TYPE_CODE           ,
2299        L_SECONDARY_REC_TYPE_RULE_FLAG           ,
2300        L_PRMRY_REC_RATE_DET_RULE_FLAG           ,
2301        L_SEC_REC_RATE_DET_RULE_FLAG             ,
2302        L_OFFSET_TAX_FLAG                        ,
2303        L_RECOVERY_RATE_OVERRIDE_FLAG            ,
2304        L_ZONE_GEOGRAPHY_TYPE                    ,
2305        L_REGN_NUM_SAME_AS_LE_FLAG               ,
2306        L_DEF_REC_STTLMNT_OPTN_CODE              ,
2307        L_RECORD_TYPE_CODE                       ,
2311        L_ATTRIBUTE1                             ,
2308        L_ALLOW_ROUNDING_OVERRIDE_FLAG           ,
2309        L_SOURCE_TAX_FLAG                        ,
2310        L_SPECIAL_INCLUSIVE_TAX_FLAG             ,
2312        L_ATTRIBUTE2                             ,
2313        L_ATTRIBUTE3                             ,
2314        L_ATTRIBUTE4                             ,
2315        L_ATTRIBUTE5                             ,
2316        L_ATTRIBUTE6                             ,
2317        L_ATTRIBUTE7                             ,
2318        L_ATTRIBUTE8                             ,
2319        L_ATTRIBUTE9                             ,
2320        L_ATTRIBUTE10                            ,
2321        L_ATTRIBUTE11                            ,
2322        L_ATTRIBUTE12                            ,
2323        L_ATTRIBUTE13                            ,
2324        L_ATTRIBUTE14                            ,
2325        L_ATTRIBUTE15                            ,
2326        L_ATTRIBUTE_CATEGORY                     ,
2327        L_PARENT_GEOGRAPHY_TYPE                  ,
2328        L_PARENT_GEOGRAPHY_ID                    ,
2329        L_ALLOW_MASS_CREATE_FLAG                 ,
2330        L_APPLIED_AMT_HANDLING_FLAG              ,
2331        ZX_TAXES_B_S.NEXTVAL                     ,
2332        L_CONTENT_OWNER_ID                       ,
2333        L_REP_TAX_AUTHORITY_ID                   ,
2334        L_COLL_TAX_AUTHORITY_ID                  ,
2335        L_THRSHLD_CHK_TMPLT_CODE                 ,
2336        L_DEF_PRIMARY_REC_RATE_CODE              ,
2337        L_DEF_SECONDARY_REC_RATE_CODE            ,
2338        L_CREATED_BY                       ,
2339        L_CREATION_DATE                          ,
2340        L_LAST_UPDATED_BY                        ,
2341        L_LAST_UPDATE_DATE                       ,
2342        L_LAST_UPDATE_LOGIN                      ,
2343        L_REQUEST_ID                             ,
2344        L_PROGRAM_APPLICATION_ID                 ,
2345        L_PROGRAM_ID                             ,
2346        L_PROGRAM_LOGIN_ID                       ,
2347        NULL           ,
2348   1                                       ,
2349        L_TAX_ACCOUNT_CR_METHOD_CODE             , --Bug 4204464
2350        L_TAX_ACCOUNT_SOURCE_TAX                 , --Bug 4204464
2351        L_TAX_EXMPT_CR_MTHD_CD             , --Bug 4204464,4295147
2352        L_TAX_EXMPT_SOURCE_TAX             ,
2353        L_APPLICABLE_BY_DEFAULT_FLAG         --Bug 4905771
2354   )
2355 /* --Bug4400704
2356   INTO zx_taxes_tl
2357   (
2358    TAX_ID                          ,
2359    LANGUAGE                        ,
2360    SOURCE_LANG                     ,
2361    TAX_FULL_NAME                   ,
2362    CREATED_BY                      ,
2363    CREATION_DATE                   ,
2364    LAST_UPDATED_BY                 ,
2365    LAST_UPDATE_DATE                ,
2366    LAST_UPDATE_LOGIN
2367   )
2368   VALUES
2369   (
2370    ZX_TAXES_B_S.NEXTVAL            ,
2371    USERENV('LANG')                 ,
2372    USERENV('LANG')                 ,
2373    'LOCATION'                      ,
2374    L_CREATED_BY                      ,
2375    L_CREATION_DATE                   ,
2376    L_LAST_UPDATED_BY                 ,
2377    L_LAST_UPDATE_DATE                ,
2378    L_LAST_UPDATE_LOGIN
2379   )
2380 */
2381   SELECT
2382        decode(avt.leasing_flag,'Y',avt.tax_code,'LOCATION')                          L_TAX, --Bug fix 5147333
2383        (select min(start_date) from ar_vat_tax_all_b where tax_type = 'LOCATION')    L_EFFECTIVE_FROM,
2384        NULL                               L_EFFECTIVE_TO,
2385        zrb.tax_regime_code                L_TAX_REGIME_CODE,
2386        'LOCATION'                         L_TAX_TYPE_CODE,
2387        --5713986, Update allow_manual_entry_flag,allow_tax_override_flag as 'Y' instead of 'N
2388        'Y'                                L_ALLOW_MANUAL_ENTRY_FLAG,
2389        'Y'                                L_ALLOW_TAX_OVERRIDE_FLAG,
2390        NULL                               L_MIN_TXBL_BSIS_THRSHLD,
2391        NULL                               L_MAX_TXBL_BSIS_THRSHLD,
2392        NULL                               L_MIN_TAX_RATE_THRSHLD,
2393        NULL                               L_MAX_TAX_RATE_THRSHLD,
2394        NULL                               L_MIN_TAX_AMT_THRSHLD,
2395        NULL                               L_MAX_TAX_AMT_THRSHLD,
2396        NULL                               L_COMPOUNDING_PRECEDENCE,
2397        NULL                               L_PERIOD_SET_NAME,
2398        -- Bug 4539221
2399        -- Deriving exchange_rate_type
2400        -- If default_exchange_rate_type is NULL use most frequently
2401        -- used conversion_type from gl_daily_rates.
2402       -- CASE WHEN asp.cross_currency_rate_type IS NULL
2403       --     THEN
2404       --    'Corporate' --Bug Fix 5248597
2405       --     ELSE
2406            -- Bug 6006519/5654551. 'User' is not a valid exchange rate type
2407       --     DECODE(asp.cross_currency_rate_type,
2408         --          'User', 'Corporate',
2409         --          asp.cross_currency_rate_type)
2410       -- END                                L_EXCHANGE_RATE_TYPE,
2411   NULL         L_EXCHANGE_RATE_TYPE,
2412        gsob.currency_code                 L_TAX_CURRENCY_CODE,
2413        asp.tax_precision                  L_TAX_PRECISION,
2414        asp.tax_minimum_accountable_unit   L_MINIMUM_ACCOUNTABLE_UNIT,
2415        asp.tax_rounding_rule              L_ROUNDING_RULE_CODE,
2416        'N'                                L_TAX_STATUS_RULE_FLAG,
2417        'N'                                L_TAX_RATE_RULE_FLAG,
2421        'N'                                L_DIRECT_RATE_RULE_FLAG,
2418        'SHIP_TO_BILL_TO'                  L_DEF_PLC_OF_SPPLY_TYP_CD,
2419        'N'                                L_PLACE_OF_SUPPLY_RULE_FLAG,
2420        --  Bug 4575226 : direct_rate_rule_flag is N for US sales tax
2422        'N'                                L_APPLICABILITY_RULE_FLAG,
2423        'N'                                L_TAX_CALC_RULE_FLAG,
2424        'N'                                L_TXBL_BSIS_THRSHLD_FLAG,
2425        'N'                                L_TAX_RATE_THRSHLD_FLAG,
2426        'N'                                L_TAX_AMT_THRSHLD_FLAG,
2427        'N'                                L_TAXABLE_BASIS_RULE_FLAG,
2428        'N'                                L_DEF_INCLUSIVE_TAX_FLAG,
2429        NULL                               L_THRSHLD_GROUPING_LVL_CODE,
2430        'N'                                L_HAS_OTHER_JURISDICTIONS_FLAG,
2431        'Y'                                L_ALLOW_EXEMPTIONS_FLAG,
2432        'Y'                                L_ALLOW_EXCEPTIONS_FLAG,
2433        'N'                                      L_ALLOW_RECOVERABILITY_FLAG,
2434        'STANDARD_TC'                            L_DEF_TAX_CALC_FORMULA,
2435        'Y'                                      L_TAX_INCLUSIVE_OVERRIDE_FLAG,
2436        'STANDARD_TB'                            L_DEF_TAXABLE_BASIS_FORMULA,
2437        'SHIP_TO_SITE'                           L_DEF_REGISTR_PARTY_TYPE_CODE,
2438        'N'                                      L_REGISTRATION_TYPE_RULE_FLAG,
2439        'N'                                      L_REPORTING_ONLY_FLAG,
2440        'N'                                      L_AUTO_PRVN_FLAG,
2441        'Y'                                      L_LIVE_FOR_PROCESSING_FLAG,  --YK:3/16/2005
2442        'N'                                      L_LIVE_FOR_APPLICABILITY_FLAG, --Bug 4225216
2443        'N'                                      L_HAS_DETAIL_TB_THRSHLD_FLAG,
2444        'N'                                      L_HAS_TAX_DET_DATE_RULE_FLAG,
2445        'N'                                      L_HAS_EXCH_RATE_DATE_RULE_FLAG,
2446        'N'                                      L_HAS_TAX_POINT_DATE_RULE_FLAG,
2447        'Y'                                      L_PRINT_ON_INVOICE_FLAG,
2448        'N'                                      L_USE_LEGAL_MSG_FLAG,
2449        'N'                                      L_CALC_ONLY_FLAG,
2450        NULL                                     L_PRIMARY_RECOVERY_TYPE_CODE,
2451        'N'                                      L_PRIMARY_REC_TYPE_RULE_FLAG,
2452        NULL                                     L_SECONDARY_RECOVERY_TYPE_CODE,
2453        'N'                                      L_SECONDARY_REC_TYPE_RULE_FLAG,
2454        'N'                                      L_PRMRY_REC_RATE_DET_RULE_FLAG,
2455        'N'                                      L_SEC_REC_RATE_DET_RULE_FLAG,
2456        'N'                                      L_OFFSET_TAX_FLAG,
2457        'N'                                      L_RECOVERY_RATE_OVERRIDE_FLAG,
2458        NULL                                     L_ZONE_GEOGRAPHY_TYPE,
2459        'N'                                      L_REGN_NUM_SAME_AS_LE_FLAG,
2460        NULL                                     L_DEF_REC_STTLMNT_OPTN_CODE,
2461        'MIGRATED'                               L_RECORD_TYPE_CODE,
2462        'N'                                      L_ALLOW_ROUNDING_OVERRIDE_FLAG,
2463        'Y'                                      L_SOURCE_TAX_FLAG,
2464        'N'                                      L_SPECIAL_INCLUSIVE_TAX_FLAG,
2465        NULL                                     L_ATTRIBUTE1,
2466        NULL                                     L_ATTRIBUTE2,
2467        NULL                                     L_ATTRIBUTE3,
2468        NULL                                     L_ATTRIBUTE4,
2469        NULL                                     L_ATTRIBUTE5,
2470        NULL                                     L_ATTRIBUTE6,
2471        NULL                                     L_ATTRIBUTE7,
2472        NULL                                     L_ATTRIBUTE8,
2473        NULL                                     L_ATTRIBUTE9,
2474        NULL                                     L_ATTRIBUTE10,
2475        NULL                                     L_ATTRIBUTE11,
2476        NULL                                     L_ATTRIBUTE12,
2477        NULL                                     L_ATTRIBUTE13,
2478        NULL                                     L_ATTRIBUTE14,
2479        NULL                                     L_ATTRIBUTE15,
2480        NULL                                     L_ATTRIBUTE_CATEGORY,
2481        'COUNTRY'                                L_PARENT_GEOGRAPHY_TYPE,
2482        (SELECT geography_id
2483   FROM   hz_geographies
2484   WHERE  country_code = asp.default_country
2485   AND    rownum = 1)                      L_PARENT_GEOGRAPHY_ID,
2486        'N'                                      L_ALLOW_MASS_CREATE_FLAG,
2487        'P'                                      L_APPLIED_AMT_HANDLING_FLAG,
2488        --ZX_TAXES_B_S.NEXTVAL                     L_TAX_ID,
2489        ptp.party_tax_profile_id                 L_CONTENT_OWNER_ID,
2490        NULL                                     L_REP_TAX_AUTHORITY_ID,
2491        NULL                                     L_COLL_TAX_AUTHORITY_ID,
2492        NULL                                     L_THRSHLD_CHK_TMPLT_CODE,
2493        NULL                                     L_DEF_PRIMARY_REC_RATE_CODE,
2494        NULL                                     L_DEF_SECONDARY_REC_RATE_CODE,
2495        fnd_global.user_id                       L_CREATED_BY,
2496        SYSDATE                                  L_CREATION_DATE,
2497        fnd_global.user_id                       L_LAST_UPDATED_BY,
2498        SYSDATE                                  L_LAST_UPDATE_DATE,
2502        fnd_global.conc_program_id               L_PROGRAM_ID,
2499        fnd_global.conc_login_id                 L_LAST_UPDATE_LOGIN,
2500        fnd_global.conc_request_id               L_REQUEST_ID,
2501        fnd_global.prog_appl_id                  L_PROGRAM_APPLICATION_ID,
2503        fnd_global.conc_login_id                 L_PROGRAM_LOGIN_ID,
2504        'CREATE_ACCOUNTS'                        L_TAX_ACCOUNT_CR_METHOD_CODE,  --Bug 4204464
2505        NULL                                     L_TAX_ACCOUNT_SOURCE_TAX             , --Bug 4204464
2506        'CREATE_EXEMPTIONS'           L_TAX_EXMPT_CR_MTHD_CD         , --Bug 4204464
2507        NULL                                     L_TAX_EXMPT_SOURCE_TAX,
2508        'N'                                      L_APPLICABLE_BY_DEFAULT_FLAG   --Bug 4905771
2509   FROM
2510            ar_vat_tax_all_b          avt,
2511      zx_party_tax_profile      ptp,
2512      ar_system_parameters_all  asp,
2513      gl_sets_of_books          gsob,
2514      zx_regimes_b              zrb
2515   WHERE    avt.org_id = ptp.party_id
2516   AND      avt.org_id = l_org_id
2517   AND      ptp.party_type_code = 'OU'
2518   AND      avt.org_id = asp.org_id
2519   AND      asp.set_of_books_id = gsob.set_of_books_id
2520   AND      avt.tax_type = 'LOCATION'
2521   AND      zrb.tax_regime_code like '%-SALES-TAX-%'
2522   -- Bug 4564206: Added condition to check active tax code at the time of sysdate
2523   AND      trunc(avt.start_date ) < sysdate
2524   AND      sysdate <= nvl(trunc(end_date), sysdate)
2525   AND      asp.location_structure_id = TO_NUMBER(
2526                                              NVL(LTRIM(
2527                                               TRANSLATE(zrb.tax_regime_code,
2528                                                 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_',
2529                                                 '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'
2530                                                          ),'@'
2531                                                        ),'-999'
2532                                                   )
2533                                                 )
2534   AND NOT EXISTS (SELECT 1
2535      FROM   zx_taxes_b  ztb
2536      WHERE  ztb.tax_regime_code = zrb.tax_regime_code
2537      AND   (ztb.tax = 'LOCATION' or ztb.tax = avt.tax_code)
2538      AND    ztb.content_owner_id = ptp.party_tax_profile_id);
2539 
2540 
2541  END IF;
2542  -- ****** Inserting status for taxes (created for qualifier and location tax code) ******
2543   INSERT ALL
2544   INTO ZX_STATUS_B_TMP
2545   (
2546       TAX_STATUS_ID,
2547       TAX_STATUS_CODE,
2548       CONTENT_OWNER_ID,
2549       EFFECTIVE_FROM,
2550       EFFECTIVE_TO,
2551       TAX,
2552       TAX_REGIME_CODE,
2553       RULE_BASED_RATE_FLAG,
2554       ALLOW_RATE_OVERRIDE_FLAG,
2555       ALLOW_EXEMPTIONS_FLAG,
2556       ALLOW_EXCEPTIONS_FLAG,
2557       DEFAULT_STATUS_FLAG,
2558       DEFAULT_FLG_EFFECTIVE_FROM,
2559       DEFAULT_FLG_EFFECTIVE_TO,
2560       DEF_REC_SETTLEMENT_OPTION_CODE,
2561       RECORD_TYPE_CODE,
2562       ATTRIBUTE1,
2563       ATTRIBUTE2,
2564       ATTRIBUTE3,
2565       ATTRIBUTE4,
2566       ATTRIBUTE5,
2567       ATTRIBUTE6,
2568       ATTRIBUTE7,
2569       ATTRIBUTE8,
2570       ATTRIBUTE9,
2571       ATTRIBUTE10,
2572       ATTRIBUTE11,
2573       ATTRIBUTE12,
2574       ATTRIBUTE13,
2575       ATTRIBUTE14,
2576       ATTRIBUTE15,
2577       ATTRIBUTE_CATEGORY,
2578       CREATION_DATE,
2579       CREATED_BY,
2580       LAST_UPDATE_DATE,
2581       LAST_UPDATED_BY,
2582       LAST_UPDATE_LOGIN,
2583       REQUEST_ID,
2584       OBJECT_VERSION_NUMBER
2585   )
2586   VALUES
2587   (
2588       ZX_STATUS_B_S.NEXTVAL,    --TAX_STATUS_ID
2589       l_tax_status_code,        --TAX_STATUS_CODE
2590       l_content_owner_id,       --CONTENT_OWNER_ID
2591       l_effective_from,         --EFFECTIVE_FROM
2592       l_effective_to,           --EFFECTIVE_TO
2593       l_tax,                    --TAX
2594       l_tax_regime_code,        --TAX_REGIME_CODE
2595       l_rule_based_flag,        --RULE_BASED_RATE_FLAG
2596       l_allow_rate_override_flag,   --ALLOW_RATE_OVERRIDE_FLAG
2597       l_allow_exemptions_flag,  --ALLOW_EXEMPTIONS_FLAG
2598       l_allow_exceptions_flag,  --ALLOW_EXCEPTIONS_FLAG
2599       l_default_status_flag,        --DEFAULT_STATUS_FLAG
2600       l_default_flg_effective_from, --DEFAULT_FLG_EFFECTIVE_FROM
2601       l_default_flg_effective_to,   --DEFAULT_FLG_EFFECTIVE_TO
2602       l_def_rec_setlmnt_optn_code,  --DEF_REC_SETTLEMENT_OPTION_CODE
2603       l_record_type_code,
2604       l_attribute1,
2605       l_attribute2,
2606       l_attribute3,
2607       l_attribute4,
2608       l_attribute5,
2609       l_attribute6,
2610       l_attribute7,
2611       l_attribute8,
2612       l_attribute9,
2613       l_attribute10,
2614       l_attribute11,
2615       l_attribute12,
2616       l_attribute13,
2617       l_attribute14,
2618       l_attribute15,
2619       l_attribute_category,
2620       l_creation_date,
2621       l_created_by,
2622       l_last_update_date,
2623       l_last_updated_by,
2624       l_last_update_login,
2625       l_request_id,
2626       1
2627   )
2628 /* --Bug4400704
2629   INTO zx_status_tl
2630   (
2631       TAX_STATUS_ID,
2632       LANGUAGE,
2633       SOURCE_LANG,
2637       LAST_UPDATED_BY,
2634       TAX_STATUS_NAME,
2635       CREATED_BY,
2636       CREATION_DATE,
2638       LAST_UPDATE_DATE,
2639       LAST_UPDATE_LOGIN
2640   )
2641   VALUES
2642   (
2643       ZX_STATUS_B_S.NEXTVAL,
2644       USERENV('LANG'),
2645       USERENV('LANG'),
2646       l_tax_status_code,
2647       l_created_by,
2648       l_creation_date,
2649       l_last_updated_by,
2650       l_last_update_date,
2651       l_last_update_login
2652   )*/
2653   SELECT
2654       'STANDARD'         l_tax_status_code,        --TAX_STATUS_CODE
2655       tax.content_owner_id    l_content_owner_id,       --CONTENT_OWNER_ID
2656       tax.effective_from      l_effective_from,         --EFFECTIVE_FROM
2657       NULL                    l_effective_to,           --EFFECTIVE_TO
2658       tax.tax                 l_tax,                    --TAX
2659       tax.tax_regime_code     l_tax_regime_code,        --TAX_REGIME_CODE
2660       'N'                     l_rule_based_flag,        --RULE_BASED_RATE_FLAG
2661       'Y'                     l_allow_rate_override_flag,   --ALLOW_RATE_OVERRIDE_FLAG
2662       tax.allow_exemptions_flag   l_allow_exemptions_flag,  --ALLOW_EXEMPTIONS_FLAG
2663       tax.allow_exceptions_flag   l_allow_exceptions_flag,  --ALLOW_EXCEPTIONS_FLAG
2664       'Y'                     l_default_status_flag,        --DEFAULT_STATUS_FLAG
2665       tax.effective_from      l_default_flg_effective_from, --DEFAULT_FLG_EFFECTIVE_FROM
2666       NULL                    l_default_flg_effective_to,   --DEFAULT_FLG_EFFECTIVE_TO
2667       NULL                    l_def_rec_setlmnt_optn_code,  --DEF_REC_SETTLEMENT_OPTION_CODE
2668       'MIGRATED'              l_record_type_code,
2669       NULL                    l_attribute1,
2670       NULL                    l_attribute2,
2671       NULL                    l_attribute3,
2672       NULL                    l_attribute4,
2673       NULL                    l_attribute5,
2674       NULL                    l_attribute6,
2675       NULL                    l_attribute7,
2676       NULL                    l_attribute8,
2677       NULL                    l_attribute9,
2678       NULL                    l_attribute10,
2679       NULL                    l_attribute11,
2680       NULL                    l_attribute12,
2681       NULL                    l_attribute13,
2682       NULL                    l_attribute14,
2683       NULL                    l_attribute15,
2684       NULL                    l_attribute_category,
2685       SYSDATE                 l_creation_date,
2686       fnd_global.user_id      l_created_by,
2687       SYSDATE                 l_last_update_date,
2688       fnd_global.user_id      l_last_updated_by,
2689       fnd_global.conc_login_id    l_last_update_login,
2690       fnd_global.conc_request_id  l_request_id
2691   FROM            zx_taxes_b  tax
2692   WHERE           tax.tax_regime_code like '%-SALES-TAX-%'
2693   AND NOT EXISTS  (SELECT 1
2694                    FROM   zx_status_b  status
2695                    WHERE  tax.tax_regime_code = status.tax_regime_code
2696                    AND    tax.tax = status.tax
2697        AND    tax.content_owner_id = status.content_owner_id --Bug 4563007
2698                    AND    status.tax_status_code = 'STANDARD');
2699 
2700 
2701   -- ****** Inserting rates for location tax codes ******
2702 
2703   -- zx_rates_tl is created by procedure populate_mls_tables
2704   IF L_MULTI_ORG_FLAG = 'Y'
2705   THEN
2706   INSERT ALL
2707   INTO zx_rates_b_tmp
2708   (
2709       TAX_RATE_ID                    ,
2710       TAX_RATE_CODE                  ,
2711       CONTENT_OWNER_ID               ,
2712       EFFECTIVE_FROM                 ,
2713       EFFECTIVE_TO                   ,
2714       TAX_REGIME_CODE                ,
2715       TAX                            ,
2716       TAX_STATUS_CODE                ,
2717       SCHEDULE_BASED_RATE_FLAG       ,
2718       RATE_TYPE_CODE                 ,
2719       PERCENTAGE_RATE                ,
2720       QUANTITY_RATE                  ,
2721       UOM_CODE                       ,
2722       TAX_JURISDICTION_CODE          ,
2723       RECOVERY_TYPE_CODE             ,
2724       ACTIVE_FLAG                    ,
2725       DEFAULT_RATE_FLAG              ,
2726       DEFAULT_FLG_EFFECTIVE_FROM     ,
2727       DEFAULT_FLG_EFFECTIVE_TO       ,
2728       DEFAULT_REC_TYPE_CODE          ,
2729       DEFAULT_REC_RATE_CODE          ,
2730       OFFSET_TAX                     ,
2731       OFFSET_STATUS_CODE             ,
2732       OFFSET_TAX_RATE_CODE           ,
2733       RECOVERY_RULE_CODE             ,
2734       DEF_REC_SETTLEMENT_OPTION_CODE ,
2735       VAT_TRANSACTION_TYPE_CODE      ,
2736       ADJ_FOR_ADHOC_AMT_CODE         ,
2737       ALLOW_ADHOC_TAX_RATE_FLAG      ,
2738       TAX_CLASS                      ,
2739       SOURCE_ID                      ,
2740       TAXABLE_BASIS_FORMULA_CODE     ,
2741       INCLUSIVE_TAX_FLAG             ,
2742       TAX_INCLUSIVE_OVERRIDE_FLAG    ,
2743       RECORD_TYPE_CODE               ,
2744       CREATED_BY                     ,
2745       CREATION_DATE                  ,
2746       LAST_UPDATED_BY                ,
2747       LAST_UPDATE_DATE               ,
2748       LAST_UPDATE_LOGIN              ,
2749       REQUEST_ID                     ,
2750       PROGRAM_APPLICATION_ID         ,
2751       PROGRAM_ID                     ,
2752       PROGRAM_LOGIN_ID               ,
2756       ATTRIBUTE4                     ,
2753       ATTRIBUTE1                     ,
2754       ATTRIBUTE2                     ,
2755       ATTRIBUTE3                     ,
2757       ATTRIBUTE5                     ,
2758       ATTRIBUTE6                     ,
2759       ATTRIBUTE7                     ,
2760       ATTRIBUTE8                     ,
2761       ATTRIBUTE9                     ,
2762       ATTRIBUTE10                    ,
2763       ATTRIBUTE11                    ,
2764       ATTRIBUTE12                    ,
2765       ATTRIBUTE13                    ,
2766       ATTRIBUTE14                    ,
2767       ATTRIBUTE15                    ,
2768       ATTRIBUTE_CATEGORY              ,
2769       OBJECT_VERSION_NUMBER          ,
2770       ALLOW_EXEMPTIONS_FLAG          , -- Bug 4204464
2771       ALLOW_EXCEPTIONS_FLAG            -- Bug 4204464
2772    -- 6820043, commenting out description
2773    -- DESCRIPTION                      -- Bug 4705196
2774   )
2775   VALUES
2776   (
2777             L_TAX_RATE_ID                    ,  --TAX_RATE_ID
2778       L_TAX_RATE_CODE                  ,  --tax_rate_code
2779       L_CONTENT_OWNER_ID               ,  --content_owner_id
2780       L_EFFECTIVE_FROM                 ,  --effective_from
2781       L_EFFECTIVE_TO                   ,  --effective_to
2782       L_TAX_REGIME_CODE                ,  --tax_regime_code
2783       L_TAX                            ,  --tax
2784       L_TAX_STATUS_CODE                ,  --tax_status_code
2785       L_SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
2786       L_RATE_TYPE_CODE                 ,  --rate_type_code
2787       L_PERCENTAGE_RATE                ,  --percentage_rate
2788       L_QUANTITY_RATE                  ,  --quantity_rate
2789       L_UOM_CODE                       ,  --uom_code
2790       L_TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
2791       L_RECOVERY_TYPE_CODE             ,  --recovery_type_code
2792       L_ACTIVE_FLAG                    ,  --active_flag
2793       L_DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
2794       L_DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
2795       L_DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
2796       L_DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
2797       L_DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
2798       L_OFFSET_TAX                     ,  --offset_tax
2799       L_OFFSET_STATUS_CODE             ,  --offset_status_code
2800       L_OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
2801       L_RECOVERY_RULE_CODE             ,  --recovery_rule_code
2802       L_DEF_REC_STTLMNT_OPTN_CD        ,  --def_rec_settlement_option_code
2803       L_VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
2804       L_ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
2805       L_ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
2806       L_TAX_CLASS                      ,  --tax_class
2807       NULL                             ,  --source_id
2808       'STANDARD_TB'                    ,  --taxable_basis_formula_code
2809       L_INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
2810       L_TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
2811       'MIGRATED'                       ,  --record_type_code
2812       fnd_global.user_id               ,  --created_by
2813       SYSDATE                          ,  --creation_date
2814       fnd_global.user_id               ,  --last_updated_by
2815       SYSDATE                          ,  --last_update_date
2816       fnd_global.user_id               ,  --last_update_login
2817       fnd_global.conc_request_id       ,  --request_id
2818       fnd_global.prog_appl_id          ,  --program_application_id
2819       fnd_global.conc_program_id       ,  --program_id
2820       fnd_global.conc_login_id         ,  --program_login_id
2821       L_ATTRIBUTE1                     ,
2822       L_ATTRIBUTE2                     ,
2823       L_ATTRIBUTE3                     ,
2824       L_ATTRIBUTE4                     ,
2825       L_ATTRIBUTE5                     ,
2826       L_ATTRIBUTE6                     ,
2827       L_ATTRIBUTE7                     ,
2828       L_ATTRIBUTE8                     ,
2829       L_ATTRIBUTE9                     ,
2830       L_ATTRIBUTE10                    ,
2831       L_ATTRIBUTE11                    ,
2832       L_ATTRIBUTE12                    ,
2833       L_ATTRIBUTE13                    ,
2834       L_ATTRIBUTE14                    ,
2835       L_ATTRIBUTE15                    ,
2836       L_ATTRIBUTE_CATEGORY        ,
2837       1                                ,
2838       'Y'                              ,
2839       'Y'
2840      -- 6820043, commenting out description
2841      --  DESCRIPTION                           -- Bug 4705196
2842   )
2843   INTO zx_accounts
2844   (
2845       TAX_ACCOUNT_ID                 ,
2846       TAX_ACCOUNT_ENTITY_ID          ,
2847       TAX_ACCOUNT_ENTITY_CODE        ,
2848       LEDGER_ID                      ,
2849       INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
2850       TAX_ACCOUNT_CCID               ,
2851       INTERIM_TAX_CCID               ,
2852       NON_REC_ACCOUNT_CCID           ,
2853       ADJ_CCID                       ,
2854       EDISC_CCID                     ,
2855       UNEDISC_CCID                   ,
2856       FINCHRG_CCID                   ,
2857       ADJ_NON_REC_TAX_CCID           ,
2861       RECORD_TYPE_CODE               ,
2858       EDISC_NON_REC_TAX_CCID         ,
2859       UNEDISC_NON_REC_TAX_CCID       ,
2860       FINCHRG_NON_REC_TAX_CCID       ,
2862       CREATED_BY                  ,
2863       CREATION_DATE                  ,
2864       LAST_UPDATED_BY                ,
2865       LAST_UPDATE_DATE               ,
2866       LAST_UPDATE_LOGIN              ,
2867       REQUEST_ID                     ,
2868       PROGRAM_APPLICATION_ID         ,
2869       PROGRAM_ID                     ,
2870       PROGRAM_LOGIN_ID               ,
2871       ATTRIBUTE1             ,
2872       ATTRIBUTE2             ,
2873       ATTRIBUTE3             ,
2874       ATTRIBUTE4             ,
2875       ATTRIBUTE5             ,
2876       ATTRIBUTE6             ,
2877       ATTRIBUTE7             ,
2878       ATTRIBUTE8             ,
2879       ATTRIBUTE9             ,
2880       ATTRIBUTE10            ,
2881       ATTRIBUTE11            ,
2882       ATTRIBUTE12            ,
2883       ATTRIBUTE13            ,
2884       ATTRIBUTE14            ,
2885       ATTRIBUTE15            ,
2886       ATTRIBUTE_CATEGORY     ,
2887       OBJECT_VERSION_NUMBER
2888   )
2889   VALUES
2890   (
2891        ZX_ACCOUNTS_S.nextval  ,--TAX_ACCOUNT_ID
2892        L_TAX_RATE_ID          ,--TAX_RATE_ID
2893        'RATES'                 ,--TAX_ACCOUNT_ENTITY_CODE
2894        L_LEDGER_ID            ,--LEDGER_ID
2895        L_ORG_ID               ,--ORG_ID
2896        L_TAX_ACCOUNT_CCID     ,--TAX_ACCOUNT_CCID
2897        L_INTERIM_TAX_CCID     ,--INTERIM_TAX_CCID
2898        L_NON_REC_ACCOUNT_CCID ,--NON_REC_ACCOUNT_CCID --YK:07/06/2004:OPEN: understand the field
2899        L_ADJ_CCID             ,--ADJ_CCID
2900        L_EDISC_CCID           ,--EDISC_CCID
2901        L_UNEDISC_CCID         ,--UNEDISC_CCID
2902        L_FINCHRG_CCID         ,--FINCHRG_CCID
2903        L_ADJ_NON_REC_TAX_CCID            ,--ADJ_NON_REC_TAX_CCID
2904        L_EDISC_NON_REC_TAX_CCID          ,--EDISC_NON_REC_TAX_CCID
2905        L_UNEDISC_NON_REC_TAX_CCID        ,--UNEDISC_NON_REC_TAX_CCID
2906        L_FINCHRG_NON_REC_TAX_CCID        ,--FINCHRG_NON_REC_TAX_CCID
2907        L_RECORD_TYPE_CODE                ,
2908        L_CREATED_BY                      ,
2909        L_CREATION_DATE                   ,
2910        L_LAST_UPDATED_BY                 ,
2911        L_LAST_UPDATE_DATE                ,
2912        L_LAST_UPDATE_LOGIN               ,
2913        L_REQUEST_ID                      ,
2914        L_PROGRAM_APPLICATION_ID          ,
2915        L_PROGRAM_ID                      ,
2916        L_PROGRAM_LOGIN_ID                ,
2917        L_ATTRIBUTE1             ,
2918        L_ATTRIBUTE2             ,
2919        L_ATTRIBUTE3             ,
2920        L_ATTRIBUTE4             ,
2921        L_ATTRIBUTE5             ,
2922        L_ATTRIBUTE6             ,
2923        L_ATTRIBUTE7             ,
2924        L_ATTRIBUTE8             ,
2925        L_ATTRIBUTE9             ,
2926        L_ATTRIBUTE10            ,
2927        L_ATTRIBUTE11            ,
2928        L_ATTRIBUTE12            ,
2929        L_ATTRIBUTE13            ,
2930        L_ATTRIBUTE14            ,
2931        L_ATTRIBUTE15            ,
2932        L_ATTRIBUTE_CATEGORY     ,
2933        1
2934   )
2935   SELECT
2936     codes.vat_tax_id                   L_TAX_RATE_ID,
2937     codes.tax_code                     L_TAX_RATE_CODE,
2938     status.content_owner_id            L_CONTENT_OWNER_ID,
2939     codes.start_date                   L_EFFECTIVE_FROM,
2940     codes.end_date                     L_EFFECTIVE_TO,
2941     status.tax_regime_code             L_TAX_REGIME_CODE ,
2942     status.tax                         L_TAX,
2943     status.tax_status_code             L_TAX_STATUS_CODE,
2944     'N'                                L_SCHEDULE_BASED_RATE_FLAG,
2945     'PERCENTAGE'                       L_RATE_TYPE_CODE,
2946     0                                  L_PERCENTAGE_RATE,
2947     NULL                               L_QUANTITY_RATE,
2948     NULL                               L_UOM_CODE,  --YK:8/31/2004: No need to populate it for Quantity Rates
2949     NULL                               L_TAX_JURISDICTION_CODE,
2950     NULL                               L_RECOVERY_TYPE_CODE,
2951     codes.enabled_flag                 L_ACTIVE_FLAG,
2952    'Y'                                 L_DEFAULT_RATE_FLAG    ,
2953     codes.start_date                   L_DEFAULT_FLG_EFFECTIVE_FROM ,
2954     codes.end_date                     L_DEFAULT_FLG_EFFECTIVE_TO   ,
2955     NULL                               L_DEFAULT_REC_TYPE_CODE      ,
2956     NULL                               L_DEFAULT_REC_RATE_CODE,
2957     NULL                               L_OFFSET_TAX,
2958     NULL                               L_OFFSET_STATUS_CODE ,
2959     NULL                               L_OFFSET_TAX_RATE_CODE  ,
2960     NULL                               L_RECOVERY_RULE_CODE    ,
2961     DECODE(codes.INTERIM_TAX_CCID,
2962            NULL, 'IMMEDIATE',
2963            'DEFERRED')                   L_DEF_REC_STTLMNT_OPTN_CD,
2964     codes.vat_transaction_type           L_VAT_TRANSACTION_TYPE_CODE,
2965     codes.AMOUNT_INCLUDES_TAX_FLAG       L_INCLUSIVE_TAX_FLAG,
2966     codes.AMOUNT_INCLUDES_TAX_OVERRIDE   L_TAX_INCLUSIVE_OVERRIDE_FLAG,
2967    'MIGRATED'                            L_RECORD_TYPE_CODE,
2968     codes.ATTRIBUTE1                     L_ATTRIBUTE1,
2969     codes.ATTRIBUTE2                     L_ATTRIBUTE2,
2973     codes.ATTRIBUTE6                     L_ATTRIBUTE6,
2970     codes.ATTRIBUTE3                     L_ATTRIBUTE3,
2971     codes.ATTRIBUTE4                     L_ATTRIBUTE4,
2972     codes.ATTRIBUTE5                     L_ATTRIBUTE5,
2974     codes.ATTRIBUTE7                     L_ATTRIBUTE7,
2975     codes.ATTRIBUTE8                     L_ATTRIBUTE8,
2976     codes.ATTRIBUTE9                     L_ATTRIBUTE9,
2977     codes.ATTRIBUTE10                    L_ATTRIBUTE10,
2978     codes.ATTRIBUTE11                    L_ATTRIBUTE11,
2979     codes.ATTRIBUTE12                    L_ATTRIBUTE12,
2980     codes.ATTRIBUTE13                    L_ATTRIBUTE13,
2981     codes.ATTRIBUTE14                    L_ATTRIBUTE14,
2982     codes.ATTRIBUTE15                    L_ATTRIBUTE15,
2983     codes.ATTRIBUTE_CATEGORY             L_ATTRIBUTE_CATEGORY,
2984     codes.set_of_books_id                L_LEDGER_ID,
2985     codes.org_id                         L_ORG_ID,
2986     codes.TAX_ACCOUNT_ID                 L_TAX_ACCOUNT_CCID,
2987     codes.INTERIM_TAX_CCID               L_INTERIM_TAX_CCID,
2988     codes.ADJ_CCID                       L_ADJ_CCID,
2989     codes.EDISC_CCID                     L_EDISC_CCID,
2990     codes.UNEDISC_CCID                   L_UNEDISC_CCID,
2991     codes.FINCHRG_CCID                   L_FINCHRG_CCID,
2992     codes.ADJ_NON_REC_TAX_CCID           L_ADJ_NON_REC_TAX_CCID,
2993     codes.EDISC_NON_REC_TAX_CCID         L_EDISC_NON_REC_TAX_CCID,
2994     codes.UNEDISC_NON_REC_TAX_CCID       L_UNEDISC_NON_REC_TAX_CCID,
2995     codes.FINCHRG_NON_REC_TAX_CCID       L_FINCHRG_NON_REC_TAX_CCID,
2996     NULL                                 L_NON_REC_ACCOUNT_CCID,
2997     'RATES'                              L_ADJ_FOR_ADHOC_AMT_CODE,
2998     'Y'                                  L_ALLOW_ADHOC_TAX_RATE_FLAG,
2999     fnd_global.user_id                   L_CREATED_BY,
3000     SYSDATE                              L_CREATION_DATE,
3001     fnd_global.user_id                   L_LAST_UPDATED_BY,
3002     SYSDATE                              L_LAST_UPDATE_DATE,
3003     fnd_global.user_id                   L_LAST_UPDATE_LOGIN,
3004     fnd_global.conc_request_id           L_REQUEST_ID,
3005     fnd_global.prog_appl_id              L_PROGRAM_APPLICATION_ID,
3006     fnd_global.conc_program_id           L_PROGRAM_ID,
3007     fnd_global.conc_login_id             L_PROGRAM_LOGIN_ID,
3008     DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
3009     codes.DESCRIPTION         DESCRIPTION -- Bug 4705196
3010   FROM
3011             zx_status_b               status,
3012             ar_vat_tax_all_b          codes,
3013             zx_party_tax_profile      ptp,
3014             ar_system_parameters_all  asp
3015   WHERE     status.tax_regime_code like '%-SALES-TAX-%'
3016   AND       status.tax = 'LOCATION'
3017   AND       status.tax_status_code = 'STANDARD'
3018   AND       status.content_owner_id = ptp.party_tax_profile_id
3019   AND       ptp.party_type_code = 'OU'
3020   -- YK:02/22/2005
3021   AND       ptp.party_id = codes.org_id
3022   AND       codes.org_id = asp.org_id
3023   AND       codes.tax_type <> 'TAX_GROUP'
3024 --  AND       (asp.tax_database_view_set NOT IN ('_A', '_V') OR
3025 --             codes.tax_type NOT IN ('SALES_TAX', 'LOCATION'))
3026 -- Bug Fix 4400733
3027   AND       (codes.global_attribute_category IS NULL OR
3028              codes.global_attribute_category NOT IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
3029                          'JL.BR.ARXSUVAT.AR_VAT_TAX',
3030                        'JL.CO.ARXSUVAT.AR_VAT_TAX'))
3031   AND       (asp.tax_database_view_set = 'O' AND codes.tax_type = 'LOCATION')
3032   AND NOT EXISTS (SELECT 1
3033                   FROM   zx_rates_b  rates
3034             WHERE  status.tax_regime_code = rates.tax_regime_code
3035                   AND    status.tax = rates.tax
3036                   AND    status.tax_status_code = rates.tax_status_code
3037                   AND    status.content_owner_id = rates.content_owner_id
3038                   AND    rates.tax_rate_code = codes.tax_code
3039                  );
3040 ELSE
3041   INSERT ALL
3042   INTO zx_rates_b_tmp
3043   (
3044       TAX_RATE_ID                    ,
3045       TAX_RATE_CODE                  ,
3046       CONTENT_OWNER_ID               ,
3047       EFFECTIVE_FROM                 ,
3048       EFFECTIVE_TO                   ,
3049       TAX_REGIME_CODE                ,
3050       TAX                            ,
3051       TAX_STATUS_CODE                ,
3052       SCHEDULE_BASED_RATE_FLAG       ,
3053       RATE_TYPE_CODE                 ,
3054       PERCENTAGE_RATE                ,
3055       QUANTITY_RATE                  ,
3056       UOM_CODE                       ,
3057       TAX_JURISDICTION_CODE          ,
3058       RECOVERY_TYPE_CODE             ,
3059       ACTIVE_FLAG                    ,
3060       DEFAULT_RATE_FLAG              ,
3061       DEFAULT_FLG_EFFECTIVE_FROM     ,
3062       DEFAULT_FLG_EFFECTIVE_TO       ,
3063       DEFAULT_REC_TYPE_CODE          ,
3064       DEFAULT_REC_RATE_CODE          ,
3065       OFFSET_TAX                     ,
3066       OFFSET_STATUS_CODE             ,
3067       OFFSET_TAX_RATE_CODE           ,
3068       RECOVERY_RULE_CODE             ,
3069       DEF_REC_SETTLEMENT_OPTION_CODE ,
3070       VAT_TRANSACTION_TYPE_CODE      ,
3071       ADJ_FOR_ADHOC_AMT_CODE         ,
3072       ALLOW_ADHOC_TAX_RATE_FLAG      ,
3073       TAX_CLASS                      ,
3074       SOURCE_ID                      ,
3078       RECORD_TYPE_CODE               ,
3075       TAXABLE_BASIS_FORMULA_CODE     ,
3076       INCLUSIVE_TAX_FLAG             ,
3077       TAX_INCLUSIVE_OVERRIDE_FLAG    ,
3079       CREATED_BY                     ,
3080       CREATION_DATE                  ,
3081       LAST_UPDATED_BY                ,
3082       LAST_UPDATE_DATE               ,
3083       LAST_UPDATE_LOGIN              ,
3084       REQUEST_ID                     ,
3085       PROGRAM_APPLICATION_ID         ,
3086       PROGRAM_ID                     ,
3087       PROGRAM_LOGIN_ID               ,
3088       ATTRIBUTE1                     ,
3089       ATTRIBUTE2                     ,
3090       ATTRIBUTE3                     ,
3091       ATTRIBUTE4                     ,
3092       ATTRIBUTE5                     ,
3093       ATTRIBUTE6                     ,
3094       ATTRIBUTE7                     ,
3095       ATTRIBUTE8                     ,
3096       ATTRIBUTE9                     ,
3097       ATTRIBUTE10                    ,
3098       ATTRIBUTE11                    ,
3099       ATTRIBUTE12                    ,
3100       ATTRIBUTE13                    ,
3101       ATTRIBUTE14                    ,
3102       ATTRIBUTE15                    ,
3103       ATTRIBUTE_CATEGORY              ,
3104       OBJECT_VERSION_NUMBER          ,
3105       ALLOW_EXEMPTIONS_FLAG          , -- Bug 4204464
3106       ALLOW_EXCEPTIONS_FLAG            -- Bug 4204464
3107       -- 6820043, commenting out description
3108       -- DESCRIPTION                   -- Bug 4705196
3109   )
3110   VALUES
3111   (
3112       L_TAX_RATE_ID                    ,  --TAX_RATE_ID
3113       L_TAX_RATE_CODE                  ,  --tax_rate_code
3114       L_CONTENT_OWNER_ID               ,  --content_owner_id
3115       L_EFFECTIVE_FROM                 ,  --effective_from
3116       L_EFFECTIVE_TO                   ,  --effective_to
3117       L_TAX_REGIME_CODE                ,  --tax_regime_code
3118       L_TAX                            ,  --tax
3119       L_TAX_STATUS_CODE                ,  --tax_status_code
3120       L_SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
3121       L_RATE_TYPE_CODE                 ,  --rate_type_code
3122       L_PERCENTAGE_RATE                ,  --percentage_rate
3123       L_QUANTITY_RATE                  ,  --quantity_rate
3124       L_UOM_CODE                       ,  --uom_code
3125       L_TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
3126       L_RECOVERY_TYPE_CODE             ,  --recovery_type_code
3127       L_ACTIVE_FLAG                    ,  --active_flag
3128       L_DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
3129       L_DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
3130       L_DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
3131       L_DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
3132       L_DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
3133       L_OFFSET_TAX                     ,  --offset_tax
3134       L_OFFSET_STATUS_CODE             ,  --offset_status_code
3135       L_OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
3136       L_RECOVERY_RULE_CODE             ,  --recovery_rule_code
3137       L_DEF_REC_STTLMNT_OPTN_CD        ,  --def_rec_settlement_option_code
3138       L_VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
3139       L_ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
3140       L_ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
3141       L_TAX_CLASS                      ,  --tax_class
3142       NULL                             ,  --source_id
3143       'STANDARD_TB'                    ,  --taxable_basis_formula_code
3144       L_INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
3145       L_TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
3146       'MIGRATED'                       ,  --record_type_code
3147       fnd_global.user_id               ,  --created_by
3148       SYSDATE                          ,  --creation_date
3149       fnd_global.user_id               ,  --last_updated_by
3150       SYSDATE                          ,  --last_update_date
3151       fnd_global.user_id               ,  --last_update_login
3152       fnd_global.conc_request_id       ,  --request_id
3153       fnd_global.prog_appl_id          ,  --program_application_id
3154       fnd_global.conc_program_id       ,  --program_id
3155       fnd_global.conc_login_id         ,  --program_login_id
3156       L_ATTRIBUTE1                     ,
3157       L_ATTRIBUTE2                     ,
3158       L_ATTRIBUTE3                     ,
3159       L_ATTRIBUTE4                     ,
3160       L_ATTRIBUTE5                     ,
3161       L_ATTRIBUTE6                     ,
3162       L_ATTRIBUTE7                     ,
3163       L_ATTRIBUTE8                     ,
3164       L_ATTRIBUTE9                     ,
3165       L_ATTRIBUTE10                    ,
3166       L_ATTRIBUTE11                    ,
3167       L_ATTRIBUTE12                    ,
3168       L_ATTRIBUTE13                    ,
3169       L_ATTRIBUTE14                    ,
3170       L_ATTRIBUTE15                    ,
3171       L_ATTRIBUTE_CATEGORY        ,
3172       1                                ,
3173       'Y'                              ,
3174       'Y'
3175     -- 6820043, commenting out description
3176     -- DESCRIPTION                       -- Bug 4705196
3177   )
3178   INTO zx_accounts
3179   (
3180       TAX_ACCOUNT_ID                 ,
3184       INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
3181       TAX_ACCOUNT_ENTITY_ID          ,
3182       TAX_ACCOUNT_ENTITY_CODE        ,
3183       LEDGER_ID                      ,
3185       TAX_ACCOUNT_CCID               ,
3186       INTERIM_TAX_CCID               ,
3187       NON_REC_ACCOUNT_CCID           ,
3188       ADJ_CCID                       ,
3189       EDISC_CCID                     ,
3190       UNEDISC_CCID                   ,
3191       FINCHRG_CCID                   ,
3192       ADJ_NON_REC_TAX_CCID           ,
3193       EDISC_NON_REC_TAX_CCID         ,
3194       UNEDISC_NON_REC_TAX_CCID       ,
3195       FINCHRG_NON_REC_TAX_CCID       ,
3196       RECORD_TYPE_CODE               ,
3197       CREATED_BY                  ,
3198       CREATION_DATE                  ,
3199       LAST_UPDATED_BY                ,
3200       LAST_UPDATE_DATE               ,
3201       LAST_UPDATE_LOGIN              ,
3202       REQUEST_ID                     ,
3203       PROGRAM_APPLICATION_ID         ,
3204       PROGRAM_ID                     ,
3205       PROGRAM_LOGIN_ID               ,
3206       ATTRIBUTE1             ,
3207       ATTRIBUTE2             ,
3208       ATTRIBUTE3             ,
3209       ATTRIBUTE4             ,
3210       ATTRIBUTE5             ,
3211       ATTRIBUTE6             ,
3212       ATTRIBUTE7             ,
3213       ATTRIBUTE8             ,
3214       ATTRIBUTE9             ,
3215       ATTRIBUTE10            ,
3216       ATTRIBUTE11            ,
3217       ATTRIBUTE12            ,
3218       ATTRIBUTE13            ,
3219       ATTRIBUTE14            ,
3220       ATTRIBUTE15            ,
3221       ATTRIBUTE_CATEGORY     ,
3222       OBJECT_VERSION_NUMBER
3223   )
3224   VALUES
3225   (
3226        ZX_ACCOUNTS_S.nextval  ,--TAX_ACCOUNT_ID
3227        L_TAX_RATE_ID          ,--TAX_RATE_ID
3228        'RATES'                 ,--TAX_ACCOUNT_ENTITY_CODE
3229        L_LEDGER_ID            ,--LEDGER_ID
3230        L_ORG_ID               ,--ORG_ID
3231        L_TAX_ACCOUNT_CCID     ,--TAX_ACCOUNT_CCID
3232        L_INTERIM_TAX_CCID     ,--INTERIM_TAX_CCID
3233        L_NON_REC_ACCOUNT_CCID ,--NON_REC_ACCOUNT_CCID --YK:07/06/2004:OPEN: understand the field
3234        L_ADJ_CCID             ,--ADJ_CCID
3235        L_EDISC_CCID           ,--EDISC_CCID
3236        L_UNEDISC_CCID         ,--UNEDISC_CCID
3237        L_FINCHRG_CCID         ,--FINCHRG_CCID
3238        L_ADJ_NON_REC_TAX_CCID     ,--ADJ_NON_REC_TAX_CCID
3239        L_EDISC_NON_REC_TAX_CCID   ,--EDISC_NON_REC_TAX_CCID
3240        L_UNEDISC_NON_REC_TAX_CCID ,--UNEDISC_NON_REC_TAX_CCID
3241        L_FINCHRG_NON_REC_TAX_CCID ,--FINCHRG_NON_REC_TAX_CCID
3242        L_RECORD_TYPE_CODE         ,
3243        L_CREATED_BY               ,
3244        L_CREATION_DATE            ,
3245        L_LAST_UPDATED_BY          ,
3246        L_LAST_UPDATE_DATE         ,
3247        L_LAST_UPDATE_LOGIN        ,
3248        L_REQUEST_ID               ,
3249        L_PROGRAM_APPLICATION_ID   ,
3250        L_PROGRAM_ID               ,
3251        L_PROGRAM_LOGIN_ID         ,
3252        L_ATTRIBUTE1             ,
3253        L_ATTRIBUTE2             ,
3254        L_ATTRIBUTE3             ,
3255        L_ATTRIBUTE4             ,
3256        L_ATTRIBUTE5             ,
3257        L_ATTRIBUTE6             ,
3258        L_ATTRIBUTE7             ,
3259        L_ATTRIBUTE8             ,
3260        L_ATTRIBUTE9             ,
3261        L_ATTRIBUTE10            ,
3262        L_ATTRIBUTE11            ,
3263        L_ATTRIBUTE12            ,
3264        L_ATTRIBUTE13            ,
3265        L_ATTRIBUTE14            ,
3266        L_ATTRIBUTE15            ,
3267        L_ATTRIBUTE_CATEGORY     ,
3268        1
3269   )
3270   SELECT
3271     codes.vat_tax_id                   L_TAX_RATE_ID,
3272     codes.tax_code                     L_TAX_RATE_CODE,
3273     status.content_owner_id            L_CONTENT_OWNER_ID,
3274     codes.start_date                   L_EFFECTIVE_FROM,
3275     codes.end_date                     L_EFFECTIVE_TO,
3276     status.tax_regime_code             L_TAX_REGIME_CODE ,
3277     status.tax                         L_TAX,
3278     status.tax_status_code             L_TAX_STATUS_CODE,
3279     'N'                                L_SCHEDULE_BASED_RATE_FLAG,
3280     'PERCENTAGE'                       L_RATE_TYPE_CODE,
3281     0                                  L_PERCENTAGE_RATE,
3282     NULL                               L_QUANTITY_RATE,
3283     NULL                               L_UOM_CODE,  --YK:8/31/2004: No need to populate it for Quantity Rates
3284     NULL                               L_TAX_JURISDICTION_CODE,
3285     NULL                               L_RECOVERY_TYPE_CODE,
3286     codes.enabled_flag                 L_ACTIVE_FLAG,
3287    'Y'                                 L_DEFAULT_RATE_FLAG    ,
3288     codes.start_date                   L_DEFAULT_FLG_EFFECTIVE_FROM ,
3289     codes.end_date                     L_DEFAULT_FLG_EFFECTIVE_TO   ,
3290     NULL                               L_DEFAULT_REC_TYPE_CODE      ,
3291     NULL                               L_DEFAULT_REC_RATE_CODE,
3292     NULL                               L_OFFSET_TAX,
3293     NULL                               L_OFFSET_STATUS_CODE ,
3294     NULL                               L_OFFSET_TAX_RATE_CODE  ,
3295     NULL                               L_RECOVERY_RULE_CODE    ,
3296     DECODE(codes.INTERIM_TAX_CCID,
3297            NULL, 'IMMEDIATE',
3298            'DEFERRED')                   L_DEF_REC_STTLMNT_OPTN_CD,
3302    'MIGRATED'                            L_RECORD_TYPE_CODE,
3299     codes.vat_transaction_type           L_VAT_TRANSACTION_TYPE_CODE,
3300     codes.AMOUNT_INCLUDES_TAX_FLAG       L_INCLUSIVE_TAX_FLAG,
3301     codes.AMOUNT_INCLUDES_TAX_OVERRIDE   L_TAX_INCLUSIVE_OVERRIDE_FLAG,
3303     codes.ATTRIBUTE1                     L_ATTRIBUTE1,
3304     codes.ATTRIBUTE2                     L_ATTRIBUTE2,
3305     codes.ATTRIBUTE3                     L_ATTRIBUTE3,
3306     codes.ATTRIBUTE4                     L_ATTRIBUTE4,
3307     codes.ATTRIBUTE5                     L_ATTRIBUTE5,
3308     codes.ATTRIBUTE6                     L_ATTRIBUTE6,
3309     codes.ATTRIBUTE7                     L_ATTRIBUTE7,
3310     codes.ATTRIBUTE8                     L_ATTRIBUTE8,
3311     codes.ATTRIBUTE9                     L_ATTRIBUTE9,
3312     codes.ATTRIBUTE10                    L_ATTRIBUTE10,
3313     codes.ATTRIBUTE11                    L_ATTRIBUTE11,
3314     codes.ATTRIBUTE12                    L_ATTRIBUTE12,
3315     codes.ATTRIBUTE13                    L_ATTRIBUTE13,
3316     codes.ATTRIBUTE14                    L_ATTRIBUTE14,
3317     codes.ATTRIBUTE15                    L_ATTRIBUTE15,
3318     codes.ATTRIBUTE_CATEGORY             L_ATTRIBUTE_CATEGORY,
3319     codes.set_of_books_id                L_LEDGER_ID,
3320     codes.org_id                         L_ORG_ID,
3321     codes.TAX_ACCOUNT_ID                 L_TAX_ACCOUNT_CCID,
3322     codes.INTERIM_TAX_CCID               L_INTERIM_TAX_CCID,
3323     codes.ADJ_CCID                       L_ADJ_CCID,
3324     codes.EDISC_CCID                     L_EDISC_CCID,
3325     codes.UNEDISC_CCID                   L_UNEDISC_CCID,
3326     codes.FINCHRG_CCID                   L_FINCHRG_CCID,
3327     codes.ADJ_NON_REC_TAX_CCID           L_ADJ_NON_REC_TAX_CCID,
3328     codes.EDISC_NON_REC_TAX_CCID         L_EDISC_NON_REC_TAX_CCID,
3329     codes.UNEDISC_NON_REC_TAX_CCID       L_UNEDISC_NON_REC_TAX_CCID,
3330     codes.FINCHRG_NON_REC_TAX_CCID       L_FINCHRG_NON_REC_TAX_CCID,
3331     NULL                                 L_NON_REC_ACCOUNT_CCID,
3332     'RATES'                              L_ADJ_FOR_ADHOC_AMT_CODE,
3333     'Y'                                  L_ALLOW_ADHOC_TAX_RATE_FLAG,
3334     fnd_global.user_id                   L_CREATED_BY,
3335     SYSDATE                              L_CREATION_DATE,
3336     fnd_global.user_id                   L_LAST_UPDATED_BY,
3337     SYSDATE                              L_LAST_UPDATE_DATE,
3338     fnd_global.user_id                   L_LAST_UPDATE_LOGIN,
3339     fnd_global.conc_request_id           L_REQUEST_ID,
3340     fnd_global.prog_appl_id              L_PROGRAM_APPLICATION_ID,
3341     fnd_global.conc_program_id           L_PROGRAM_ID,
3342     fnd_global.conc_login_id             L_PROGRAM_LOGIN_ID,
3343     DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
3344     codes.DESCRIPTION         DESCRIPTION -- Bug 4705196
3345   FROM
3346             zx_status_b               status,
3347             ar_vat_tax_all_b          codes,
3348             zx_party_tax_profile      ptp,
3349             ar_system_parameters_all  asp
3350   WHERE     status.tax_regime_code like '%-SALES-TAX-%'
3351   AND       status.tax = 'LOCATION'
3352   AND       status.tax_status_code = 'STANDARD'
3353   AND       status.content_owner_id = ptp.party_tax_profile_id
3354   AND       ptp.party_type_code = 'OU'
3355   -- YK:02/22/2005
3356   AND      ptp.party_id = codes.org_id
3357   AND      codes.org_id  = l_org_id
3358   AND      codes.org_id = asp.org_id
3359   AND       codes.tax_type <> 'TAX_GROUP'
3360 --  AND       (asp.tax_database_view_set NOT IN ('_A', '_V') OR
3361 --             codes.tax_type NOT IN ('SALES_TAX', 'LOCATION'))
3362 --Bug Fix 4400733
3363   AND       (codes.global_attribute_category IS NULL OR
3364              codes.global_attribute_category NOT IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
3365                          'JL.BR.ARXSUVAT.AR_VAT_TAX',
3366                        'JL.CO.ARXSUVAT.AR_VAT_TAX'))
3367   AND       (asp.tax_database_view_set = 'O' AND codes.tax_type = 'LOCATION')
3368 
3369   AND NOT EXISTS (SELECT 1
3370                   FROM   zx_rates_b  rates
3371             WHERE  status.tax_regime_code = rates.tax_regime_code
3372                   AND    status.tax = rates.tax
3373                   AND    status.tax_status_code = rates.tax_status_code
3374                   AND    status.content_owner_id = rates.content_owner_id
3375                   AND    rates.tax_rate_code = codes.tax_code
3376                  );
3377 
3378 END IF;
3379 
3380 END IF;
3381 EXCEPTION
3382   WHEN OTHERS THEN
3383     NULL;
3384 END migrate_loc_tax_code;
3385 /*===========================================================================+
3386  | PROCEDURE
3387  |   migrate_vnd_tax_code
3388  |
3389  | IN
3390  |   p_tax_id    NUMBER                 : NULL for initial load.
3391  |                                        NOT NULL for synch.
3392  |   p_tax_type  VARCHAR2 DEFAULT NULL  : NULL for initial load.
3393  |                                        NOT NULL for synch.
3394  |
3395  | OUT
3396  |   NA
3397  |
3398  | DESCRIPTION
3399  |   This procedure populates Regime to Rate entity for Tax Codes used to
3400  |   implement tax vendors (VERTEX, TAXWARE).
3401  |
3402  |   There was a change in implementation. Also refer to bug 3985196 for
3403  |   more information.
3404  |
3405  |
3406  |   **** Obsolete ****  Naming Convention - Initial Approach
3407  |  (replaced with the new approach. leaving it for FYI)
3408  |   ---------------------------------------------------------------------
3409  |   Regime Code : 'US-SALES-TAX-TAXWARE' if TAXWARE is installed in
3410  |                  one of the OUs.
3414  |   Tax         : STATE, COUNTY, CITY, DISTRICT taxes for each OU
3411  |                 'US-SALES-TAX-VERTEX' if VERTEX is installed in one of
3412  |                 the OUs.
3413  |
3415  |                 which TAXWARE or VERTEX is installed.
3416  |
3417  |                 Plus any tax code other than 'STATE', 'COUNTY', 'CITY',
3418  |                 'DISTRICT' defined in TAXWARE/VERTEX installed OUs
3419  |                 will become a tax.
3420  |
3421  |   Status Code : STANDARD
3422  |
3423  |   Rate Code   : STATE, COUNTY, CITY tax rate codes for each OU which
3424  |                 VERTEX or TAXWARE is installed.
3425  |
3426  |
3427  |
3428  |   **** New **** Naming Convention
3429  |   ---------------------------------------------------------------------
3430  |   Regime Code : 'US-SALES-TAX-location structure id'
3431  |                 This is the same definition as US Sales Tax Code migration.
3432  |
3433  |                 The objective of this change is to share same regime
3434  |                 for migrated US Sales Tax Codes and Vendor Tax Codes.
3435  |
3436  |                 Regimes are created from zxstaxdefmigb.pls
3437  |
3438  |
3439  |   Tax         : For Taxware integration
3440  |                 For each regime, create
3441  |                 STATE, COUNTY, CITY, SEC_COUNTY, SEC_CITY taxes
3442  |                 with global content owner
3443  |
3444  |                 For Vertex integration
3445  |                 For each regime, create
3446  |                 STATE, COUNTY, CITY, DISTRICT taxes
3447  |                 with global content owner
3448  |
3449  |                 Set live_for_processing_flag to 'Y' for these taxes
3450  |                 Set live_for_applicability_flag to 'N' for these taxes
3451  |
3452  |   Status Code : STANDARD
3453  |
3454  |   Rate Code   : STATE, COUNTY, CITY tax rate codes for taxes
3455  |                 created during migration. They're owned by each content owner.
3456  |
3457  |
3458  | SCOPE - PUBLIC
3459  |
3460  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
3461  |
3462  | CALLED FROM
3463  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
3464  |        zx_upg_control_pkg
3465  |
3466  | NOTES
3467  | 1. When it is called from zx_upg_control_pkg for synchronization, p_tax_type
3468  |    needs to be passed in.
3469  |
3470  |
3471  | MODIFICATION HISTORY
3472  | 01/19/2005   Yoshimichi Konishi   Created.
3473  |
3474  +==========================================================================*/
3475 PROCEDURE migrate_vnd_tax_code (p_tax_id    NUMBER,
3476                                 p_tax_type  VARCHAR2  DEFAULT  NULL)
3477 AS
3478   TYPE varchar30_rec_type IS TABLE OF VARCHAR2(30) INDEX BY BINARY_INTEGER;
3479   TYPE number15_rec_type  IS TABLE OF NUMBER(15)   INDEX BY BINARY_INTEGER;
3480 
3481   tax_regime_code_rec          varchar30_rec_type;
3482   content_owner_id_rec         number15_rec_type;
3483   org_id_rec                   number15_rec_type;
3484   location_tax_account_rec     number15_rec_type;
3485   set_of_books_id_rec          number15_rec_type;
3486   location_structure_id_rec    number15_rec_type;
3487 
3488   l_min_start_date             DATE;
3489   l_minimum_accountable_unit   NUMBER    := 0.1;
3490   l_precision                  NUMBER(1) := 2;
3491   l_tax_acct_source_tax        VARCHAR2(30);
3492 
3493 BEGIN
3494 IF is_update_needed_for_vnd_tax (p_tax_id, p_tax_type) THEN
3495 
3496   BEGIN
3497     SELECT precision,
3498            minimum_accountable_unit
3499     INTO   l_precision,
3500            l_minimum_accountable_unit
3501     FROM   fnd_currencies
3502     WHERE  currency_code = 'USD';
3503   EXCEPTION
3504     WHEN OTHERS THEN
3505        NULL;
3506   END;
3507 
3508 
3509   -- **** Create Tax for Taxware *****
3510   l_min_start_date := to_date('01-01-1952','DD-MM-YYYY'); --Bug 5475175
3511 /*
3512  IF L_MULTI_ORG_FLAG = 'Y'
3513  THEN
3514   SELECT min(start_date)
3515   INTO   l_min_start_date
3516   FROM   ar_system_parameters_all   asp,
3517          ar_vat_tax_all_b           avtb
3518   WHERE  tax_database_view_set = '_A'
3519   AND    asp.org_id = avtb.org_id;
3520  ELSE
3521   SELECT min(start_date)
3522   INTO   l_min_start_date
3523   FROM   ar_system_parameters_all   asp,
3524          ar_vat_tax_all_b           avtb
3525   WHERE  tax_database_view_set = '_A'
3526   AND    asp.org_id = l_org_id
3527   AND    asp.org_id = avtb.org_id;
3528 
3529  END IF;
3530 */
3531 
3532   IF l_min_start_date IS NOT NULL THEN
3533    IF L_MULTI_ORG_FLAG = 'Y'
3534    THEN
3535     SELECT zrb.tax_regime_code
3536     BULK COLLECT INTO tax_regime_code_rec
3537     FROM   zx_regimes_b  zrb,
3538            ar_system_parameters_all  asp
3539     WHERE  tax_regime_code LIKE 'US-SALES-TAX-%'
3540     AND    TO_CHAR(asp.location_structure_id) = LTRIM(tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
3541     AND    asp.tax_database_view_set = '_A';
3542    ELSE
3543        SELECT zrb.tax_regime_code
3544     BULK COLLECT INTO tax_regime_code_rec
3545     FROM   zx_regimes_b  zrb,
3546            ar_system_parameters_all  asp
3547     WHERE  tax_regime_code LIKE 'US-SALES-TAX-%'
3548     AND    TO_CHAR(asp.location_structure_id) = LTRIM(tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
3549     AND    asp.tax_database_view_set = '_A'
3550     AND    asp.org_id = l_org_id;
3551    END IF;
3552 
3553 
3557                   'STATE',                     -- tax
3554     FOR k IN 1..tax_regime_code_rec.count LOOP
3555       insert_tax_for_loc (l_min_start_date,
3556                   tax_regime_code_rec(k),
3558       'US',                        -- country
3559       'USD',                       -- currency
3560       l_precision,                 -- tax_precision
3561             l_minimum_accountable_unit,  -- tax_mau
3562       'NEAREST',                   -- rounding_rule_code
3563       'Y',                         -- allow_rounding_override
3564                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3565                                                --id_flex_num,
3566                   NULL,          -- tax_acct_cr_method
3567                   NULL,          -- tax_acct_source_tax
3568                   NULL,          -- tax_exmpt_cr_mthd
3569                   NULL,          -- tax_exmpt_src_tax
3570                   1,
3571                   NULL,          -- cross_curr_rate_type
3572                   'LOCATION',    -- tax_type
3573                   'Y',           -- live for applicability
3574                   'Y'
3575                  );
3576 
3577       insert_tax_for_loc (l_min_start_date,
3578                   tax_regime_code_rec(k),
3579                   'COUNTY',                    -- tax
3580       'US',                        -- country
3581       'USD',                       -- currency
3582       l_precision,                 -- tax_precision
3583             l_minimum_accountable_unit,  -- tax_mau
3584       'NEAREST',                   -- rounding_rule_code
3585       'Y',                         -- allow_rounding_override
3586                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3587                                                --id_flex_num,
3588                   NULL,          -- tax_acct_cr_method
3589                   NULL,          -- tax_acct_source_tax
3590                   NULL,          -- tax_exmpt_cr_mthd
3591                   NULL,          -- tax_exmpt_src_tax
3592                   1,
3593                   NULL,          -- cross_curr_rate_type
3594                   'LOCATION',    -- tax_type
3595                   'Y',           -- live for applicability
3596                   'Y'
3597                  );
3598 
3599       insert_tax_for_loc (l_min_start_date,
3600                   tax_regime_code_rec(k),
3601                   'CITY',                      -- tax
3602       'US',                        -- country
3603       'USD',                       -- currency
3604       l_precision,                 -- tax_precision
3605             l_minimum_accountable_unit,  -- tax_mau
3606       'NEAREST',                   -- rounding_rule_code
3607       'Y',                         -- allow_rounding_override
3608                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3609                                                --id_flex_num,
3610                   NULL,          -- tax_acct_cr_method
3611                   NULL,          -- tax_acct_source_tax
3612                   NULL,          -- tax_exmpt_cr_mthd
3613                   NULL,          -- tax_exmpt_src_tax
3614                   1,
3615                   NULL,          -- cross_curr_rate_type
3616                   'LOCATION',    -- tax_type
3617                   'Y',           -- live for applicability
3618                   'Y'
3619                  );
3620 
3621       insert_tax_for_loc (l_min_start_date,
3622                   tax_regime_code_rec(k),
3623                   'SEC_COUNTY',                -- tax
3624       'US',                        -- country
3625       'USD',                       -- currency
3626       l_precision,                 -- tax_precision
3627             l_minimum_accountable_unit,  -- tax_mau
3628       'NEAREST',                   -- rounding_rule_code
3629       'Y',                         -- allow_rounding_override
3630                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3631                                                --id_flex_num,
3632                   NULL,          -- tax_acct_cr_method
3633                   NULL,          -- tax_acct_source_tax
3634                   NULL,          -- tax_exmpt_cr_mthd
3635                   NULL,          -- tax_exmpt_src_tax
3636                   1,
3637                   NULL,          -- cross_curr_rate_type
3638                   'LOCATION',    -- tax_type
3639                   'N',           -- live for applicability
3640                   'N'
3641                  );
3642 
3643       insert_tax_for_loc (l_min_start_date,
3644                   tax_regime_code_rec(k),
3645                   'SEC_CITY',                  -- tax
3646       'US',                        -- country
3647       'USD',                       -- currency
3648       l_precision,                 -- tax_precision
3649             l_minimum_accountable_unit,  -- tax_mau
3650       'NEAREST',                   -- rounding_rule_code
3651       'Y',                         -- allow_rounding_override
3652                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3653                                                --id_flex_num,
3654                   NULL,          -- tax_acct_cr_method
3655                   NULL,          -- tax_acct_source_tax
3656                   NULL,          -- tax_exmpt_cr_mthd
3657                   NULL,          -- tax_exmpt_src_tax
3658                   1,
3659                   NULL,          -- cross_curr_rate_type
3663                  );
3660                   'LOCATION',    -- tax_type
3661                   'N',           -- live for applicability
3662                   'N'
3664     END LOOP;
3665   END IF;
3666   -- ***** End of Tax Creation for Taxware *****
3667 
3668 
3669 
3670   -- **** Create Tax for Vertex *****
3671  /* l_min_start_date := '';
3672 
3673   IF L_MULTI_ORG_FLAG = 'Y'
3674   THEN
3675 
3676   SELECT min(start_date)
3677   INTO   l_min_start_date
3678   FROM   ar_system_parameters_all   asp,
3679          ar_vat_tax_all_b           avtb
3680   WHERE  tax_database_view_set = '_V'
3681   AND    asp.org_id = avtb.org_id;
3682 
3683   ELSE
3684 
3685   SELECT min(start_date)
3686   INTO   l_min_start_date
3687   FROM   ar_system_parameters_all   asp,
3688          ar_vat_tax_all_b           avtb
3689   WHERE  tax_database_view_set = '_V'
3690   AND    asp.org_id = l_org_id
3691   AND    asp.org_id = avtb.org_id ;
3692 
3693   END IF;*/ --Bug 5475175
3694 
3695   IF l_min_start_date IS NOT NULL THEN
3696     IF L_MULTI_ORG_FLAG = 'Y'
3697     THEN
3698       SELECT zrb.tax_regime_code
3699       BULK COLLECT INTO tax_regime_code_rec
3700       FROM   zx_regimes_b  zrb,
3701        ar_system_parameters_all  asp
3702       WHERE  tax_regime_code LIKE 'US-SALES-TAX-%'
3703       AND    TO_CHAR(asp.location_structure_id) = LTRIM(tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
3704       AND    asp.tax_database_view_set = '_V';
3705     ELSE
3706 
3707       SELECT zrb.tax_regime_code
3708       BULK COLLECT INTO tax_regime_code_rec
3709       FROM   zx_regimes_b  zrb,
3710        ar_system_parameters_all  asp
3711       WHERE  tax_regime_code LIKE 'US-SALES-TAX-%'
3712       AND    TO_CHAR(asp.location_structure_id) = LTRIM(tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
3713       AND    asp.tax_database_view_set = '_V'
3714       AND    asp.org_id = l_org_id  ;
3715      END IF;
3716 
3717     FOR k IN 1..tax_regime_code_rec.count LOOP
3718       insert_tax_for_loc (l_min_start_date,
3719                   tax_regime_code_rec(k),
3720                   'STATE',                     -- tax
3721       'US',                        -- country
3722       'USD',                       -- currency
3723       l_precision,                 -- tax_precision
3724             l_minimum_accountable_unit,  -- tax_mau
3725       'NEAREST',                   -- rounding_rule_code
3726       'Y',                         -- allow_rounding_override
3727                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3728                                                --id_flex_num,
3729                   NULL,          -- tax_acct_cr_method
3730                   NULL,          -- tax_acct_source_tax
3731                   NULL,          -- tax_exmpt_cr_mthd
3732                   NULL,          -- tax_exmpt_src_tax
3733                   1,
3734                   NULL,          -- cross_curr_rate_type
3735                   'LOCATION',    -- tax_type
3736                   'Y',           -- live for applicability
3737                   'Y'
3738                  );
3739 
3740       insert_tax_for_loc (l_min_start_date,
3741                   tax_regime_code_rec(k),
3742                   'COUNTY',                    -- tax
3743       'US',                        -- country
3744       'USD',                       -- currency
3745       l_precision,                 -- tax_precision
3746             l_minimum_accountable_unit,  -- tax_mau
3747       'NEAREST',                   -- rounding_rule_code
3748       'Y',                         -- allow_rounding_override
3749                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3750                                                --id_flex_num,
3751                   NULL,          -- tax_acct_cr_method
3752                   NULL,          -- tax_acct_source_tax
3753                   NULL,          -- tax_exmpt_cr_mthd
3754                   NULL,          -- tax_exmpt_src_tax
3755                   1,
3756                   NULL,          -- cross_curr_rate_type
3757                   'LOCATION',    -- tax_type
3758                   'Y',           -- live for applicability
3759                   'Y'
3760                  );
3761 
3762       insert_tax_for_loc (l_min_start_date,
3763                   tax_regime_code_rec(k),
3764                   'CITY',                      -- tax
3765       'US',                        -- country
3766       'USD',                       -- currency
3767       l_precision,                 -- tax_precision
3768             l_minimum_accountable_unit,  -- tax_mau
3769       'NEAREST',                   -- rounding_rule_code
3770       'Y',                         -- allow_rounding_override
3771                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3772                                                --id_flex_num,
3773                   NULL,          -- tax_acct_cr_method
3774                   NULL,          -- tax_acct_source_tax
3775                   NULL,          -- tax_exmpt_cr_mthd
3776                   NULL,          -- tax_exmpt_src_tax
3777                   1,
3778                   NULL,          -- cross_curr_rate_type
3779                   'LOCATION',    -- tax_type
3780                   'Y',           -- live for applicability
3781                   'Y'
3782                  );
3783 
3784       --bug6336567
3788         FROM zx_taxes_b
3785       BEGIN
3786         SELECT tax_account_source_tax
3787   INTO l_tax_acct_source_tax
3789         WHERE tax_regime_code = tax_regime_code_rec(k)
3790         AND tax = 'CITY'
3791         AND record_type_code = 'MIGRATED';
3792       EXCEPTION
3793         WHEN OTHERS THEN
3794     l_tax_acct_source_tax := NULL;
3795       END;
3796 
3797       insert_tax_for_loc (l_min_start_date,
3798                   tax_regime_code_rec(k),
3799                   'DISTRICT',                  -- tax
3800       'US',                        -- country
3801       'USD',                       -- currency
3802       l_precision,                 -- tax_precision
3803             l_minimum_accountable_unit,  -- tax_mau
3804       'NEAREST',                   -- rounding_rule_code
3805       'Y',                         -- allow_rounding_override
3806                   TO_NUMBER(LTRIM(tax_regime_code_rec(k), 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-')),
3807                                                --id_flex_num,
3808                   NULL,          -- tax_acct_cr_method
3809                   l_tax_acct_source_tax,       -- tax_acct_source_tax
3810                   NULL,          -- tax_exmpt_cr_mthd
3811                   NULL,          -- tax_exmpt_src_tax
3812                   1,
3813                   NULL,          -- cross_curr_rate_type
3814                   'LOCATION',    -- tax_type
3815                   'N',           -- live for applicability
3816                   'N'
3817                  );
3818     END LOOP;
3819   END IF;
3820   -- **** End of Tax Creation for Vertex *****
3821 
3822 
3823 
3824   -- Populate Status : Taxware and Vertex
3825   IF L_MULTI_ORG_FLAG = 'Y'
3826   THEN
3827   INSERT ALL
3828   INTO ZX_STATUS_B_TMP
3829   (
3830       TAX_STATUS_ID,
3831       TAX_STATUS_CODE,
3832       CONTENT_OWNER_ID,
3833       EFFECTIVE_FROM,
3834       EFFECTIVE_TO,
3835       TAX,
3836       TAX_REGIME_CODE,
3837       RULE_BASED_RATE_FLAG,
3838       ALLOW_RATE_OVERRIDE_FLAG,
3839       ALLOW_EXEMPTIONS_FLAG,
3840       ALLOW_EXCEPTIONS_FLAG,
3841       DEFAULT_STATUS_FLAG,
3842       DEFAULT_FLG_EFFECTIVE_FROM,
3843       DEFAULT_FLG_EFFECTIVE_TO,
3844       DEF_REC_SETTLEMENT_OPTION_CODE,
3845       RECORD_TYPE_CODE,
3846       ATTRIBUTE1,
3847       ATTRIBUTE2,
3848       ATTRIBUTE3,
3849       ATTRIBUTE4,
3850       ATTRIBUTE5,
3851       ATTRIBUTE6,
3852       ATTRIBUTE7,
3853       ATTRIBUTE8,
3854       ATTRIBUTE9,
3855       ATTRIBUTE10,
3856       ATTRIBUTE11,
3857       ATTRIBUTE12,
3858       ATTRIBUTE13,
3859       ATTRIBUTE14,
3860       ATTRIBUTE15,
3861       ATTRIBUTE_CATEGORY,
3862       CREATION_DATE,
3863       CREATED_BY,
3864       LAST_UPDATE_DATE,
3865       LAST_UPDATED_BY,
3866       LAST_UPDATE_LOGIN,
3867       REQUEST_ID,
3868       OBJECT_VERSION_NUMBER
3869   )
3870   VALUES
3871   (
3872       ZX_STATUS_B_S.NEXTVAL,    --TAX_STATUS_ID
3873       l_tax_status_code,        --TAX_STATUS_CODE
3874       l_content_owner_id,       --CONTENT_OWNER_ID
3875       l_effective_from,         --EFFECTIVE_FROM
3876       l_effective_to,           --EFFECTIVE_TO
3877       l_tax,                    --TAX
3878       l_tax_regime_code,        --TAX_REGIME_CODE
3879       l_rule_based_flag,        --RULE_BASED_RATE_FLAG
3880       l_allow_rate_override_flag,   --ALLOW_RATE_OVERRIDE_FLAG
3881       l_allow_exemptions_flag,  --ALLOW_EXEMPTIONS_FLAG
3882       l_allow_exceptions_flag,  --ALLOW_EXCEPTIONS_FLAG
3883       l_default_status_flag,        --DEFAULT_STATUS_FLAG
3884       l_default_flg_effective_from, --DEFAULT_FLG_EFFECTIVE_FROM
3885       l_default_flg_effective_to,   --DEFAULT_FLG_EFFECTIVE_TO
3886       l_def_rec_setlmnt_optn_code,  --DEF_REC_SETTLEMENT_OPTION_CODE
3887       l_record_type_code,
3888       l_attribute1,
3889       l_attribute2,
3890       l_attribute3,
3891       l_attribute4,
3892       l_attribute5,
3893       l_attribute6,
3894       l_attribute7,
3895       l_attribute8,
3896       l_attribute9,
3897       l_attribute10,
3898       l_attribute11,
3899       l_attribute12,
3900       l_attribute13,
3901       l_attribute14,
3902       l_attribute15,
3903       l_attribute_category,
3904       l_creation_date,
3905       l_created_by,
3906       l_last_update_date,
3907       l_last_updated_by,
3908       l_last_update_login,
3909       l_request_id,
3910       1
3911   )
3912   SELECT
3913       'STANDARD'              l_tax_status_code,        --TAX_STATUS_CODE
3914       -99                     l_content_owner_id,       --CONTENT_OWNER_ID
3915       ztb.effective_from      l_effective_from,         --EFFECTIVE_FROM
3916       NULL                    l_effective_to,           --EFFECTIVE_TO
3917       ztb.tax                 l_tax,                    --TAX
3918       ztb.tax_regime_code     l_tax_regime_code,        --TAX_REGIME_CODE
3919       'N'                     l_rule_based_flag,        --RULE_BASED_RATE_FLAG
3920       'Y'                     l_allow_rate_override_flag,   --ALLOW_RATE_OVERRIDE_FLAG
3921       ztb.allow_exemptions_flag   l_allow_exemptions_flag,  --ALLOW_EXEMPTIONS_FLAG
3922       ztb.allow_exceptions_flag   l_allow_exceptions_flag,  --ALLOW_EXCEPTIONS_FLAG
3923       'Y'                     l_default_status_flag,        --DEFAULT_STATUS_FLAG
3927       'MIGRATED'              l_record_type_code,
3924       NULL                    l_default_flg_effective_from, --DEFAULT_FLG_EFFECTIVE_FROM
3925       NULL                    l_default_flg_effective_to,   --DEFAULT_FLG_EFFECTIVE_TO
3926       NULL                    l_def_rec_setlmnt_optn_code,  --DEF_REC_SETTLEMENT_OPTION_CODE
3928       NULL                    l_attribute1,
3929       NULL                    l_attribute2,
3930       NULL                    l_attribute3,
3931       NULL                    l_attribute4,
3932       NULL                    l_attribute5,
3933       NULL                    l_attribute6,
3934       NULL                    l_attribute7,
3935       NULL                    l_attribute8,
3936       NULL                    l_attribute9,
3937       NULL                    l_attribute10,
3938       NULL                    l_attribute11,
3939       NULL                    l_attribute12,
3940       NULL                    l_attribute13,
3941       NULL                    l_attribute14,
3942       NULL                    l_attribute15,
3943       NULL                    l_attribute_category,
3944       SYSDATE                 l_creation_date,
3945       fnd_global.user_id      l_created_by,
3946       SYSDATE                 l_last_update_date,
3947       fnd_global.user_id      l_last_updated_by,
3948       fnd_global.conc_login_id    l_last_update_login,
3949       fnd_global.conc_request_id  l_request_id
3950   FROM            zx_taxes_b                ztb,
3951                   ar_system_parameters_all  asp
3952   WHERE           ztb.tax_regime_code LIKE 'US-SALES-TAX-%'
3953   AND             TO_CHAR(asp.location_structure_id) = LTRIM(tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
3954   AND             asp.tax_database_view_set IN ('_A', '_V')
3955   AND             asp.org_id = asp.org_id
3956   AND NOT EXISTS  (SELECT 1
3957                    FROM   zx_status_b  zsb
3958                    WHERE  zsb.tax_regime_code = ztb.tax_regime_code
3959                    AND    zsb.tax = ztb.tax
3960                    AND    zsb.content_owner_id = -99
3961                    AND    zsb.tax_status_code = 'STANDARD');
3962   ELSE
3963 
3964     INSERT ALL
3965   INTO ZX_STATUS_B_TMP
3966   (
3967       TAX_STATUS_ID,
3968       TAX_STATUS_CODE,
3969       CONTENT_OWNER_ID,
3970       EFFECTIVE_FROM,
3971       EFFECTIVE_TO,
3972       TAX,
3973       TAX_REGIME_CODE,
3974       RULE_BASED_RATE_FLAG,
3975       ALLOW_RATE_OVERRIDE_FLAG,
3976       ALLOW_EXEMPTIONS_FLAG,
3977       ALLOW_EXCEPTIONS_FLAG,
3978       DEFAULT_STATUS_FLAG,
3979       DEFAULT_FLG_EFFECTIVE_FROM,
3980       DEFAULT_FLG_EFFECTIVE_TO,
3981       DEF_REC_SETTLEMENT_OPTION_CODE,
3982       RECORD_TYPE_CODE,
3983       ATTRIBUTE1,
3984       ATTRIBUTE2,
3985       ATTRIBUTE3,
3986       ATTRIBUTE4,
3987       ATTRIBUTE5,
3988       ATTRIBUTE6,
3989       ATTRIBUTE7,
3990       ATTRIBUTE8,
3991       ATTRIBUTE9,
3992       ATTRIBUTE10,
3993       ATTRIBUTE11,
3994       ATTRIBUTE12,
3995       ATTRIBUTE13,
3996       ATTRIBUTE14,
3997       ATTRIBUTE15,
3998       ATTRIBUTE_CATEGORY,
3999       CREATION_DATE,
4000       CREATED_BY,
4001       LAST_UPDATE_DATE,
4002       LAST_UPDATED_BY,
4003       LAST_UPDATE_LOGIN,
4004       REQUEST_ID,
4005       OBJECT_VERSION_NUMBER
4006   )
4007   VALUES
4008   (
4009       ZX_STATUS_B_S.NEXTVAL,    --TAX_STATUS_ID
4010       l_tax_status_code,        --TAX_STATUS_CODE
4011       l_content_owner_id,       --CONTENT_OWNER_ID
4012       l_effective_from,         --EFFECTIVE_FROM
4013       l_effective_to,           --EFFECTIVE_TO
4014       l_tax,                    --TAX
4015       l_tax_regime_code,        --TAX_REGIME_CODE
4016       l_rule_based_flag,        --RULE_BASED_RATE_FLAG
4017       l_allow_rate_override_flag,   --ALLOW_RATE_OVERRIDE_FLAG
4018       l_allow_exemptions_flag,  --ALLOW_EXEMPTIONS_FLAG
4019       l_allow_exceptions_flag,  --ALLOW_EXCEPTIONS_FLAG
4020       l_default_status_flag,        --DEFAULT_STATUS_FLAG
4021       l_default_flg_effective_from, --DEFAULT_FLG_EFFECTIVE_FROM
4022       l_default_flg_effective_to,   --DEFAULT_FLG_EFFECTIVE_TO
4023       l_def_rec_setlmnt_optn_code,  --DEF_REC_SETTLEMENT_OPTION_CODE
4024       l_record_type_code,
4025       l_attribute1,
4026       l_attribute2,
4027       l_attribute3,
4028       l_attribute4,
4029       l_attribute5,
4030       l_attribute6,
4031       l_attribute7,
4032       l_attribute8,
4033       l_attribute9,
4034       l_attribute10,
4035       l_attribute11,
4036       l_attribute12,
4037       l_attribute13,
4038       l_attribute14,
4039       l_attribute15,
4040       l_attribute_category,
4041       l_creation_date,
4042       l_created_by,
4043       l_last_update_date,
4044       l_last_updated_by,
4045       l_last_update_login,
4046       l_request_id,
4047       1
4048   )
4049   SELECT
4050       'STANDARD'              l_tax_status_code,        --TAX_STATUS_CODE
4051       -99                     l_content_owner_id,       --CONTENT_OWNER_ID
4052       ztb.effective_from      l_effective_from,         --EFFECTIVE_FROM
4053       NULL                    l_effective_to,           --EFFECTIVE_TO
4054       ztb.tax                 l_tax,                    --TAX
4055       ztb.tax_regime_code     l_tax_regime_code,        --TAX_REGIME_CODE
4056       'N'                     l_rule_based_flag,        --RULE_BASED_RATE_FLAG
4060       'Y'                     l_default_status_flag,        --DEFAULT_STATUS_FLAG
4057       'Y'                     l_allow_rate_override_flag,   --ALLOW_RATE_OVERRIDE_FLAG
4058       ztb.allow_exemptions_flag   l_allow_exemptions_flag,  --ALLOW_EXEMPTIONS_FLAG
4059       ztb.allow_exceptions_flag   l_allow_exceptions_flag,  --ALLOW_EXCEPTIONS_FLAG
4061       NULL                    l_default_flg_effective_from, --DEFAULT_FLG_EFFECTIVE_FROM
4062       NULL                    l_default_flg_effective_to,   --DEFAULT_FLG_EFFECTIVE_TO
4063       NULL                    l_def_rec_setlmnt_optn_code,  --DEF_REC_SETTLEMENT_OPTION_CODE
4064       'MIGRATED'              l_record_type_code,
4065       NULL                    l_attribute1,
4066       NULL                    l_attribute2,
4067       NULL                    l_attribute3,
4068       NULL                    l_attribute4,
4069       NULL                    l_attribute5,
4070       NULL                    l_attribute6,
4071       NULL                    l_attribute7,
4072       NULL                    l_attribute8,
4073       NULL                    l_attribute9,
4074       NULL                    l_attribute10,
4075       NULL                    l_attribute11,
4076       NULL                    l_attribute12,
4077       NULL                    l_attribute13,
4078       NULL                    l_attribute14,
4079       NULL                    l_attribute15,
4080       NULL                    l_attribute_category,
4081       SYSDATE                 l_creation_date,
4082       fnd_global.user_id      l_created_by,
4083       SYSDATE                 l_last_update_date,
4084       fnd_global.user_id      l_last_updated_by,
4085       fnd_global.conc_login_id    l_last_update_login,
4086       fnd_global.conc_request_id  l_request_id
4087   FROM            zx_taxes_b                ztb,
4088                   ar_system_parameters_all  asp
4089   WHERE           ztb.tax_regime_code LIKE 'US-SALES-TAX-%'
4090   AND             TO_CHAR(asp.location_structure_id) = LTRIM(tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
4091   AND             asp.tax_database_view_set IN ('_A', '_V')
4092   AND             asp.org_id = l_org_id
4093   AND             asp.org_id = asp.org_id
4094   AND NOT EXISTS  (SELECT 1
4095                    FROM   zx_status_b  zsb
4096                    WHERE  zsb.tax_regime_code = ztb.tax_regime_code
4097                    AND    zsb.tax = ztb.tax
4098                    AND    zsb.content_owner_id = -99
4099                    AND    zsb.tax_status_code = 'STANDARD');
4100 
4101 
4102   END IF;
4103 
4104   --
4105   -- Populate Rates : Taxware and Vertex : Phase I
4106   --
4107   -- Creating tax rate code for each content owners
4108   -- using Tax Code created for vendor integration
4109   -- in AR_VAT_TAX_ALL_B
4110   --
4111    BEGIN
4112   IF L_MULTI_ORG_FLAG = 'Y'
4113   THEN
4114 
4115 
4116   INSERT ALL
4117   INTO zx_rates_b_tmp
4118   (
4119       TAX_RATE_ID                    ,
4120       TAX_RATE_CODE                  ,
4121       CONTENT_OWNER_ID               ,
4122       EFFECTIVE_FROM                 ,
4123       EFFECTIVE_TO                   ,
4124       TAX_REGIME_CODE                ,
4125       TAX                            ,
4126       TAX_STATUS_CODE                ,
4127       SCHEDULE_BASED_RATE_FLAG       ,
4128       RATE_TYPE_CODE                 ,
4129       PERCENTAGE_RATE                ,
4130       QUANTITY_RATE                  ,
4131       UOM_CODE                       ,
4132       TAX_JURISDICTION_CODE          ,
4133       RECOVERY_TYPE_CODE             ,
4134       ACTIVE_FLAG                    ,
4135       DEFAULT_RATE_FLAG              ,
4136       DEFAULT_FLG_EFFECTIVE_FROM     ,
4137       DEFAULT_FLG_EFFECTIVE_TO       ,
4138       DEFAULT_REC_TYPE_CODE          ,
4139       DEFAULT_REC_RATE_CODE          ,
4140       OFFSET_TAX                     ,
4141       OFFSET_STATUS_CODE             ,
4142       OFFSET_TAX_RATE_CODE           ,
4143       RECOVERY_RULE_CODE             ,
4144       DEF_REC_SETTLEMENT_OPTION_CODE ,
4145       VAT_TRANSACTION_TYPE_CODE      ,
4146       ADJ_FOR_ADHOC_AMT_CODE         ,
4147       ALLOW_ADHOC_TAX_RATE_FLAG      ,
4148       TAX_CLASS                      ,
4149       SOURCE_ID                      ,
4150       TAXABLE_BASIS_FORMULA_CODE     ,
4151       INCLUSIVE_TAX_FLAG             ,
4152       TAX_INCLUSIVE_OVERRIDE_FLAG    ,
4153       RECORD_TYPE_CODE               ,
4154       CREATED_BY                     ,
4155       CREATION_DATE                  ,
4156       LAST_UPDATED_BY                ,
4157       LAST_UPDATE_DATE               ,
4158       LAST_UPDATE_LOGIN              ,
4159       REQUEST_ID                     ,
4160       PROGRAM_APPLICATION_ID         ,
4161       PROGRAM_ID                     ,
4162       PROGRAM_LOGIN_ID               ,
4163       ATTRIBUTE1                     ,
4164       ATTRIBUTE2                     ,
4165       ATTRIBUTE3                     ,
4166       ATTRIBUTE4                     ,
4167       ATTRIBUTE5                     ,
4168       ATTRIBUTE6                     ,
4169       ATTRIBUTE7                     ,
4170       ATTRIBUTE8                     ,
4171       ATTRIBUTE9                     ,
4172       ATTRIBUTE10                    ,
4173       ATTRIBUTE11                    ,
4174       ATTRIBUTE12                    ,
4175       ATTRIBUTE13                    ,
4176       ATTRIBUTE14                    ,
4177       ATTRIBUTE15                    ,
4178       ATTRIBUTE_CATEGORY             ,
4182    -- 6820043, commenting out description
4179       OBJECT_VERSION_NUMBER          ,
4180       ALLOW_EXEMPTIONS_FLAG          , --Bug 4204464
4181       ALLOW_EXCEPTIONS_FLAG
4183    -- DESCRIPTION                      -- Bug 4705196
4184   )
4185   VALUES
4186   (
4187             L_TAX_RATE_ID                    ,  --TAX_RATE_ID
4188       L_TAX_RATE_CODE                  ,  --tax_rate_code
4189       L_CONTENT_OWNER_ID               ,  --content_owner_id
4190       L_EFFECTIVE_FROM                 ,  --effective_from
4191       L_EFFECTIVE_TO                   ,  --effective_to
4192       L_TAX_REGIME_CODE                ,  --tax_regime_code
4193       L_TAX                            ,  --tax
4194       L_TAX_STATUS_CODE                ,  --tax_status_code
4195       L_SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
4196       L_RATE_TYPE_CODE                 ,  --rate_type_code
4197       L_PERCENTAGE_RATE                ,  --percentage_rate
4198       L_QUANTITY_RATE                  ,  --quantity_rate
4199       L_UOM_CODE                       ,  --uom_code
4200       L_TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
4201       L_RECOVERY_TYPE_CODE             ,  --recovery_type_code
4202       L_ACTIVE_FLAG                    ,  --active_flag
4203       L_DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
4204       L_DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
4205       L_DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
4206       L_DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
4207       L_DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
4208       L_OFFSET_TAX                     ,  --offset_tax
4209       L_OFFSET_STATUS_CODE             ,  --offset_status_code
4210       L_OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
4211       L_RECOVERY_RULE_CODE             ,  --recovery_rule_code
4212       L_DEF_REC_STTLMNT_OPTN_CD        ,  --def_rec_settlement_option_code
4213       L_VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
4214       L_ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
4215       L_ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
4216       L_TAX_CLASS                      ,  --tax_class
4217       NULL                             ,  --source_id
4218       'STANDARD_TB'                    ,  --taxable_basis_formula_code
4219       L_INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
4220       L_TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
4221       'MIGRATED'                       ,  --record_type_code
4222       fnd_global.user_id               ,  --created_by
4223       SYSDATE                          ,  --creation_date
4224       fnd_global.user_id               ,  --last_updated_by
4225       SYSDATE                          ,  --last_update_date
4226       fnd_global.user_id               ,  --last_update_login
4227       fnd_global.conc_request_id       ,  --request_id
4228       fnd_global.prog_appl_id          ,  --program_application_id
4229       fnd_global.conc_program_id       ,  --program_id
4230       fnd_global.conc_login_id         ,  --program_login_id
4231       L_ATTRIBUTE1                     ,
4232       L_ATTRIBUTE2                     ,
4233       L_ATTRIBUTE3                     ,
4234       L_ATTRIBUTE4                     ,
4235       L_ATTRIBUTE5                     ,
4236       L_ATTRIBUTE6                     ,
4237       L_ATTRIBUTE7                     ,
4238       L_ATTRIBUTE8                     ,
4239       L_ATTRIBUTE9                     ,
4240       L_ATTRIBUTE10                    ,
4241       L_ATTRIBUTE11                    ,
4242       L_ATTRIBUTE12                    ,
4243       L_ATTRIBUTE13                    ,
4244       L_ATTRIBUTE14                    ,
4245       L_ATTRIBUTE15                    ,
4246       L_ATTRIBUTE_CATEGORY       ,
4247       1                                ,
4248       'Y'                              ,  --ALLOW_EXEMPTIONS_FLAG
4249       'Y'                                 --ALLOW_EXCEPTIONS_FLAG
4250     -- 6820043, commenting out description
4251     -- DESCRIPTION                        -- Bug 4705196
4252   )
4253   INTO zx_accounts
4254   (
4255       TAX_ACCOUNT_ID                 ,
4256       TAX_ACCOUNT_ENTITY_ID          ,
4257       TAX_ACCOUNT_ENTITY_CODE        ,
4258       LEDGER_ID                      ,
4259       INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
4260       TAX_ACCOUNT_CCID               ,
4261       INTERIM_TAX_CCID               ,
4262       NON_REC_ACCOUNT_CCID           ,
4263       ADJ_CCID                       ,
4264       EDISC_CCID                     ,
4265       UNEDISC_CCID                   ,
4266       FINCHRG_CCID                   ,
4267       ADJ_NON_REC_TAX_CCID           ,
4268       EDISC_NON_REC_TAX_CCID         ,
4269       UNEDISC_NON_REC_TAX_CCID       ,
4270       FINCHRG_NON_REC_TAX_CCID       ,
4271       RECORD_TYPE_CODE               ,
4272       CREATED_BY                  ,
4273       CREATION_DATE                  ,
4274       LAST_UPDATED_BY                ,
4275       LAST_UPDATE_DATE               ,
4276       LAST_UPDATE_LOGIN              ,
4277       REQUEST_ID                     ,
4278       PROGRAM_APPLICATION_ID         ,
4279       PROGRAM_ID                     ,
4280       PROGRAM_LOGIN_ID               ,
4281       ATTRIBUTE1             ,
4282       ATTRIBUTE2             ,
4283       ATTRIBUTE3             ,
4284       ATTRIBUTE4             ,
4285       ATTRIBUTE5             ,
4289       ATTRIBUTE9             ,
4286       ATTRIBUTE6             ,
4287       ATTRIBUTE7             ,
4288       ATTRIBUTE8             ,
4290       ATTRIBUTE10            ,
4291       ATTRIBUTE11            ,
4292       ATTRIBUTE12            ,
4293       ATTRIBUTE13            ,
4294       ATTRIBUTE14            ,
4295       ATTRIBUTE15            ,
4296       ATTRIBUTE_CATEGORY     ,
4297       OBJECT_VERSION_NUMBER
4298   )
4299   VALUES
4300   (
4301        ZX_ACCOUNTS_S.nextval  ,--TAX_ACCOUNT_ID
4302              L_TAX_RATE_ID          ,--TAX_RATE_ID
4303        'RATES'                 ,--TAX_ACCOUNT_ENTITY_CODE
4304        L_LEDGER_ID            ,--LEDGER_ID
4305        L_ORG_ID               ,--ORG_ID
4306        L_TAX_ACCOUNT_CCID     ,--TAX_ACCOUNT_CCID
4307        L_INTERIM_TAX_CCID     ,--INTERIM_TAX_CCID
4308        L_NON_REC_ACCOUNT_CCID ,--NON_REC_ACCOUNT_CCID --YK:07/06/2004:OPEN: understand the field
4309        L_ADJ_CCID             ,--ADJ_CCID
4310        L_EDISC_CCID           ,--EDISC_CCID
4311        L_UNEDISC_CCID         ,--UNEDISC_CCID
4312        L_FINCHRG_CCID         ,--FINCHRG_CCID
4313        L_ADJ_NON_REC_TAX_CCID            ,--ADJ_NON_REC_TAX_CCID
4314        L_EDISC_NON_REC_TAX_CCID          ,--EDISC_NON_REC_TAX_CCID
4315        L_UNEDISC_NON_REC_TAX_CCID        ,--UNEDISC_NON_REC_TAX_CCID
4316        L_FINCHRG_NON_REC_TAX_CCID        ,--FINCHRG_NON_REC_TAX_CCID
4317        L_RECORD_TYPE_CODE                ,
4318              L_CREATED_BY                      ,
4319              L_CREATION_DATE                   ,
4320              L_LAST_UPDATED_BY                 ,
4321              L_LAST_UPDATE_DATE                ,
4322              L_LAST_UPDATE_LOGIN               ,
4323        L_REQUEST_ID                      ,
4324        L_PROGRAM_APPLICATION_ID          ,
4325        L_PROGRAM_ID                      ,
4326        L_PROGRAM_LOGIN_ID                ,
4327        L_ATTRIBUTE1             ,
4328        L_ATTRIBUTE2             ,
4329        L_ATTRIBUTE3             ,
4330        L_ATTRIBUTE4             ,
4331        L_ATTRIBUTE5             ,
4332        L_ATTRIBUTE6             ,
4333        L_ATTRIBUTE7             ,
4334        L_ATTRIBUTE8             ,
4335        L_ATTRIBUTE9             ,
4336        L_ATTRIBUTE10            ,
4337        L_ATTRIBUTE11            ,
4338        L_ATTRIBUTE12            ,
4339        L_ATTRIBUTE13            ,
4340        L_ATTRIBUTE14            ,
4341        L_ATTRIBUTE15            ,
4342        L_ATTRIBUTE_CATEGORY     ,
4343        1
4344   )
4345   SELECT
4346     avt.vat_tax_id                     L_TAX_RATE_ID,
4347     avt.tax_code                       L_TAX_RATE_CODE,
4348     ptp.party_tax_profile_id           L_CONTENT_OWNER_ID,
4349     avt.start_date                     L_EFFECTIVE_FROM,
4350     avt.end_date                       L_EFFECTIVE_TO,
4351           zrb.tax_regime_code                L_TAX_REGIME_CODE ,
4352           ztb.tax                            L_TAX,
4353           'STANDARD'                         L_TAX_STATUS_CODE,
4354     'N'                                L_SCHEDULE_BASED_RATE_FLAG,
4355           'PERCENTAGE'                       L_RATE_TYPE_CODE,
4356           avt.tax_rate                       L_PERCENTAGE_RATE,
4357           NULL                               L_QUANTITY_RATE,
4358     NULL                               L_UOM_CODE,
4359     NULL                               L_TAX_JURISDICTION_CODE,
4360     NULL                               L_RECOVERY_TYPE_CODE,
4361     avt.enabled_flag                   L_ACTIVE_FLAG,
4362    'Y'                                 L_DEFAULT_RATE_FLAG    ,
4363     avt.start_date                     L_DEFAULT_FLG_EFFECTIVE_FROM ,
4364     avt.end_date                       L_DEFAULT_FLG_EFFECTIVE_TO   ,
4365     NULL                               L_DEFAULT_REC_TYPE_CODE      ,
4366     NULL                               L_DEFAULT_REC_RATE_CODE,
4367     NULL                               L_OFFSET_TAX,
4368     NULL                               L_OFFSET_STATUS_CODE ,
4369     NULL                               L_OFFSET_TAX_RATE_CODE  ,
4370     NULL                               L_RECOVERY_RULE_CODE    ,
4371     DECODE(avt.INTERIM_TAX_CCID,
4372      NULL, 'IMMEDIATE',
4373      'DEFERRED')                 L_DEF_REC_STTLMNT_OPTN_CD,
4374     avt.vat_transaction_type           L_VAT_TRANSACTION_TYPE_CODE,
4375     avt.AMOUNT_INCLUDES_TAX_FLAG       L_INCLUSIVE_TAX_FLAG,
4376     avt.AMOUNT_INCLUDES_TAX_OVERRIDE   L_TAX_INCLUSIVE_OVERRIDE_FLAG,
4377    'MIGRATED'                          L_RECORD_TYPE_CODE,
4378     avt.ATTRIBUTE1                     L_ATTRIBUTE1,
4379     avt.ATTRIBUTE2                     L_ATTRIBUTE2,
4380     avt.ATTRIBUTE3                     L_ATTRIBUTE3,
4381     avt.ATTRIBUTE4                     L_ATTRIBUTE4,
4382     avt.ATTRIBUTE5                     L_ATTRIBUTE5,
4383     avt.ATTRIBUTE6                     L_ATTRIBUTE6,
4384     avt.ATTRIBUTE7                     L_ATTRIBUTE7,
4385     avt.ATTRIBUTE8                     L_ATTRIBUTE8,
4386     avt.ATTRIBUTE9                     L_ATTRIBUTE9,
4387     avt.ATTRIBUTE10                    L_ATTRIBUTE10,
4388     avt.ATTRIBUTE11                    L_ATTRIBUTE11,
4389     avt.ATTRIBUTE12                    L_ATTRIBUTE12,
4390     avt.ATTRIBUTE13                    L_ATTRIBUTE13,
4391     avt.ATTRIBUTE14                    L_ATTRIBUTE14,
4392     avt.ATTRIBUTE15                    L_ATTRIBUTE15,
4393     avt.ATTRIBUTE_CATEGORY             L_ATTRIBUTE_CATEGORY,
4394     avt.set_of_books_id                L_LEDGER_ID,
4398     avt.ADJ_CCID                       L_ADJ_CCID,
4395     avt.org_id                         L_ORG_ID,
4396     avt.TAX_ACCOUNT_ID                 L_TAX_ACCOUNT_CCID,
4397     avt.INTERIM_TAX_CCID               L_INTERIM_TAX_CCID,
4399     avt.EDISC_CCID                     L_EDISC_CCID,
4400     avt.UNEDISC_CCID                   L_UNEDISC_CCID,
4401     avt.FINCHRG_CCID                   L_FINCHRG_CCID,
4402     avt.ADJ_NON_REC_TAX_CCID           L_ADJ_NON_REC_TAX_CCID,
4403     avt.EDISC_NON_REC_TAX_CCID         L_EDISC_NON_REC_TAX_CCID,
4404     avt.UNEDISC_NON_REC_TAX_CCID       L_UNEDISC_NON_REC_TAX_CCID,
4405     avt.FINCHRG_NON_REC_TAX_CCID       L_FINCHRG_NON_REC_TAX_CCID,
4406           NULL                               L_NON_REC_ACCOUNT_CCID,
4407     'TAX_RATE'                           L_ADJ_FOR_ADHOC_AMT_CODE,
4408     'Y'                                  L_ALLOW_ADHOC_TAX_RATE_FLAG,
4409     fnd_global.user_id                   L_CREATED_BY,
4410     SYSDATE                              L_CREATION_DATE,
4411     fnd_global.user_id                   L_LAST_UPDATED_BY,
4412     SYSDATE                              L_LAST_UPDATE_DATE,
4413     fnd_global.user_id                   L_LAST_UPDATE_LOGIN,
4414     fnd_global.conc_request_id           L_REQUEST_ID,
4415     fnd_global.prog_appl_id              L_PROGRAM_APPLICATION_ID,
4416     fnd_global.conc_program_id           L_PROGRAM_ID,
4417     fnd_global.conc_login_id             L_PROGRAM_LOGIN_ID,
4418           DECODE(avt.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
4419     avt.DESCRIPTION         DESCRIPTION -- Bug 4705196
4420   FROM
4421             ar_vat_tax_all_b          avt,
4422             zx_party_tax_profile      ptp,
4423             ar_system_parameters_all  asp,
4424             zx_regimes_b              zrb,
4425             zx_taxes_b                ztb
4426   WHERE     ptp.party_type_code = 'OU'
4427   AND       ptp.party_id = avt.org_id
4428   AND       avt.org_id = asp.org_id
4429   AND       asp.tax_database_view_set IN ('_A', '_V')
4430   AND       (avt.global_attribute_category IS NULL OR
4431              avt.global_attribute_category NOT IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
4432                                    'JL.BR.ARXSUVAT.AR_VAT_TAX',
4433                      'JL.CO.ARXSUVAT.AR_VAT_TAX'))
4434   AND       avt.tax_type <> 'TAX_GROUP'
4435   AND       TO_CHAR(asp.location_structure_id) = LTRIM(zrb.tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
4436   AND       ztb.tax_regime_code = zrb.tax_regime_code
4437   --Bug fix 5346118
4438   AND       ((avt.tax_code = ztb.tax and avt.tax_type = 'SALES_TAX' ) or (avt.tax_type = 'LOCATION' and ztb.tax='LOCATION'))
4439   --bug#7343019
4440   AND       ptp.party_tax_profile_id = ztb.content_owner_id
4441   AND NOT EXISTS (SELECT 1
4442                   FROM   zx_rates_b  rates
4443             WHERE  rates.tax_rate_id = avt.vat_tax_id
4444                  );
4445  ELSE
4446 
4447 
4448   INSERT ALL
4449   INTO zx_rates_b_tmp
4450   (
4451       TAX_RATE_ID                    ,
4452       TAX_RATE_CODE                  ,
4453       CONTENT_OWNER_ID               ,
4454       EFFECTIVE_FROM                 ,
4455       EFFECTIVE_TO                   ,
4456       TAX_REGIME_CODE                ,
4457       TAX                            ,
4458       TAX_STATUS_CODE                ,
4459       SCHEDULE_BASED_RATE_FLAG       ,
4460       RATE_TYPE_CODE                 ,
4461       PERCENTAGE_RATE                ,
4462       QUANTITY_RATE                  ,
4463       UOM_CODE                       ,
4464       TAX_JURISDICTION_CODE          ,
4465       RECOVERY_TYPE_CODE             ,
4466       ACTIVE_FLAG                    ,
4467       DEFAULT_RATE_FLAG              ,
4468       DEFAULT_FLG_EFFECTIVE_FROM     ,
4469       DEFAULT_FLG_EFFECTIVE_TO       ,
4470       DEFAULT_REC_TYPE_CODE          ,
4471       DEFAULT_REC_RATE_CODE          ,
4472       OFFSET_TAX                     ,
4473       OFFSET_STATUS_CODE             ,
4474       OFFSET_TAX_RATE_CODE           ,
4475       RECOVERY_RULE_CODE             ,
4476       DEF_REC_SETTLEMENT_OPTION_CODE ,
4477       VAT_TRANSACTION_TYPE_CODE      ,
4478       ADJ_FOR_ADHOC_AMT_CODE         ,
4479       ALLOW_ADHOC_TAX_RATE_FLAG      ,
4480       TAX_CLASS                      ,
4481       SOURCE_ID                      ,
4482       TAXABLE_BASIS_FORMULA_CODE     ,
4483       INCLUSIVE_TAX_FLAG             ,
4484       TAX_INCLUSIVE_OVERRIDE_FLAG    ,
4485       RECORD_TYPE_CODE               ,
4486       CREATED_BY                     ,
4487       CREATION_DATE                  ,
4488       LAST_UPDATED_BY                ,
4489       LAST_UPDATE_DATE               ,
4490       LAST_UPDATE_LOGIN              ,
4491       REQUEST_ID                     ,
4492       PROGRAM_APPLICATION_ID         ,
4493       PROGRAM_ID                     ,
4494       PROGRAM_LOGIN_ID               ,
4495       ATTRIBUTE1                     ,
4496       ATTRIBUTE2                     ,
4497       ATTRIBUTE3                     ,
4498       ATTRIBUTE4                     ,
4499       ATTRIBUTE5                     ,
4500       ATTRIBUTE6                     ,
4501       ATTRIBUTE7                     ,
4502       ATTRIBUTE8                     ,
4503       ATTRIBUTE9                     ,
4504       ATTRIBUTE10                    ,
4505       ATTRIBUTE11                    ,
4506       ATTRIBUTE12                    ,
4507       ATTRIBUTE13                    ,
4508       ATTRIBUTE14                    ,
4509       ATTRIBUTE15                    ,
4513       ALLOW_EXCEPTIONS_FLAG
4510       ATTRIBUTE_CATEGORY             ,
4511       OBJECT_VERSION_NUMBER          ,
4512       ALLOW_EXEMPTIONS_FLAG          , --Bug 4204464
4514      -- 6820043, commenting out description
4515      -- DESCRIPTION                    -- Bug 4705196
4516   )
4517   VALUES
4518   (
4519             L_TAX_RATE_ID                    ,  --TAX_RATE_ID
4520       L_TAX_RATE_CODE                  ,  --tax_rate_code
4521       L_CONTENT_OWNER_ID               ,  --content_owner_id
4522       L_EFFECTIVE_FROM                 ,  --effective_from
4523       L_EFFECTIVE_TO                   ,  --effective_to
4524       L_TAX_REGIME_CODE                ,  --tax_regime_code
4525       L_TAX                            ,  --tax
4526       L_TAX_STATUS_CODE                ,  --tax_status_code
4527       L_SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
4528       L_RATE_TYPE_CODE                 ,  --rate_type_code
4529       L_PERCENTAGE_RATE                ,  --percentage_rate
4530       L_QUANTITY_RATE                  ,  --quantity_rate
4531       L_UOM_CODE                       ,  --uom_code
4532       L_TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
4533       L_RECOVERY_TYPE_CODE             ,  --recovery_type_code
4534       L_ACTIVE_FLAG                    ,  --active_flag
4535       L_DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
4536       L_DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
4537       L_DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
4538       L_DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
4539       L_DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
4540       L_OFFSET_TAX                     ,  --offset_tax
4541       L_OFFSET_STATUS_CODE             ,  --offset_status_code
4542       L_OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
4543       L_RECOVERY_RULE_CODE             ,  --recovery_rule_code
4544       L_DEF_REC_STTLMNT_OPTN_CD        ,  --def_rec_settlement_option_code
4545       L_VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
4546       L_ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
4547       L_ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
4548       L_TAX_CLASS                      ,  --tax_class
4549       NULL                             ,  --source_id
4550       'STANDARD_TB'                    ,  --taxable_basis_formula_code
4551       L_INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
4552       L_TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
4553       'MIGRATED'                       ,  --record_type_code
4554       fnd_global.user_id               ,  --created_by
4555       SYSDATE                          ,  --creation_date
4556       fnd_global.user_id               ,  --last_updated_by
4557       SYSDATE                          ,  --last_update_date
4558       fnd_global.user_id               ,  --last_update_login
4559       fnd_global.conc_request_id       ,  --request_id
4560       fnd_global.prog_appl_id          ,  --program_application_id
4561       fnd_global.conc_program_id       ,  --program_id
4562       fnd_global.conc_login_id         ,  --program_login_id
4563       L_ATTRIBUTE1                     ,
4564       L_ATTRIBUTE2                     ,
4565       L_ATTRIBUTE3                     ,
4566       L_ATTRIBUTE4                     ,
4567       L_ATTRIBUTE5                     ,
4568       L_ATTRIBUTE6                     ,
4569       L_ATTRIBUTE7                     ,
4570       L_ATTRIBUTE8                     ,
4571       L_ATTRIBUTE9                     ,
4572       L_ATTRIBUTE10                    ,
4573       L_ATTRIBUTE11                    ,
4574       L_ATTRIBUTE12                    ,
4575       L_ATTRIBUTE13                    ,
4576       L_ATTRIBUTE14                    ,
4577       L_ATTRIBUTE15                    ,
4578       L_ATTRIBUTE_CATEGORY       ,
4579       1                                ,
4580       'Y'                              ,  --ALLOW_EXEMPTIONS_FLAG
4581       'Y'                                 --ALLOW_EXCEPTIONS_FLAG
4582     -- 6820043, commenting out description
4583     -- DESCRIPTION                        -- Bug 4705196
4584   )
4585   INTO zx_accounts
4586   (
4587       TAX_ACCOUNT_ID                 ,
4588       TAX_ACCOUNT_ENTITY_ID          ,
4589       TAX_ACCOUNT_ENTITY_CODE        ,
4590       LEDGER_ID                      ,
4591       INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
4592       TAX_ACCOUNT_CCID               ,
4593       INTERIM_TAX_CCID               ,
4594       NON_REC_ACCOUNT_CCID           ,
4595       ADJ_CCID                       ,
4596       EDISC_CCID                     ,
4597       UNEDISC_CCID                   ,
4598       FINCHRG_CCID                   ,
4599       ADJ_NON_REC_TAX_CCID           ,
4600       EDISC_NON_REC_TAX_CCID         ,
4601       UNEDISC_NON_REC_TAX_CCID       ,
4602       FINCHRG_NON_REC_TAX_CCID       ,
4603       RECORD_TYPE_CODE               ,
4604       CREATED_BY                  ,
4605       CREATION_DATE                  ,
4606       LAST_UPDATED_BY                ,
4607       LAST_UPDATE_DATE               ,
4608       LAST_UPDATE_LOGIN              ,
4609       REQUEST_ID                     ,
4610       PROGRAM_APPLICATION_ID         ,
4611       PROGRAM_ID                     ,
4612       PROGRAM_LOGIN_ID               ,
4613       ATTRIBUTE1             ,
4614       ATTRIBUTE2             ,
4615       ATTRIBUTE3             ,
4616       ATTRIBUTE4             ,
4620       ATTRIBUTE8             ,
4617       ATTRIBUTE5             ,
4618       ATTRIBUTE6             ,
4619       ATTRIBUTE7             ,
4621       ATTRIBUTE9             ,
4622       ATTRIBUTE10            ,
4623       ATTRIBUTE11            ,
4624       ATTRIBUTE12            ,
4625       ATTRIBUTE13            ,
4626       ATTRIBUTE14            ,
4627       ATTRIBUTE15            ,
4628       ATTRIBUTE_CATEGORY     ,
4629       OBJECT_VERSION_NUMBER
4630   )
4631   VALUES
4632   (
4633        ZX_ACCOUNTS_S.nextval  ,--TAX_ACCOUNT_ID
4634        L_TAX_RATE_ID          ,--TAX_RATE_ID
4635        'RATES'                 ,--TAX_ACCOUNT_ENTITY_CODE
4636        L_LEDGER_ID            ,--LEDGER_ID
4637        L_ORG_ID               ,--ORG_ID
4638        L_TAX_ACCOUNT_CCID     ,--TAX_ACCOUNT_CCID
4639        L_INTERIM_TAX_CCID     ,--INTERIM_TAX_CCID
4640        L_NON_REC_ACCOUNT_CCID ,--NON_REC_ACCOUNT_CCID --YK:07/06/2004:OPEN: understand the field
4641        L_ADJ_CCID             ,--ADJ_CCID
4642        L_EDISC_CCID           ,--EDISC_CCID
4643        L_UNEDISC_CCID         ,--UNEDISC_CCID
4644        L_FINCHRG_CCID         ,--FINCHRG_CCID
4645        L_ADJ_NON_REC_TAX_CCID            ,--ADJ_NON_REC_TAX_CCID
4646        L_EDISC_NON_REC_TAX_CCID          ,--EDISC_NON_REC_TAX_CCID
4647        L_UNEDISC_NON_REC_TAX_CCID        ,--UNEDISC_NON_REC_TAX_CCID
4648        L_FINCHRG_NON_REC_TAX_CCID        ,--FINCHRG_NON_REC_TAX_CCID
4649        L_RECORD_TYPE_CODE                ,
4650        L_CREATED_BY                      ,
4651        L_CREATION_DATE                   ,
4652        L_LAST_UPDATED_BY                 ,
4653        L_LAST_UPDATE_DATE                ,
4654        L_LAST_UPDATE_LOGIN               ,
4655        L_REQUEST_ID                      ,
4656        L_PROGRAM_APPLICATION_ID          ,
4657        L_PROGRAM_ID                      ,
4658        L_PROGRAM_LOGIN_ID                ,
4659        L_ATTRIBUTE1             ,
4660        L_ATTRIBUTE2             ,
4661        L_ATTRIBUTE3             ,
4662        L_ATTRIBUTE4             ,
4663        L_ATTRIBUTE5             ,
4664        L_ATTRIBUTE6             ,
4665        L_ATTRIBUTE7             ,
4666        L_ATTRIBUTE8             ,
4667        L_ATTRIBUTE9             ,
4668        L_ATTRIBUTE10            ,
4669        L_ATTRIBUTE11            ,
4670        L_ATTRIBUTE12            ,
4671        L_ATTRIBUTE13            ,
4672        L_ATTRIBUTE14            ,
4673        L_ATTRIBUTE15            ,
4674        L_ATTRIBUTE_CATEGORY     ,
4675        1
4676   )
4677   SELECT
4678     avt.vat_tax_id                     L_TAX_RATE_ID,
4679     avt.tax_code                       L_TAX_RATE_CODE,
4680     ptp.party_tax_profile_id           L_CONTENT_OWNER_ID,
4681     avt.start_date                     L_EFFECTIVE_FROM,
4682     avt.end_date                       L_EFFECTIVE_TO,
4683           zrb.tax_regime_code                L_TAX_REGIME_CODE ,
4684           ztb.tax                            L_TAX,
4685           'STANDARD'                         L_TAX_STATUS_CODE,
4686     'N'                                L_SCHEDULE_BASED_RATE_FLAG,
4687           'PERCENTAGE'                       L_RATE_TYPE_CODE,
4688           avt.tax_rate                       L_PERCENTAGE_RATE,
4689           NULL                               L_QUANTITY_RATE,
4690     NULL                               L_UOM_CODE,
4691     NULL                               L_TAX_JURISDICTION_CODE,
4692     NULL                               L_RECOVERY_TYPE_CODE,
4693     avt.enabled_flag                   L_ACTIVE_FLAG,
4694    'Y'                                 L_DEFAULT_RATE_FLAG    ,
4695     avt.start_date                     L_DEFAULT_FLG_EFFECTIVE_FROM ,
4696     avt.end_date                       L_DEFAULT_FLG_EFFECTIVE_TO   ,
4697     NULL                               L_DEFAULT_REC_TYPE_CODE      ,
4698     NULL                               L_DEFAULT_REC_RATE_CODE,
4699     NULL                               L_OFFSET_TAX,
4700     NULL                               L_OFFSET_STATUS_CODE ,
4701     NULL                               L_OFFSET_TAX_RATE_CODE  ,
4702     NULL                               L_RECOVERY_RULE_CODE    ,
4703     DECODE(avt.INTERIM_TAX_CCID,
4704      NULL, 'IMMEDIATE',
4705      'DEFERRED')                 L_DEF_REC_STTLMNT_OPTN_CD,
4706     avt.vat_transaction_type           L_VAT_TRANSACTION_TYPE_CODE,
4707     avt.AMOUNT_INCLUDES_TAX_FLAG       L_INCLUSIVE_TAX_FLAG,
4708     avt.AMOUNT_INCLUDES_TAX_OVERRIDE   L_TAX_INCLUSIVE_OVERRIDE_FLAG,
4709    'MIGRATED'                          L_RECORD_TYPE_CODE,
4710     avt.ATTRIBUTE1                     L_ATTRIBUTE1,
4711     avt.ATTRIBUTE2                     L_ATTRIBUTE2,
4712     avt.ATTRIBUTE3                     L_ATTRIBUTE3,
4713     avt.ATTRIBUTE4                     L_ATTRIBUTE4,
4714     avt.ATTRIBUTE5                     L_ATTRIBUTE5,
4715     avt.ATTRIBUTE6                     L_ATTRIBUTE6,
4716     avt.ATTRIBUTE7                     L_ATTRIBUTE7,
4717     avt.ATTRIBUTE8                     L_ATTRIBUTE8,
4718     avt.ATTRIBUTE9                     L_ATTRIBUTE9,
4719     avt.ATTRIBUTE10                    L_ATTRIBUTE10,
4720     avt.ATTRIBUTE11                    L_ATTRIBUTE11,
4721     avt.ATTRIBUTE12                    L_ATTRIBUTE12,
4722     avt.ATTRIBUTE13                    L_ATTRIBUTE13,
4723     avt.ATTRIBUTE14                    L_ATTRIBUTE14,
4724     avt.ATTRIBUTE15                    L_ATTRIBUTE15,
4725     avt.ATTRIBUTE_CATEGORY             L_ATTRIBUTE_CATEGORY,
4729     avt.INTERIM_TAX_CCID               L_INTERIM_TAX_CCID,
4726     avt.set_of_books_id                L_LEDGER_ID,
4727     l_org_id                           L_ORG_ID,
4728     avt.TAX_ACCOUNT_ID                 L_TAX_ACCOUNT_CCID,
4730     avt.ADJ_CCID                       L_ADJ_CCID,
4731     avt.EDISC_CCID                     L_EDISC_CCID,
4732     avt.UNEDISC_CCID                   L_UNEDISC_CCID,
4733     avt.FINCHRG_CCID                   L_FINCHRG_CCID,
4734     avt.ADJ_NON_REC_TAX_CCID           L_ADJ_NON_REC_TAX_CCID,
4735     avt.EDISC_NON_REC_TAX_CCID         L_EDISC_NON_REC_TAX_CCID,
4736     avt.UNEDISC_NON_REC_TAX_CCID       L_UNEDISC_NON_REC_TAX_CCID,
4737     avt.FINCHRG_NON_REC_TAX_CCID       L_FINCHRG_NON_REC_TAX_CCID,
4738     NULL                               L_NON_REC_ACCOUNT_CCID,
4739     'TAX_RATE'                         L_ADJ_FOR_ADHOC_AMT_CODE,
4740     'Y'                                L_ALLOW_ADHOC_TAX_RATE_FLAG,
4741     fnd_global.user_id                 L_CREATED_BY,
4742     SYSDATE                            L_CREATION_DATE,
4743     fnd_global.user_id                 L_LAST_UPDATED_BY,
4744     SYSDATE                            L_LAST_UPDATE_DATE,
4745     fnd_global.user_id                 L_LAST_UPDATE_LOGIN,
4746     fnd_global.conc_request_id         L_REQUEST_ID,
4747     fnd_global.prog_appl_id            L_PROGRAM_APPLICATION_ID,
4748     fnd_global.conc_program_id         L_PROGRAM_ID,
4749     fnd_global.conc_login_id           L_PROGRAM_LOGIN_ID,
4750     DECODE(avt.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
4751     avt.DESCRIPTION         DESCRIPTION -- Bug 4705196
4752   FROM
4753             ar_vat_tax_all_b          avt,
4754             zx_party_tax_profile      ptp,
4755             ar_system_parameters_all  asp,
4756             zx_regimes_b              zrb,
4757             zx_taxes_b                ztb
4758   WHERE     ptp.party_type_code = 'OU'
4759   AND       ptp.party_id = l_org_id
4760   AND       ptp.party_id = avt.org_id
4761   AND       avt.org_id = asp.org_id
4762   AND       asp.tax_database_view_set IN ('_A', '_V')
4763   AND       (avt.global_attribute_category IS NULL OR
4764              avt.global_attribute_category NOT IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
4765                                    'JL.BR.ARXSUVAT.AR_VAT_TAX',
4766                      'JL.CO.ARXSUVAT.AR_VAT_TAX'))
4767   AND       avt.tax_type <> 'TAX_GROUP'
4768   AND       TO_CHAR(asp.location_structure_id) = LTRIM(zrb.tax_regime_code, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ-_')
4769   AND       ztb.tax_regime_code = zrb.tax_regime_code
4770   --Bug fix 5346118
4771   AND       ((avt.tax_code = ztb.tax and avt.tax_type = 'SALES_TAX' ) or (avt.tax_type = 'LOCATION' and ztb.tax='LOCATION'))
4772   --bug#7343019
4773   AND       ptp.party_tax_profile_id = ztb.content_owner_id
4774   AND NOT EXISTS (SELECT 1
4775                   FROM   zx_rates_b  rates
4776             WHERE  rates.tax_rate_id = avt.vat_tax_id
4777                  );
4778 
4779  END IF;
4780  EXCEPTION WHEN OTHERS THEN
4781   NULL;
4782  END;
4783 
4784 
4785   --
4786   -- Populate Rates : Taxware and Vertex : Phase II
4787   --
4788   -- Creating tax rate code for each content owners
4789   -- In this phase we're not using Tax Code in AR_VAT_TAX_ALL_B
4790   -- as Tax Codes are not defined in 11i.
4791   --
4792 
4793  IF L_MULTI_ORG_FLAG = 'Y'
4794  THEN
4795   SELECT  ptp.party_tax_profile_id,
4796           asp.org_id,
4797           asp.location_tax_account,
4798           asp.set_of_books_id,
4799           asp.location_structure_id
4800   BULK COLLECT INTO
4801           content_owner_id_rec,
4802           org_id_rec,
4803           location_tax_account_rec,
4804           set_of_books_id_rec,
4805           location_structure_id_rec
4806   FROM    ar_system_parameters_all   asp,
4807           zx_party_tax_profile       ptp
4808   WHERE   ptp.party_type_code = 'OU'
4809   AND     ptp.party_id = asp.org_id
4810   AND     asp.tax_database_view_set IN ('_A', '_V');
4811   ELSE
4812     SELECT  ptp.party_tax_profile_id,
4813           asp.org_id,
4814           asp.location_tax_account,
4815           asp.set_of_books_id,
4816           asp.location_structure_id
4817   BULK COLLECT INTO
4818           content_owner_id_rec,
4819           org_id_rec,
4820           location_tax_account_rec,
4821           set_of_books_id_rec,
4822           location_structure_id_rec
4823   FROM    ar_system_parameters_all   asp,
4824           zx_party_tax_profile       ptp
4825   WHERE   ptp.party_type_code = 'OU'
4826   AND     ptp.party_id = asp.org_id
4827   AND     asp.org_id = l_org_id
4828   AND     asp.tax_database_view_set IN ('_A', '_V');
4829 
4830 
4831   END IF;
4832 
4833   /* --Commenting this out as part of bug 5209436
4834   AND     NOT EXISTS (SELECT 1
4835                       FROM   ar_vat_tax_all_b  avt
4836                       WHERE  avt.org_id = asp.org_id);*/
4837 
4838   IF content_owner_id_rec.count > 0 THEN
4839     FOR k IN 1..content_owner_id_rec.count LOOP
4840       -- Create STATE tax rate code
4841       insert_tax_rate_code ('US-SALES-TAX-'|| TO_CHAR(location_structure_id_rec(k)),  --Regime
4842                             'STATE',                  --Tax
4843                             'STANDARD',               --Status
4844                             'STATE',                  --Rate
4845                             content_owner_id_rec(k),  --Content Owner ID
4846                             org_id_rec(k),            --Org ID
4850                             location_tax_account_rec(k), --Tax Account CCID
4847                             'Y',                      --Active Flag
4848                             TO_DATE('1952/01/01', 'YYYY/MM/DD'),  --Effective From
4849                             'Y',                      --Ad Hoc Rate
4851                             set_of_books_id_rec(k)
4852                            );
4853       -- COUNTY tax rate code
4854       insert_tax_rate_code ('US-SALES-TAX-'|| TO_CHAR(location_structure_id_rec(k)),  --Regime
4855                             'COUNTY',                 --Tax
4856                             'STANDARD',               --Status
4857                             'COUNTY',                 --Rate
4858                             content_owner_id_rec(k),  --Content Owner ID
4859                             org_id_rec(k),            --Org ID
4860                             'Y',                      --Active Flag
4861                             TO_DATE('1952/01/01', 'YYYY/MM/DD'),  --Effective From
4862                             'Y',                      --Ad Hoc Rate
4863                             location_tax_account_rec(k), --Tax Account CCID
4864                             set_of_books_id_rec(k)
4865                            );
4866       -- CITY tax rate code
4867      insert_tax_rate_code ('US-SALES-TAX-'|| TO_CHAR(location_structure_id_rec(k)),  --Regime
4868                             'CITY',                   --Tax
4869                             'STANDARD',               --Status
4870                             'CITY',                   --Rate
4871                             content_owner_id_rec(k),  --Content Owner ID
4872                             org_id_rec(k),            --Org ID
4873                             'Y',                      --Active Flag
4874                             TO_DATE('1952/01/01', 'YYYY/MM/DD'),  --Effective From
4875                             'Y',                      --Ad Hoc Rate
4876                             location_tax_account_rec(k), --Tax Account CCID
4877                             set_of_books_id_rec(k)
4878                            );
4879     END LOOP;
4880   END IF;
4881 
4882 END IF;
4883 EXCEPTION
4884   WHEN OTHERS THEN
4885     NULL;
4886 END migrate_vnd_tax_code;
4887 
4888 -- ****** PRIVATE PROCEDURES ******
4889 /*===========================================================================+
4890  | PROCEDURE
4891  |    migrate_ar_vat_tax
4892  |
4893  | IN
4894  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
4895  |               AR Tax Codes form for synchronization.
4896  |
4897  | OUT
4898  |
4899  | DESCRIPTION
4900  |     This routine migrates records in ar tax codes with the following
4901  |     exceptions:
4902  |       1. Records with tax_type=TAX_GROUP
4903  |       2. Records with tax_type=LOCATION
4904  |
4905  |
4906  | SCOPE - PRIVATE
4907  |
4908  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
4909  |
4910  | CALLED FROM
4911  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
4912  |
4913  | NOTES
4914  |
4915  | MODIFICATION HISTORY
4916  | 08/31/2004   Yoshimichi Konishi   Created.
4917  | 09/23/2004   Yoshimichi Konishi   Implemented LTE handling.
4918  |
4919  +==========================================================================*/
4920 PROCEDURE migrate_ar_vat_tax (p_tax_id  NUMBER) AS
4921 BEGIN
4922 
4923   --  Tax codes other than
4924   --  'TAX_GROUP'. 'LOCATION', Tax Code implemented for Tax Vendors
4925   --
4926 IF L_MULTI_ORG_FLAG = 'Y'
4927 THEN
4928 
4929 INSERT ALL
4930   INTO zx_rates_b_tmp
4931   (
4932     TAX_RATE_ID                    ,
4933     TAX_RATE_CODE                  ,
4934     CONTENT_OWNER_ID               ,
4935     EFFECTIVE_FROM                 ,
4936     EFFECTIVE_TO                   ,
4937     TAX_REGIME_CODE                ,
4938     TAX                            ,
4939     TAX_STATUS_CODE                ,
4940     SCHEDULE_BASED_RATE_FLAG       ,
4941     RATE_TYPE_CODE                 ,
4942     PERCENTAGE_RATE                ,
4943     QUANTITY_RATE                  ,
4944     UOM_CODE                       ,
4945     TAX_JURISDICTION_CODE          ,
4949     DEFAULT_FLG_EFFECTIVE_FROM     ,
4946     RECOVERY_TYPE_CODE             ,
4947     ACTIVE_FLAG                    ,
4948     DEFAULT_RATE_FLAG              ,
4950     DEFAULT_FLG_EFFECTIVE_TO       ,
4951     DEFAULT_REC_TYPE_CODE          ,
4952     DEFAULT_REC_RATE_CODE          ,
4953     OFFSET_TAX                     ,
4954     OFFSET_STATUS_CODE             ,
4955     OFFSET_TAX_RATE_CODE           ,
4956     RECOVERY_RULE_CODE             ,
4957     DEF_REC_SETTLEMENT_OPTION_CODE ,
4958     VAT_TRANSACTION_TYPE_CODE      ,
4959     ADJ_FOR_ADHOC_AMT_CODE         ,
4960     ALLOW_ADHOC_TAX_RATE_FLAG      ,
4961     TAX_CLASS                      ,
4962     SOURCE_ID                      ,
4963     TAXABLE_BASIS_FORMULA_CODE     ,
4964     INCLUSIVE_TAX_FLAG             ,
4965     TAX_INCLUSIVE_OVERRIDE_FLAG    ,
4966     RECORD_TYPE_CODE               ,
4967     CREATED_BY                     ,
4968     CREATION_DATE                  ,
4969     LAST_UPDATED_BY                ,
4970     LAST_UPDATE_DATE               ,
4971     LAST_UPDATE_LOGIN              ,
4972     REQUEST_ID                     ,
4973     PROGRAM_APPLICATION_ID         ,
4974     PROGRAM_ID                     ,
4975     PROGRAM_LOGIN_ID               ,
4976     ATTRIBUTE1                     ,
4977     ATTRIBUTE2                     ,
4978     ATTRIBUTE3                     ,
4979     ATTRIBUTE4                     ,
4980     ATTRIBUTE5                     ,
4981     ATTRIBUTE6                     ,
4982     ATTRIBUTE7                     ,
4983     ATTRIBUTE8                     ,
4984     ATTRIBUTE9                     ,
4985     ATTRIBUTE10                    ,
4986     ATTRIBUTE11                    ,
4987     ATTRIBUTE12                    ,
4988     ATTRIBUTE13                    ,
4989     ATTRIBUTE14                    ,
4990     ATTRIBUTE15                    ,
4991     ATTRIBUTE_CATEGORY     ,
4992     OBJECT_VERSION_NUMBER          ,
4993     ALLOW_EXEMPTIONS_FLAG          ,  --Bug 4204464
4994     ALLOW_EXCEPTIONS_FLAG
4995    -- 6820043, commenting out description
4996    -- DESCRIPTION                     -- Bug 4705196
4997   )
4998   VALUES
4999   (
5000     TAX_RATE_ID                    ,  --TAX_RATE_ID
5001     TAX_RATE_CODE                  ,  --tax_rate_code
5002     CONTENT_OWNER_ID               ,  --content_owner_id
5003     EFFECTIVE_FROM                 ,  --effective_from
5004     EFFECTIVE_TO                   ,  --effective_to
5005     TAX_REGIME_CODE                ,  --tax_regime_code
5006     TAX                            ,  --tax
5007     TAX_STATUS_CODE                ,  --tax_status_code
5008     SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
5009     RATE_TYPE_CODE                 ,  --rate_type_code
5010     PERCENTAGE_RATE                ,  --percentage_rate
5011     QUANTITY_RATE                  ,  --quantity_rate
5012     UOM_CODE                       ,  --uom_code
5013     TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
5014     RECOVERY_TYPE_CODE             ,  --recovery_type_code
5015     ACTIVE_FLAG                    ,  --active_flag
5016     DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
5017     DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
5018     DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
5019     DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
5020     DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
5021     OFFSET_TAX                     ,  --offset_tax
5022     OFFSET_STATUS_CODE             ,  --offset_status_code
5023     OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
5024     RECOVERY_RULE_CODE             ,  --recovery_rule_code
5025     DEF_REC_SETTLEMENT_OPTION_CODE ,  --def_rec_settlement_option_code
5026     VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
5027     ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
5028     ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
5029     L_TAX_CLASS                    ,  --tax_class
5030     NULL                           ,  --source_id  --YK:B:10/08/2004
5031     L_TAXABLE_BASIS_FORMULA        ,  --taxable_basis_formula_code
5032     INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
5033     TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
5034     'MIGRATED'                     ,  --record_type_code
5035     fnd_global.user_id             ,  --created_by
5036     SYSDATE                        ,  --creation_date
5037     fnd_global.user_id             ,  --last_updated_by
5038     SYSDATE                        ,  --last_update_date
5039     fnd_global.user_id             ,  --last_update_login
5040     fnd_global.conc_request_id     ,  --request_id
5041     fnd_global.prog_appl_id        ,  --program_application_id
5042     fnd_global.conc_program_id     ,  --program_id
5043     fnd_global.conc_login_id       ,  --program_login_id
5044     ATTRIBUTE1                     ,
5045     ATTRIBUTE2                     ,
5046     ATTRIBUTE3                     ,
5047     ATTRIBUTE4                     ,
5048     ATTRIBUTE5                     ,
5049     ATTRIBUTE6                     ,
5050     ATTRIBUTE7                     ,
5051     ATTRIBUTE8                     ,
5052     ATTRIBUTE9                     ,
5053     ATTRIBUTE10                    ,
5054     ATTRIBUTE11                    ,
5055     ATTRIBUTE12                    ,
5056     ATTRIBUTE13                    ,
5057     ATTRIBUTE14                    ,
5058     ATTRIBUTE15                    ,
5062     ALLOW_EXCEPTIONS_FLAG             --ALLOW_EXCEPTIONS_FLAG
5059     ATTRIBUTE_CATEGORY     ,
5060     1                              ,
5061     ALLOW_EXEMPTIONS_FLAG          ,  --ALLOW_EXEMPTIONS_FLAG
5063    -- 6820043, commenting out description
5064    -- DESCRIPTION                     -- Bug 4705196
5065   )
5066   INTO zx_accounts
5067   (
5068     TAX_ACCOUNT_ID          ,
5069     TAX_ACCOUNT_ENTITY_ID   ,
5070     TAX_ACCOUNT_ENTITY_CODE ,
5071     LEDGER_ID               ,
5072     INTERNAL_ORGANIZATION_ID, -- Bug 3495741
5073     TAX_ACCOUNT_CCID        ,
5074     INTERIM_TAX_CCID        ,
5075     NON_REC_ACCOUNT_CCID    ,
5076     ADJ_CCID                ,
5077     EDISC_CCID              ,
5078     UNEDISC_CCID            ,
5079     FINCHRG_CCID            ,
5080     ADJ_NON_REC_TAX_CCID    ,
5081     EDISC_NON_REC_TAX_CCID  ,
5082     UNEDISC_NON_REC_TAX_CCID,
5083     FINCHRG_NON_REC_TAX_CCID,
5084     RECORD_TYPE_CODE        ,
5085     ATTRIBUTE1              ,
5086     ATTRIBUTE2              ,
5087     ATTRIBUTE3              ,
5088     ATTRIBUTE4              ,
5089     ATTRIBUTE5              ,
5090     ATTRIBUTE6              ,
5091     ATTRIBUTE7              ,
5092     ATTRIBUTE8              ,
5093     ATTRIBUTE9              ,
5094     ATTRIBUTE10             ,
5095     ATTRIBUTE11             ,
5096     ATTRIBUTE12             ,
5097     ATTRIBUTE13             ,
5098     ATTRIBUTE14             ,
5099     ATTRIBUTE15             ,
5100     ATTRIBUTE_CATEGORY      ,
5101     CREATED_BY               ,
5102     CREATION_DATE           ,
5103     LAST_UPDATED_BY         ,
5104     LAST_UPDATE_DATE        ,
5105     LAST_UPDATE_LOGIN       ,
5106     REQUEST_ID              ,
5107     PROGRAM_APPLICATION_ID  ,
5108     PROGRAM_ID              ,
5109     PROGRAM_LOGIN_ID        ,
5110     OBJECT_VERSION_NUMBER
5111   )
5112   VALUES
5113   (
5114     ZX_ACCOUNTS_S.nextval , --TAX_ACCOUNT_ID
5115     TAX_RATE_ID           , --TAX_ACCOUNT_ENTITY_ID
5116     'RATES'                , --TAX_ACCOUNT_ENTITY_CODE
5117      LEDGER_ID            , --
5118      ORG_ID               ,
5119      TAX_ACCOUNT_CCID     ,
5120      INTERIM_TAX_CCID     , --INTERIM_TAX_CCID
5121      NON_REC_ACCOUNT_CCID , --NON_REC_ACCOUNT_CCID
5122      ADJ_CCID             , --ADJ_CCID
5123      EDISC_CCID           , --EDISC_CCID
5124      UNEDISC_CCID         , --UNEDISC_CCID
5125      FINCHRG_CCID         , --FINCHRG_CCID
5126      ADJ_NON_REC_TAX_CCID , --ADJ_NON_REC_TAX_CCID
5127      EDISC_NON_REC_TAX_CCID,    --EDISC_NON_REC_TAX_CCID
5128      UNEDISC_NON_REC_TAX_CCID,  --UNEDISC_NON_REC_TAX_CCID
5129      FINCHRG_NON_REC_TAX_CCID,  --FINCHRG_NON_REC_TAX_CCID
5130      RECORD_TYPE_CODE     ,
5131      NULL                 ,
5132      NULL                 ,
5133      NULL                 ,
5134      NULL                 ,
5135      NULL                 ,
5136      NULL                 ,
5137      NULL                 ,
5138      NULL                 ,
5139      NULL                 ,
5140      NULL                 ,
5141      NULL                 ,
5142      NULL                 ,
5143      NULL                 ,
5144      NULL                 ,
5145      NULL                 ,
5146      NULL                 ,
5147      fnd_global.user_id             ,
5148      SYSDATE                        ,
5149      fnd_global.user_id             ,
5150      SYSDATE                        ,
5151      fnd_global.conc_login_id       ,
5152      fnd_global.conc_request_id     , -- Request Id
5153      fnd_global.prog_appl_id        , -- Program Application ID
5154      fnd_global.conc_program_id     , -- Program Id
5155      fnd_global.conc_login_id       , -- Program Login ID
5156      1
5157   )
5158   SELECT
5159   results.tax_code_id               TAX_RATE_ID,
5160   results.tax_code                 TAX_RATE_CODE,
5161   ptp.party_tax_profile_id       CONTENT_OWNER_ID,
5162   codes.start_date               EFFECTIVE_FROM,
5163   codes.end_date                 EFFECTIVE_TO,
5164   results.tax_regime_code       TAX_REGIME_CODE ,
5165   results.tax                   TAX,
5166   results.tax_status_code       TAX_STATUS_CODE,
5167   'N'                            SCHEDULE_BASED_RATE_FLAG,
5168   'PERCENTAGE'                    RATE_TYPE_CODE,
5169   codes.tax_rate                 PERCENTAGE_RATE,
5170   NULL                           QUANTITY_RATE       ,
5171   NULL                           UOM_CODE,   /***** Need review for Quantity Rates ****/
5172   NULL                           TAX_JURISDICTION_CODE,
5173   decode(codes.enabled_flag,
5174   'N', NVL(results.recovery_type_code,results.tax_code_id),
5175   results.recovery_type_code)    RECOVERY_TYPE_CODE, --added to avoid index violation for duplicate disabled tax codes
5176   codes.enabled_flag             ACTIVE_FLAG,
5177        'N'                             DEFAULT_RATE_FLAG    ,  /**** Need a review ****/
5178   NULL                           DEFAULT_FLG_EFFECTIVE_FROM ,
5179   NULL                         DEFAULT_FLG_EFFECTIVE_TO   ,
5180   NULL                         DEFAULT_REC_TYPE_CODE      ,
5181   NULL                           DEFAULT_REC_RATE_CODE,
5182   NULL                           OFFSET_TAX,
5183   NULL                           OFFSET_STATUS_CODE ,
5184   NULL                           OFFSET_TAX_RATE_CODE  ,
5185   NULL                           RECOVERY_RULE_CODE    ,
5186   DECODE(codes.INTERIM_TAX_CCID,
5187          NULL, 'IMMEDIATE',
5191   codes.AMOUNT_INCLUDES_TAX_OVERRIDE   TAX_INCLUSIVE_OVERRIDE_FLAG,
5188          'DEFERRED')             DEF_REC_SETTLEMENT_OPTION_CODE,
5189   codes.vat_transaction_type     VAT_TRANSACTION_TYPE_CODE ,
5190   codes.AMOUNT_INCLUDES_TAX_FLAG       INCLUSIVE_TAX_FLAG,
5192        'MIGRATED'                      RECORD_TYPE_CODE,
5193   codes.ATTRIBUTE1               ATTRIBUTE1,
5194   codes.ATTRIBUTE2               ATTRIBUTE2,
5195   codes.ATTRIBUTE3               ATTRIBUTE3,
5196   codes.ATTRIBUTE4               ATTRIBUTE4,
5197   codes.ATTRIBUTE5               ATTRIBUTE5,
5198   codes.ATTRIBUTE6               ATTRIBUTE6,
5199   codes.ATTRIBUTE7               ATTRIBUTE7,
5200   codes.ATTRIBUTE8               ATTRIBUTE8,
5201   codes.ATTRIBUTE9               ATTRIBUTE9,
5202   codes.ATTRIBUTE10              ATTRIBUTE10,
5203   codes.ATTRIBUTE11              ATTRIBUTE11,
5204   codes.ATTRIBUTE12              ATTRIBUTE12,
5205   codes.ATTRIBUTE13              ATTRIBUTE13,
5206   codes.ATTRIBUTE14              ATTRIBUTE14,
5207   codes.ATTRIBUTE15              ATTRIBUTE15,
5208   codes.ATTRIBUTE_CATEGORY       ATTRIBUTE_CATEGORY,
5209   codes.set_of_books_id          LEDGER_ID,
5210   results.org_id                   ORG_ID,
5211   codes.TAX_ACCOUNT_ID           TAX_ACCOUNT_CCID,
5212   codes.INTERIM_TAX_CCID         INTERIM_TAX_CCID,
5213   codes.ADJ_CCID                 ADJ_CCID,
5214   codes.EDISC_CCID               EDISC_CCID,
5215   codes.UNEDISC_CCID             UNEDISC_CCID,
5216   codes.FINCHRG_CCID             FINCHRG_CCID,
5217   codes.ADJ_NON_REC_TAX_CCID     ADJ_NON_REC_TAX_CCID,
5218   codes.EDISC_NON_REC_TAX_CCID   EDISC_NON_REC_TAX_CCID,
5219   codes.UNEDISC_NON_REC_TAX_CCID UNEDISC_NON_REC_TAX_CCID,
5220   codes.FINCHRG_NON_REC_TAX_CCID FINCHRG_NON_REC_TAX_CCID,
5221         DECODE(codes.global_attribute_category,
5222           'JL.CL.ARXSUVAT.VAT_TAX',
5223      fnd_flex_ext.get_ccid
5224               ( 'SQLGL',
5225                               'GL#',
5226                                 (SELECT chart_of_accounts_id FROM gl_sets_of_books WHERE set_of_books_id = codes.set_of_books_id),
5227                               sysdate,
5228                               codes.global_attribute5),
5229     NULL)  NON_REC_ACCOUNT_CCID,  -- Bug 4779027
5230   DECODE(nvl(codes.validate_flag, 'N'),
5231          'Y', 'RATES',
5232          'N', NULL)              ADJ_FOR_ADHOC_AMT_CODE,
5233   codes.validate_flag            ALLOW_ADHOC_TAX_RATE_FLAG,
5234         DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
5235         DECODE (codes.TAXABLE_BASIS, 'AFTER_EPD', 'STANDARD_TB_DISCOUNT','STANDARD_TB') L_TAXABLE_BASIS_FORMULA,
5236   codes.DESCRIPTION         DESCRIPTION ,-- Bug 4705196
5237   nvl(asp.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')     ALLOW_EXEMPTIONS_FLAG,
5238   'N'                            ALLOW_EXCEPTIONS_FLAG --Bug 5505935
5239   FROM
5240       zx_update_criteria_results results,
5241       ar_vat_tax_all_b           codes,
5242       zx_party_tax_profile       ptp,
5243       ar_system_parameters_all   asp  --Bug 3985196: Tax Vendor Handling
5244   WHERE
5245        results.tax_code_id = codes.vat_tax_id
5246   AND  results.tax_class  = 'OUTPUT'
5247   AND  codes.tax_type NOT IN ('TAX_GROUP', 'LOCATION')
5248   AND  codes.org_id = asp.org_id
5249   --
5250   -- Bug 4880975 : migrate_ar_vat_tax migrates vendor tax codes with
5251   --               tax type <> 'LOCATION'
5252   -- AND  (asp.tax_database_view_set  NOT IN ('_A', '_V') AND
5253   --        codes.tax_type <>'LOCATION')   --BugFix 4400733
5254   /* Bug 4708982
5255   AND  (codes.global_attribute_category IS NULL OR
5259    */
5256         codes.global_attribute_category NOT IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
5257                    'JL.BR.ARXSUVAT.AR_VAT_TAX',
5258                   'JL.CO.ARXSUVAT.AR_VAT_TAX'))
5260   --BugFix 4400733
5261   --AND  (asp.tax_database_view_set <> 'O' OR codes.tax_type <> 'LOCATION')
5262 
5263   AND  codes.org_id  = ptp.party_id
5264   AND  ptp.party_Type_code = 'OU'
5265 
5266   --Added following conditions for Sync process
5267   AND  codes.vat_tax_id  = nvl(p_tax_id, codes.vat_tax_id)
5268 
5269   --Rerunability/ID CLASH
5270   AND  not exists (select 1
5271                    from   zx_rates_b rates
5272        where  rates.tax_rate_id =  nvl(p_tax_id, codes.vat_tax_id)
5273       );
5274   ELSE
5275 
5276   INSERT ALL
5277   INTO zx_rates_b_tmp
5278   (
5279     TAX_RATE_ID                    ,
5280     TAX_RATE_CODE                  ,
5281     CONTENT_OWNER_ID               ,
5282     EFFECTIVE_FROM                 ,
5283     EFFECTIVE_TO                   ,
5284     TAX_REGIME_CODE                ,
5285     TAX                            ,
5286     TAX_STATUS_CODE                ,
5287     SCHEDULE_BASED_RATE_FLAG       ,
5288     RATE_TYPE_CODE                 ,
5289     PERCENTAGE_RATE                ,
5290     QUANTITY_RATE                  ,
5291     UOM_CODE                       ,
5292     TAX_JURISDICTION_CODE          ,
5293     RECOVERY_TYPE_CODE             ,
5294     ACTIVE_FLAG                    ,
5295     DEFAULT_RATE_FLAG              ,
5296     DEFAULT_FLG_EFFECTIVE_FROM     ,
5297     DEFAULT_FLG_EFFECTIVE_TO       ,
5298     DEFAULT_REC_TYPE_CODE          ,
5299     DEFAULT_REC_RATE_CODE          ,
5300     OFFSET_TAX                     ,
5301     OFFSET_STATUS_CODE             ,
5302     OFFSET_TAX_RATE_CODE           ,
5303     RECOVERY_RULE_CODE             ,
5304     DEF_REC_SETTLEMENT_OPTION_CODE ,
5305     VAT_TRANSACTION_TYPE_CODE      ,
5306     ADJ_FOR_ADHOC_AMT_CODE         ,
5307     ALLOW_ADHOC_TAX_RATE_FLAG      ,
5308     TAX_CLASS                      ,
5309     SOURCE_ID                      ,
5310     TAXABLE_BASIS_FORMULA_CODE     ,
5311     INCLUSIVE_TAX_FLAG             ,
5312     TAX_INCLUSIVE_OVERRIDE_FLAG    ,
5313     RECORD_TYPE_CODE               ,
5314     CREATED_BY                     ,
5315     CREATION_DATE                  ,
5316     LAST_UPDATED_BY                ,
5317     LAST_UPDATE_DATE               ,
5318     LAST_UPDATE_LOGIN              ,
5319     REQUEST_ID                     ,
5320     PROGRAM_APPLICATION_ID         ,
5321     PROGRAM_ID                     ,
5322     PROGRAM_LOGIN_ID               ,
5323     ATTRIBUTE1                     ,
5324     ATTRIBUTE2                     ,
5325     ATTRIBUTE3                     ,
5326     ATTRIBUTE4                     ,
5327     ATTRIBUTE5                     ,
5328     ATTRIBUTE6                     ,
5329     ATTRIBUTE7                     ,
5330     ATTRIBUTE8                     ,
5331     ATTRIBUTE9                     ,
5332     ATTRIBUTE10                    ,
5333     ATTRIBUTE11                    ,
5334     ATTRIBUTE12                    ,
5335     ATTRIBUTE13                    ,
5336     ATTRIBUTE14                    ,
5337     ATTRIBUTE15                    ,
5338     ATTRIBUTE_CATEGORY     ,
5339     OBJECT_VERSION_NUMBER          ,
5340     ALLOW_EXEMPTIONS_FLAG          ,  --Bug 4204464
5341     ALLOW_EXCEPTIONS_FLAG
5342    -- 6820043, commenting out description
5343    -- DESCRIPTION                     -- Bug 4705196
5344   )
5345   VALUES
5346   (
5347     TAX_RATE_ID                    ,  --TAX_RATE_ID
5348     TAX_RATE_CODE                  ,  --tax_rate_code
5349     CONTENT_OWNER_ID               ,  --content_owner_id
5350     EFFECTIVE_FROM                 ,  --effective_from
5351     EFFECTIVE_TO                   ,  --effective_to
5352     TAX_REGIME_CODE                ,  --tax_regime_code
5353     TAX                            ,  --tax
5354     TAX_STATUS_CODE                ,  --tax_status_code
5355     SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
5356     RATE_TYPE_CODE                 ,  --rate_type_code
5357     PERCENTAGE_RATE                ,  --percentage_rate
5358     QUANTITY_RATE                  ,  --quantity_rate
5359     UOM_CODE                       ,  --uom_code
5360     TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
5361     RECOVERY_TYPE_CODE             ,  --recovery_type_code
5362     ACTIVE_FLAG                    ,  --active_flag
5363     DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
5364     DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
5365     DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
5366     DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
5367     DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
5368     OFFSET_TAX                     ,  --offset_tax
5369     OFFSET_STATUS_CODE             ,  --offset_status_code
5370     OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
5371     RECOVERY_RULE_CODE             ,  --recovery_rule_code
5372     DEF_REC_SETTLEMENT_OPTION_CODE ,  --def_rec_settlement_option_code
5373     VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
5374     ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
5375     ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
5376     L_TAX_CLASS                    ,  --tax_class
5377     NULL                           ,  --source_id  --YK:B:10/08/2004
5378     L_TAXABLE_BASIS_FORMULA        ,  --taxable_basis_formula_code
5379     INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
5380     TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
5381     'MIGRATED'                     ,  --record_type_code
5382     fnd_global.user_id             ,  --created_by
5383     SYSDATE                        ,  --creation_date
5384     fnd_global.user_id             ,  --last_updated_by
5385     SYSDATE                        ,  --last_update_date
5386     fnd_global.user_id             ,  --last_update_login
5387     fnd_global.conc_request_id     ,  --request_id
5388     fnd_global.prog_appl_id        ,  --program_application_id
5389     fnd_global.conc_program_id     ,  --program_id
5390     fnd_global.conc_login_id       ,  --program_login_id
5391     ATTRIBUTE1                     ,
5392     ATTRIBUTE2                     ,
5393     ATTRIBUTE3                     ,
5394     ATTRIBUTE4                     ,
5395     ATTRIBUTE5                     ,
5396     ATTRIBUTE6                     ,
5397     ATTRIBUTE7                     ,
5398     ATTRIBUTE8                     ,
5399     ATTRIBUTE9                     ,
5400     ATTRIBUTE10                    ,
5401     ATTRIBUTE11                    ,
5402     ATTRIBUTE12                    ,
5403     ATTRIBUTE13                    ,
5404     ATTRIBUTE14                    ,
5405     ATTRIBUTE15                    ,
5406     ATTRIBUTE_CATEGORY             ,
5407     1                              ,
5408     ALLOW_EXEMPTIONS_FLAG          ,  --ALLOW_EXEMPTIONS_FLAG
5409     ALLOW_EXCEPTIONS_FLAG             --ALLOW_EXCEPTIONS_FLAG
5410    -- 6820043, commenting out description
5411    -- DESCRIPTION                     -- Bug 4705196
5412   )
5413   INTO zx_accounts
5414   (
5415     TAX_ACCOUNT_ID                 ,
5416     TAX_ACCOUNT_ENTITY_ID          ,
5417     TAX_ACCOUNT_ENTITY_CODE        ,
5418     LEDGER_ID                      ,
5419     INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
5420     TAX_ACCOUNT_CCID               ,
5421     INTERIM_TAX_CCID               ,
5422     NON_REC_ACCOUNT_CCID           ,
5423     ADJ_CCID                       ,
5424     EDISC_CCID                     ,
5425     UNEDISC_CCID                   ,
5426     FINCHRG_CCID                   ,
5427     ADJ_NON_REC_TAX_CCID           ,
5428     EDISC_NON_REC_TAX_CCID         ,
5429     UNEDISC_NON_REC_TAX_CCID       ,
5430     FINCHRG_NON_REC_TAX_CCID       ,
5431     RECORD_TYPE_CODE               ,
5432     ATTRIBUTE1             ,
5433     ATTRIBUTE2             ,
5434     ATTRIBUTE3             ,
5435     ATTRIBUTE4             ,
5436     ATTRIBUTE5             ,
5437     ATTRIBUTE6             ,
5438     ATTRIBUTE7             ,
5439     ATTRIBUTE8             ,
5440     ATTRIBUTE9             ,
5441     ATTRIBUTE10            ,
5442     ATTRIBUTE11            ,
5443     ATTRIBUTE12            ,
5444     ATTRIBUTE13            ,
5445     ATTRIBUTE14            ,
5446     ATTRIBUTE15            ,
5447     ATTRIBUTE_CATEGORY,
5448     CREATED_BY                      ,
5449     CREATION_DATE                  ,
5450     LAST_UPDATED_BY                ,
5451     LAST_UPDATE_DATE               ,
5452     LAST_UPDATE_LOGIN              ,
5453     REQUEST_ID                     ,
5454     PROGRAM_APPLICATION_ID         ,
5455     PROGRAM_ID                     ,
5456     PROGRAM_LOGIN_ID     ,
5457     OBJECT_VERSION_NUMBER
5458   )
5459   VALUES
5460   (
5461     ZX_ACCOUNTS_S.nextval , --TAX_ACCOUNT_ID
5462     TAX_RATE_ID           , --TAX_ACCOUNT_ENTITY_ID
5463     'RATES'                , --TAX_ACCOUNT_ENTITY_CODE
5464      LEDGER_ID            , --
5468      NON_REC_ACCOUNT_CCID , --NON_REC_ACCOUNT_CCID
5465      ORG_ID               ,
5466      TAX_ACCOUNT_CCID     ,
5467      INTERIM_TAX_CCID     , --INTERIM_TAX_CCID
5469      ADJ_CCID             , --ADJ_CCID
5470      EDISC_CCID           , --EDISC_CCID
5471      UNEDISC_CCID         , --UNEDISC_CCID
5472      FINCHRG_CCID         , --FINCHRG_CCID
5473      ADJ_NON_REC_TAX_CCID , --ADJ_NON_REC_TAX_CCID
5474      EDISC_NON_REC_TAX_CCID,    --EDISC_NON_REC_TAX_CCID
5475      UNEDISC_NON_REC_TAX_CCID,  --UNEDISC_NON_REC_TAX_CCID
5476      FINCHRG_NON_REC_TAX_CCID,  --FINCHRG_NON_REC_TAX_CCID
5477      RECORD_TYPE_CODE     ,
5478      NULL                 ,
5479      NULL                 ,
5480      NULL                 ,
5481      NULL                 ,
5482      NULL                 ,
5483      NULL                 ,
5484      NULL                 ,
5485      NULL                 ,
5486      NULL                 ,
5487      NULL                 ,
5488      NULL                 ,
5489      NULL                 ,
5490      NULL                 ,
5491      NULL                 ,
5492      NULL                 ,
5493      NULL                 ,
5494      fnd_global.user_id             ,
5495      SYSDATE                        ,
5496      fnd_global.user_id             ,
5497      SYSDATE                        ,
5498      fnd_global.conc_login_id       ,
5499      fnd_global.conc_request_id     , -- Request Id
5500      fnd_global.prog_appl_id        , -- Program Application ID
5501      fnd_global.conc_program_id     , -- Program Id
5502      fnd_global.conc_login_id       , -- Program Login ID
5503      1
5504   )
5505   SELECT
5506   results.tax_code_id               TAX_RATE_ID,
5507   results.tax_code                 TAX_RATE_CODE,
5508   ptp.party_tax_profile_id       CONTENT_OWNER_ID,
5509   codes.start_date               EFFECTIVE_FROM,
5510   codes.end_date                 EFFECTIVE_TO,
5511      results.tax_regime_code       TAX_REGIME_CODE ,
5512   results.tax                   TAX,
5513   results.tax_status_code       TAX_STATUS_CODE,
5514   'N'                            SCHEDULE_BASED_RATE_FLAG,
5515        'PERCENTAGE'                    RATE_TYPE_CODE,
5516   codes.tax_rate                 PERCENTAGE_RATE,
5517   NULL                           QUANTITY_RATE       ,
5518   NULL                           UOM_CODE,   /***** Need review for Quantity Rates ****/
5519   NULL                           TAX_JURISDICTION_CODE,
5520   decode(codes.enabled_flag,
5521   'N', NVL(results.recovery_type_code,results.tax_code_id),
5522   results.recovery_type_code)    RECOVERY_TYPE_CODE, --added to avoid index violation for duplicate disabled tax codes
5523   codes.enabled_flag             ACTIVE_FLAG,
5524        'N'                             DEFAULT_RATE_FLAG    ,  /**** Need a review ****/
5525   NULL                           DEFAULT_FLG_EFFECTIVE_FROM ,
5526   NULL                         DEFAULT_FLG_EFFECTIVE_TO   ,
5527   NULL                         DEFAULT_REC_TYPE_CODE      ,
5528   NULL                           DEFAULT_REC_RATE_CODE,
5529   NULL                           OFFSET_TAX,
5530   NULL                           OFFSET_STATUS_CODE ,
5531   NULL                           OFFSET_TAX_RATE_CODE  ,
5532   NULL                           RECOVERY_RULE_CODE    ,
5533   DECODE(codes.INTERIM_TAX_CCID,
5534          NULL, 'IMMEDIATE',
5535          'DEFERRED')             DEF_REC_SETTLEMENT_OPTION_CODE,
5536   codes.vat_transaction_type     VAT_TRANSACTION_TYPE_CODE ,
5537   codes.AMOUNT_INCLUDES_TAX_FLAG       INCLUSIVE_TAX_FLAG,
5538   codes.AMOUNT_INCLUDES_TAX_OVERRIDE   TAX_INCLUSIVE_OVERRIDE_FLAG,
5539        'MIGRATED'                      RECORD_TYPE_CODE,
5540   codes.ATTRIBUTE1               ATTRIBUTE1,
5541   codes.ATTRIBUTE2               ATTRIBUTE2,
5542   codes.ATTRIBUTE3               ATTRIBUTE3,
5543   codes.ATTRIBUTE4               ATTRIBUTE4,
5544   codes.ATTRIBUTE5               ATTRIBUTE5,
5545   codes.ATTRIBUTE6               ATTRIBUTE6,
5546   codes.ATTRIBUTE7               ATTRIBUTE7,
5547   codes.ATTRIBUTE8               ATTRIBUTE8,
5548   codes.ATTRIBUTE9               ATTRIBUTE9,
5549   codes.ATTRIBUTE10              ATTRIBUTE10,
5550   codes.ATTRIBUTE11              ATTRIBUTE11,
5551   codes.ATTRIBUTE12              ATTRIBUTE12,
5552   codes.ATTRIBUTE13              ATTRIBUTE13,
5553   codes.ATTRIBUTE14              ATTRIBUTE14,
5554   codes.ATTRIBUTE15              ATTRIBUTE15,
5555   codes.ATTRIBUTE_CATEGORY       ATTRIBUTE_CATEGORY,
5556   codes.set_of_books_id          LEDGER_ID,
5557   results.org_id                   ORG_ID,
5558   codes.TAX_ACCOUNT_ID           TAX_ACCOUNT_CCID,
5559   codes.INTERIM_TAX_CCID         INTERIM_TAX_CCID,
5560   codes.ADJ_CCID                 ADJ_CCID,
5561   codes.EDISC_CCID               EDISC_CCID,
5562   codes.UNEDISC_CCID             UNEDISC_CCID,
5563   codes.FINCHRG_CCID             FINCHRG_CCID,
5564   codes.ADJ_NON_REC_TAX_CCID     ADJ_NON_REC_TAX_CCID,
5565   codes.EDISC_NON_REC_TAX_CCID   EDISC_NON_REC_TAX_CCID,
5566   codes.UNEDISC_NON_REC_TAX_CCID UNEDISC_NON_REC_TAX_CCID,
5567   codes.FINCHRG_NON_REC_TAX_CCID FINCHRG_NON_REC_TAX_CCID,
5568         DECODE(codes.global_attribute_category,
5569           'JL.CL.ARXSUVAT.VAT_TAX',
5570      fnd_flex_ext.get_ccid
5571               ( 'SQLGL',
5572                               'GL#',
5573                                 (SELECT chart_of_accounts_id FROM gl_sets_of_books WHERE set_of_books_id = codes.set_of_books_id),
5574                               sysdate,
5575                               codes.global_attribute5),
5579          'N', NULL)              ADJ_FOR_ADHOC_AMT_CODE,
5576     NULL)  NON_REC_ACCOUNT_CCID,  -- Bug 4779027
5577   DECODE(nvl(codes.validate_flag, 'N'),
5578          'Y', 'RATES',
5580   codes.validate_flag            ALLOW_ADHOC_TAX_RATE_FLAG,
5581         DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
5582         DECODE (codes.TAXABLE_BASIS, 'AFTER_EPD', 'STANDARD_TB_DISCOUNT','STANDARD_TB') L_TAXABLE_BASIS_FORMULA,
5583   codes.DESCRIPTION         DESCRIPTION ,-- Bug 4705196
5584   nvl(asp.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')     ALLOW_EXEMPTIONS_FLAG,
5585   'N'                            ALLOW_EXCEPTIONS_FLAG --Bug 5505935
5586   FROM
5587       zx_update_criteria_results results,
5588       ar_vat_tax_all_b           codes,
5589       zx_party_tax_profile       ptp,
5590       ar_system_parameters_all   asp  --Bug 3985196: Tax Vendor Handling
5591   WHERE
5592        results.tax_code_id = codes.vat_tax_id
5593   AND  results.tax_class  = 'OUTPUT'
5594   AND  codes.tax_type NOT IN ('TAX_GROUP', 'LOCATION')
5595   AND  codes.org_id = l_org_id
5596   AND  codes.org_id = asp.org_id
5597   --
5598   -- Bug 4880975 : migrate_ar_vat_tax migrates vendor tax codes with
5599   --               tax type <> 'LOCATION'
5600   -- AND  (asp.tax_database_view_set  NOT IN ('_A', '_V') AND
5601   --        codes.tax_type <>'LOCATION')   --BugFix 4400733
5602   /* Bug 4708982
5603   AND  (codes.global_attribute_category IS NULL OR
5604         codes.global_attribute_category NOT IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
5605                    'JL.BR.ARXSUVAT.AR_VAT_TAX',
5606                   'JL.CO.ARXSUVAT.AR_VAT_TAX'))
5607    */
5608   --BugFix 4400733
5609   --AND  (asp.tax_database_view_set <> 'O' OR codes.tax_type <> 'LOCATION')
5610 
5611   AND  codes.org_id  = ptp.party_id
5612   AND  ptp.party_Type_code = 'OU'
5613 
5614   --Added following conditions for Sync process
5615   AND  codes.vat_tax_id  = nvl(p_tax_id, codes.vat_tax_id)
5616 
5617   --Rerunability/ID CLASH
5618   AND  not exists (select 1
5619                    from   zx_rates_b rates
5620        where  rates.tax_rate_id =  nvl(p_tax_id, codes.vat_tax_id)
5621       );
5622 
5623 
5624   END IF;
5625 
5626 
5627 
5628   /* Bug 4708982
5629   IF L_LTE_USED = 'Y' THEN
5630     INSERT ALL
5631     INTO zx_rates_b_tmp
5632     (
5633       TAX_RATE_ID                    ,
5634       TAX_RATE_CODE                  ,
5635       CONTENT_OWNER_ID               ,
5636       EFFECTIVE_FROM                 ,
5637       EFFECTIVE_TO                   ,
5638       TAX_REGIME_CODE                ,
5639       TAX                            ,
5640       TAX_STATUS_CODE                ,
5641       SCHEDULE_BASED_RATE_FLAG       ,
5642       RATE_TYPE_CODE                 ,
5643       PERCENTAGE_RATE                ,
5644       QUANTITY_RATE                  ,
5645       UOM_CODE                       ,
5646       TAX_JURISDICTION_CODE          ,
5647       RECOVERY_TYPE_CODE             ,
5648       ACTIVE_FLAG                    ,
5649       DEFAULT_RATE_FLAG              ,
5650       DEFAULT_FLG_EFFECTIVE_FROM     ,
5651       DEFAULT_FLG_EFFECTIVE_TO       ,
5652       DEFAULT_REC_TYPE_CODE          ,
5653       DEFAULT_REC_RATE_CODE          ,
5654       OFFSET_TAX                     ,
5655       OFFSET_STATUS_CODE             ,
5656       OFFSET_TAX_RATE_CODE           ,
5657       RECOVERY_RULE_CODE             ,
5658       DEF_REC_SETTLEMENT_OPTION_CODE ,
5659       VAT_TRANSACTION_TYPE_CODE      ,
5660       ADJ_FOR_ADHOC_AMT_CODE         ,
5661       ALLOW_ADHOC_TAX_RATE_FLAG      ,
5662       TAX_CLASS                      ,
5663       SOURCE_ID                      ,
5664       TAXABLE_BASIS_FORMULA_CODE     ,
5665       INCLUSIVE_TAX_FLAG             ,
5666       TAX_INCLUSIVE_OVERRIDE_FLAG    ,
5667       RECORD_TYPE_CODE               ,
5668       CREATED_BY                     ,
5669       CREATION_DATE                  ,
5670       LAST_UPDATED_BY                ,
5671       LAST_UPDATE_DATE               ,
5672       LAST_UPDATE_LOGIN              ,
5673       REQUEST_ID                     ,
5674       PROGRAM_APPLICATION_ID         ,
5675       PROGRAM_ID                     ,
5676       PROGRAM_LOGIN_ID               ,
5677       ATTRIBUTE1                     ,
5678       ATTRIBUTE2                     ,
5679       ATTRIBUTE3                     ,
5680       ATTRIBUTE4                     ,
5681       ATTRIBUTE5                     ,
5682       ATTRIBUTE6                     ,
5683       ATTRIBUTE7                     ,
5684       ATTRIBUTE8                     ,
5685       ATTRIBUTE9                     ,
5686       ATTRIBUTE10                    ,
5687       ATTRIBUTE11                    ,
5688       ATTRIBUTE12                    ,
5689       ATTRIBUTE13                    ,
5690       ATTRIBUTE14                    ,
5691       ATTRIBUTE15                    ,
5692       ATTRIBUTE_CATEGORY            ,
5693       OBJECT_VERSION_NUMBER          ,
5694             ALLOW_EXEMPTIONS_FLAG          ,  --Bug 4204464
5695             ALLOW_EXCEPTIONS_FLAG          ,
5696       DESCRIPTION -- Bug 4705196
5697     )
5698     VALUES
5699     (
5700       TAX_RATE_ID                    ,  --TAX_RATE_ID
5701       TAX_RATE_CODE                  ,  --tax_rate_code
5702       CONTENT_OWNER_ID               ,  --content_owner_id
5703       EFFECTIVE_FROM                 ,  --effective_from
5707       TAX_STATUS_CODE                ,  --tax_status_code
5704       EFFECTIVE_TO                   ,  --effective_to
5705       TAX_REGIME_CODE                ,  --tax_regime_code
5706       TAX                            ,  --tax
5708       SCHEDULE_BASED_RATE_FLAG       ,  --scheduled_based_rate_flag : YK:8/25/2004: Should be 'N'
5709       RATE_TYPE_CODE                 ,  --rate_type_code
5710       PERCENTAGE_RATE                ,  --percentage_rate
5711       QUANTITY_RATE                  ,  --quantity_rate
5712       UOM_CODE                       ,  --uom_code
5713       TAX_JURISDICTION_CODE          ,  --tax_jurisdiction_code
5714       RECOVERY_TYPE_CODE             ,  --recovery_type_code
5715       ACTIVE_FLAG                    ,  --active_flag
5716       DEFAULT_RATE_FLAG              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
5717       DEFAULT_FLG_EFFECTIVE_FROM     ,  --default_flg_effective_from
5718       DEFAULT_FLG_EFFECTIVE_TO       ,  --default_flg_effective_to
5719       DEFAULT_REC_TYPE_CODE          ,  --default_rec_type_code
5720       DEFAULT_REC_RATE_CODE          ,  --default_rec_rate_code
5721       OFFSET_TAX                     ,  --offset_tax
5722       OFFSET_STATUS_CODE             ,  --offset_status_code
5723       OFFSET_TAX_RATE_CODE           ,  --offset_tax_rate_code
5724       RECOVERY_RULE_CODE             ,  --recovery_rule_code
5725       DEF_REC_SETTLEMENT_OPTION_CODE ,  --def_rec_settlement_option_code
5726       VAT_TRANSACTION_TYPE_CODE      ,  --vat_transaction_type_code
5727       ADJ_FOR_ADHOC_AMT_CODE         ,  --adj_for_adhoc_amt_code
5728       ALLOW_ADHOC_TAX_RATE_FLAG      ,  --allow_adhoc_tax_rate_flag
5729       L_TAX_CLASS                    ,  --tax_class
5730       NULL                           ,  --source_id  --YK:B:10/08/2004
5731       L_TAXABLE_BASIS_FORMULA        ,  --taxable_basis_formula_code
5732       INCLUSIVE_TAX_FLAG             ,  --inclusive_tax_flag
5733       TAX_INCLUSIVE_OVERRIDE_FLAG    ,  --tax_inclusive_override_flag
5734       'MIGRATED'                     ,  --record_type_code
5735       fnd_global.user_id             ,  --created_by
5736       SYSDATE                        ,  --creation_date
5737       fnd_global.user_id             ,  --last_updated_by
5738       SYSDATE                        ,  --last_update_date
5739       fnd_global.user_id             ,  --last_update_login
5740       fnd_global.conc_request_id     ,  --request_id
5741       fnd_global.prog_appl_id        ,  --program_application_id
5742       fnd_global.conc_program_id     ,  --program_id
5743       fnd_global.conc_login_id       ,  --program_login_id
5744       ATTRIBUTE1                     ,
5745       ATTRIBUTE2                     ,
5746       ATTRIBUTE3                     ,
5747       ATTRIBUTE4                     ,
5748       ATTRIBUTE5                     ,
5749       ATTRIBUTE6                     ,
5750       ATTRIBUTE7                     ,
5751       ATTRIBUTE8                     ,
5752       ATTRIBUTE9                     ,
5753       ATTRIBUTE10                    ,
5754       ATTRIBUTE11                    ,
5755       ATTRIBUTE12                    ,
5756       ATTRIBUTE13                    ,
5757       ATTRIBUTE14                    ,
5758       ATTRIBUTE15                    ,
5759       ATTRIBUTE_CATEGORY        ,
5760       1                              ,
5761             'Y'                            , --ALLOW_EXEMPTIONS_FLAG
5762             'Y'                            ,  --ALLOW_EXCEPTIONS_FLAG
5763       DESCRIPTION -- Bug 4705196
5764     )
5765     INTO zx_accounts
5766     (
5767       TAX_ACCOUNT_ID                 ,
5768       TAX_ACCOUNT_ENTITY_ID          ,
5769       TAX_ACCOUNT_ENTITY_CODE        ,
5770       LEDGER_ID                      ,
5771       INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
5772       TAX_ACCOUNT_CCID               ,
5773       INTERIM_TAX_CCID               ,
5774       NON_REC_ACCOUNT_CCID           ,
5775       ADJ_CCID                       ,
5776       EDISC_CCID                     ,
5777       UNEDISC_CCID                   ,
5778       FINCHRG_CCID                   ,
5779       ADJ_NON_REC_TAX_CCID           ,
5780       EDISC_NON_REC_TAX_CCID         ,
5781       UNEDISC_NON_REC_TAX_CCID       ,
5782       FINCHRG_NON_REC_TAX_CCID       ,
5783       RECORD_TYPE_CODE               ,
5784       ATTRIBUTE1             ,
5785       ATTRIBUTE2             ,
5786       ATTRIBUTE3             ,
5787       ATTRIBUTE4             ,
5788       ATTRIBUTE5             ,
5789       ATTRIBUTE6             ,
5790       ATTRIBUTE7             ,
5791       ATTRIBUTE8             ,
5792       ATTRIBUTE9             ,
5793       ATTRIBUTE10            ,
5794       ATTRIBUTE11            ,
5795       ATTRIBUTE12            ,
5796       ATTRIBUTE13            ,
5797       ATTRIBUTE14            ,
5798       ATTRIBUTE15            ,
5799       ATTRIBUTE_CATEGORY,
5800       CREATED_BY                      ,
5801       CREATION_DATE                  ,
5802       LAST_UPDATED_BY                ,
5803       LAST_UPDATE_DATE               ,
5804       LAST_UPDATE_LOGIN              ,
5805       REQUEST_ID                     ,
5806       PROGRAM_APPLICATION_ID         ,
5807       PROGRAM_ID                     ,
5808       PROGRAM_LOGIN_ID          ,
5809       OBJECT_VERSION_NUMBER
5810     )
5811     VALUES
5812     (
5813       ZX_ACCOUNTS_S.nextval , --TAX_ACCOUNT_ID
5814       TAX_RATE_ID           , --TAX_ACCOUNT_ENTITY_ID
5818        TAX_ACCOUNT_CCID     ,
5815       'RATES'                , --TAX_ACCOUNT_ENTITY_CODE
5816        LEDGER_ID            , --
5817        ORG_ID               ,
5819        INTERIM_TAX_CCID     , --INTERIM_TAX_CCID
5820        NON_REC_ACCOUNT_CCID , --NON_REC_ACCOUNT_CCID
5821        ADJ_CCID             , --ADJ_CCID
5822        EDISC_CCID           , --EDISC_CCID
5823        UNEDISC_CCID         , --UNEDISC_CCID
5824        FINCHRG_CCID         , --FINCHRG_CCID
5825        ADJ_NON_REC_TAX_CCID , --ADJ_NON_REC_TAX_CCID
5826        EDISC_NON_REC_TAX_CCID,    --EDISC_NON_REC_TAX_CCID
5827        UNEDISC_NON_REC_TAX_CCID,  --UNEDISC_NON_REC_TAX_CCID
5828        FINCHRG_NON_REC_TAX_CCID,  --FINCHRG_NON_REC_TAX_CCID
5829        RECORD_TYPE_CODE     ,
5830        NULL                 ,
5831        NULL                 ,
5832        NULL                 ,
5833        NULL                 ,
5834        NULL                 ,
5835        NULL                 ,
5836        NULL                 ,
5837        NULL                 ,
5838        NULL                 ,
5839        NULL                 ,
5840        NULL                 ,
5841        NULL                 ,
5842        NULL                 ,
5843        NULL                 ,
5844        NULL                 ,
5845        NULL                 ,
5846        fnd_global.user_id             ,
5847        SYSDATE                        ,
5848        fnd_global.user_id             ,
5849        SYSDATE                        ,
5850        fnd_global.conc_login_id       ,
5851        fnd_global.conc_request_id     , -- Request Id
5852        fnd_global.prog_appl_id        , -- Program Application ID
5853        fnd_global.conc_program_id     , -- Program Id
5854        fnd_global.conc_login_id       , -- Program Login ID
5855        1
5856     )
5857     SELECT
5858     distinct
5859     codes.vat_tax_id               TAX_RATE_ID,
5860     codes.tax_code                 TAX_RATE_CODE,
5861     ptp.party_tax_profile_id       CONTENT_OWNER_ID,
5862     codes.start_date               EFFECTIVE_FROM,
5863     codes.end_date                 EFFECTIVE_TO,
5864           params.global_attribute13      TAX_REGIME_CODE ,
5865           codes.global_attribute1        TAX,
5866     DECODE(codes.tax_class,
5867           'O', 'STANDARD',
5868           'I', 'STANDARD_AR_INPUT',
5869           'STANDARD')        TAX_STATUS_CODE,
5870     'N'                            SCHEDULE_BASED_RATE_FLAG,
5871    'PERCENTAGE'                    RATE_TYPE_CODE,
5872     codes.tax_rate                 PERCENTAGE_RATE,
5873     NULL                           QUANTITY_RATE       ,
5874     NULL                           UOM_CODE,
5875     NULL                           TAX_JURISDICTION_CODE,
5876     NULL                           RECOVERY_TYPE_CODE,
5877     codes.enabled_flag             ACTIVE_FLAG,
5878    'N'                             DEFAULT_RATE_FLAG    ,
5879     NULL                           DEFAULT_FLG_EFFECTIVE_FROM ,
5880     NULL                       DEFAULT_FLG_EFFECTIVE_TO   ,
5881     NULL                       DEFAULT_REC_TYPE_CODE      ,
5882     NULL                           DEFAULT_REC_RATE_CODE,
5883     NULL                           OFFSET_TAX,
5884     NULL                           OFFSET_STATUS_CODE ,
5885     NULL                           OFFSET_TAX_RATE_CODE  ,
5886     NULL                           RECOVERY_RULE_CODE    ,
5887     DECODE(codes.INTERIM_TAX_CCID,
5888      NULL, 'IMMEDIATE',
5889      'DEFERRED')             DEF_REC_SETTLEMENT_OPTION_CODE,
5890     codes.vat_transaction_type     VAT_TRANSACTION_TYPE_CODE ,
5891     codes.AMOUNT_INCLUDES_TAX_FLAG       INCLUSIVE_TAX_FLAG,
5892     codes.AMOUNT_INCLUDES_TAX_OVERRIDE   TAX_INCLUSIVE_OVERRIDE_FLAG,
5893    'MIGRATED'                      RECORD_TYPE_CODE,
5894     codes.ATTRIBUTE1               ATTRIBUTE1,
5895     codes.ATTRIBUTE2               ATTRIBUTE2,
5896     codes.ATTRIBUTE3               ATTRIBUTE3,
5897     codes.ATTRIBUTE4               ATTRIBUTE4,
5898     codes.ATTRIBUTE5               ATTRIBUTE5,
5899     codes.ATTRIBUTE6               ATTRIBUTE6,
5900     codes.ATTRIBUTE7               ATTRIBUTE7,
5901     codes.ATTRIBUTE8               ATTRIBUTE8,
5902     codes.ATTRIBUTE9               ATTRIBUTE9,
5903     codes.ATTRIBUTE10              ATTRIBUTE10,
5904     codes.ATTRIBUTE11              ATTRIBUTE11,
5905     codes.ATTRIBUTE12              ATTRIBUTE12,
5906     codes.ATTRIBUTE13              ATTRIBUTE13,
5907     codes.ATTRIBUTE14              ATTRIBUTE14,
5908     codes.ATTRIBUTE15              ATTRIBUTE15,
5909     codes.ATTRIBUTE_CATEGORY       ATTRIBUTE_CATEGORY,
5910     codes.set_of_books_id          LEDGER_ID,
5911     decode(l_multi_org_flag,'N',l_org_id,codes.org_id)   ORG_ID,
5912     codes.TAX_ACCOUNT_ID           TAX_ACCOUNT_CCID,
5913     codes.INTERIM_TAX_CCID         INTERIM_TAX_CCID,
5914     codes.ADJ_CCID                 ADJ_CCID,
5915     codes.EDISC_CCID               EDISC_CCID,
5916     codes.UNEDISC_CCID             UNEDISC_CCID,
5917     codes.FINCHRG_CCID             FINCHRG_CCID,
5918     codes.ADJ_NON_REC_TAX_CCID     ADJ_NON_REC_TAX_CCID,
5919     codes.EDISC_NON_REC_TAX_CCID   EDISC_NON_REC_TAX_CCID,
5920     codes.UNEDISC_NON_REC_TAX_CCID UNEDISC_NON_REC_TAX_CCID,
5921     codes.FINCHRG_NON_REC_TAX_CCID FINCHRG_NON_REC_TAX_CCID,
5922            DECODE(codes.global_attribute_category,
5923           'JL.CL.ARXSUVAT.VAT_TAX',
5924      fnd_flex_ext.get_ccid
5925               ( 'SQLGL',
5926                               'GL#',
5930     NULL)                           L_NON_REC_ACCOUNT_CCID,  -- Bug 4779027
5927                                 (SELECT chart_of_accounts_id FROM gl_sets_of_books WHERE set_of_books_id = codes.set_of_books_id),
5928                               sysdate,
5929                               codes.global_attribute5),
5931     DECODE(nvl(codes.validate_flag, 'N'),
5932      'Y', 'RATES',
5933      'N', NULL)              ADJ_FOR_ADHOC_AMT_CODE,
5934     codes.validate_flag            ALLOW_ADHOC_TAX_RATE_FLAG,
5935           DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')   L_TAX_CLASS,
5936           DECODE (codes.TAXABLE_BASIS, 'AFTER_EPD', 'STANDARD_TB_DISCOUNT','STANDARD_TB') L_TAXABLE_BASIS_FORMULA,
5937     codes.DESCRIPTION         DESCRIPTION -- Bug 4705196
5938     FROM
5939   ar_vat_tax_all_b          codes,
5940   zx_party_tax_profile      ptp,
5941   ar_system_parameters_all  params,
5942   jl_zz_ar_tx_categ_all     categs
5943     WHERE
5944    codes.tax_type <> 'TAX_GROUP'
5945 
5946     -- For LTE : YK:2/22/2005
5947     AND  decode(l_multi_org_flag,'N',l_org_id,codes.org_id) = decode(l_multi_org_flag,'N',l_org_id,params.org_id)
5948     AND  params.tax_database_view_set = 'BR'  --Bug Fix 4400733
5949     AND   codes.global_attribute_category IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
5950                  'JL.BR.ARXSUVAT.AR_VAT_TAX',
5951                 'JL.CO.ARXSUVAT.AR_VAT_TAX')
5952 --AND  (params.tax_database_view_set <> 'O' AND codes.tax_type <> 'LOCATION') --BugFix 4400733
5953 
5954     AND  decode(l_multi_org_flag,'N',l_org_id,codes.org_id)  = ptp.party_id
5955     AND  ptp.party_Type_code = 'OU'
5956 
5957     --Added following conditions for Sync process
5958     AND  codes.vat_tax_id  = nvl(p_tax_id,codes.vat_tax_id)
5959 
5960     -- Rerunability/ID CLASH
5961     --BugFix 3605729 added nvl(source_id, in the following condition.
5962     AND  not exists (select 1
5963                      from   zx_rates_b rates
5964          where  rates.tax_rate_id =  nvl(p_tax_id,codes.vat_tax_id)
5965         );
5966   END IF;
5967   */
5968 
5969   --
5970   -- Create _TL tables
5971   --
5972 /*--Bug4400704
5973   INSERT INTO  ZX_RATES_TL
5974   (
5975       TAX_RATE_ID,
5976       TAX_RATE_NAME,
5977       CREATED_BY,
5978       CREATION_DATE,
5979       LAST_UPDATED_BY,
5980       LAST_UPDATE_DATE,
5981       LAST_UPDATE_LOGIN,
5982       LANGUAGE,
5983       SOURCE_LANG
5984   )
5985   SELECT  avtt.vat_tax_id,
5986           avtt.printed_tax_name,
5987           fnd_global.user_id             ,
5988           SYSDATE                        ,
5989           fnd_global.user_id             ,
5990           SYSDATE                        ,
5991           fnd_global.conc_login_id       ,
5992           avtt.language                  ,
5993           avtt.source_lang
5994 
5995   FROM    ar_vat_tax_all_tl  avtt,
5996           zx_rates_b         zrb
5997   WHERE   avtt.vat_tax_id = zrb.tax_rate_id
5998   AND     NOT EXISTS (SELECT 1
5999                       FROM   zx_rates_tl  zrt
6000                       WHERE  zrt.tax_rate_id = avtt.vat_tax_id
6001                       AND    zrt.language = avtt.language
6002                       AND    zrt.source_lang = avtt.source_lang);*/
6003 
6004       IF PG_DEBUG = 'Y' THEN
6005    arp_util_tax.debug('migrate_ar_vat_tax(-)');
6006       END IF;
6007 
6008 EXCEPTION
6009   WHEN OTHERS THEN
6010     IF PG_DEBUG = 'Y' THEN
6011       arp_util_tax.debug('EXCEPTION: migrate_ar_vat_tax ');
6012       arp_util_tax.debug(sqlcode || ' : ' || sqlerrm);
6013       arp_util_tax.debug('migrate_ar_vat_tax(-)');
6014     END IF;
6015     --app_exception.raise_exception;
6016 
6017 END;
6018 
6019 /*===========================================================================+
6020  | FUNCTION
6021  |    is_update_needed_for_loc_tax (p_tax_id   NUMBER) RETURN BOOLEAN
6022  |
6023  | IN
6024  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
6025  |               AR Tax Codes form for synchronization.
6026  | OUT
6027  |    TRUE  : When eBTax entities are needed for data updation.
6028  |    FALSE : When eBTax entities are not needed for data updation.
6029  |
6030  | DESCRIPTION
6031  |     This routine identifies if Regime to Rates records are needed to be
6032  |     updated for US Sales Tax Code migraion. Data update is needed under
6033  |     the following conditions:
6034  |     1. When executing US Sales Tax Code migration (p_tax_id = NULL)
6035  |        for the first time.
6036  |     2. After US Sales Tax Code migration has been executed. (synch)
6037  |        (p_tax_id IS NOT NULL)
6038  |     2.1 When new location structure is created and new Tax Code with tax
6039  |         type 'LOCATION' is created for a existing OU or a new OU.
6040  |     2.2 When new Tax Code with tax type 'LOCATION' is created under
6041  |         existing location structure but for new OU.
6042  |
6043  | SCOPE - PRIVATE
6044  |
6045  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
6046  |
6047  | CALLED FROM
6048  |        zx_migrate_ar_tax_def.migrate_loc_tax_code
6049  |
6050  | NOTES
6051  |
6052  | MODIFICATION HISTORY
6053  | 01/11/2004   Yoshimichi Konishi   Created.
6054  |
6055  +==========================================================================*/
6056 FUNCTION is_update_needed_for_loc_tax (p_tax_id   NUMBER,
6057                                        p_tax_type VARCHAR2 DEFAULT NULL
6061   l_location_str_id   ar_system_parameters_all.location_structure_id%TYPE;
6058                                       ) RETURN BOOLEAN
6059 AS
6060   -- ****** VARIABLES ******
6062   l_org_id            ar_vat_tax_all_b.org_id%TYPE;
6063   l_tax_regime_code   zx_regimes_b.tax_regime_code%TYPE;
6064   l_tax               zx_taxes_b.tax%TYPE;
6065 
6066 BEGIN
6067 IF p_tax_id IS NOT NULL AND p_tax_type = 'LOCATION' THEN
6068   BEGIN
6069     IF L_MULTI_ORG_FLAG = 'Y'
6070     THEN
6071       SELECT  asp.location_structure_id,
6072         asp.org_id
6073       INTO    l_location_str_id,
6074         l_org_id
6075       FROM    ar_system_parameters_all   asp,
6076         ar_vat_tax_all_b           avt
6077       where   avt.org_id = asp.org_id
6078       AND     avt.vat_tax_id = nvl(p_tax_id, avt.vat_tax_id)
6079       AND     avt.tax_type = 'LOCATION';
6080     ELSE
6081       SELECT  asp.location_structure_id,
6082         asp.org_id
6083       INTO    l_location_str_id,
6084         l_org_id
6085       FROM    ar_system_parameters_all   asp,
6086         ar_vat_tax_all_b           avt
6087       where   avt.org_id = asp.org_id
6088       AND     avt.org_id = l_org_id
6089       AND     avt.vat_tax_id = nvl(p_tax_id, avt.vat_tax_id)
6090       AND     avt.tax_type = 'LOCATION';
6091 
6092     END IF;
6093   EXCEPTION
6094     WHEN NO_DATA_FOUND THEN
6095       arp_util_tax.debug('is_synch_needed.loc_str_id: No data found');
6096     WHEN OTHERS THEN
6097       arp_util_tax.debug('is_synch_needed.loc_str_id: Others');
6098   END;
6099 
6100   IF l_location_str_id IS NOT NULL THEN
6101     BEGIN
6102       SELECT  tax_regime_code
6103       INTO    l_tax_regime_code
6104       FROM    zx_regimes_b   regime
6105       WHERE   tax_regime_code like '%-SALES-TAX-%'
6106       AND     l_location_str_id = TO_NUMBER(
6107                                     NVL(LTRIM(
6108                                       TRANSLATE(regime.tax_regime_code,
6109                                       'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_',
6110                                       '@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'
6111                                       ),'@'),'-999'));
6112     EXCEPTION
6113       WHEN NO_DATA_FOUND THEN
6114         arp_util_tax.debug('is_synch_needed.l_tax_regime_code: No data found');
6115       WHEN OTHERS THEN
6116         arp_util_tax.debug('is_synch_needed.l_tax_regime_code: Others');
6117     END;
6118     IF l_tax_regime_code IS NOT NULL THEN
6119       BEGIN
6120         SELECT  ztb.tax
6121         INTO    l_tax
6122         FROM    zx_taxes_b   ztb,
6123                 zx_party_tax_profile  zptp
6124         WHERE   ztb.content_owner_id = zptp.party_tax_profile_id
6125         AND     zptp.party_type_code = 'OU'
6126         AND     zptp.party_id = l_org_id
6127         AND     ztb.tax = 'LOCATION'
6128         AND     ztb.tax_regime_code = l_tax_regime_code;
6129       EXCEPTION
6130         WHEN NO_DATA_FOUND THEN
6131           arp_util_tax.debug('is_synch_needed.l_tax: No data found');
6132         WHEN OTHERS THEN
6133           arp_util_tax.debug('is_synch_needed.l_tax: Others');
6134       END;
6135       IF l_tax IS NOT NULL THEN
6136         RETURN  FALSE;  --Regime exists PLUS tax exists for CO --NO SYNCH--
6137       ELSE
6138         RETURN  TRUE;  --Regime exist BUT tax does not exist for CO --SYNCH--
6139       END IF;
6140     ELSIF l_tax_regime_code IS NULL THEN
6141       RETURN  TRUE;  --Regime does not exist for location structure id --SYNCH--
6142     END IF;
6143   ELSIF l_location_str_id IS NULL THEN
6144     RETURN  FALSE; --Location structure id is NULL -- NO SYNCH --
6145   END IF;
6146 ELSE
6147   RETURN  TRUE;
6148 END IF;
6149 EXCEPTION
6150   WHEN OTHERS THEN
6151     NULL;
6152 
6153 END is_update_needed_for_loc_tax;
6154 
6155 /*===========================================================================+
6156  | PROCEDURE
6157  |    insert_tax_for_loc (p_min_start_date           DATE,
6158  |                p_tax_regime_code          VARCHAR2,
6159  |                p_seg_att_type             VARCHAR2,
6160  |                p_country_code             VARCHAR2,
6161  |                p_tax_currency_code        VARCHAR2,  -- OU partitioned
6162  |                p_tax_precision            VARCHAR2,  -- OU partitioned
6163  |                p_tax_mau                  NUMBER,    -- OU partitioned
6164  |                p_rounding_rule_code       VARCHAR2,  -- OU partitioned
6165  |                p_allow_rounding_override  VARCHAR2,  -- OU partitioned
6166  |                p_loc_str_id               NUMBER ,
6167  |                p_tax_acct_cr_method       VARCHAR2
6168  |                p_tax_acct_source_tax      VARCHAR2,
6169  |                p_tax_exmpt_cr_mthd        VARCHAR2,
6170  |                p_tax_exmpt_src_tax        VARCHAR2
6171  |                p_compounding_precedence   NUMBER,
6172  |                p_cross_curr_rate_type     VARCHAR2 --Bug 4539221
6173  |                p_tax_type                 VARCHAR2
6174  |                )
6175  |
6176  | IN
6177  |    p_min_start_date           : For effective_from. Minimum start date for
6178  |                                 Tax Codes with tax type LOCATION will be
6179  |                                 passed.
6180  |    p_tax_regime_code          : For tax regime code
6181  |    p_seg_att_type             : Location segment qualifier will be passed
6185  |    p_tax_precision            : For tax precision
6182  |                                 to create tax.
6183  |    p_country_code             : For country code
6184  |    p_tax_currency_code        : For tax currency code
6186  |    p_tax_mau                  : For tax minimum accountable unit
6187  |    p_rounding_rule_code       : For rounding rule code
6188  |    p_allow_rounding_override  : For rounding override
6189  |    p_loc_str_id               : For location structure id
6190  |    p_tax_acct_cr_method       : For tax account create method
6191  |    p_tax_acct_source_tax      : For tax account source tax
6192  |    p_tax_exmpt_excpt_cr_mthd  : For tax exemption exception creation method
6193  |    p_tax_exmpt_excpt_src_tax  : For tax exemption exception source tax
6194  |    p_compounding_precedence   : For compounding precedence
6195  |    p_cross_curr_rate_type     : For currency rate type
6196  |    p_tax_type                 : For tax type
6197  |
6198  | OUT
6199  |
6200  | DESCRIPTION
6201  |     This routine is used to insert data into zx_taxes_b for location
6202  |     segment qualifier. Mainly created for code readability.
6203  |
6204  | SCOPE - PRIVATE
6205  |
6206  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
6207  |
6208  | CALLED FROM
6209  |        zx_migrate_ar_tax_def.migrate_loc_tax_code
6210  |        zx_migrate_ar_tax_def.migrate_vnd_tax_code
6211  |
6212  | NOTES
6213  |
6214  | MODIFICATION HISTORY
6215  | 01/11/2004   Yoshimichi Konishi   Created.
6216  |
6217  +==========================================================================*/
6218   PROCEDURE insert_tax_for_loc (p_min_start_date           DATE,
6219       p_tax_regime_code          VARCHAR2,
6220       p_seg_att_type             VARCHAR2,
6221       p_country_code             VARCHAR2,
6222       p_tax_currency_code        VARCHAR2,  -- OU partitioned
6223       p_tax_precision            VARCHAR2,  -- OU partitioned
6224       p_tax_mau                  NUMBER,    -- OU partitioned
6225       p_rounding_rule_code       VARCHAR2,  -- OU partitioned
6226       p_allow_rounding_override  VARCHAR2,  -- OU partitioned
6227       p_loc_str_id               NUMBER,    -- Bug 4225216
6228       p_tax_acct_cr_method       VARCHAR2,  -- Bug 4204464
6229       p_tax_acct_source_tax      VARCHAR2,
6230       p_tax_exmpt_cr_mthd        VARCHAR2,
6231       p_tax_exmpt_src_tax        VARCHAR2,
6232                         p_compounding_precedence   NUMBER,
6233                         p_cross_curr_rate_type     VARCHAR2,
6234                         p_tax_type                 VARCHAR2,
6235                         p_live_for_processing_flag VARCHAR2,
6236                         p_live_for_applic_flag     VARCHAR2
6237            )
6238   AS
6239     l_geography_id   NUMBER;
6240 
6241   BEGIN
6242     SELECT  geography_id
6243     INTO    l_geography_id
6244     FROM    hz_geographies
6245     WHERE   geography_type = 'COUNTRY'
6246     AND     country_code = p_country_code;
6247 
6248     INSERT ALL
6249       WHEN (NOT EXISTS (SELECT 1
6250       FROM   zx_taxes_b
6251       WHERE  tax_regime_code = p_tax_regime_code
6252       AND    tax = p_seg_att_type
6253       AND    content_owner_id = -99
6254            )
6255      ) THEN
6256       INTO ZX_TAXES_B_TMP
6257       (
6258        TAX                                    ,
6259        EFFECTIVE_FROM                         ,
6260        EFFECTIVE_TO                           ,
6261        TAX_REGIME_CODE                        ,
6262        TAX_TYPE_CODE                          ,
6263        ALLOW_MANUAL_ENTRY_FLAG                ,
6264        ALLOW_TAX_OVERRIDE_FLAG                ,
6265        MIN_TXBL_BSIS_THRSHLD                  ,
6266        MAX_TXBL_BSIS_THRSHLD                  ,
6267        MIN_TAX_RATE_THRSHLD                   ,
6268        MAX_TAX_RATE_THRSHLD                   ,
6269        MIN_TAX_AMT_THRSHLD                    ,
6270        MAX_TAX_AMT_THRSHLD                    ,
6271        COMPOUNDING_PRECEDENCE                 ,
6272        PERIOD_SET_NAME                        ,
6273        EXCHANGE_RATE_TYPE                     ,
6274        TAX_CURRENCY_CODE                      ,
6275        TAX_PRECISION                          ,
6276        MINIMUM_ACCOUNTABLE_UNIT               ,
6277        ROUNDING_RULE_CODE                     ,
6278        TAX_STATUS_RULE_FLAG                   ,
6279        TAX_RATE_RULE_FLAG                     ,
6280        DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
6281        PLACE_OF_SUPPLY_RULE_FLAG              ,
6282        DIRECT_RATE_RULE_FLAG                  ,
6283        APPLICABILITY_RULE_FLAG                ,
6284        TAX_CALC_RULE_FLAG                     ,
6285        TXBL_BSIS_THRSHLD_FLAG                 ,
6286        TAX_RATE_THRSHLD_FLAG                  ,
6287        TAX_AMT_THRSHLD_FLAG                   ,
6288        TAXABLE_BASIS_RULE_FLAG                ,
6289        DEF_INCLUSIVE_TAX_FLAG                 ,
6290        THRSHLD_GROUPING_LVL_CODE              ,
6291        HAS_OTHER_JURISDICTIONS_FLAG           ,
6292        ALLOW_EXEMPTIONS_FLAG                  ,
6293        ALLOW_EXCEPTIONS_FLAG                  ,
6294        ALLOW_RECOVERABILITY_FLAG              ,
6295        DEF_TAX_CALC_FORMULA                   ,
6296        TAX_INCLUSIVE_OVERRIDE_FLAG            ,
6297        DEF_TAXABLE_BASIS_FORMULA              ,
6298        DEF_REGISTR_PARTY_TYPE_CODE            ,
6299        REGISTRATION_TYPE_RULE_FLAG            ,
6303        LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
6300        REPORTING_ONLY_FLAG                    ,
6301        AUTO_PRVN_FLAG                         ,
6302        LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
6304        HAS_DETAIL_TB_THRSHLD_FLAG             ,
6305        HAS_TAX_DET_DATE_RULE_FLAG             ,
6306        HAS_EXCH_RATE_DATE_RULE_FLAG           ,
6307        HAS_TAX_POINT_DATE_RULE_FLAG           ,
6308        PRINT_ON_INVOICE_FLAG                  ,
6309        USE_LEGAL_MSG_FLAG                     ,
6310        CALC_ONLY_FLAG                         ,
6311        PRIMARY_RECOVERY_TYPE_CODE             ,
6312        PRIMARY_REC_TYPE_RULE_FLAG             ,
6313        SECONDARY_RECOVERY_TYPE_CODE           ,
6314        SECONDARY_REC_TYPE_RULE_FLAG           ,
6315        PRIMARY_REC_RATE_DET_RULE_FLAG         ,
6316        SEC_REC_RATE_DET_RULE_FLAG             ,
6317        OFFSET_TAX_FLAG                        ,
6318        RECOVERY_RATE_OVERRIDE_FLAG            ,
6319        ZONE_GEOGRAPHY_TYPE                    ,
6320        REGN_NUM_SAME_AS_LE_FLAG               ,
6321        DEF_REC_SETTLEMENT_OPTION_CODE         ,
6322        RECORD_TYPE_CODE                       ,
6323        ALLOW_ROUNDING_OVERRIDE_FLAG           ,
6324      --BugFix 3493419
6325        SOURCE_TAX_FLAG                        ,
6326        SPECIAL_INCLUSIVE_TAX_FLAG             ,
6327        ATTRIBUTE1                             ,
6328        ATTRIBUTE2                             ,
6329        ATTRIBUTE3                             ,
6330        ATTRIBUTE4                             ,
6331        ATTRIBUTE5                             ,
6332        ATTRIBUTE6                             ,
6333        ATTRIBUTE7                             ,
6334        ATTRIBUTE8                             ,
6335        ATTRIBUTE9                             ,
6336        ATTRIBUTE10                            ,
6337        ATTRIBUTE11                            ,
6338        ATTRIBUTE12                            ,
6339        ATTRIBUTE13                            ,
6340        ATTRIBUTE14                            ,
6341        ATTRIBUTE15                            ,
6342        ATTRIBUTE_CATEGORY                     ,
6343        PARENT_GEOGRAPHY_TYPE                  ,
6344        PARENT_GEOGRAPHY_ID                    ,
6345        ALLOW_MASS_CREATE_FLAG                 ,
6346        APPLIED_AMT_HANDLING_FLAG              ,
6347        TAX_ID                                 ,
6348        CONTENT_OWNER_ID                       ,
6349        REP_TAX_AUTHORITY_ID                   ,
6350        COLL_TAX_AUTHORITY_ID                  ,
6351        THRSHLD_CHK_TMPLT_CODE                 ,
6352        DEF_PRIMARY_REC_RATE_CODE              ,
6353        DEF_SECONDARY_REC_RATE_CODE            ,
6354        CREATED_BY                           ,
6355        CREATION_DATE                          ,
6356        LAST_UPDATED_BY                        ,
6357        LAST_UPDATE_DATE                       ,
6358        LAST_UPDATE_LOGIN                      ,
6359        REQUEST_ID                             ,
6360        PROGRAM_APPLICATION_ID                 ,
6361        PROGRAM_ID                             ,
6362        PROGRAM_LOGIN_ID                       ,
6363        OVERRIDE_GEOGRAPHY_TYPE         ,
6364        OBJECT_VERSION_NUMBER                  ,
6365        TAX_ACCOUNT_CREATE_METHOD_CODE         ,
6366        TAX_ACCOUNT_SOURCE_TAX                 ,
6367        TAX_EXMPT_CR_METHOD_CODE         ,
6368        TAX_EXMPT_SOURCE_TAX             ,
6369        APPLICABLE_BY_DEFAULT_FLAG        --Bug 4905771
6370       )
6371       VALUES
6372       (
6373        p_seg_att_type                         , -- TAX
6374        p_min_start_date                       , -- EFFECTIVE_FROM
6375        NULL                                   , -- EFFECTIVE_TO
6376        p_tax_regime_code                      , -- TAX_REGIME_CODE
6377        p_tax_type                             , -- TAX_TYPE_CODE
6378       --5713986, Update allow_manual_entry_flag,allow_tax_override_flag as 'Y' instead of 'N
6379        'Y'                                    , -- ALLOW_MANUAL_ENTRY_FLAG
6380        'Y'                                    , -- ALLOW_TAX_OVERRIDE_FLAG
6381        NULL                                   , -- MIN_TXBL_BSIS_THRSHLD
6382        NULL                                   , -- MAX_TXBL_BSIS_THRSHLD
6383        NULL                                   , -- MIN_TAX_RATE_THRSHLD
6384        NULL                                   , -- MAX_TAX_RATE_THRSHLD
6385        NULL                                   , -- MIN_TAX_AMT_THRSHLD
6386        NULL                                   , -- MAX_TAX_AMT_THRSHLD
6387        p_compounding_precedence               , -- COMPOUNDING_PRECEDENCE
6388        NULL                                   , -- COMPOUNDING_PRECEDENCE
6389        -- Bug 4539221
6390        -- Deriving exchange_rate_type
6391        -- If default_exchange_rate_type is NULL use most frequently
6392        -- used conversion_type from gl_daily_rates.
6393     /*   CASE WHEN p_cross_curr_rate_type IS NULL
6394        THEN
6395             'Corporate'
6396         ELSE
6397         -- Bug 6006519/5654551, 'User' is not a valid exchange rate type
6398               DECODE(p_cross_curr_rate_type,
6399               'User', 'Corporate',
6400               p_cross_curr_rate_type)
6401        END                                    , -- EXCHANGE_RATE_TYPE */
6402        NULL              , --EXCHANGE_RATE_TYPE
6403        p_tax_currency_code                    , -- TAX_CURRENCY_CODE
6407        'N'                                    , -- TAX_STATUS_RULE_FLAG
6404        p_tax_precision                        , -- TAX_PRECISION
6405        p_tax_mau                              , -- MINIMUM_ACCOUNTABLE_UNIT
6406        p_rounding_rule_code                   , -- ROUNDING_RULE_CODE
6408        'N'                                    , -- TAX_RATE_RULE_FLAG
6409        'SHIP_TO_BILL_TO'                      , -- DEF_PLACE_OF_SUPPLY_TYPE_CODE
6410        'N'                                    , -- PLACE_OF_SUPPLY_RULE_FLAG
6411        -- Bug 4575226 : direct_rate_rule_flag is N for US Sales Tax
6412        'N'                                    , -- DIRECT_RATE_RULE_FLAG
6413        'N'                                    , -- APPLICABILITY_RULE_FLAG : Bug 4905771, changed to N for bug 5385949
6414        'N'                                    , -- TAX_CALC_RULE_FLAG
6415        'N'                                    , -- TXBL_BSIS_THRSHLD_FLAG
6416        'N'                                    , -- TAX_RATE_THRSHLD_FLAG
6417        'N'                                    , -- TAX_AMT_THRSHLD_FLAG
6418        'N'                                    , -- TAXABLE_BASIS_RULE_FLAG
6419        'N'                                    , -- DEF_INCLUSIVE_TAX_FLAG
6420        NULL                                   , -- THRSHLD_GROUPING_LVL_CODE
6421        CASE WHEN p_seg_att_type IN ('STATE', 'COUNTY', 'CITY')
6422           THEN 'Y'
6423           ELSE 'N'
6424        END                                    , -- HAS_OTHER_JURISDICTIONS_FLAG : Bug 4610550
6425        -- Bug 4432896 : Set allow_exemptions_flag to 'Y'
6426        'Y'                                    , -- ALLOW_EXEMPTIONS_FLAG
6427        'Y'                                    , -- ALLOW_EXCEPTIONS_FLAG
6428        'N'                                    , -- ALLOW_RECOVERABILITY_FLAG
6429        'STANDARD_TC'                          , -- DEF_TAX_CALC_FORMULA
6430        'N'                                    , -- TAX_INCLUSIVE_OVERRIDE_FLAG
6431        'STANDARD_TB'                          , -- DEF_TAXABLE_BASIS_FORMULA
6432        'SHIP_TO_SITE'                         , -- DEF_REGISTR_PARTY_TYPE_CODE
6433        'N'                                    , -- REGISTRATION_TYPE_RULE_FLAG
6434        'N'                                    , -- REPORTING_ONLY_FLAG
6435        'N'                                    , -- AUTO_PRVN_FLAG
6436        p_live_for_processing_flag             , -- LIVE_FOR_PROCESSING_FLAG    --YK:3/16/2005
6437        p_live_for_applic_flag                 , -- LIVE_FOR_APPLICABILITY_FLAG --Bug 4225216
6438        'N'                                    , -- HAS_DETAIL_TB_THRSHLD_FLAG
6439        'N'                                    , -- HAS_TAX_DET_DATE_RULE_FLAG
6440        'N'                                    , -- HAS_EXCH_RATE_DATE_RULE_FLAG
6441        'N'                                    , -- HAS_TAX_POINT_DATE_RULE_FLAG
6442        'Y'                                    , -- PRINT_ON_INVOICE_FLAG
6443        'N'                                    , -- USE_LEGAL_MSG_FLAG
6444        'N'                                    , -- CALC_ONLY_FLAG
6445        NULL                                   , -- PRIMARY_RECOVERY_TYPE_CODE
6446        'N'                                    , -- PRIMARY_REC_TYPE_RULE_FLAG
6447        NULL                                   , -- SECONDARY_RECOVERY_TYPE_CODE
6448        'N'                                    , -- SECONDARY_REC_TYPE_RULE_FLAG
6449        'N'                                    , -- PRIMARY_REC_RATE_DET_RULE_FLAG
6450        'N'                                    , -- SEC_REC_RATE_DET_RULE_FLAG
6451        'N'                                    , -- OFFSET_TAX_FLAG
6452        'N'                                    , -- RECOVERY_RATE_OVERRIDE_FLAG
6453        substrb(p_country_code || '_'||p_seg_att_type|| '_ZONE_TYPE_' || SUBSTRB(TO_CHAR(p_loc_str_id), 1, 6),1,30)
6454                                               , -- ZONE_GEOGRAPHY_TYPE
6455        'N'                                    , -- REGN_NUM_SAME_AS_LE_FLAG
6456        NULL                                   , -- DEF_REC_SETTLEMENT_OPTION_CODE
6457        'MIGRATED'                             , -- RECORD_TYPE_CODE
6458        p_allow_rounding_override              , -- ALLOW_ROUNDING_OVERRIDE_FLAG
6459        'Y'                                    , -- SOURCE_TAX_FLAG
6460        'N'                                    , -- SPECIAL_INCLUSIVE_TAX_FLAG
6461        NULL                                   , -- ATTRIBUTE1
6462        NULL                                   , -- ATTRIBUTE2
6463        NULL                                   , -- ATTRIBUTE3
6464        NULL                                   , -- ATTRIBUTE4
6465        NULL                                   , -- ATTRIBUTE5
6466        NULL                                   , -- ATTRIBUTE6
6467        NULL                                   , -- ATTRIBUTE7
6468        NULL                                   , -- ATTRIBUTE8
6469        NULL                                   , -- ATTRIBUTE9
6470        NULL                                   , -- ATTRIBUTE10
6471        NULL                                   , -- ATTRIBUTE11
6472        NULL                                   , -- ATTRIBUTE12
6473        NULL                                   , -- ATTRIBUTE13
6474        NULL                                   , -- ATTRIBUTE14
6475        NULL                                   , -- ATTRIBUTE15
6476        NULL                                   , -- ATTRIBUTE_CATEGORY
6477        NULL                                   , -- PARENT_GEOGRAPHY_TYPE
6478        NULL                                   , -- PARENT_GEOGRAPHY_ID
6479        'Y'                                    , -- ALLOW_MASS_CREATE_FLAG /*Bug fix 552412*/
6480        'P'                                    , -- APPLIED_AMT_HANDLING_FLAG
6481        zx_taxes_b_s.nextval                   , -- TAX_ID
6485        NULL                                   , -- THRSHLD_CHK_TMPLT_CODE
6482        -99                                    , -- CONTENT_OWNER_ID
6483        NULL                                   , -- REP_TAX_AUTHORITY_ID
6484        NULL                                   , -- COLL_TAX_AUTHORITY_ID
6486        NULL                                   , -- DEF_PRIMARY_REC_RATE_CODE
6487        NULL                                   , -- DEF_SECONDARY_REC_RATE_CODE
6488        fnd_global.user_id                     , -- CREATED_BY
6489        SYSDATE                                , -- CREATION_DATE
6490        fnd_global.user_id                     , -- LAST_UPDATED_BY
6491        SYSDATE                                , -- LAST_UPDATE_DATE
6492        fnd_global.conc_login_id               , -- LAST_UPDATE_LOGIN
6493        fnd_global.conc_request_id             , -- REQUEST_ID
6494        fnd_global.prog_appl_id                , -- PROGRAM_APPLICATION_ID
6495        fnd_global.conc_program_id             , -- PROGRAM_ID
6496        fnd_global.conc_login_id               , -- PROGRAM_LOGIN_ID
6497        CASE WHEN p_country_code = 'US' AND p_seg_att_type IN ('STATE', 'COUNTY')
6498          THEN
6499            substrb('US' || '_'|| 'OVERRIDE_ZONE_TYPE_' ||
6500                    substrb(to_char(p_loc_str_id), 1, 6),1,30)
6501          ELSE
6502            NULL
6503        END                                    , -- OVERRIDE_GEOGRAPHY_TYPE  : Bug 4586307
6504     1                                   , -- OBJECT_VERSION_NUMBER
6505        p_tax_acct_cr_method                   , --TAX_ACCOUNT_CREATE_METHOD_CODE
6506        p_tax_acct_source_tax                  , --TAX_ACCOUNT_SOURCE_TAX
6507        p_tax_exmpt_cr_mthd                    , --TAX_EXMPT_CR_METHOD_CODE
6508        p_tax_exmpt_src_tax                    ,
6509        'N'                                      --APPLICABLE_BY_DEFAULT_FLAG : Bug4905771
6510       )
6511 /*
6512 
6513       WHEN (NOT EXISTS (SELECT 1
6514       FROM   zx_taxes_b
6515       WHERE  tax_regime_code = p_tax_regime_code
6516       AND    tax = p_seg_att_type
6517       AND    content_owner_id = -99
6518            )
6519      ) THEN
6520       INTO ZX_TAXES_TL
6521       (
6522   LANGUAGE                    ,
6523   SOURCE_LANG                 ,
6524   TAX_FULL_NAME               ,
6525   CREATION_DATE               ,
6526   CREATED_BY                  ,
6527   LAST_UPDATE_DATE            ,
6528   LAST_UPDATED_BY             ,
6529   LAST_UPDATE_LOGIN           ,
6530   TAX_ID
6531       )
6532       VALUES
6533       (
6534   userenv('LANG'),
6535   userenv('LANG'),
6536   p_seg_att_type,
6537   SYSDATE,
6538   fnd_global.user_id,
6539   SYSDATE,
6540   fnd_global.user_id,
6541   fnd_global.conc_login_id,
6542   ZX_TAXES_B_S.NEXTVAL
6543       )*/
6544       SELECT 1 FROM DUAL;
6545 
6546   EXCEPTION
6547     WHEN OTHERS THEN
6548       NULL;
6549   END insert_tax_for_loc;
6550 /*===========================================================================+
6551  | PROCEDURE
6552  |    create_zx_status
6553  |
6554  | IN
6555  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
6556  |               AR Tax Codes form for synchronization.
6557  |
6558  | OUT
6559  |
6560  | DESCRIPTION
6561  |     This routine creates records in zx_status_b/tl grouping by zx_rates_b
6562  |
6563  |
6564  | SCOPE - PRIVATE
6565  |
6566  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
6567  |
6568  | CALLED FROM
6569  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
6570  |
6571  | NOTES
6572  | 09/24/2004:  Refine TW GDF handling.
6573  |
6574  | MODIFICATION HISTORY
6575  | 08/31/2004   Yoshimichi Konishi   Created.
6576  | 09/24/2004   Yoshimichi Konishi   Implemented LTE handling.
6577  +==========================================================================*/
6578 PROCEDURE create_zx_status (p_tax_id  NUMBER) AS
6579 BEGIN
6580 
6581   -- Status creation excluding LTE related status code
6582   IF L_MULTI_ORG_FLAG = 'Y'
6583   THEN
6584   INSERT INTO ZX_STATUS_B_TMP
6585   (
6586       TAX_STATUS_ID,
6587       TAX_STATUS_CODE,
6588       CONTENT_OWNER_ID,
6589       EFFECTIVE_FROM,
6590       EFFECTIVE_TO,
6591       TAX,
6592       TAX_REGIME_CODE,
6593       RULE_BASED_RATE_FLAG,
6594       ALLOW_RATE_OVERRIDE_FLAG,
6595       ALLOW_EXEMPTIONS_FLAG,
6596       ALLOW_EXCEPTIONS_FLAG,
6597       --TAX_REPORTING_CODE,
6598       --TAX_NUMERIC_CODE,
6599       DEFAULT_STATUS_FLAG,
6600       DEFAULT_FLG_EFFECTIVE_FROM,
6601       DEFAULT_FLG_EFFECTIVE_TO,
6602       DEF_REC_SETTLEMENT_OPTION_CODE,
6603       RECORD_TYPE_CODE,
6604       ATTRIBUTE1,
6605       ATTRIBUTE2,
6606       ATTRIBUTE3,
6607       ATTRIBUTE4,
6608       ATTRIBUTE5,
6609       ATTRIBUTE6,
6610       ATTRIBUTE7,
6611       ATTRIBUTE8,
6612       ATTRIBUTE9,
6613       ATTRIBUTE10,
6614       ATTRIBUTE11,
6615       ATTRIBUTE12,
6616       ATTRIBUTE13,
6617       ATTRIBUTE14,
6618       ATTRIBUTE15,
6619       ATTRIBUTE_CATEGORY,
6620       CREATION_DATE,
6621       CREATED_BY,
6622       LAST_UPDATE_DATE,
6623       LAST_UPDATED_BY,
6624       LAST_UPDATE_LOGIN,
6625       REQUEST_ID,
6626       OBJECT_VERSION_NUMBER
6627   )
6628   SELECT
6629       ZX_STATUS_B_S.NEXTVAL,  --TAX_STATUS_ID
6630       TAX_STATUS_CODE,        --TAX_STATUS_CODE
6634       TAX,                    --TAX
6631       CONTENT_OWNER_ID,       --CONTENT_OWNER_ID
6632       EFFECTIVE_FROM,         --EFFECTIVE_FROM
6633       NULL,                   --EFFECTIVE_TO
6635       TAX_REGIME_CODE,        --TAX_REGIME_CODE
6636       'N',                    --RULE_BASED_RATE_FLAG
6637       'Y',                    --ALLOW_RATE_OVERRIDE_FLAG
6638       ALLOW_EXEMPTIONS_FLAG,  --ALLOW_EXEMPTIONS_FLAG
6639       ALLOW_EXCEPTIONS_FLAG,  --ALLOW_EXCEPTIONS_FLAG
6640       --NULL,                 --TAX_REPORTING_CODE  --YK:8/31/2004: Remove it
6641       --NULL,                 --TAX_NUMERIC_CODE    --YK:8/31/2004: Remove it
6642       'Y',                    --DEFAULT_STATUS_FLAG  /**** one of them should be Y ****/
6643       EFFECTIVE_FROM,         --DEFAULT_FLG_EFFECTIVE_FROM
6644       NULL,                   --DEFAULT_FLG_EFFECTIVE_TO
6645       NULL,                   --DEF_REC_SETTLEMENT_OPTION_CODE  /**** Populated at rates level ****/
6646       'MIGRATED',
6647       NULL,
6648       NULL,
6649       NULL,
6650       NULL,
6651       NULL,
6652       NULL,
6653       NULL,
6654       NULL,
6655       NULL,
6656       NULL,
6657       NULL,
6658       NULL,
6659       NULL,
6660       NULL,
6661       NULL,
6662       NULL,
6663       SYSDATE,
6664       fnd_global.user_id,
6665       SYSDATE,
6666       fnd_global.user_id,
6667       fnd_global.conc_login_id,
6668       fnd_global.conc_request_id ,-- Request Id
6669       1
6670   FROM
6671     (SELECT RATES.TAX_REGIME_CODE                   tax_regime_code,
6672       RATES.CONTENT_OWNER_ID                  content_owner_id,
6673       RATES.TAX                               tax,
6674       RATES.TAX_STATUS_CODE                   tax_status_code,
6675             min(RATES.EFFECTIVE_FROM)               EFFECTIVE_FROM,
6676             nvl(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')  ALLOW_EXEMPTIONS_FLAG,
6677         CASE WHEN (NVL(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N' AND
6678                  NVL(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
6679            THEN 'N'
6680               ELSE 'Y'
6681              END                                    ALLOW_EXCEPTIONS_FLAG
6682      FROM   ZX_RATES_B               rates,
6683             AR_VAT_TAX_ALL_B         codes,
6684             AR_SYSTEM_PARAMETERS_ALL ar_sys_op
6685      WHERE
6686       rates.record_type_code = 'MIGRATED'
6687        AND  codes.vat_tax_id = rates.tax_rate_id
6688        AND  codes.org_id = ar_sys_op.org_id
6689        -- Eliminating LTE related status codes
6690        AND  codes.tax_type NOT IN ('TAX_GROUP', 'LOCATION')
6691        AND  not exists (select 1 from zx_status_b
6692        where  tax_regime_code  = rates.tax_regime_code
6693        and    tax              = rates.tax
6694        and    tax_status_code  = rates.tax_status_code
6695         and    content_owner_id = rates.content_owner_id
6696            )
6697       GROUP BY RATES.TAX_REGIME_CODE,
6698          RATES.CONTENT_OWNER_ID,
6699          RATES.TAX,
6700          RATES.TAX_STATUS_CODE,
6701          NVL(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N'),
6702                 CASE WHEN (NVL(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N' AND
6703                  NVL(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
6704               THEN 'N'
6705                    ELSE 'Y'
6706                 END
6707    ) STATUS;
6708  ELSE
6709 
6710    INSERT INTO ZX_STATUS_B_TMP
6711   (
6712       TAX_STATUS_ID,
6713       TAX_STATUS_CODE,
6714       CONTENT_OWNER_ID,
6715       EFFECTIVE_FROM,
6716       EFFECTIVE_TO,
6717       TAX,
6718       TAX_REGIME_CODE,
6719       RULE_BASED_RATE_FLAG,
6720       ALLOW_RATE_OVERRIDE_FLAG,
6721       ALLOW_EXEMPTIONS_FLAG,
6722       ALLOW_EXCEPTIONS_FLAG,
6723       --TAX_REPORTING_CODE,
6724       --TAX_NUMERIC_CODE,
6725       DEFAULT_STATUS_FLAG,
6726       DEFAULT_FLG_EFFECTIVE_FROM,
6727       DEFAULT_FLG_EFFECTIVE_TO,
6728       DEF_REC_SETTLEMENT_OPTION_CODE,
6729       RECORD_TYPE_CODE,
6730       ATTRIBUTE1,
6731       ATTRIBUTE2,
6732       ATTRIBUTE3,
6733       ATTRIBUTE4,
6734       ATTRIBUTE5,
6735       ATTRIBUTE6,
6736       ATTRIBUTE7,
6737       ATTRIBUTE8,
6738       ATTRIBUTE9,
6739       ATTRIBUTE10,
6740       ATTRIBUTE11,
6741       ATTRIBUTE12,
6742       ATTRIBUTE13,
6743       ATTRIBUTE14,
6744       ATTRIBUTE15,
6745       ATTRIBUTE_CATEGORY,
6746       CREATION_DATE,
6747       CREATED_BY,
6748       LAST_UPDATE_DATE,
6749       LAST_UPDATED_BY,
6750       LAST_UPDATE_LOGIN,
6751       REQUEST_ID,
6752       OBJECT_VERSION_NUMBER
6753   )
6754   SELECT
6755       ZX_STATUS_B_S.NEXTVAL,  --TAX_STATUS_ID
6756       TAX_STATUS_CODE,        --TAX_STATUS_CODE
6757       CONTENT_OWNER_ID,       --CONTENT_OWNER_ID
6758       EFFECTIVE_FROM,         --EFFECTIVE_FROM
6759       NULL,                   --EFFECTIVE_TO
6760       TAX,                    --TAX
6761       TAX_REGIME_CODE,        --TAX_REGIME_CODE
6762       'N',                    --RULE_BASED_RATE_FLAG
6763       'Y',                    --ALLOW_RATE_OVERRIDE_FLAG
6764       ALLOW_EXEMPTIONS_FLAG,  --ALLOW_EXEMPTIONS_FLAG
6765       ALLOW_EXCEPTIONS_FLAG,  --ALLOW_EXCEPTIONS_FLAG
6766       --NULL,                 --TAX_REPORTING_CODE  --YK:8/31/2004: Remove it
6767       --NULL,                 --TAX_NUMERIC_CODE    --YK:8/31/2004: Remove it
6771       NULL,                   --DEF_REC_SETTLEMENT_OPTION_CODE  /**** Populated at rates level ****/
6768       'Y',                    --DEFAULT_STATUS_FLAG  /**** one of them should be Y ****/
6769       EFFECTIVE_FROM,         --DEFAULT_FLG_EFFECTIVE_FROM
6770       NULL,                   --DEFAULT_FLG_EFFECTIVE_TO
6772       'MIGRATED',
6773       NULL,
6774       NULL,
6775       NULL,
6776       NULL,
6777       NULL,
6778       NULL,
6779       NULL,
6780       NULL,
6781       NULL,
6782       NULL,
6783       NULL,
6784       NULL,
6785       NULL,
6786       NULL,
6787       NULL,
6788       NULL,
6789       SYSDATE,
6790       fnd_global.user_id,
6791       SYSDATE,
6792       fnd_global.user_id,
6793       fnd_global.conc_login_id,
6794       fnd_global.conc_request_id ,-- Request Id
6795       1
6796   FROM
6797     (SELECT RATES.TAX_REGIME_CODE                   tax_regime_code,
6798       RATES.CONTENT_OWNER_ID                  content_owner_id,
6799       RATES.TAX                               tax,
6800       RATES.TAX_STATUS_CODE                   tax_status_code,
6801             min(RATES.EFFECTIVE_FROM)               EFFECTIVE_FROM,
6802             nvl(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')  ALLOW_EXEMPTIONS_FLAG,
6803         CASE WHEN (NVL(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N' AND
6804                  NVL(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
6805            THEN 'N'
6806               ELSE 'Y'
6807              END                                    ALLOW_EXCEPTIONS_FLAG
6808      FROM   ZX_RATES_B               rates,
6809             AR_VAT_TAX_ALL_B         codes,
6810             AR_SYSTEM_PARAMETERS_ALL ar_sys_op
6811      WHERE
6812       rates.record_type_code = 'MIGRATED'
6813        AND  codes.vat_tax_id = rates.tax_rate_id
6814        AND  codes.org_id = l_org_id
6815        AND  codes.org_id = ar_sys_op.org_id
6816               -- Eliminating LTE related status codes
6817        AND  codes.tax_type NOT IN ('TAX_GROUP', 'LOCATION')
6818        AND  not exists (select 1 from zx_status_b
6819        where  tax_regime_code  = rates.tax_regime_code
6820        and    tax              = rates.tax
6821        and    tax_status_code  = rates.tax_status_code
6822         and    content_owner_id = rates.content_owner_id
6823            )
6824       GROUP BY RATES.TAX_REGIME_CODE,
6825          RATES.CONTENT_OWNER_ID,
6826          RATES.TAX,
6827          RATES.TAX_STATUS_CODE,
6828          NVL(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N'),
6829                 CASE WHEN (NVL(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N' AND
6830                  NVL(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
6831               THEN 'N'
6832                    ELSE 'Y'
6833                 END
6834    ) STATUS;
6835 
6836 
6837 
6838  END IF;
6839 
6840 
6841 --arp_util_tax.debug('1:');
6842 
6843   /*
6844   -- LTE handling
6845   INSERT INTO ZX_STATUS_B_TMP
6846   (
6847       TAX_STATUS_ID,
6848       TAX_STATUS_CODE,
6849       CONTENT_OWNER_ID,
6850       EFFECTIVE_FROM,
6851       EFFECTIVE_TO,
6852       TAX,
6853       TAX_REGIME_CODE,
6854       RULE_BASED_RATE_FLAG,
6855       ALLOW_RATE_OVERRIDE_FLAG,
6856       ALLOW_EXEMPTIONS_FLAG,
6857       ALLOW_EXCEPTIONS_FLAG,
6858       --TAX_REPORTING_CODE,
6859       --TAX_NUMERIC_CODE,
6860       DEFAULT_STATUS_FLAG,
6861       DEFAULT_FLG_EFFECTIVE_FROM,
6862       DEFAULT_FLG_EFFECTIVE_TO,
6863       DEF_REC_SETTLEMENT_OPTION_CODE,
6864       RECORD_TYPE_CODE,
6865       ATTRIBUTE1,
6866       ATTRIBUTE2,
6867       ATTRIBUTE3,
6868       ATTRIBUTE4,
6869       ATTRIBUTE5,
6870       ATTRIBUTE6,
6871       ATTRIBUTE7,
6872       ATTRIBUTE8,
6873       ATTRIBUTE9,
6874       ATTRIBUTE10,
6875       ATTRIBUTE11,
6876       ATTRIBUTE12,
6877       ATTRIBUTE13,
6878       ATTRIBUTE14,
6879       ATTRIBUTE15,
6880       ATTRIBUTE_CATEGORY,
6881       CREATION_DATE,
6882       CREATED_BY,
6883       LAST_UPDATE_DATE,
6884       LAST_UPDATED_BY,
6885       LAST_UPDATE_LOGIN,
6886       REQUEST_ID,
6887       OBJECT_VERSION_NUMBER
6888   )
6889   SELECT
6890       ZX_STATUS_B_S.NEXTVAL,  --TAX_STATUS_ID
6891       TAX_STATUS_CODE,        --TAX_STATUS_CODE
6892       CONTENT_OWNER_ID,       --CONTENT_OWNER_ID
6893       EFFECTIVE_FROM,         --EFFECTIVE_FROM
6894       NULL,                   --EFFECTIVE_TO
6895       TAX,                    --TAX
6896       TAX_REGIME_CODE,        --TAX_REGIME_CODE
6897       'N',                    --RULE_BASED_RATE_FLAG
6898       'N',                    --ALLOW_RATE_OVERRIDE_FLAG
6899       'Y',                    --ALLOW_EXEMPTIONS_FLAG
6900       'Y',                    --ALLOW_EXCEPTIONS_FLAG
6901       --NULL,                 --TAX_REPORTING_CODE  --YK:8/31/2004: Remove it
6902       --NULL,                 --TAX_NUMERIC_CODE    --YK:8/31/2004: Remove it
6903       'Y',                    --DEFAULT_STATUS_FLAG  --one of them should be Y
6904       EFFECTIVE_FROM,         --DEFAULT_FLG_EFFECTIVE_FROM
6905       NULL,                   --DEFAULT_FLG_EFFECTIVE_TO
6906       NULL,                   --DEF_REC_SETTLEMENT_OPTION_CODE  -- Populated at rates level
6907       'MIGRATED',
6908       NULL,
6909       NULL,
6910       NULL,
6911       NULL,
6912       NULL,
6913       NULL,
6914       NULL,
6915       NULL,
6916       NULL,
6917       NULL,
6921       NULL,
6918       NULL,
6919       NULL,
6920       NULL,
6922       NULL,
6923       NULL,
6924       SYSDATE,
6925       fnd_global.user_id,
6926       SYSDATE,
6927       fnd_global.user_id,
6928       fnd_global.conc_login_id,
6929       fnd_global.conc_request_id ,-- Request Id
6930       1
6931   FROM
6932     (SELECT RATES.TAX_REGIME_CODE                   tax_regime_code,
6933       RATES.CONTENT_OWNER_ID                  content_owner_id,
6934       RATES.TAX                               tax,
6935       RATES.TAX_STATUS_CODE                   tax_status_code,
6936             min(categs.start_date_active)           EFFECTIVE_FROM,  --Effecive is derived from jl_zz_ar_tx_categ
6937             AR_SYS_OP.TAX_USE_PRODUCT_EXEMPT_FLAG   tax_use_product_exempt_flag,
6938             AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG  tax_use_customer_exempt_flag,
6939             AR_SYS_OP.TAX_USE_LOC_EXC_RATE_FLAG     tax_use_loc_exc_rate_flag
6940      FROM   ZX_RATES_B               rates,
6941             AR_VAT_TAX_ALL_B         codes,
6942             AR_SYSTEM_PARAMETERS_ALL ar_sys_op,
6943             jl_zz_ar_tx_categ_all    categs
6944      WHERE
6945       rates.record_type_code = 'MIGRATED'
6946        AND  codes.vat_tax_id = rates.tax_rate_id
6947        AND decode(l_multi_org_flag,'N',l_org_id,codes.org_id) = decode(l_multi_org_flag,'N',l_org_id,ar_sys_op.org_id)
6948 
6949        -- LTE handling
6950       AND  ar_sys_op.tax_database_view_set = 'BR'  --BugFix 4400733
6951       AND   codes.global_attribute_category IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
6952                      'JL.BR.ARXSUVAT.Tax Information',
6953                   'JL.CO.ARXSUVAT.AR_VAT_TAX')
6954      --AND  (ar_sys_op.tax_database_view_set <> 'O' AND codes.tax_type <> 'LOCATION') --BugFix 4400733
6955       AND codes.tax_type <> 'TAX_GROUP'
6956 
6957        AND codes.global_attribute1 = to_char(categs.tax_category_id)
6958 
6959        --Added following conditions for Sync process
6960        AND  codes.vat_tax_id  = nvl(p_tax_id, codes.vat_tax_id)
6961 
6962        --Rerunability
6963        AND  not exists (select 1 from zx_status_b
6964        where  tax_regime_code = rates.tax_regime_code
6965        and    tax             = rates.tax
6966        and    tax_status_code = rates.tax_status_code
6967        and    content_owner_id = rates.content_owner_id
6968            )
6969       GROUP BY RATES.TAX_REGIME_CODE,
6970          RATES.CONTENT_OWNER_ID,
6971          RATES.TAX,
6972          RATES.TAX_STATUS_CODE,
6973                AR_SYS_OP.TAX_USE_PRODUCT_EXEMPT_FLAG,
6974                AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,
6975                AR_SYS_OP.TAX_USE_LOC_EXC_RATE_FLAG
6976    );
6977    */
6978 
6979 --arp_util_tax.debug('2:');
6980 
6981   -- Unused JATW_GOVERNMENT_TAX_TYPE global flexfield atttribute handling
6982   IF L_JATW_USED = 'Y' THEN
6983    IF L_MULTI_ORG_FLAG = 'Y' THEN
6984 
6985     INSERT INTO ZX_STATUS_B_TMP
6986     (
6987   TAX_STATUS_ID,
6988   TAX_STATUS_CODE,
6989   CONTENT_OWNER_ID,
6990   EFFECTIVE_FROM,
6991   EFFECTIVE_TO,
6992   TAX,
6993   TAX_REGIME_CODE,
6994   RULE_BASED_RATE_FLAG,
6995   ALLOW_RATE_OVERRIDE_FLAG,
6996   ALLOW_EXEMPTIONS_FLAG,
6997   ALLOW_EXCEPTIONS_FLAG,
6998   --TAX_REPORTING_CODE,
6999   --TAX_NUMERIC_CODE,
7000   DEFAULT_STATUS_FLAG,
7001   DEFAULT_FLG_EFFECTIVE_FROM,
7002   DEFAULT_FLG_EFFECTIVE_TO,
7003   DEF_REC_SETTLEMENT_OPTION_CODE,
7004   RECORD_TYPE_CODE,
7005   ATTRIBUTE1,
7006   ATTRIBUTE2,
7007   ATTRIBUTE3,
7008   ATTRIBUTE4,
7009   ATTRIBUTE5,
7010   ATTRIBUTE6,
7011   ATTRIBUTE7,
7012   ATTRIBUTE8,
7013   ATTRIBUTE9,
7014   ATTRIBUTE10,
7015   ATTRIBUTE11,
7016   ATTRIBUTE12,
7017   ATTRIBUTE13,
7018   ATTRIBUTE14,
7019   ATTRIBUTE15,
7020   ATTRIBUTE_CATEGORY,
7021   CREATION_DATE,
7022   CREATED_BY,
7023   LAST_UPDATE_DATE,
7024   LAST_UPDATED_BY,
7025   LAST_UPDATE_LOGIN,
7026   REQUEST_ID,
7027         OBJECT_VERSION_NUMBER
7028     )
7029     SELECT
7030         ZX_STATUS_B_S.NEXTVAL,  --TAX_STATUS_ID
7031         lookups.lookup_code,    --TAX_STATUS_CODE
7032         CONTENT_OWNER_ID,       --CONTENT_OWNER_ID
7033         EFFECTIVE_FROM,         --EFFECTIVE_FROM
7034         NULL,                   --EFFECTIVE_TO
7035         TAX,                    --TAX
7036         TAX_REGIME_CODE,        --TAX_REGIME_CODE
7037         'N',                    --RULE_BASED_RATE_FLAG
7038         'Y',                    --ALLOW_RATE_OVERRIDE_FLAG
7039       --'N',                    --ALLOW_ADHOC_TAX_RATE_FLAG
7040         ALLOW_EXEMPTIONS_FLAG,  --ALLOW_EXEMPTIONS_FLAG
7041         ALLOW_EXCEPTIONS_FLAG,  --ALLOW_EXCEPTIONS_FLAG  /* Need review */
7042         --NULL,                 --TAX_REPORTING_CODE
7043         --NULL,                 --TAX_NUMERIC_CODE
7044         'Y',                    --DEFAULT_STATUS_FLAG
7045         EFFECTIVE_FROM,         --DEFAULT_FLG_EFFECTIVE_FROM,
7046         NULL,                   --DEFAULT_FLG_EFFECTIVE_TO
7047         NULL,                   --DEF_REC_SETTLEMENT_OPTION /* Populated at rates level */
7048         'MIGRATED',
7049         NULL,
7050         NULL,
7051         NULL,
7052         NULL,
7053         NULL,
7054         NULL,
7055         NULL,
7056         NULL,
7057         NULL,
7058         NULL,
7059         NULL,
7060         NULL,
7061         NULL,
7062         NULL,
7066         fnd_global.user_id,
7063         NULL,
7064         NULL,
7065         SYSDATE,
7067         SYSDATE,
7068         fnd_global.user_id,
7069         fnd_global.conc_login_id,
7070         fnd_global.conc_request_id ,-- Request Id
7071         1
7072     FROM
7073        (SELECT rates.tax_regime_code   TAX_REGIME_CODE,
7074          rates.content_owner_id  CONTENT_OWNER_ID,
7075          rates.tax               TAX,
7076          rates.tax_status_code   TAX_STATUS_CODE,
7077          min(rates.EFFECTIVE_FROM)  EFFECTIVE_FROM,
7078                nvl(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')   ALLOW_EXEMPTIONS_FLAG,
7079            CASE WHEN (NVL(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N'
7080                     AND NVL(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N')  = 'N')
7081               THEN 'N'
7082                  ELSE 'Y'
7083                 END                                    ALLOW_EXCEPTIONS_FLAG
7084   FROM   ZX_RATES_B rates,
7085          AR_VAT_TAX_ALL_B codes,
7086          AR_SYSTEM_PARAMETERS_ALL  ar_sys_op
7087   WHERE  codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)  --YK:8/30/2004: ID Clash handling
7088   AND    codes.global_attribute_category = 'JATW.ARXSUVAT.VAT_TAX'   --RP:9/7/2004: Category is different for P2P
7089   AND    rates.record_type_code = 'MIGRATED'
7090   AND    codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)
7091         AND    codes.org_id = ar_sys_op.org_id
7092 
7093   --Added following conditions for Sync process
7094   AND    codes.vat_tax_id  = nvl(p_tax_id, codes.vat_tax_id)
7095 
7096         --Rerunability
7097   AND    not exists (select 1 from zx_status_b
7098          where  tax_regime_code = rates.tax_regime_code
7099          and    tax             = rates.tax
7100          and    tax_status_code = rates.tax_status_code
7101          and    content_owner_id = rates.content_owner_id
7102         )
7103   GROUP BY rates.TAX_REGIME_CODE,
7104      rates.CONTENT_OWNER_ID,
7105      rates.TAX,
7106      rates.TAX_STATUS_CODE,
7107                  NVL(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')   ,
7108              CASE WHEN (nvl(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N' AND
7109                 nvl(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
7110                 THEN 'N'
7111                    ELSE 'Y'
7112                  END
7113        ) STATUSES,  --
7114         --YK:8/30/2004: select status codes created for TW GDFs to get information on
7115         --regime, tax, content_owner_id, status_code
7116         --If this in-line view did not fetch any records what would happen?
7117       (SELECT
7118     lookup_code
7119        FROM
7120     JA_LOOKUPS
7121        WHERE
7122     lookup_type = 'JATW_GOVERNMENT_TAX_TYPE'
7123        MINUS
7124        SELECT
7125     global_attribute1
7126        FROM
7127     ar_vat_tax_all_b
7128        WHERE
7129     global_attribute_category = 'JA.TW.ARXSUVAT.VAT_TAX'
7130        )LOOKUPS;  --
7131       --YK:8/31/2004: selects unused TW GDF.
7132       --Does cartesian join to create all combination for regime, tax, content_onwer_id
7133       --status_code fetched in STATUSES.
7134    ELSE
7135     INSERT INTO ZX_STATUS_B_TMP
7136     (
7137   TAX_STATUS_ID,
7138   TAX_STATUS_CODE,
7139   CONTENT_OWNER_ID,
7140   EFFECTIVE_FROM,
7141   EFFECTIVE_TO,
7142   TAX,
7143   TAX_REGIME_CODE,
7144   RULE_BASED_RATE_FLAG,
7145   ALLOW_RATE_OVERRIDE_FLAG,
7146   ALLOW_EXEMPTIONS_FLAG,
7147   ALLOW_EXCEPTIONS_FLAG,
7148   --TAX_REPORTING_CODE,
7149   --TAX_NUMERIC_CODE,
7150   DEFAULT_STATUS_FLAG,
7151   DEFAULT_FLG_EFFECTIVE_FROM,
7152   DEFAULT_FLG_EFFECTIVE_TO,
7153   DEF_REC_SETTLEMENT_OPTION_CODE,
7154   RECORD_TYPE_CODE,
7155   ATTRIBUTE1,
7156   ATTRIBUTE2,
7157   ATTRIBUTE3,
7158   ATTRIBUTE4,
7159   ATTRIBUTE5,
7160   ATTRIBUTE6,
7161   ATTRIBUTE7,
7162   ATTRIBUTE8,
7163   ATTRIBUTE9,
7164   ATTRIBUTE10,
7165   ATTRIBUTE11,
7166   ATTRIBUTE12,
7167   ATTRIBUTE13,
7168   ATTRIBUTE14,
7169   ATTRIBUTE15,
7170   ATTRIBUTE_CATEGORY,
7171   CREATION_DATE,
7172   CREATED_BY,
7173   LAST_UPDATE_DATE,
7174   LAST_UPDATED_BY,
7175   LAST_UPDATE_LOGIN,
7176   REQUEST_ID,
7177         OBJECT_VERSION_NUMBER
7178     )
7179     SELECT
7180         ZX_STATUS_B_S.NEXTVAL,  --TAX_STATUS_ID
7181         lookups.lookup_code,    --TAX_STATUS_CODE
7182         CONTENT_OWNER_ID,       --CONTENT_OWNER_ID
7183         EFFECTIVE_FROM,         --EFFECTIVE_FROM
7184         NULL,                   --EFFECTIVE_TO
7185         TAX,                    --TAX
7186         TAX_REGIME_CODE,        --TAX_REGIME_CODE
7187         'N',                    --RULE_BASED_RATE_FLAG
7188         'Y',                    --ALLOW_RATE_OVERRIDE_FLAG
7189       --'N',                    --ALLOW_ADHOC_TAX_RATE_FLAG
7190         ALLOW_EXEMPTIONS_FLAG,  --ALLOW_EXEMPTIONS_FLAG
7191         ALLOW_EXCEPTIONS_FLAG,  --ALLOW_EXCEPTIONS_FLAG  /* Need review */
7192         --NULL,                 --TAX_REPORTING_CODE
7193         --NULL,                 --TAX_NUMERIC_CODE
7194         'Y',                    --DEFAULT_STATUS_FLAG
7195         EFFECTIVE_FROM,         --DEFAULT_FLG_EFFECTIVE_FROM,
7196         NULL,                   --DEFAULT_FLG_EFFECTIVE_TO
7197         NULL,                   --DEF_REC_SETTLEMENT_OPTION /* Populated at rates level */
7198         'MIGRATED',
7199         NULL,
7200         NULL,
7201         NULL,
7205         NULL,
7202         NULL,
7203         NULL,
7204         NULL,
7206         NULL,
7207         NULL,
7208         NULL,
7209         NULL,
7210         NULL,
7211         NULL,
7212         NULL,
7213         NULL,
7214         NULL,
7215         SYSDATE,
7216         fnd_global.user_id,
7217         SYSDATE,
7218         fnd_global.user_id,
7219         fnd_global.conc_login_id,
7220         fnd_global.conc_request_id ,-- Request Id
7221         1
7222     FROM
7223        (SELECT rates.tax_regime_code   TAX_REGIME_CODE,
7224          rates.content_owner_id  CONTENT_OWNER_ID,
7225          rates.tax               TAX,
7226          rates.tax_status_code   TAX_STATUS_CODE,
7227          min(rates.EFFECTIVE_FROM)  EFFECTIVE_FROM,
7228                nvl(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')   ALLOW_EXEMPTIONS_FLAG,
7229            CASE WHEN (NVL(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N'
7230                     AND NVL(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N')  = 'N')
7231               THEN 'N'
7232                  ELSE 'Y'
7233                 END                                    ALLOW_EXCEPTIONS_FLAG
7234   FROM   ZX_RATES_B rates,
7235          AR_VAT_TAX_ALL_B codes,
7236          AR_SYSTEM_PARAMETERS_ALL  ar_sys_op
7237   WHERE  codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)  --YK:8/30/2004: ID Clash handling
7238   AND    codes.global_attribute_category = 'JATW.ARXSUVAT.VAT_TAX'   --RP:9/7/2004: Category is different for P2P
7239   AND    rates.record_type_code = 'MIGRATED'
7240   AND    codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)
7241         AND    codes.org_id = ar_sys_op.org_id
7242   AND    codes.org_id = l_org_id
7243 
7244   --Added following conditions for Sync process
7245   AND    codes.vat_tax_id  = nvl(p_tax_id, codes.vat_tax_id)
7246 
7247         --Rerunability
7248   AND    not exists (select 1 from zx_status_b
7249          where  tax_regime_code = rates.tax_regime_code
7250          and    tax             = rates.tax
7251          and    tax_status_code = rates.tax_status_code
7252          and    content_owner_id = rates.content_owner_id
7253         )
7254   GROUP BY rates.TAX_REGIME_CODE,
7255      rates.CONTENT_OWNER_ID,
7256      rates.TAX,
7257      rates.TAX_STATUS_CODE,
7258                  NVL(AR_SYS_OP.TAX_USE_CUSTOMER_EXEMPT_FLAG,'N')   ,
7259              CASE WHEN (nvl(ar_sys_op.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N' AND
7260                 nvl(ar_sys_op.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
7261                 THEN 'N'
7262                    ELSE 'Y'
7263                  END
7264        ) STATUSES,  --
7265         --YK:8/30/2004: select status codes created for TW GDFs to get information on
7266         --regime, tax, content_owner_id, status_code
7267         --If this in-line view did not fetch any records what would happen?
7268       (SELECT
7269     lookup_code
7270        FROM
7271     JA_LOOKUPS
7272        WHERE
7273     lookup_type = 'JATW_GOVERNMENT_TAX_TYPE'
7274        MINUS
7275        SELECT
7276     global_attribute1
7277        FROM
7278     ar_vat_tax_all_b
7279        WHERE
7280     global_attribute_category = 'JA.TW.ARXSUVAT.VAT_TAX'
7281        )LOOKUPS;  --
7282       --YK:8/31/2004: selects unused TW GDF.
7283       --Does cartesian join to create all combination for regime, tax, content_onwer_id
7284       --status_code fetched in STATUSES.
7285 
7286 
7287    END IF;
7288   END IF;
7289   --End of JATW_GOVERNMENT_TAX_TYPE lookup code
7290 
7291 arp_util_tax.debug('3:');
7292 /*
7293   INSERT INTO ZX_STATUS_TL
7294   (
7295       TAX_STATUS_ID,
7296       TAX_STATUS_NAME,
7297       CREATION_DATE,
7298       CREATED_BY,
7299       LAST_UPDATE_DATE,
7300       LAST_UPDATED_BY,
7301       LAST_UPDATE_LOGIN,
7302       LANGUAGE,
7303       SOURCE_LANG
7304     )
7305   SELECT
7306       TAX_STATUS_ID,
7307       TAX_STATUS_CODE,
7308       SYSDATE,
7309       fnd_global.user_id,
7310       SYSDATE,
7311       fnd_global.user_id,
7312       fnd_global.conc_login_id,
7313       L.LANGUAGE_CODE,
7314       userenv('LANG')
7315   FROM
7316       FND_LANGUAGES L,
7317       ZX_STATUS_B B     -- cartesian join
7318   WHERE
7319       L.INSTALLED_FLAG in ('I', 'B')
7320   AND RECORD_TYPE_CODE = 'MIGRATED'
7321   AND  not exists
7322        (select NULL
7323        from ZX_STATUS_TL T
7324        where T.TAX_STATUS_ID =  B.TAX_STATUS_ID
7325        and T.LANGUAGE = L.LANGUAGE_CODE);*/
7326 
7327 EXCEPTION
7328   WHEN OTHERS THEN
7329     NULL;
7330 END;
7331 
7332 /*===========================================================================+
7333  | PROCEDURE
7334  |    create_zx_taxes
7335  |
7336  | IN
7337  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
7338  |               AR Tax Codes form for synchronization.
7339  |
7340  | OUT
7341  |
7342  | DESCRIPTION
7343  |     This routine creates records in zx_taxes_b/tl grouping by zx_rates_b
7344  |
7345  |
7346  | SCOPE - PRIVATE
7347  |
7348  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
7349  |
7350  | CALLED FROM
7351  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
7352  |
7353  | NOTES
7357  | MODIFICATION HISTORY
7354  | 9/24/2004: Need to simplify the logic.
7355  |            Need to handle unused tax category.
7356  |
7358  | 08/31/2004   Yoshimichi Konishi   Created.
7359  | 09/24/2004   Yoshimichi Konishi   Included LTE handling.
7360  +==========================================================================*/
7361 PROCEDURE create_zx_taxes (p_tax_id  NUMBER) AS
7362 BEGIN
7363   --
7364   -- Option 1 : Populates tax category code (for LTE) to _TL table at the second insert
7365   --
7366 
7367   IF L_MULTI_ORG_FLAG = 'Y'
7368   THEN
7369 
7370   INSERT INTO ZX_TAXES_B_TMP
7371   (
7372            TAX                                    ,
7373      EFFECTIVE_FROM                         ,
7374      EFFECTIVE_TO                           ,
7375      TAX_REGIME_CODE                        ,
7376      TAX_TYPE_CODE                          ,
7377      ALLOW_MANUAL_ENTRY_FLAG                ,
7378      ALLOW_TAX_OVERRIDE_FLAG                ,
7379      MIN_TXBL_BSIS_THRSHLD                  ,
7380      MAX_TXBL_BSIS_THRSHLD                  ,
7381      MIN_TAX_RATE_THRSHLD                   ,
7382      MAX_TAX_RATE_THRSHLD                   ,
7383      MIN_TAX_AMT_THRSHLD                    ,
7384      MAX_TAX_AMT_THRSHLD                    ,
7385      COMPOUNDING_PRECEDENCE                 ,
7386      PERIOD_SET_NAME                        ,
7387      EXCHANGE_RATE_TYPE                     ,
7388      TAX_CURRENCY_CODE                      ,
7389      TAX_PRECISION                          ,
7390      MINIMUM_ACCOUNTABLE_UNIT               ,
7391      ROUNDING_RULE_CODE                     ,
7392      TAX_STATUS_RULE_FLAG                   ,
7393      TAX_RATE_RULE_FLAG                     ,
7394      DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
7395      PLACE_OF_SUPPLY_RULE_FLAG              ,
7396      DIRECT_RATE_RULE_FLAG                  ,
7397      APPLICABILITY_RULE_FLAG                ,
7398      TAX_CALC_RULE_FLAG                     ,
7399      TXBL_BSIS_THRSHLD_FLAG                 ,
7400      TAX_RATE_THRSHLD_FLAG                  ,
7401      TAX_AMT_THRSHLD_FLAG                   ,
7402      TAXABLE_BASIS_RULE_FLAG                ,
7403      DEF_INCLUSIVE_TAX_FLAG                 ,
7404      THRSHLD_GROUPING_LVL_CODE              ,
7405      HAS_OTHER_JURISDICTIONS_FLAG           ,
7406      ALLOW_EXEMPTIONS_FLAG                  ,
7407      ALLOW_EXCEPTIONS_FLAG                  ,
7408      ALLOW_RECOVERABILITY_FLAG              ,
7409      DEF_TAX_CALC_FORMULA                   ,
7410      TAX_INCLUSIVE_OVERRIDE_FLAG            ,
7411      DEF_TAXABLE_BASIS_FORMULA              ,
7412      DEF_REGISTR_PARTY_TYPE_CODE            ,
7413      REGISTRATION_TYPE_RULE_FLAG            ,
7414      REPORTING_ONLY_FLAG                    ,
7415      AUTO_PRVN_FLAG                         ,
7416      LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
7417            LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
7418      HAS_DETAIL_TB_THRSHLD_FLAG             ,
7419      HAS_TAX_DET_DATE_RULE_FLAG             ,
7420      HAS_EXCH_RATE_DATE_RULE_FLAG           ,
7421      HAS_TAX_POINT_DATE_RULE_FLAG           ,
7422      PRINT_ON_INVOICE_FLAG                  ,
7423      USE_LEGAL_MSG_FLAG                     ,
7424      CALC_ONLY_FLAG                         ,
7425      PRIMARY_RECOVERY_TYPE_CODE             ,
7426      PRIMARY_REC_TYPE_RULE_FLAG             ,
7427      SECONDARY_RECOVERY_TYPE_CODE           ,
7428      SECONDARY_REC_TYPE_RULE_FLAG           ,
7429      PRIMARY_REC_RATE_DET_RULE_FLAG         ,
7430      SEC_REC_RATE_DET_RULE_FLAG             ,
7431      OFFSET_TAX_FLAG                        ,
7432      RECOVERY_RATE_OVERRIDE_FLAG            ,
7433      ZONE_GEOGRAPHY_TYPE                    ,
7434      REGN_NUM_SAME_AS_LE_FLAG               ,
7435      DEF_REC_SETTLEMENT_OPTION_CODE         ,
7436      RECORD_TYPE_CODE                       ,
7437      ALLOW_ROUNDING_OVERRIDE_FLAG           ,
7438    --BugFix 3493419
7439      SOURCE_TAX_FLAG                        ,
7440      SPECIAL_INCLUSIVE_TAX_FLAG             ,
7441      ATTRIBUTE1                             ,
7442      ATTRIBUTE2                             ,
7443      ATTRIBUTE3                             ,
7444      ATTRIBUTE4                             ,
7445      ATTRIBUTE5                             ,
7446      ATTRIBUTE6                             ,
7447      ATTRIBUTE7                             ,
7448      ATTRIBUTE8                             ,
7449      ATTRIBUTE9                             ,
7450      ATTRIBUTE10                            ,
7451      ATTRIBUTE11                            ,
7452      ATTRIBUTE12                            ,
7453      ATTRIBUTE13                            ,
7454      ATTRIBUTE14                            ,
7455      ATTRIBUTE15                            ,
7456      ATTRIBUTE_CATEGORY                     ,
7457      PARENT_GEOGRAPHY_TYPE                  ,
7458      PARENT_GEOGRAPHY_ID                    ,
7459      ALLOW_MASS_CREATE_FLAG                 ,
7460      APPLIED_AMT_HANDLING_FLAG              ,
7461      TAX_ID                                 ,
7462      CONTENT_OWNER_ID                       ,
7463      REP_TAX_AUTHORITY_ID                   ,
7464      COLL_TAX_AUTHORITY_ID                  ,
7465      THRSHLD_CHK_TMPLT_CODE                 ,
7466      DEF_PRIMARY_REC_RATE_CODE              ,
7467      DEF_SECONDARY_REC_RATE_CODE            ,
7468      CREATED_BY                         ,
7469      CREATION_DATE                          ,
7470      LAST_UPDATED_BY                        ,
7471      LAST_UPDATE_DATE                       ,
7475      PROGRAM_ID                             ,
7472      LAST_UPDATE_LOGIN                      ,
7473      REQUEST_ID                             ,
7474      PROGRAM_APPLICATION_ID                 ,
7476      PROGRAM_LOGIN_ID                       ,
7477            OVERRIDE_GEOGRAPHY_TYPE                ,--Bug 4163204
7478      OBJECT_VERSION_NUMBER                  ,
7479            TAX_ACCOUNT_CREATE_METHOD_CODE         ,--Bug 4204464
7480            TAX_ACCOUNT_SOURCE_TAX                 ,
7481            TAX_EXMPT_CR_METHOD_CODE         ,
7482            TAX_EXMPT_SOURCE_TAX             ,
7483            APPLICABLE_BY_DEFAULT_FLAG              --Bug 4905771
7484   )
7485   SELECT
7486            l_TAX                            ,--TAX
7487      EFFECTIVE_FROM                   ,
7488      NULL                             ,--EFFECTIVE_TO
7489      l_TAX_REGIME_CODE                ,--TAX_REGIME_CODE
7490            -- Updated using Arnab's logic
7491            (select tax_type_code
7492       from
7493         (select codes.tax_type         tax_type_code,
7494           rates.tax_regime_code  tax_regime_code,
7495           rates.tax              tax,
7496           rates.content_owner_id content_owner_id
7497          from   zx_rates_b rates, ar_vat_tax_all_b codes
7498          where  nvl(rates.source_id, rates.tax_rate_id) = codes.vat_tax_id  --ID Clash
7499          AND rates.record_type_code = 'MIGRATED'
7500          AND rates.tax_class = DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')
7501          group  by rates.tax_regime_code, rates.tax, rates.content_owner_id, tax_type
7502         )
7503       where   tax_regime_code = l_tax_regime_code
7504       and     tax = l_tax
7505       and     content_owner_id = l_content_owner_id ----removed most frequent logic
7506       AND ROWNUM = 1
7507     )                        , --TAX_TYPE_CODE --Populate most frequently used. Can be done in separate process
7508          -- Bug 571396 - While upgrade, set allow_manual_entry_flag as 'Y' instead of 'N'
7509     'Y'                      ,--ALLOW_MANUAL_ENTRY_FLAG  --Op1. Derive if from Profile if possible: Op 2. Separate process
7510     'Y'                               ,--ALLOW_TAX_OVERRIDE_FLAG  --Derive if from Profile if possible: Separate process
7511      NULL                             ,--MIN_TXBL_BSIS_THRSHLD
7512      NULL                             ,--MAX_TXBL_BSIS_THRSHLD
7513      NULL                             ,--MIN_TAX_RATE_THRSHLD
7514      NULL                             ,--MAX_TAX_RATE_THRSHLD
7515      NULL                             ,--MIN_TAX_AMT_THRSHLD
7516      NULL                             ,--MAX_TAX_AMT_THRSHLD
7517      L_PRECEDENCE                     ,--TAX_COMPOUNDING_PRECEDENCE  --Compounding handling: Separate process
7518      NULL                             ,--PERIOD_SET_NAME
7519      -- Bug 4539221
7520            -- Deriving exchange_rate_type
7521            -- If default_exchange_rate_type is NULL use most frequently
7522            -- used conversion_type from gl_daily_rates.
7523          /*  CASE
7524         WHEN  CROSS_CURRENCY_RATE_TYPE  IS NULL
7525         THEN  'Corporate'  --Bug fix 5248597
7526         ELSE
7527               -- Bug 6006519/5654551, 'User' is not a valid exchange rate type
7528               DECODE(CROSS_CURRENCY_RATE_TYPE,
7529                     'User', 'Corporate',
7530                      CROSS_CURRENCY_RATE_TYPE)
7531      END                              ,--EXCHANGE_RATE_TYPE */
7532      NULL           , --EXCHANGE_RATE_TYPE
7533      TAX_CURRENCY_CODE                ,
7534      TAX_PRECISION                    ,
7535      MINIMUM_ACCOUNTABLE_UNIT         ,
7536      ROUNDING_RULE_CODE               ,
7537      'N'                              ,-- TAX_STATUS_RULE_FLAG
7538      'N'                              ,--TAX_RATE_RULE_FLAG
7539     'SHIP_TO_BILL_TO'                 ,--DEF_PLACE_OF_SUPPLY_TYPE_CODE
7540     'N'                               ,--PLACE_OF_SUPPLY_RULE_FLAG
7541           -- Bug 4575226 : direct_rate_rule_flag is Y for Taxes other than US Sales Tax
7542     'N'                               ,--DIRECT_RATE_RULE_FLAG -- Bug 5090631
7543     'N'                               ,--APPLICABILITY_RULE_FLAG
7544     'N'                               ,--TAX_CALC_RULE_FLAG
7545     'N'                               ,--TXBL_BSIS_THRSHLD_FLAG
7546     'N'                               ,--TAX_RATE_THRSHLD_FLAG
7547     'N'                               ,--TAX_AMT_THRSHLD_FLAG
7548     'N'                               ,--TAXABLE_BASIS_RULE_FLAG --YK: 8/30/2004: Should be populated when compounding is used
7549     'N'                               ,--DEF_INCLUSIVE_TAX_FLAG  --YK: 8/30/2004: Inclusive
7550      NULL                             ,--THRSHLD_GROUPING_LVL_CODE
7551     'N'                               ,--HAS_OTHER_JURISDICTIONS_FLAG
7552           ALLOW_EXEMPTIONS_FLAG             ,--ALLOW_EXEMPTIONS_FLAG
7553       ALLOW_EXCEPTIONS_FLAG             ,--ALLOW_EXCEPTIONS_FLAG
7554     'N'                               ,--ALLOW_RECOVERABILITY_FLAG
7555     'STANDARD_TC'                     ,--DEF_TAX_CALC_FORMULA
7556     'Y'                               ,--TAX_INCLUSIVE_OVERRIDE_FLAG --YK: 8/30/2004: Must be 'Y' as rate can be either 'Y' or 'N'.
7557     'STANDARD_TB'                     ,--DEF_TAXABLE_BASIS_FORMULA   --YK: 8/30/2004: Compounding
7558     'SHIP_TO_SITE'                    ,--DEF_REGISTR_PARTY_TYPE_CODE
7559     'N'                               ,--REGISTRATION_TYPE_RULE_FLAG
7560     'N'                               ,--REPORTING_ONLY_FLAG
7561     'N'                               ,--AUTO_PRVN_FLAG
7562     CASE WHEN
7563       EXISTS (select  1 from  zx_rates_b active_rate
7564         where active_rate.TAX = l_TAX
7565         and   active_rate.TAX_REGIME_CODE = l_TAX_REGIME_CODE
7569          ELSE 'N'
7566         and   sysdate between active_rate.effective_from
7567               and   nvl(active_rate.effective_to,sysdate)) --Could add active_flag in the condition
7568          THEN 'Y'
7570     END                               ,--LIVE_FOR_PROCESSING_FLAG  --set it to N when all rates belonging to this tax is enddated: Separate parocess   YK:3/16/2005
7571           'Y'                               ,--LIVE_FOR_APPLICABILITY_FLAG  Bug 4225216
7572     'N'                               ,--HAS_DETAIL_TB_THRSHLD_FLAG
7573     'N'                               ,--HAS_TAX_DET_DATE_RULE_FLAG
7574     'N'                               ,--HAS_EXCH_RATE_DATE_RULE_FLAG
7575     'N'                               ,--HAS_TAX_POINT_DATE_RULE_FLAG
7576     'Y'                               ,--PRINT_ON_INVOICE_FLAG   --YK:B:10/08/2004: Could be an issue.
7577     'N'                               ,--USE_LEGAL_MSG_FLAG
7578     'N'                               ,--CALC_ONLY_FLAG
7579     'NULL'                            ,--PRIMARY_RECOVERY_TYPE_CODE
7580     'N'                               ,--PRIMARY_REC_TYPE_RULE_FLAG
7581      NULL                             ,--SECONDARY_RECOVERY_TYPE_CODE
7582     'N'                               ,--SECONDARY_REC_TYPE_RULE_FLAG
7583     'N'                               ,--PRIMARY_REC_RATE_DET_RULE_FLAG
7584     'N'                               ,--SEC_REC_RATE_DET_RULE_FLAG
7585     'N'                               ,--OFFSET_TAX_FLAG
7586     'N'                               ,--RECOVERY_RATE_OVERRIDE_FLAG
7587      NULL                             ,--ZONE_GEOGRAPHY_TYPE  --YK:8/30/2004: US sales tax handling
7588     'N'                               ,--REGN_NUM_SAME_AS_LE_FLAG  --Ask Dario
7589     'IMMEDIATE'                       ,--DEF_REC_SETTLEMENT_OPTION_CODE --YK: 8/30/2004: It be NULL in UI. What does NULL mean?
7590      'MIGRATED'                       ,--RECORD_TYPE_CODE
7591      'N'                              ,--ALLOW_ROUNDING_OVERRIDE_FLAG
7592    --BugFix 3493419
7593      DECODE(L_CONTENT_OWNER_ID,
7594       (select min(CONTENT_OWNER_ID)
7595       from   zx_rates_b
7596       where  tax = l_TAX
7597       and    tax_regime_code  = l_TAX_REGIME_CODE
7598       and    RECORD_TYPE_CODE = 'MIGRATED'),
7599       'Y',
7600       'N')                      ,--SOURCE_TAX_FLAG
7601     'N'                               ,--SPECIAL_INCL_TAX_FLAG  --YK:8/30/2004: For BR support
7602      NULL                             ,--ATTRIBUTE1
7603      NULL                             ,
7604      NULL                             ,
7605      NULL                             ,
7606      NULL                             ,
7607      NULL                             ,
7608      NULL                             ,
7609      NULL                             ,
7610      NULL                             ,
7611      NULL                             ,
7612      NULL                             ,
7613      NULL                             ,
7614      NULL                             ,
7615      NULL                             ,
7616      NULL                             ,
7617      NULL                             ,--ATTRIBUTE_CATEGORY
7618      NULL                             ,--PARENT_GEOGRAPHY_TYPE  --YK:8/30/2004: Can be populated for US Sales Tax
7619      NULL                             ,--PARENT_GEOGRAPHY_ID    --YK:8/30/2004: Can be populated for US Sales Tax
7620     'N'                               ,--ALLOW_MASS_CREATE_FLAG
7621     'P'                               ,--APPLIED_AMT_HANDLING_FLAG --Bug 5232502
7622      ZX_TAXES_B_S.NEXTVAL             ,--TAX_ID
7623      L_CONTENT_OWNER_ID               ,
7624      NULL                             ,--REP_TAX_AUTHORITY_ID
7625      NULL                             ,--COLL_TAX_AUTHORITY_ID
7626      NULL                             ,--THRSHLD_CHK_TMPLT_CODE
7627      NULL                             ,--DEF_PRIMARY_REC_RATE_CODE
7628      NULL                             ,--DEF_SECONDARY_REC_RATE_CODE
7629      fnd_global.user_id               ,
7630      SYSDATE                          ,
7631      fnd_global.user_id               ,
7632      SYSDATE                          ,
7633      fnd_global.conc_login_id         ,
7634      fnd_global.conc_request_id       ,--Request Id
7635      fnd_global.prog_appl_id          ,--Program Application ID
7636      fnd_global.conc_program_id       ,--Program Id
7637      fnd_global.conc_login_id         ,--Program Login ID
7638            NULL                             ,--OVERRIDE_GEOGRAPHY_TYPE : 4163204
7639      1                                ,--OBJECT_VERSION_NUMBER
7640            'CREATE_ACCOUNTS'                ,--TAX_ACCOUNT_CREATE_METHOD_CODE
7641            NULL                             ,--TAX_ACCOUNT_SOURCE_TAX
7642            'CREATE_EXEMPTIONS'              ,--TAX_EXMPT_EXCEP_CR_METHOD_CODE
7643            NULL                             ,
7644            'N'                               --APPLICABLE_BY_DEFAULT_FLAG
7645   FROM
7646   (
7647       SELECT
7648       RATES.TAX_REGIME_CODE                 L_TAX_REGIME_CODE,
7649       RATES.TAX                             L_TAX,
7650       Min(RESULTS.TAX_PRECEDENCE)           L_PRECEDENCE,
7651       ptp.party_tax_profile_id              L_CONTENT_OWNER_ID,
7652       SOB.CURRENCY_CODE                     TAX_CURRENCY_CODE,
7653       ARP.TAX_PRECISION                     TAX_PRECISION,
7654       ARP.TAX_MINIMUM_ACCOUNTABLE_UNIT      MINIMUM_ACCOUNTABLE_UNIT,
7655       ARP.TAX_ROUNDING_RULE                 ROUNDING_RULE_CODE,
7656       nvl(ARP.tax_use_product_exempt_flag,'N')       PRODUCT_EXEMPT_FLAG,  --YK:8/30/2004: NVL
7657       nvl(ARP.tax_use_customer_exempt_flag, 'N')     ALLOW_EXEMPTIONS_FLAG, --YK:8/30/2004: NVL
7661     -- Bug 6006519/5654551. 'User' is not a valid exchange rate type
7658       'N'                                    ALLOW_EXCEPTIONS_FLAG ,       --Bug 5505935
7659       min(RATES.EFFECTIVE_FROM)              EFFECTIVE_FROM,
7660             -- Bug 4539221
7662            -- decode(ARP.CROSS_CURRENCY_RATE_TYPE,'User','Corporate',ARP.CROSS_CURRENCY_RATE_TYPE)           CROSS_CURRENCY_RATE_TYPE
7663       NULL          CROSS_CURRENCY_RATE_TYPE
7664        FROM
7665       ZX_RATES_B RATES,
7666       ZX_UPDATE_CRITERIA_RESULTS results,
7667       AR_SYSTEM_PARAMETERS_ALL ARP,
7668       GL_SETS_OF_BOOKS SOB,
7669       ZX_PARTY_TAX_PROFILE PTP
7670        WHERE
7671                  -- Bug 4691005 : 1. removed nvl source_id
7672                  --               2. added condition for tax_class
7673            RESULTS.tax_code_id    = rates.tax_rate_id
7674        AND       RESULTS.tax_class      = 'OUTPUT'
7675        AND       RESULTS.org_id         = PTP.PARTY_ID
7676        AND       PTP.PARTY_TYPE_CODE    = 'OU'
7677        AND       RESULTS.org_id         =  ARP.ORG_ID
7678        AND       ARP.SET_OF_BOOKS_ID   =  SOB.SET_OF_BOOKS_ID
7679        AND       RATES.RECORD_TYPE_CODE = 'MIGRATED'
7680 
7681        --Added following conditions for Sync process
7682        AND      results.tax_code_id  = nvl(p_tax_id, results.tax_code_id)
7683 
7684        --Rerunability
7685        AND  not exists (select 1 from zx_taxes_b
7686        where  tax_regime_code = rates.tax_regime_code
7687        and    tax             = rates.tax
7688        and    content_owner_id= rates.content_owner_id
7689       )
7690        GROUP BY
7691       RATES.TAX_REGIME_CODE                 ,
7692       RATES.TAX                             ,
7693 --      RESULTS.TAX_PRECEDENCE                ,
7694       ptp.party_tax_profile_id              ,  --OU
7695       SOB.CURRENCY_CODE                 ,  --OU partitioned
7696       ARP.TAX_PRECISION                     ,  --OU partitioned
7697       ARP.TAX_MINIMUM_ACCOUNTABLE_UNIT      ,  --OU partitioned
7698       ARP.TAX_ROUNDING_RULE                 ,  --OU partitioned
7699       ARP.tax_use_product_exempt_flag       ,  --OU
7700       nvl(ARP.tax_use_customer_exempt_flag,'N'),  --OU
7701            CASE WHEN (nvl(arp.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N'
7702                 AND nvl(arp.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
7703            THEN 'N'
7704            ELSE 'Y'
7705             END  ,
7706       -- Bug 6006519/5654551, 'User' is not a valid exchange rate type
7707       --decode(ARP.CROSS_CURRENCY_RATE_TYPE,'User','Corporate',ARP.CROSS_CURRENCY_RATE_TYPE)
7708       NULL
7709 
7710   ) TAX
7711   --YK:B:10/07/2004: Added the following condition.
7712   WHERE NOT EXISTS
7713     (select 1
7714      from   zx_taxes_b tax1
7715      where  tax.l_tax_regime_code = tax1.tax_regime_code
7716      and    tax.l_tax = tax1.tax
7717      and    tax.l_content_owner_id = tax1.content_owner_id
7718 
7719     )
7720   ;
7721   ELSE
7722 
7723   INSERT INTO ZX_TAXES_B_TMP
7724   (
7725            TAX                                    ,
7726      EFFECTIVE_FROM                         ,
7727      EFFECTIVE_TO                           ,
7728      TAX_REGIME_CODE                        ,
7729      TAX_TYPE_CODE                          ,
7730      ALLOW_MANUAL_ENTRY_FLAG                ,
7731      ALLOW_TAX_OVERRIDE_FLAG                ,
7732      MIN_TXBL_BSIS_THRSHLD                  ,
7733      MAX_TXBL_BSIS_THRSHLD                  ,
7734      MIN_TAX_RATE_THRSHLD                   ,
7735      MAX_TAX_RATE_THRSHLD                   ,
7736      MIN_TAX_AMT_THRSHLD                    ,
7737      MAX_TAX_AMT_THRSHLD                    ,
7738      COMPOUNDING_PRECEDENCE                 ,
7739      PERIOD_SET_NAME                        ,
7740      EXCHANGE_RATE_TYPE                     ,
7741      TAX_CURRENCY_CODE                      ,
7742      TAX_PRECISION                          ,
7743      MINIMUM_ACCOUNTABLE_UNIT               ,
7744      ROUNDING_RULE_CODE                     ,
7745      TAX_STATUS_RULE_FLAG                   ,
7746      TAX_RATE_RULE_FLAG                     ,
7747      DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
7748      PLACE_OF_SUPPLY_RULE_FLAG              ,
7749      DIRECT_RATE_RULE_FLAG                  ,
7750      APPLICABILITY_RULE_FLAG                ,
7751      TAX_CALC_RULE_FLAG                     ,
7752      TXBL_BSIS_THRSHLD_FLAG                 ,
7753      TAX_RATE_THRSHLD_FLAG                  ,
7754      TAX_AMT_THRSHLD_FLAG                   ,
7755      TAXABLE_BASIS_RULE_FLAG                ,
7756      DEF_INCLUSIVE_TAX_FLAG                 ,
7757      THRSHLD_GROUPING_LVL_CODE              ,
7758      HAS_OTHER_JURISDICTIONS_FLAG           ,
7759      ALLOW_EXEMPTIONS_FLAG                  ,
7760      ALLOW_EXCEPTIONS_FLAG                  ,
7761      ALLOW_RECOVERABILITY_FLAG              ,
7762      DEF_TAX_CALC_FORMULA                   ,
7763      TAX_INCLUSIVE_OVERRIDE_FLAG            ,
7764      DEF_TAXABLE_BASIS_FORMULA              ,
7765      DEF_REGISTR_PARTY_TYPE_CODE            ,
7766      REGISTRATION_TYPE_RULE_FLAG            ,
7767      REPORTING_ONLY_FLAG                    ,
7768      AUTO_PRVN_FLAG                         ,
7769      LIVE_FOR_PROCESSING_FLAG               ,  --YK:3/16/2005
7770            LIVE_FOR_APPLICABILITY_FLAG            ,  --Bug 4225216
7771      HAS_DETAIL_TB_THRSHLD_FLAG             ,
7772      HAS_TAX_DET_DATE_RULE_FLAG             ,
7773      HAS_EXCH_RATE_DATE_RULE_FLAG           ,
7774      HAS_TAX_POINT_DATE_RULE_FLAG           ,
7778      PRIMARY_RECOVERY_TYPE_CODE             ,
7775      PRINT_ON_INVOICE_FLAG                  ,
7776      USE_LEGAL_MSG_FLAG                     ,
7777      CALC_ONLY_FLAG                         ,
7779      PRIMARY_REC_TYPE_RULE_FLAG             ,
7780      SECONDARY_RECOVERY_TYPE_CODE           ,
7781      SECONDARY_REC_TYPE_RULE_FLAG           ,
7782      PRIMARY_REC_RATE_DET_RULE_FLAG         ,
7783      SEC_REC_RATE_DET_RULE_FLAG             ,
7784      OFFSET_TAX_FLAG                        ,
7785      RECOVERY_RATE_OVERRIDE_FLAG            ,
7786      ZONE_GEOGRAPHY_TYPE                    ,
7787      REGN_NUM_SAME_AS_LE_FLAG               ,
7788      DEF_REC_SETTLEMENT_OPTION_CODE         ,
7789      RECORD_TYPE_CODE                       ,
7790      ALLOW_ROUNDING_OVERRIDE_FLAG           ,
7791    --BugFix 3493419
7792      SOURCE_TAX_FLAG                        ,
7793      SPECIAL_INCLUSIVE_TAX_FLAG             ,
7794      ATTRIBUTE1                             ,
7795      ATTRIBUTE2                             ,
7796      ATTRIBUTE3                             ,
7797      ATTRIBUTE4                             ,
7798      ATTRIBUTE5                             ,
7799      ATTRIBUTE6                             ,
7800      ATTRIBUTE7                             ,
7801      ATTRIBUTE8                             ,
7802      ATTRIBUTE9                             ,
7803      ATTRIBUTE10                            ,
7804      ATTRIBUTE11                            ,
7805      ATTRIBUTE12                            ,
7806      ATTRIBUTE13                            ,
7807      ATTRIBUTE14                            ,
7808      ATTRIBUTE15                            ,
7809      ATTRIBUTE_CATEGORY                     ,
7810      PARENT_GEOGRAPHY_TYPE                  ,
7811      PARENT_GEOGRAPHY_ID                    ,
7812      ALLOW_MASS_CREATE_FLAG                 ,
7813      APPLIED_AMT_HANDLING_FLAG              ,
7814      TAX_ID                                 ,
7815      CONTENT_OWNER_ID                       ,
7816      REP_TAX_AUTHORITY_ID                   ,
7817      COLL_TAX_AUTHORITY_ID                  ,
7818      THRSHLD_CHK_TMPLT_CODE                 ,
7819      DEF_PRIMARY_REC_RATE_CODE              ,
7820      DEF_SECONDARY_REC_RATE_CODE            ,
7821      CREATED_BY                         ,
7822      CREATION_DATE                          ,
7823      LAST_UPDATED_BY                        ,
7824      LAST_UPDATE_DATE                       ,
7825      LAST_UPDATE_LOGIN                      ,
7826      REQUEST_ID                             ,
7827      PROGRAM_APPLICATION_ID                 ,
7828      PROGRAM_ID                             ,
7829      PROGRAM_LOGIN_ID                       ,
7830            OVERRIDE_GEOGRAPHY_TYPE                ,--Bug 4163204
7831      OBJECT_VERSION_NUMBER                  ,
7832            TAX_ACCOUNT_CREATE_METHOD_CODE         ,--Bug 4204464
7833            TAX_ACCOUNT_SOURCE_TAX                 ,
7834            TAX_EXMPT_CR_METHOD_CODE         ,
7835            TAX_EXMPT_SOURCE_TAX             ,
7836            APPLICABLE_BY_DEFAULT_FLAG              --Bug 4905771
7837   )
7838   SELECT
7839            l_TAX                            ,--TAX
7840      EFFECTIVE_FROM                   ,
7841      NULL                             ,--EFFECTIVE_TO
7842      l_TAX_REGIME_CODE                ,--TAX_REGIME_CODE
7843            -- Updated using Arnab's logic
7844            (select tax_type_code
7845       from
7846         (select codes.tax_type         tax_type_code,
7847           rates.tax_regime_code  tax_regime_code,
7848           rates.tax              tax,
7849           rates.content_owner_id content_owner_id
7850          from   zx_rates_b rates, ar_vat_tax_all_b codes
7851          where  nvl(rates.source_id, rates.tax_rate_id) = codes.vat_tax_id  --ID Clash
7852          AND rates.record_type_code = 'MIGRATED'
7853          AND rates.tax_class = DECODE(codes.tax_class, 'I', 'INPUT', 'O', 'OUTPUT')
7854          group  by rates.tax_regime_code, rates.tax, rates.content_owner_id, tax_type
7855         )
7856       where   tax_regime_code = l_tax_regime_code
7857       and     tax = l_tax
7858       and     content_owner_id = l_content_owner_id ----removed most frequent logic
7859       AND ROWNUM = 1
7860     )                        , --TAX_TYPE_CODE --Populate most frequently used. Can be done in separate process
7861     -- Bug 571396 - While upgrade, set allow_manual_entry_flag as 'Y' instead of 'N'
7862     'Y'                      ,--ALLOW_MANUAL_ENTRY_FLAG  --Op1. Derive if from Profile if possible: Op 2. Separate process
7863     'Y'                               ,--ALLOW_TAX_OVERRIDE_FLAG  --Derive if from Profile if possible: Separate process
7864      NULL                             ,--MIN_TXBL_BSIS_THRSHLD
7865      NULL                             ,--MAX_TXBL_BSIS_THRSHLD
7866      NULL                             ,--MIN_TAX_RATE_THRSHLD
7867      NULL                             ,--MAX_TAX_RATE_THRSHLD
7868      NULL                             ,--MIN_TAX_AMT_THRSHLD
7869      NULL                             ,--MAX_TAX_AMT_THRSHLD
7870      L_PRECEDENCE                     ,--TAX_COMPOUNDING_PRECEDENCE  --Compounding handling: Separate process
7871      NULL                             ,--PERIOD_SET_NAME
7872      -- Bug 4539221
7873            -- Deriving exchange_rate_type
7874            -- If default_exchange_rate_type is NULL use most frequently
7875            -- used conversion_type from gl_daily_rates.
7876         /*   CASE
7877         WHEN  CROSS_CURRENCY_RATE_TYPE  IS NULL
7878         THEN  'Corporate'  --Bug fix 5248597
7879         ELSE
7880               --Bug 6006519/5654551, 'User' is not a valid exchange rate type
7884      END                              ,--EXCHANGE_RATE_TYPE */
7881               DECODE(CROSS_CURRENCY_RATE_TYPE,
7882               'User', 'Corporate',
7883                CROSS_CURRENCY_RATE_TYPE)
7885      NULL            ,--EXCHANGE_RATE_TYPE
7886      TAX_CURRENCY_CODE                ,
7887      TAX_PRECISION                    ,
7888      MINIMUM_ACCOUNTABLE_UNIT         ,
7889      ROUNDING_RULE_CODE               ,
7890      'N'                              ,-- TAX_STATUS_RULE_FLAG
7891      'N'                              ,--TAX_RATE_RULE_FLAG
7892     'SHIP_TO_BILL_TO'                 ,--DEF_PLACE_OF_SUPPLY_TYPE_CODE
7893     'N'                               ,--PLACE_OF_SUPPLY_RULE_FLAG
7894           -- Bug 4575226 : direct_rate_rule_flag is Y for Taxes other than US Sales Tax
7895     'N'                               ,--DIRECT_RATE_RULE_FLAG -- Bug 5090631
7896     'N'                               ,--APPLICABILITY_RULE_FLAG
7897     'N'                               ,--TAX_CALC_RULE_FLAG
7898     'N'                               ,--TXBL_BSIS_THRSHLD_FLAG
7899     'N'                               ,--TAX_RATE_THRSHLD_FLAG
7900     'N'                               ,--TAX_AMT_THRSHLD_FLAG
7901     'N'                               ,--TAXABLE_BASIS_RULE_FLAG --YK: 8/30/2004: Should be populated when compounding is used
7902     'N'                               ,--DEF_INCLUSIVE_TAX_FLAG  --YK: 8/30/2004: Inclusive
7903      NULL                             ,--THRSHLD_GROUPING_LVL_CODE
7904     'N'                               ,--HAS_OTHER_JURISDICTIONS_FLAG
7905           ALLOW_EXEMPTIONS_FLAG             ,--ALLOW_EXEMPTIONS_FLAG
7906       ALLOW_EXCEPTIONS_FLAG             ,--ALLOW_EXCEPTIONS_FLAG
7907     'N'                               ,--ALLOW_RECOVERABILITY_FLAG
7908     'STANDARD_TC'                     ,--DEF_TAX_CALC_FORMULA
7909     'Y'                               ,--TAX_INCLUSIVE_OVERRIDE_FLAG --YK: 8/30/2004: Must be 'Y' as rate can be either 'Y' or 'N'.
7910     'STANDARD_TB'                     ,--DEF_TAXABLE_BASIS_FORMULA   --YK: 8/30/2004: Compounding
7911     'SHIP_TO_SITE'                    ,--DEF_REGISTR_PARTY_TYPE_CODE
7912     'N'                               ,--REGISTRATION_TYPE_RULE_FLAG
7913     'N'                               ,--REPORTING_ONLY_FLAG
7914     'N'                               ,--AUTO_PRVN_FLAG
7915     CASE WHEN
7916       EXISTS (select  1 from  zx_rates_b active_rate
7917         where active_rate.TAX = l_TAX
7918         and   active_rate.TAX_REGIME_CODE = l_TAX_REGIME_CODE
7919         and   sysdate between active_rate.effective_from
7920               and   nvl(active_rate.effective_to,sysdate)) --Could add active_flag in the condition
7921          THEN 'Y'
7922          ELSE 'N'
7923     END                               ,--LIVE_FOR_PROCESSING_FLAG  --set it to N when all rates belonging to this tax is enddated: Separate parocess   YK:3/16/2005
7924           'Y'                               ,--LIVE_FOR_APPLICABILITY_FLAG  Bug 4225216
7925     'N'                               ,--HAS_DETAIL_TB_THRSHLD_FLAG
7926     'N'                               ,--HAS_TAX_DET_DATE_RULE_FLAG
7927     'N'                               ,--HAS_EXCH_RATE_DATE_RULE_FLAG
7928     'N'                               ,--HAS_TAX_POINT_DATE_RULE_FLAG
7929     'Y'                               ,--PRINT_ON_INVOICE_FLAG   --YK:B:10/08/2004: Could be an issue.
7930     'N'                               ,--USE_LEGAL_MSG_FLAG
7931     'N'                               ,--CALC_ONLY_FLAG
7932     'NULL'                            ,--PRIMARY_RECOVERY_TYPE_CODE
7933     'N'                               ,--PRIMARY_REC_TYPE_RULE_FLAG
7934      NULL                             ,--SECONDARY_RECOVERY_TYPE_CODE
7935     'N'                               ,--SECONDARY_REC_TYPE_RULE_FLAG
7936     'N'                               ,--PRIMARY_REC_RATE_DET_RULE_FLAG
7937     'N'                               ,--SEC_REC_RATE_DET_RULE_FLAG
7938     'N'                               ,--OFFSET_TAX_FLAG
7939     'N'                               ,--RECOVERY_RATE_OVERRIDE_FLAG
7940      NULL                             ,--ZONE_GEOGRAPHY_TYPE  --YK:8/30/2004: US sales tax handling
7941     'N'                               ,--REGN_NUM_SAME_AS_LE_FLAG  --Ask Dario
7942     'IMMEDIATE'                       ,--DEF_REC_SETTLEMENT_OPTION_CODE --YK: 8/30/2004: It be NULL in UI. What does NULL mean?
7943      'MIGRATED'                       ,--RECORD_TYPE_CODE
7944      'N'                              ,--ALLOW_ROUNDING_OVERRIDE_FLAG
7945    --BugFix 3493419
7946      DECODE(L_CONTENT_OWNER_ID,
7947       (select min(CONTENT_OWNER_ID)
7948       from   zx_rates_b
7949       where  tax = l_TAX
7950       and    tax_regime_code  = l_TAX_REGIME_CODE
7951       and    RECORD_TYPE_CODE = 'MIGRATED'),
7952       'Y',
7953       'N')                      ,--SOURCE_TAX_FLAG
7954     'N'                               ,--SPECIAL_INCL_TAX_FLAG  --YK:8/30/2004: For BR support
7955      NULL                             ,--ATTRIBUTE1
7956      NULL                             ,
7957      NULL                             ,
7958      NULL                             ,
7959      NULL                             ,
7960      NULL                             ,
7961      NULL                             ,
7962      NULL                             ,
7963      NULL                             ,
7964      NULL                             ,
7965      NULL                             ,
7966      NULL                             ,
7967      NULL                             ,
7968      NULL                             ,
7969      NULL                             ,
7970      NULL                             ,--ATTRIBUTE_CATEGORY
7971      NULL                             ,--PARENT_GEOGRAPHY_TYPE  --YK:8/30/2004: Can be populated for US Sales Tax
7975      ZX_TAXES_B_S.NEXTVAL             ,--TAX_ID
7972      NULL                             ,--PARENT_GEOGRAPHY_ID    --YK:8/30/2004: Can be populated for US Sales Tax
7973     'N'                               ,--ALLOW_MASS_CREATE_FLAG
7974     'P'                               ,--APPLIED_AMT_HANDLING_FLAG --Bug 5232502
7976      L_CONTENT_OWNER_ID               ,
7977      NULL                             ,--REP_TAX_AUTHORITY_ID
7978      NULL                             ,--COLL_TAX_AUTHORITY_ID
7979      NULL                             ,--THRSHLD_CHK_TMPLT_CODE
7980      NULL                             ,--DEF_PRIMARY_REC_RATE_CODE
7981      NULL                             ,--DEF_SECONDARY_REC_RATE_CODE
7982      fnd_global.user_id               ,
7983      SYSDATE                          ,
7984      fnd_global.user_id               ,
7985      SYSDATE                          ,
7986      fnd_global.conc_login_id         ,
7987      fnd_global.conc_request_id       ,--Request Id
7988      fnd_global.prog_appl_id          ,--Program Application ID
7989      fnd_global.conc_program_id       ,--Program Id
7990      fnd_global.conc_login_id         ,--Program Login ID
7991            NULL                             ,--OVERRIDE_GEOGRAPHY_TYPE : 4163204
7992      1                                ,--OBJECT_VERSION_NUMBER
7993            'CREATE_ACCOUNTS'                ,--TAX_ACCOUNT_CREATE_METHOD_CODE
7994            NULL                             ,--TAX_ACCOUNT_SOURCE_TAX
7995            'CREATE_EXEMPTIONS'              ,--TAX_EXMPT_EXCEP_CR_METHOD_CODE
7996            NULL                             ,
7997            'N'                               --APPLICABLE_BY_DEFAULT_FLAG
7998   FROM
7999   (
8000       SELECT
8001       RATES.TAX_REGIME_CODE                 L_TAX_REGIME_CODE,
8002       RATES.TAX                             L_TAX,
8003       RESULTS.TAX_PRECEDENCE                L_PRECEDENCE,
8004       ptp.party_tax_profile_id              L_CONTENT_OWNER_ID,
8005       SOB.CURRENCY_CODE                 TAX_CURRENCY_CODE,
8006       ARP.TAX_PRECISION                     TAX_PRECISION,
8007       ARP.TAX_MINIMUM_ACCOUNTABLE_UNIT      MINIMUM_ACCOUNTABLE_UNIT,
8008       ARP.TAX_ROUNDING_RULE                 ROUNDING_RULE_CODE,
8009       nvl(ARP.tax_use_product_exempt_flag,'N')       PRODUCT_EXEMPT_FLAG,  --YK:8/30/2004: NVL
8010       nvl(ARP.tax_use_customer_exempt_flag, 'N')     ALLOW_EXEMPTIONS_FLAG, --YK:8/30/2004: NVL
8011       'N'                                    ALLOW_EXCEPTIONS_FLAG ,--Bug 5505935
8012       min(RATES.EFFECTIVE_FROM)              EFFECTIVE_FROM,
8013             -- Bug 4539221
8014       -- Bug 6006519/5654551, 'User' is not a valid exchange rate type
8015           --  decode(ARP.CROSS_CURRENCY_RATE_TYPE,'User','Corporate',ARP.CROSS_CURRENCY_RATE_TYPE)           CROSS_CURRENCY_RATE_TYPE
8016       NULL      CROSS_CURRENCY_RATE_TYPE
8017        FROM
8018       ZX_RATES_B RATES,
8019       ZX_UPDATE_CRITERIA_RESULTS results,
8020       AR_SYSTEM_PARAMETERS_ALL ARP,
8021       GL_SETS_OF_BOOKS         SOB,
8022       ZX_PARTY_TAX_PROFILE PTP
8023        WHERE
8024                  -- Bug 4691005 : 1. removed nvl source_id
8025                  --               2. added condition for tax_class
8026            RESULTS.tax_code_id    = rates.tax_rate_id
8027        AND       RESULTS.tax_class      = 'OUTPUT'
8028        AND       RESULTS.org_id         = PTP.PARTY_ID
8029        AND       PTP.PARTY_TYPE_CODE    = 'OU'
8030        AND       RESULTS.org_id         =  ARP.ORG_ID
8031        AND       ARP.ORG_ID             =  l_org_id
8032        AND       ARP.SET_OF_BOOKS_ID    = SOB.SET_OF_BOOKS_ID
8033        AND       RATES.RECORD_TYPE_CODE = 'MIGRATED'
8034 
8035        --Added following conditions for Sync process
8036        AND      results.tax_code_id  = nvl(p_tax_id, results.tax_code_id)
8037 
8038        --Rerunability
8039        AND  not exists (select 1 from zx_taxes_b
8040        where  tax_regime_code = rates.tax_regime_code
8041        and    tax             = rates.tax
8042        and    content_owner_id= rates.content_owner_id
8043       )
8044        GROUP BY
8045       RATES.TAX_REGIME_CODE                 ,
8046       RATES.TAX                             ,
8047       RESULTS.TAX_PRECEDENCE                ,
8048       ptp.party_tax_profile_id              ,  --OU
8049       SOB.CURRENCY_CODE                 ,  --OU partitioned
8050       ARP.TAX_PRECISION                     ,  --OU partitioned
8051       ARP.TAX_MINIMUM_ACCOUNTABLE_UNIT      ,  --OU partitioned
8052       ARP.TAX_ROUNDING_RULE                 ,  --OU partitioned
8053       ARP.tax_use_product_exempt_flag       ,  --OU
8054       nvl(ARP.tax_use_customer_exempt_flag,'N'),  --OU
8055            CASE WHEN (nvl(arp.TAX_USE_LOC_EXC_RATE_FLAG,'N') = 'N'
8056                 AND nvl(arp.TAX_USE_PRODUCT_EXEMPT_FLAG,'N') = 'N')
8057            THEN 'N'
8058            ELSE 'Y'
8059             END  ,
8060       -- Bug 6006519/5654551, 'User' is not a valid exchange rate type
8061   --    decode(ARP.CROSS_CURRENCY_RATE_TYPE,'User','Corporate',ARP.CROSS_CURRENCY_RATE_TYPE)
8062       NULL
8063 
8064   ) TAX
8065   --YK:B:10/07/2004: Added the following condition.
8066   WHERE NOT EXISTS
8067     (select 1
8068      from   zx_taxes_b tax1
8069      where  tax.l_tax_regime_code = tax1.tax_regime_code
8070      and    tax.l_tax = tax1.tax
8071      and    tax.l_content_owner_id = tax1.content_owner_id
8072 
8073     )
8074   ;
8075 
8076   END IF;
8077 /* --Bug440704
8078   -- Unique Index : zx_taxes_tl_u1 (tax_id, language)
8079   INSERT INTO ZX_TAXES_TL
8080   (
8081    LANGUAGE                    ,
8085    CREATED_BY                  ,
8082    SOURCE_LANG                 ,
8083    TAX_FULL_NAME               ,
8084    CREATION_DATE               ,
8086    LAST_UPDATE_DATE            ,
8087    LAST_UPDATED_BY             ,
8088    LAST_UPDATE_LOGIN           ,
8089    TAX_ID
8090   )
8091 
8092   SELECT
8093       L.LANGUAGE_CODE          ,
8094       userenv('LANG')          ,
8095       decode(c.global_attribute_category,
8096              'JL.AR.ARXSUVAT.AR_VAT_TAX', c.description,
8097              'JL.BR.ARXSUVAT.AR_VAT_TAX', c.description,
8098              'JL.CO.ARXSUVAT.AR_VAT_TAX', c.description,
8099              B.TAX)            ,
8100       SYSDATE                  ,
8101       fnd_global.user_id       ,
8102       SYSDATE                  ,
8103       fnd_global.user_id       ,
8104       fnd_global.conc_login_id ,
8105       B.TAX_ID
8106   FROM
8107       FND_LANGUAGES   L,
8108       ZX_TAXES_B      B,
8109       (select rates.tax_regime_code             tax_regime_code,
8110               rates.tax                         tax,
8111               rates.content_owner_id            content_owner_id,
8112               categs.description                description,
8113               codes.global_attribute_category   global_attribute_category
8114        from   zx_rates_b              rates,
8115               ar_vat_tax_all_b        codes,
8116               jl_zz_ar_tx_categ_all   categs
8117        where  codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)
8118        and    codes.global_attribute_category in ('JL.AR.ARXSUVAT.AR_VAT_TAX',
8119                                                   'JL.BR.ARXSUVAT.AR_VAT_TAX',
8120                                                   'JL.CO.ARXSUVAT.AR_VAT_TAX')
8121        and    codes.global_attribute1 = to_char(categs.tax_category_id)
8122       )   C
8123   WHERE
8124       L.INSTALLED_FLAG in ('I', 'B')
8125   AND B.RECORD_TYPE_CODE = 'MIGRATED'
8126 
8127   -- LTE handling
8128   AND  b.tax_regime_code = c.tax_regime_code (+)
8129   AND  b.tax = c.tax (+)
8130   AND  b.content_owner_id = c.content_owner_id (+)
8131 
8132   AND  not exists
8133        (select NULL
8134         from   ZX_TAXES_TL T
8135         where  T.TAX_ID =  B.TAX_ID
8136         and    T.LANGUAGE = L.LANGUAGE_CODE);*/
8137 
8138 --Bug : 5092560 : This is to populate the ZX_TAXES_B.legal_reporting_status_def_val with '000000000000000'
8139 
8140 update zx_taxes_b_tmp
8141 set legal_reporting_status_def_val = '000000000000000'
8142 WHERE record_type_code = 'MIGRATED'
8143 AND tax_regime_code in (
8144   select distinct tax_regime_code from zx_regimes_b
8145   where country_code in (
8146   'BE',
8147   'CH',
8148   'CZ',
8149   'DE',
8150   'ES',
8151   'FR',
8152   'HU',
8153   'IT',
8154   'KP',
8155   'KR',
8156   'NO',
8157   'PL',
8158   'PT',
8159   'SK')
8160 )  ;
8161 
8162 --Bug Fix 5691957
8163 UPDATE zx_taxes_b_tmp tax SET taxable_basis_rule_flag = 'Y' WHERE
8164 EXISTS
8165 (SELECT 1 FROM  zx_rates_b rates,ar_vat_tax_all_b codes
8166           WHERE rates.tax_regime_code = tax.tax_regime_code
8167           AND   rates.tax             = tax.tax
8168           AND   rates.content_owner_id = tax.content_owner_id
8169           AND   rates.tax_rate_id = codes.vat_tax_id
8170           AND   codes.taxable_basis = 'PRIOR_TAX');
8171 
8172 EXCEPTION
8173   WHEN OTHERS THEN
8174     NULL;
8175 END;
8176 
8177 /*===========================================================================+
8178  | PROCEDURE
8179  |    create_zx_regimes
8180  |
8181  | IN
8182  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
8183  |               AR Tax Codes form for synchronization.
8184  |
8185  | OUT
8186  |
8187  | DESCRIPTION
8188  |     This routine creates records in zx_regimes_b/tl grouping by child
8189  |     records.
8190  |
8191  |
8192  | SCOPE - PRIVATE
8193  |
8194  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
8195  |
8196  | CALLED FROM
8197  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
8198  |
8199  | NOTES
8200  | 09/01/2004: Can be merged with P2P.
8201  | 09/24/2004: May need to implement unused lookup codes for LTE.
8202  |             Lookup type = FND_LOOKUPS : JLZZ_AR_TX_RULE_SET.
8203  |             Need to implement product checks.
8204  |
8205  | MODIFICATION HISTORY
8206  | 08/31/2004   Yoshimichi Konishi   Created.
8207  | 09/24/2004   Yoshimichi Konishi   Included LTE handling for _TL table.
8208  |
8209  +==========================================================================*/
8210 PROCEDURE create_zx_regimes (p_tax_id  NUMBER) AS
8211 BEGIN
8212 
8213   INSERT INTO
8214   ZX_REGIMES_B
8215   (
8216     TAX_REGIME_CODE                        ,
8217     PARENT_REGIME_CODE                     ,
8218     HAS_SUB_REGIME_FLAG                    ,
8219     COUNTRY_OR_GROUP_CODE                  ,
8220     COUNTRY_CODE                           ,
8221     GEOGRAPHY_TYPE                         ,
8222     EFFECTIVE_FROM                         ,
8223     EFFECTIVE_TO                           ,
8224     EXCHANGE_RATE_TYPE                     ,
8225     TAX_CURRENCY_CODE                      ,
8226     THRSHLD_GROUPING_LVL_CODE              ,
8227     ROUNDING_RULE_CODE                     ,
8228     TAX_PRECISION                          ,
8232     APPLICABILITY_RULE_FLAG                ,
8229     MINIMUM_ACCOUNTABLE_UNIT               ,
8230     TAX_STATUS_RULE_FLAG                   ,
8231     DEF_PLACE_OF_SUPPLY_TYPE_CODE          ,
8233     PLACE_OF_SUPPLY_RULE_FLAG              ,
8234     TAX_CALC_RULE_FLAG                     ,
8235     TAXABLE_BASIS_THRSHLD_FLAG             ,
8236     TAX_RATE_THRSHLD_FLAG                  ,
8237     TAX_AMT_THRSHLD_FLAG                   ,
8238     TAX_RATE_RULE_FLAG                     ,
8239     TAXABLE_BASIS_RULE_FLAG                ,
8240     DEF_INCLUSIVE_TAX_FLAG                 ,
8241     HAS_OTHER_JURISDICTIONS_FLAG           ,
8242     ALLOW_ROUNDING_OVERRIDE_FLAG           ,
8243     ALLOW_EXEMPTIONS_FLAG                  ,
8244     ALLOW_EXCEPTIONS_FLAG                  ,
8245     ALLOW_RECOVERABILITY_FLAG              ,
8246     -- RECOVERABILITY_OVERRIDE_FLAG           , Bug 3766372
8247     AUTO_PRVN_FLAG                         ,
8248     HAS_TAX_DET_DATE_RULE_FLAG             ,
8249     HAS_EXCH_RATE_DATE_RULE_FLAG           ,
8250     HAS_TAX_POINT_DATE_RULE_FLAG           ,
8251     USE_LEGAL_MSG_FLAG                     ,
8252     REGN_NUM_SAME_AS_LE_FLAG               ,
8253     DEF_REC_SETTLEMENT_OPTION_CODE         ,
8254     RECORD_TYPE_CODE                       ,
8255     ATTRIBUTE1                             ,
8256     ATTRIBUTE2                             ,
8257     ATTRIBUTE3                             ,
8258     ATTRIBUTE4                             ,
8259     ATTRIBUTE5                             ,
8260     ATTRIBUTE6                             ,
8261     ATTRIBUTE7                             ,
8262     ATTRIBUTE8                             ,
8263     ATTRIBUTE9                             ,
8264     ATTRIBUTE10                            ,
8265     ATTRIBUTE11                            ,
8266     ATTRIBUTE12                            ,
8267     ATTRIBUTE13                            ,
8268     ATTRIBUTE14                            ,
8269     ATTRIBUTE15                            ,
8270     ATTRIBUTE_CATEGORY                     ,
8271     DEF_REGISTR_PARTY_TYPE_CODE            ,
8272     REGISTRATION_TYPE_RULE_FLAG            ,
8273     TAX_INCLUSIVE_OVERRIDE_FLAG            ,
8274     REGIME_PRECEDENCE                      ,
8275     CROSS_REGIME_COMPOUNDING_FLAG          ,
8276     TAX_REGIME_ID                          ,
8277     GEOGRAPHY_ID                           ,
8278     THRSHLD_CHK_TMPLT_CODE                 ,
8279     PERIOD_SET_NAME                        ,
8280     REP_TAX_AUTHORITY_ID                   ,
8281     COLL_TAX_AUTHORITY_ID                  ,
8282     CREATED_BY                       ,
8283     CREATION_DATE                          ,
8284     LAST_UPDATED_BY                        ,
8285     LAST_UPDATE_DATE                       ,
8286     LAST_UPDATE_LOGIN                      ,
8287     REQUEST_ID                             ,
8288     PROGRAM_APPLICATION_ID                 ,
8289     PROGRAM_ID                             ,
8290     PROGRAM_LOGIN_ID
8291   )
8292   SELECT
8293     TAX_REGIME_CODE                        ,
8294     NULL                                   ,--PARENT_REGIME_CODE
8295    'N'                                     ,--HAS_SUB_REGIME_FLAG
8296     NULL                                   ,--COUNTRY_OR_GROUP_CODE
8297     NULL                                   ,--COUNTRY_CODE
8298     NULL                                   ,--GEOGRAPHY_TYPE
8299     EFFECTIVE_FROM                         ,
8300     NULL                                   ,--EFFECTIVE_TO
8301     NULL                                   ,--EXCHANGE_RATE_TYPE
8302     NULL                                   ,--TAX_CURRENCY_CODE
8303     NULL                                   ,--THRSHLD_GROUPING_LVL_CODE
8304     NULL                                   ,--ROUNDING_RULE_CODE
8305     NULL                                   ,--TAX_PRECISION
8306     NULL                                   ,--MINIMUM_ACCOUNTABLE_UNIT
8307     'N'                                    ,--TAX_STATUS_RULE_FLAG
8308     'SHIP_TO_BILL_TO'                      ,--DEF_PLACE_OF_SUPPLY_TYPE_CODE
8309    'N'                                     ,--APPLICABILITY_RULE_FLAG
8310    'N'                                     ,--PLACE_OF_SUPPLY_RULE_FLAG
8311    'N'                                     ,--TAX_CALC_RULE_FLAG
8312    'N'                                     ,--TAXABLE_BASIS_THRSHLD_FLAG
8313    'N'                                     ,--TAX_RATE_THRSHLD_FLAG
8314    'N'                                     ,--TAX_AMT_THRSHLD_FLAG
8315    'N'                                     ,--TAX_RATE_RULE_FLAG
8316    'N'                                     ,--TAXABLE_BASIS_RULE_FLAG
8317    'N'                                     ,--DEF_INCLUSIVE_TAX_FLAG
8318    'N'                                     ,--HAS_OTHER_JURISDICTIONS_FLAG
8319    'N'                                     ,--ALLOW_ROUNDING_OVERRIDE_FLAG
8320    'N'                                     ,--ALLOW_EXEMPTIONS_FLAG
8321    'N'                                     ,--ALLOW_EXCEPTIONS_FLAG
8322    'N'                                     ,--ALLOW_RECOVERABILITY_FLAG
8323    -- 'N'                                     ,--RECOVERABILITY_OVERRIDE_FLAG : Bug 3766372
8324    'N'                                     ,--AUTO_PRVN_FLAG
8325    'N'                                     ,--HAS_TAX_DET_DATE_RULE_FLAG
8326    'N'                                     ,--HAS_EXCH_RATE_DATE_RULE_FLAG
8327    'N'                                     ,--HAS_TAX_POINT_DATE_RULE_FLAG
8328    'N'                                     ,--USE_LEGAL_MSG_FLAG
8332     NULL       ,
8329    'N'                                     ,--REGN_NUM_SAME_AS_LE_FLAG
8330    'N'                                     ,--DEF_REC_SETTLE_OPTION_CODE
8331     'MIGRATED'                     ,--RECORD_TYPE_CODE
8333     NULL       ,
8334     NULL       ,
8335     NULL       ,
8336     NULL       ,
8337     NULL       ,
8338     NULL       ,
8339     NULL       ,
8340     NULL       ,
8341     NULL       ,
8342     NULL       ,
8343     NULL       ,
8344     NULL       ,
8345     NULL       ,
8346     NULL       ,
8347     NULL       ,
8348     'SHIP_TO_SITE'                      ,--DEF_REGISTR_PARTY_TYPE_CODE
8349     'N'                                    ,--REGISTRATION_TYPE_RULE_FLAG
8350     'Y'                                    ,--TAX_INCLUSIVE_OVERRIDE_FLAG /** Set it to Y. Need P2P Change. **/
8351     NULL                                   ,--REGIME_PRECEDENCE  /** Can be updated for compounding migration **/
8352    'N'                                     ,--CROSS_REGIME_COMPOUNDING_FLAG
8353     ZX_REGIMES_B_S.NEXTVAL                 ,--TAX_REGIME_ID
8354     NULL                                   ,--GEOGRAPHY_ID
8355     NULL                                   ,--THRSHLD_CHK_TMPLT_CODE
8356     NULL                                   ,--PERIOD_SET_NAME
8357     NULL                                   ,--REP_TAX_AUTHORITY_ID
8358     NULL                                   ,--COLL_TAX_AUTHORITY_ID
8359     fnd_global.user_id                     ,
8360     SYSDATE                                ,
8361     fnd_global.user_id                     ,
8362     SYSDATE                                ,
8363     fnd_global.conc_login_id               ,
8364     fnd_global.conc_request_id             ,--Request Id
8365     fnd_global.prog_appl_id                ,--Program Application ID
8366     fnd_global.conc_program_id             ,--Program Id
8367     fnd_global.conc_login_id                --Program Login ID
8368 
8369   FROM
8370   (
8371   SELECT RATES.TAX_REGIME_CODE                 TAX_REGIME_CODE,
8372          min(RATES.EFFECTIVE_FROM)             EFFECTIVE_FROM
8373   FROM
8374    ZX_RATES_B                RATES
8375   WHERE
8376          RATES.RECORD_TYPE_CODE = 'MIGRATED'
8377 
8378   --Added following conditions for Sync process
8379   --YK:D:10/08/2004: Modified. Needs testing.
8380   AND  rates.tax_rate_id  = decode(rates.tax_class, 'OUTPUT', nvl(p_tax_id, rates.tax_rate_id),
8381                                                     rates.tax_rate_id)
8382 
8383   --Rerunability
8384   AND  not exists (select 1 from zx_regimes_b
8385        where  tax_regime_code =  rates.tax_regime_code
8386       )
8387   GROUP BY
8388     RATES.TAX_REGIME_CODE
8389   );
8390 
8391 
8392   -- Populate _TL table
8393   INSERT INTO ZX_REGIMES_TL
8394   (
8395    LANGUAGE                    ,
8396    SOURCE_LANG                 ,
8397    TAX_REGIME_NAME             ,
8398    CREATION_DATE               ,
8399    CREATED_BY                  ,
8400    LAST_UPDATE_DATE            ,
8401    LAST_UPDATED_BY             ,
8402    LAST_UPDATE_LOGIN           ,
8403    TAX_REGIME_ID
8404 
8405   )
8406   SELECT
8407       L.LANGUAGE_CODE          ,
8408       userenv('LANG')          ,
8409       decode(d.global_attribute_category,
8410              'JL.AR.ARXSYSPA.SYS_PARAMETERS', d.meaning,
8411              'JL.BR.ARXSYSPA.SYS_PARAMETERS', d.meaning,
8412              'JL.CO.ARXSYSPA.SYS_PARAMETERS', d.meaning,
8413              B.TAX_REGIME_CODE),
8414       SYSDATE                  ,
8415       fnd_global.user_id       ,
8416       SYSDATE                  ,
8417       fnd_global.user_id       ,
8418       fnd_global.conc_login_id ,
8419       B.TAX_REGIME_ID
8420   FROM
8421       FND_LANGUAGES  L,
8422       ZX_REGIMES_B   B,
8423       (select rates.tax_regime_code             tax_regime_code,
8424               lkups.meaning                     meaning,
8425               codes.global_attribute_category   global_attribute_category
8426        from   zx_rates_b                rates,
8427               ar_vat_tax_all_b          codes,
8428               ar_system_parameters_all  params,
8429               fnd_lookups               lkups
8430        where  codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)
8431        AND    decode(l_multi_org_flag,'N',l_org_id,codes.org_id) = decode(l_multi_org_flag,'N',l_org_id,params.org_id)
8432        and    params.global_attribute13 = lkups.lookup_code
8433        and    params.global_attribute_category in ('JL.AR.ARXSYSPA.SYS_PARAMETERS',
8434                                                    'JL.BR.ARXSYSPA.SYS_PARAMETERS',
8435                                                    'JL.CO.ARXSYSPA.SYS_PARAMETERS')
8436        and    lkups.lookup_type = 'JLZZ_AR_TX_RULE_SET'
8437        group  by rates.tax_regime_code,
8438                  lkups.meaning,
8439                  codes.global_attribute_category
8440       )  D
8441   WHERE
8442       L.INSTALLED_FLAG in ('I', 'B')
8443   AND RECORD_TYPE_CODE = 'MIGRATED'
8444 
8445   --
8446   AND  b.tax_regime_code = d.tax_regime_code (+)
8447 
8448   AND  not exists
8449        (select NULL
8450        from ZX_REGIMES_TL T
8451        where T.TAX_REGIME_ID =  B.TAX_REGIME_ID
8452        and T.LANGUAGE = L.LANGUAGE_CODE);
8453 EXCEPTION
8454   WHEN OTHERS THEN
8455     NULL;
8456 END;
8457 
8461  |
8458 /*===========================================================================+
8459  | PROCEDURE
8460  |    migrate_fnd_lookups
8462  | IN
8463  |
8464  | OUT
8465  |
8466  | DESCRIPTION
8467  |    This routine processes AR Tax_setup related fnd_lookups and creates
8468  |    appropriate ZX lookups in FND_LOOKUPS.
8469  |    AR_VAT_TAX_ALL_B.VAT_TRANSACTION_TYPE --> ZX_RATES.VAT_TRANSACTION_TYPE
8470  |    AR_VAT_TAX_ALL_B.TAX_TYPE --> ZX_TAXES_B.TAX_TYPE_CODE
8471  |
8472  | SCOPE - PRIVATE
8473  |
8474  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
8475  |
8476  | CALLED FROM
8477  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
8478  |
8479  | NOTES
8480  |    This procedure must be merged with AP tax def migration.
8481  |
8482  | MODIFICATION HISTORY
8483  | 09/16/2004   Yoshimichi Konishi   Created.
8484  |
8485  +==========================================================================*/
8486 PROCEDURE migrate_fnd_lookups AS
8487 BEGIN
8488 INSERT INTO FND_LOOKUP_VALUES
8489   (
8490    LOOKUP_TYPE            ,
8491    LANGUAGE               ,
8492    LOOKUP_CODE            ,
8493    MEANING                ,
8494    DESCRIPTION            ,
8495    ENABLED_FLAG           ,
8496    START_DATE_ACTIVE      ,
8497    END_DATE_ACTIVE        ,
8498    SOURCE_LANG            ,
8499    SECURITY_GROUP_ID      ,
8500    VIEW_APPLICATION_ID    ,
8501    TERRITORY_CODE         ,
8502    ATTRIBUTE_CATEGORY     ,
8503    ATTRIBUTE1             ,
8504    ATTRIBUTE2             ,
8505    ATTRIBUTE3             ,
8506    ATTRIBUTE4             ,
8507    ATTRIBUTE5             ,
8508    ATTRIBUTE6             ,
8509    ATTRIBUTE7             ,
8510    ATTRIBUTE8             ,
8511    ATTRIBUTE9             ,
8512    ATTRIBUTE10            ,
8513    ATTRIBUTE11            ,
8514    ATTRIBUTE12            ,
8515    ATTRIBUTE13            ,
8516    ATTRIBUTE14            ,
8517    ATTRIBUTE15            ,
8518    TAG                    ,
8519    CREATION_DATE          ,
8520    CREATED_BY             ,
8521    LAST_UPDATE_DATE       ,
8522    LAST_UPDATED_BY        ,
8523    LAST_UPDATE_LOGIN
8524   )
8525  /*
8526  SELECT
8527   'ZX_TAX_TYPE_CATEGORY'  ,
8528    LANGUAGE               ,
8529    LOOKUP_CODE            ,
8530    MEANING                ,
8531    DESCRIPTION            ,
8532    ENABLED_FLAG           ,
8533    nvl(START_DATE_ACTIVE, to_date('01/01/1951','DD/MM/YYYY')), --Bug 5589178
8534    END_DATE_ACTIVE        ,
8535    SOURCE_LANG            ,
8536    SECURITY_GROUP_ID      ,
8537    0                      ,
8538    TERRITORY_CODE         ,
8539    ATTRIBUTE_CATEGORY     ,
8540    ATTRIBUTE1             ,
8541    ATTRIBUTE2             ,
8542    ATTRIBUTE3             ,
8543    ATTRIBUTE4             ,
8544    ATTRIBUTE5             ,
8545    ATTRIBUTE6             ,
8546    ATTRIBUTE7             ,
8547    ATTRIBUTE8             ,
8548    ATTRIBUTE9             ,
8549    ATTRIBUTE10            ,
8550    ATTRIBUTE11            ,
8551    ATTRIBUTE12            ,
8552    ATTRIBUTE13            ,
8553    ATTRIBUTE14            ,
8554    ATTRIBUTE15            ,
8555    TAG                    ,
8556    SYSDATE                ,
8557    fnd_global.user_id     ,
8558    SYSDATE                ,
8559    fnd_global.user_id     ,
8560    fnd_global.conc_login_id
8561   FROM FND_LOOKUP_VALUES ap_lookups
8562   WHERE ap_lookups.LOOKUP_TYPE = 'TAX TYPE'
8563   AND NOT EXISTS
8564       (select 1 from FND_LOOKUP_VALUES
8565        where  lookup_type = 'ZX_TAX_TYPE_CATEGORY'
8566        and    lookup_code = ap_lookups.lookup_code
8567        and    view_application_id = ap_lookups.view_application_id
8568        and    meaning             = ap_lookups.meaning
8569        and    security_group_id   = ap_lookups.security_group_id
8570        and    language            = ap_lookups.language)
8571   -- YK:9/17/2004
8572   -- O2C Migration changes
8573   -- Select statement above is copied from P2P migration.
8574   UNION */
8575   SELECT
8576   'ZX_TAX_TYPE_CATEGORY'  ,
8577    LANGUAGE               ,
8578    LOOKUP_CODE            ,
8579    MEANING                ,
8580    DESCRIPTION            ,
8581    ENABLED_FLAG           ,
8582    nvl(START_DATE_ACTIVE, to_date('01/01/1951','DD/MM/YYYY')), --Bug 5589178
8583    END_DATE_ACTIVE        ,
8584    SOURCE_LANG            ,
8585    SECURITY_GROUP_ID      ,
8586    0                      ,
8587    TERRITORY_CODE         ,
8588    ATTRIBUTE_CATEGORY     ,
8589    ATTRIBUTE1             ,
8590    ATTRIBUTE2             ,
8591    ATTRIBUTE3             ,
8592    ATTRIBUTE4             ,
8593    ATTRIBUTE5             ,
8594    ATTRIBUTE6             ,
8595    ATTRIBUTE7             ,
8596    ATTRIBUTE8             ,
8597    ATTRIBUTE9             ,
8598    ATTRIBUTE10            ,
8599    ATTRIBUTE11            ,
8600    ATTRIBUTE12            ,
8601    ATTRIBUTE13            ,
8602    ATTRIBUTE14            ,
8603    ATTRIBUTE15            ,
8604    TAG                    ,
8605    SYSDATE                ,
8606    fnd_global.user_id     ,
8607    SYSDATE                ,
8608    fnd_global.user_id     ,
8609    fnd_global.conc_login_id
8610   FROM FND_LOOKUP_VALUES ar_lookups
8614        where  lookup_type = 'ZX_TAX_TYPE_CATEGORY'
8611   WHERE ar_lookups.LOOKUP_TYPE = 'TAX_TYPE'
8612 /*   AND NOT EXISTS
8613       (select 1 from FND_LOOKUP_VALUES
8615        and    lookup_code = ar_lookups.lookup_code
8616        and    view_application_id = ar_lookups.view_application_id
8617        and    meaning             = ar_lookups.meaning
8618        and    security_group_id   = ar_lookups.security_group_id
8619        and    language            = ar_lookups.language);*/
8620 -- Changed the re-runnability check
8621    AND NOT EXISTS
8622       (select 1 from FND_LOOKUP_VALUES
8623        where  lookup_type = 'ZX_TAX_TYPE_CATEGORY'
8624        and    lookup_code = ar_lookups.lookup_code)
8625    and NOT EXISTS
8626       (select 1 from FND_LOOKUP_VALUES
8627        where  lookup_type = 'ZX_TAX_TYPE_CATEGORY'
8628        and    meaning = ar_lookups.meaning) ;
8629 
8630 --Bug 5517908 : Creating the AR lookupcodes with Meaning as MEANING||' '||LOOKUP_CODE
8631 -- to avoid the FND_LOOKUP_VALUES_U2 violation when ap and ar lookup codes have the same meaning with different lookup_codes.
8632 
8633 INSERT INTO FND_LOOKUP_VALUES
8634   (
8635    LOOKUP_TYPE            ,
8636    LANGUAGE               ,
8637    LOOKUP_CODE            ,
8638    MEANING                ,
8639    DESCRIPTION            ,
8640    ENABLED_FLAG           ,
8641    START_DATE_ACTIVE      ,
8642    END_DATE_ACTIVE        ,
8643    SOURCE_LANG            ,
8644    SECURITY_GROUP_ID      ,
8645    VIEW_APPLICATION_ID    ,
8646    TERRITORY_CODE         ,
8647    ATTRIBUTE_CATEGORY     ,
8648    ATTRIBUTE1             ,
8649    ATTRIBUTE2             ,
8650    ATTRIBUTE3             ,
8651    ATTRIBUTE4             ,
8652    ATTRIBUTE5             ,
8653    ATTRIBUTE6             ,
8654    ATTRIBUTE7             ,
8655    ATTRIBUTE8             ,
8656    ATTRIBUTE9             ,
8657    ATTRIBUTE10            ,
8658    ATTRIBUTE11            ,
8659    ATTRIBUTE12            ,
8660    ATTRIBUTE13            ,
8661    ATTRIBUTE14            ,
8662    ATTRIBUTE15            ,
8663    TAG                    ,
8664    CREATION_DATE          ,
8665    CREATED_BY             ,
8666    LAST_UPDATE_DATE       ,
8667    LAST_UPDATED_BY        ,
8668    LAST_UPDATE_LOGIN
8669   )
8670 SELECT
8671   'ZX_TAX_TYPE_CATEGORY'  ,
8672    LANGUAGE               ,
8673    LOOKUP_CODE            ,
8674    MEANING||' '||LOOKUP_CODE ,
8675    DESCRIPTION            ,
8676    ENABLED_FLAG           ,
8677    nvl(START_DATE_ACTIVE, to_date('01/01/1951','DD/MM/YYYY')), --Bug 5589178
8678    END_DATE_ACTIVE        ,
8679    SOURCE_LANG            ,
8680    SECURITY_GROUP_ID      ,
8681    0                      ,
8682    TERRITORY_CODE         ,
8683    ATTRIBUTE_CATEGORY     ,
8684    ATTRIBUTE1             ,
8685    ATTRIBUTE2             ,
8686    ATTRIBUTE3             ,
8687    ATTRIBUTE4             ,
8688    ATTRIBUTE5             ,
8689    ATTRIBUTE6             ,
8690    ATTRIBUTE7             ,
8691    ATTRIBUTE8             ,
8692    ATTRIBUTE9             ,
8693    ATTRIBUTE10            ,
8694    ATTRIBUTE11            ,
8695    ATTRIBUTE12            ,
8696    ATTRIBUTE13            ,
8697    ATTRIBUTE14            ,
8698    ATTRIBUTE15            ,
8699    TAG                    ,
8700    SYSDATE                ,
8701    fnd_global.user_id     ,
8702    SYSDATE                ,
8703    fnd_global.user_id     ,
8704    fnd_global.conc_login_id
8705   FROM FND_LOOKUP_VALUES ar_lookups
8706   WHERE ar_lookups.LOOKUP_TYPE = 'TAX_TYPE'
8707 -- Changed the re-runnability check
8708    AND NOT EXISTS
8709       (select 1 from FND_LOOKUP_VALUES
8710        where  lookup_type = 'ZX_TAX_TYPE_CATEGORY'
8711        and    lookup_code = ar_lookups.lookup_code)
8712    and EXISTS
8713       (select 1 from FND_LOOKUP_VALUES
8714        where  lookup_type = 'ZX_TAX_TYPE_CATEGORY'
8715        and    meaning = ar_lookups.meaning) ;
8716 
8717 EXCEPTION
8718   WHEN OTHERS THEN
8719     NULL;
8720 END;
8721 
8722 
8723 
8724 /*===========================================================================+
8725  | PROCEDURE
8726  |    migrate_profile
8727  |
8728  | IN
8729  |
8730  | OUT
8731  |
8732  | DESCRIPTION
8733  |     This routine updates zx_tax.allow_manual_entry_flag with the value
8734  |     defined at AR System Profile (AR_ALLOW_MANUAL_TAX_LINES) for Operating
8735  |     Unit.
8736  |
8737  |     Relationship of profile and operating unit:
8738  |     AR system Profile - Responsibility -< Operating Unit
8739  |
8740  |     The program fetches most frequently used profile value for OU.
8741  |
8742  | SCOPE - PRIVATE
8743  |
8744  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
8745  |
8746  | CALLED FROM
8747  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
8748  |
8749  | NOTES
8750  | 09/01/2004: Implement synch logic.
8751  |
8752  | MODIFICATION HISTORY
8753  | 08/31/2004   Yoshimichi Konishi   Created.
8754  | 10/13/2004   Yoshimichi Konishi   Rewrote the procedure due to resolve
8755  |                                   performance issue.
8756  +==========================================================================*/
8757 PROCEDURE migrate_profile AS
8758 cursor allow_tax_line_cur is
8759 select DISTINCT
8763                                   from   fnd_profile_options fpo
8760        fpov2.profile_option_value
8761 from   fnd_profile_option_values fpov1, fnd_profile_option_values fpov2
8762 where  fpov1.profile_option_id = (select fpo.profile_option_id
8764                                   where  fpo.profile_option_name = 'ZX_ALLOW_MANUAL_TAX_LINES')
8765 and fpov1.level_id = 10003
8766 and fpov1.application_id = 235
8767 AND fpov2.profile_option_id = (select fpo.profile_option_id
8768                                          from   fnd_profile_options fpo
8769                                          where  fpo.profile_option_name = 'ORG_ID')
8770 and fpov2.level_id = 10003
8771 and fpov2.application_id = 0
8772 AND fpov2.level_value=fpov1.level_value
8773 AND fpov2.level_value_application_id=fpov1.level_value_application_id
8774 AND fpov1.profile_option_value = 'N'
8775 MINUS
8776 select DISTINCT
8777        fpov2.profile_option_value
8778 from   fnd_profile_option_values fpov1, fnd_profile_option_values fpov2
8779 where  fpov1.profile_option_id = (select fpo.profile_option_id
8780                                    from   fnd_profile_options fpo
8781                                    where  fpo.profile_option_name = 'ZX_ALLOW_MANUAL_TAX_LINES')
8782 and fpov1.level_id = 10003
8783 and fpov1.application_id = 235
8784 AND fpov2.profile_option_id = (select fpo.profile_option_id
8785                                          from   fnd_profile_options fpo
8786                                          where  fpo.profile_option_name = 'ORG_ID')
8787 and fpov2.level_id = 10003
8788 and fpov2.application_id = 0
8789 AND fpov2.level_value=fpov1.level_value
8790 AND fpov2.level_value_application_id=fpov1.level_value_application_id
8791 AND fpov1.profile_option_value = 'Y';
8792 
8793 type num_type is table of number;
8794 type num15_type is table of number;
8795 type vchar240_type is table of varchar2(240);
8796 TYPE num_tbl_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
8797 
8798 l_lvl_val num_type;
8799 l_lvl_val_app_id num15_type;
8800 --l_org_id vchar240_type;
8801 l_org_id               num_tbl_type;
8802 
8803 j pls_integer;
8804 
8805 BEGIN
8806   open allow_tax_line_cur;
8807   fetch allow_tax_line_cur bulk collect into l_org_id;
8808 
8809   if l_org_id.count <> 0 then
8810      for i in 1..l_org_id.count LOOP
8811      BEGIN
8812 
8813      update zx_taxes_b_tmp
8814         set    allow_manual_entry_flag = 'N',
8815          allow_tax_override_flag = 'N',
8816          object_version_number = object_version_number + 1
8817         where  content_owner_id = (select party_tax_profile_id from zx_party_tax_profile
8818            where  party_id= to_number(l_org_id(i))
8819            and    party_type_code='OU')
8820              and record_type_code='MIGRATED';
8821 
8822       EXCEPTION WHEN OTHERS THEN
8823         arp_util_tax.debug('Failed to update zx_taxes_b due to exception in migrate_profile for org:'
8824                            ||l_org_id(i)||sqlerrm);
8825         END;
8826 
8827        BEGIN
8828        update zx_status_b_tmp
8829        set allow_rate_override_flag = 'N',
8830            object_version_number = object_version_number + 1
8831              where content_owner_id = (select party_tax_profile_id from zx_party_tax_profile
8832            where  party_id= to_number(l_org_id(i))
8833            and    party_type_code='OU')
8834              and record_type_code='MIGRATED';
8835 
8836       EXCEPTION WHEN OTHERS THEN
8837         arp_util_tax.debug('Failed to update zx_status_b due to exception in migrate_profile for org:'
8838                            ||l_org_id(i)||sqlerrm);
8839       END;
8840 
8841       END LOOP;  -- end l_org_id.count LOOP
8842     end if;  -- end if l_org_id.count <> 0
8843 
8844 EXCEPTION
8845   WHEN OTHERS THEN
8846     NULL;
8847 END;
8848 
8849 
8850 /*===========================================================================+
8851  | PROCEDURE
8852  |    backward_updation
8853  |
8854  | IN
8855  |
8856  | OUT
8857  |
8858  | DESCRIPTION
8859  |    Updates the following tables with information on tax regime code,
8860  |    tax, and status code. They will help us to migrate data in these
8861  |    entities in future eBTax migration.
8862  |      - AR_VAT_TAX_ALL_B
8863  |      - RA_TAX_EXEMPTIONS_ALL (Handled in exemption migration)
8864  |      - GL_TAX_OPTIONS        (Handled in GL Tax Option migration)
8865  |      - RA_ITEM_EXCEPTIONS    (Handled in exception migration)
8866  |
8867  | SCOPE - PRIVATE
8868  |
8869  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
8870  |
8871  | CALLED FROM
8872  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
8873  |
8874  | NOTES
8875  | 09/17/2004: Need to implement synch logic.
8876  |             Need to implement GL_TAX_OPTIONS updation for option 1.
8877  |             There's two options to update ra_tax_exemptions.
8878  |             May need to work on ra_item_exception_rates.
8879  |             Need to consider Non-Taxable Tax Type at Account level.
8880  |
8881  | 05/27/2005: Do we need to synchronize logic in this procedure?
8882  |             The answer is no. Because...
8883  |             1. During pre-migration phase :
8884  |                Tax Regime Code, Tax, Tax Status Code in AR Tax Codes
8885  |                form are not exposed in UI. Therefore we do not need
8886  |                to synchhronize the data.
8887  |             2. After eBTax migration :
8891  |
8888  |                Synchronization should be done through table handler
8889  |                in AR Tax Codes form. Therefore we do not need to
8890  |                call this procedure for synchronization.
8892  | MODIFICATION HISTORY
8893  | 09/17/2004   Yoshimichi Konishi   Created.
8894  | 05/27/2005   Yoshimichi Konishi   Bug 4216592. Build dependency with
8895  |                                   ar_vat_tax_all_b has been resolved.
8896  +==========================================================================*/
8897 PROCEDURE backward_updation AS
8898   type num_type is table of number(15);
8899   type code_type is table of varchar2(50);
8900   type code_type2 is table of varchar2(30);
8901 
8902   lc_org_id          num_type;
8903   lc_rate_code_id    num_type;
8904 
8905   lc_tax_code        code_type;
8906   lc_tax_type_code   code_type;
8907   lc_tax_regime_code code_type2;
8908   lc_tax             code_type2;
8909   lc_status_code     code_type2;
8910 
8911 
8912   l_tax_regime_code  varchar2(30);
8913   l_tax              varchar2(30);
8914   l_tax_status_code  varchar2(30);
8915   l_co_id            number;
8916 
8917 BEGIN
8918   -- backward updation: ar_vat_tax_all_b
8919   SELECT rates.tax_regime_code,
8920          rates.tax,
8921          rates.tax_status_code,
8922          rates.tax_rate_id
8923   BULK COLLECT INTO
8924          lc_tax_regime_code,
8925          lc_tax,
8926          lc_status_code,
8927          lc_rate_code_id
8928   FROM   zx_rates_b         rates,
8929          ar_vat_tax_all_b   tax_code
8930   WHERE  tax_code.vat_tax_id = rates.tax_rate_id
8931   AND    rates.record_type_code = 'MIGRATED'
8932   AND    tax_code.global_attribute_category
8933            IN ('JL.AR.ARXSUVAT.AR_VAT_TAX',
8934                'JL.BR.ARXSUVAT.Tax Information',    -- Bug 4868971
8935                'JL.CO.ARXSUVAT.AR_VAT_TAX');
8936 
8937 arp_util_tax.debug('sel ar_vat_tax_all_b');
8938 
8939   forall i in 1..lc_rate_code_id.last
8940     update ar_vat_tax_all_b
8941     set    tax_regime_code = lc_tax_regime_code(i),
8942            tax = lc_tax(i),
8943            tax_status_code = lc_status_code(i)
8944     where  vat_tax_id = lc_rate_code_id(i);
8945     -- YK:9/17/2004: May need limit clause as per performance team's
8946     -- guideline.
8947 
8948 arp_util_tax.debug('upd ar_vat_all_b');
8949 
8950 EXCEPTION
8951   WHEN OTHERS THEN
8952     NULL;
8953 END;
8954 
8955 /*===========================================================================+
8956  | PROCEDURE
8957  |   create_tax_classifications
8958  |
8959  | IN
8960  |   p_tax_id
8961  |
8962  | OUT
8963  |
8964  | DESCRIPTION
8965  |   This procedure populates output tax classification using AR Tax Codes.
8966  |
8967  | SCOPE - PRIVATE
8968  |
8969  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
8970  |
8971  | CALLED FROM
8972  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
8973  |
8974  | NOTES
8975  |
8976  | MODIFICATION HISTORY
8977  | 09/17/2004   Yoshimichi Konishi   Created.
8978  |
8979  +==========================================================================*/
8980 /* For AR Tax codes and Groups */
8981 PROCEDURE create_tax_classifications (p_tax_id   NUMBER) AS
8982 BEGIN
8983 
8984 for cursor_rec in
8985 (
8986 select DISTINCT code.tax_code
8987 FROM   AR_VAT_TAX_ALL_B           CODE,
8988        AR_SYSTEM_PARAMETERS_ALL   PARAM
8989 WHERE  code.org_id = param.org_id
8990        -- Bug 4905771
8991        -- Eliminating AR Tax Codes created for tax vendor
8992        -- integration
8993 AND    (upper(code.tax_code) NOT IN ('STATE', 'COUNTY', 'CITY')
8994         OR    param.tax_database_view_set NOT IN ('_A', '_V')
8995        )
8996 )
8997 
8998 LOOP
8999 
9000     INSERT INTO FND_LOOKUP_VALUES
9001   (
9002    LOOKUP_TYPE            ,
9003    LANGUAGE               ,
9004    LOOKUP_CODE            ,
9005    MEANING                ,
9006    DESCRIPTION            ,
9007    ENABLED_FLAG           ,
9008    START_DATE_ACTIVE      ,
9009    END_DATE_ACTIVE        ,
9010    SOURCE_LANG            ,
9011    SECURITY_GROUP_ID      ,
9012    VIEW_APPLICATION_ID    ,
9013    TERRITORY_CODE         ,
9014    ATTRIBUTE_CATEGORY     ,
9015    ATTRIBUTE1             ,
9016    ATTRIBUTE2             ,
9017    ATTRIBUTE3             ,
9018    ATTRIBUTE4             ,
9019    ATTRIBUTE5             ,
9020    ATTRIBUTE6             ,
9021    ATTRIBUTE7             ,
9022    ATTRIBUTE8             ,
9023    ATTRIBUTE9             ,
9024    ATTRIBUTE10            ,
9025    ATTRIBUTE11            ,
9026    ATTRIBUTE12            ,
9027    ATTRIBUTE13            ,
9028    ATTRIBUTE14            ,
9029    ATTRIBUTE15            ,
9030    TAG                    ,
9031    CREATION_DATE          ,
9032    CREATED_BY             ,
9033    LAST_UPDATE_DATE       ,
9034    LAST_UPDATED_BY        ,
9035    LAST_UPDATE_LOGIN
9036   )
9037   SELECT
9038   'ZX_OUTPUT_CLASSIFICATIONS',--LOOKUP_TYPE
9039    fln.LANGUAGE_CODE       ,  --LANGUAGE
9040    codes.LOOKUP_CODE       ,  --LOOKUP_CODE
9041    codes.LOOKUP_CODE       ,  --MEANING
9042    codes.description       ,  --DESCRIPTION
9043     'Y'                    ,  --ENABLED_FLAG
9044    codes.START_DATE_ACTIVE ,  --START_DATE_ACTIVE
9045    NULL                    ,  --END_DATE_ACTIVE
9049    NULL                    ,  --TERRITORY_CODE
9046    userenv('LANG')         ,  --SOURCE_LANG
9047    0                       ,  --SECURITY_GROUP_ID
9048    0                       ,  --VIEW_APPLICATION_ID
9050    NULL                    ,  --ATTRIBUTE_CATEGORY
9051    NULL                    ,  --ATTRIBUTE1
9052    NULL                    ,  --ATTRIBUTE2
9053    NULL                    ,  --ATTRIBUTE3
9054    NULL                    ,  --ATTRIBUTE4
9055    NULL                    ,  --ATTRIBUTE5
9056    NULL                    ,  --ATTRIBUTE6
9057    NULL                    ,  --ATTRIBUTE7
9058    NULL                    ,  --ATTRIBUTE8
9059    NULL                    ,  --ATTRIBUTE9
9060    NULL                    ,  --ATTRIBUTE10
9061    NULL                    ,  --ATTRIBUTE11
9062    NULL                    ,  --ATTRIBUTE12
9063    NULL                    ,  --ATTRIBUTE13
9064    NULL                    ,  --ATTRIBUTE14
9065    NULL                    ,  --ATTRIBUTE15
9066    codes.tag               ,  --TAG  --Bug 4562058
9067    SYSDATE                 ,  --CREATION_DATE
9068    -1087                   ,  --CREATED_BY --Bug 4562058
9069    SYSDATE                 ,  --LAST_UPDATE_DATE
9070    fnd_global.user_id      ,  --LAST_UPDATED_BY
9071    fnd_global.conc_login_id   --LAST_UPDATE_LOGIN
9072   FROM
9073   (
9074   SELECT
9075        CASE WHEN LENGTHB(codes.tax_code) > 30
9076       THEN SUBSTRB(codes.tax_code, 1, 24) ||ZX_MIGRATE_UTIL.GET_NEXT_SEQID('ZX_TAXES_B_S')
9077             ELSE codes.tax_code
9078        END  LOOKUP_CODE,
9079        CASE WHEN LENGTHB(codes.tax_code) > 30
9080       THEN codes.tax_code
9081       ELSE
9082             NULL
9083   END  TAG,  --Bug 4562058
9084        codes.description DESCRIPTION,
9085        (SELECT MIN(codes.start_date) FROM AR_VAT_TAX_ALL_B WHERE tax_code =  cursor_rec.tax_code) START_DATE_ACTIVE
9086   FROM
9087        ar_vat_tax_all_b   codes
9088   WHERE
9089        -- Bug 4626074 : Create tax classif code for location
9090        -- codes.tax_type <> 'LOCATION'
9091   codes.vat_tax_id  = NVL(p_tax_id, codes.vat_tax_id)
9092   AND codes.tax_code = cursor_rec.tax_code
9093   AND ROWNUM =1
9094   ) codes,fnd_languages fln
9095    where fln.installed_flag in ('I','B')
9096   AND NOT EXISTS
9097       (select 1
9098        from   fnd_lookup_values  flv
9099        where  SUBSTRB(flv.lookup_code, 1, 24) = CASE WHEN LENGTHB(codes.lookup_code) > 30
9100                                                 THEN SUBSTRB(codes.lookup_code, 1, 24)
9101                                                 ELSE codes.lookup_code
9102                                                 END
9103        and    flv.lookup_type = 'ZX_OUTPUT_CLASSIFICATIONS'
9104        and    SUBSTRB(flv.meaning, 1, 24)     = CASE WHEN LENGTHB(codes.lookup_code) > 30
9105                                                 THEN SUBSTRB(codes.lookup_code, 1, 24)
9106                                                 ELSE codes.lookup_code
9107                                                 END
9108        and    flv.language    = fln.language_code
9109        and    flv.view_application_id = 0
9110        and    flv.security_group_id   = 0
9111        );
9112 
9113 END LOOP;
9114 
9115   INSERT INTO zx_id_tcc_mapping_all
9116    (
9117     TCC_MAPPING_ID                  ,
9118     ORG_ID                          ,
9119     TAX_CLASS                       ,
9120     TAX_RATE_CODE_ID                ,
9121     TAX_CLASSIFICATION_CODE         ,
9122     TAX_TYPE                        ,
9123     SOURCE                          ,
9124     EFFECTIVE_FROM                  ,
9125     EFFECTIVE_TO                    ,
9126     CREATED_BY                      ,
9127     CREATION_DATE                   ,
9128     LAST_UPDATED_BY                 ,
9129     LAST_UPDATE_DATE                ,
9130     LAST_UPDATE_LOGIN               ,
9131     REQUEST_ID                      ,
9132     PROGRAM_APPLICATION_ID          ,
9133     PROGRAM_ID                      ,
9134     PROGRAM_LOGIN_ID                ,
9135     --Bug 4241667
9136     LEDGER_ID                       ,
9137     ACTIVE_FLAG
9138   )
9139    SELECT
9140        ZX_ID_TCC_MAPPING_ALL_S.NEXTVAL,
9141        decode(l_multi_org_flag,'N',l_org_id,codes.org_id),
9142        DECODE(codes.tax_class, 'I', 'INPUT',
9143                               'OUTPUT'),
9144        codes.vat_tax_id,
9145        codes.tax_code,
9146        codes.tax_type,
9147        'AR',
9148        codes.start_date,
9149        codes.end_date,
9150        fnd_global.user_id                     , -- CREATED_BY
9151        SYSDATE                                , -- CREATION_DATE
9152        fnd_global.user_id                     , -- LAST_UPDATED_BY
9153        SYSDATE                                , -- LAST_UPDATE_DATE
9154        fnd_global.conc_login_id               , -- LAST_UPDATE_LOGIN
9155        fnd_global.conc_request_id             , -- REQUEST_ID
9156        fnd_global.prog_appl_id                , -- PROGRAM_APPLICATION_ID
9157        fnd_global.conc_program_id             , -- PROGRAM_ID
9158        fnd_global.conc_login_id               , -- PROGRAM_LOGIN_ID
9159        codes.set_of_books_id                  , -- SET_OF_BOOKS_ID
9160        codes.enabled_flag
9161    FROM
9162           ar_vat_tax_all_b  codes
9163    WHERE
9164    NOT EXISTS
9165              (SELECT 1
9166               FROM   zx_id_tcc_mapping_all   zitm
9167               WHERE  zitm.tax_rate_code_id = codes.vat_tax_id
9171   WHEN OTHERS THEN
9168               AND    zitm.source = 'AR'
9169              );
9170 EXCEPTION
9172     NULL;
9173 END;
9174 
9175 
9176 /*===========================================================================+
9177  | FUNCTION
9178  |    is_update_needed_for_vnd_tax (p_tax_id   NUMBER) RETURN BOOLEAN
9179  |
9180  | IN
9181  |    p_tax_id : ar_vat_tax_all_b.vat_tax_id is passed when it is called from
9182  |               AR Tax Codes form for synchronization.
9183  | OUT
9184  |    TRUE  : When eBTax entities are needed for data updation.
9185  |    FALSE : When eBTax entities are not needed for data updation.
9186  |
9187  | DESCRIPTION
9188  |     This routine identifies if Regime to Rates records are needed to be
9189  |     updated for Tax Vendor Tax Code migraion. Data update is needed under
9190  |     the following conditions:
9191  |     1. When executing Tax Vendor Tax Code migration (p_tax_id = NULL)
9192  |        for the first time.
9193  |     2. After Tax Vendor Tax Code migration has been executed. (synch)
9194  |        (p_tax_id IS NOT NULL)
9195  |     2.1 When new Tax Code with tax type 'SALES_TAX' or 'LOCATION' is
9196  |         created under existing OU or new OU which has Tax Vendor
9197  |         installed - tax_database_view_set IN ('_A','_V').
9198  |
9199  | SCOPE - PRIVATE
9200  |
9201  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
9202  |
9203  | CALLED FROM
9204  |        zx_migrate_ar_tax_def.migrate_vnd_tax_code
9205  |
9206  | NOTES
9207  |
9208  | MODIFICATION HISTORY
9209  | 01/21/2004   Yoshimichi Konishi   Created.
9210  |
9211  +==========================================================================*/
9212 FUNCTION is_update_needed_for_vnd_tax (p_tax_id    NUMBER,
9213                                        p_tax_type  VARCHAR2  DEFAULT  NULL
9214                                       )
9215 RETURN BOOLEAN
9216 AS
9217   -- ****** CURSORS ******
9218   CURSOR vnd_tax_code_cur (p_tax_id  NUMBER) IS
9219   SELECT avt.tax_code
9220   FROM   ar_system_parameters_all  asp,
9221          ar_vat_tax_all_b          avt
9222   WHERE  decode(l_multi_org_flag,'N',l_org_id,avt.org_id) = decode(l_multi_org_flag,'N',l_org_id,asp.org_id)
9223   AND    avt.vat_tax_id = nvl(p_tax_id, avt.vat_tax_id)
9224   AND    asp.default_country = 'US'
9225   AND    asp.tax_database_view_set IN ('_A', '_V');
9226 
9227   -- ****** VARIABLES ******
9228   l_tax_code   VARCHAR2(50);
9229 
9230 BEGIN
9231   IF p_tax_id IS NOT NULL AND (p_tax_type = 'SALES_TAX' OR p_tax_type = 'LOCATION') THEN
9232     OPEN vnd_tax_code_cur (p_tax_id);
9233     FETCH vnd_tax_code_cur INTO l_tax_code;
9234     IF vnd_tax_code_cur%NOTFOUND THEN
9235       CLOSE vnd_tax_code_cur;
9236       RETURN  TRUE;  -- p_tax_id does not exist in ar_vat_tax ** SYNCH **
9237     ELSE
9238       RETURN  FALSE; -- p_tax_id exists in ar_vat_tax ** NO SYNCH **
9239     END IF;
9240   ELSE
9241     RETURN  TRUE; -- p_tax_id IS NULL
9242   END IF;
9243 EXCEPTION
9244   WHEN OTHERS THEN
9245     arp_util_tax.debug('Exception: is_update_needed_for_tax');
9246 END;
9247 
9248 /*===========================================================================+
9249  | PROCEDURE
9250  |   populate_mls_tables
9251  |
9252  | IN
9253  |
9254  |
9255  | OUT
9256  |
9257  | DESCRIPTION
9258  |   This procedure populates data in following MLS tables :
9259  |
9260  |   - ZX_REGIMES_TL
9261  |   - ZX_TAXES_TL
9262  |   - ZX_STATUS_TL
9263  |   - ZX_RATES_TL
9264  |
9265  |  It is called at the end of AR tax code migration process and
9266  |  populates MLS data needed for US Tax Sales Tax migration and Tax Vendor
9267  |  Migration.
9268  |
9269  | SCOPE - PRIVATE
9270  |
9271  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
9272  |
9273  | CALLED FROM
9274  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
9275  |
9276  | NOTES
9277  |
9278  | MODIFICATION HISTORY
9279  | 02/02/2005   Yoshimichi Konishi   Created.
9280  | 02/16/2005   Yoshimichi Konishi   Bug 4187189
9281  +==========================================================================*/
9282 PROCEDURE populate_mls_tables
9283 AS
9284 BEGIN
9285   -- ****** REGIMES ******
9286   INSERT INTO ZX_REGIMES_TL
9287   (
9288       TAX_REGIME_ID,
9289       TAX_REGIME_NAME,
9290       CREATION_DATE,
9291       CREATED_BY,
9292       LAST_UPDATE_DATE,
9293       LAST_UPDATED_BY,
9294       LAST_UPDATE_LOGIN,
9295       LANGUAGE,
9296       SOURCE_LANG
9297     )
9298   SELECT
9299       TAX_REGIME_ID,
9300      CASE WHEN TAX_REGIME_CODE = UPPER(TAX_REGIME_CODE)
9301      THEN    Initcap(TAX_REGIME_CODE)
9302      ELSE
9303              TAX_REGIME_CODE
9304      END,
9305       SYSDATE,
9306       fnd_global.user_id,
9307       SYSDATE,
9308       fnd_global.user_id,
9309       fnd_global.conc_login_id,
9310       L.LANGUAGE_CODE,
9311       userenv('LANG')
9312   FROM
9313       FND_LANGUAGES L,
9314       ZX_REGIMES_B B     -- cartesian join
9315   WHERE
9316       L.INSTALLED_FLAG in ('I', 'B')
9317   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9318   AND  not exists
9319        (select NULL
9320         from     ZX_REGIMES_TL T
9321         where  T.TAX_REGIME_ID =  B.TAX_REGIME_ID
9322         and    T.LANGUAGE = L.LANGUAGE_CODE);
9323 
9324   -- ****** TAXES ******
9325 
9326   --
9330 --
9327   -- Bug 4948332
9328   -- Populates zx_tax_full_name for CZ/HU/PL Tax Regime
9329   --
9331 -- For CZ/HU/PL (Tax Origin)
9332 --
9333 
9334 INSERT INTO ZX_TAXES_TL
9335 (
9336  LANGUAGE                    ,
9337  SOURCE_LANG                 ,
9338  TAX_FULL_NAME               ,
9339  CREATION_DATE               ,
9340  CREATED_BY                  ,
9341  LAST_UPDATE_DATE            ,
9342  LAST_UPDATED_BY             ,
9343  LAST_UPDATE_LOGIN           ,
9344  TAX_ID
9345 )
9346 SELECT
9347     DISTINCT
9348     flv.language             ,
9349     userenv('LANG')          ,
9350     CASE WHEN flv.meaning = UPPER(flv.meaning)
9351      THEN    Initcap(flv.meaning)
9352      ELSE
9353              flv.meaning
9354      END,
9355     SYSDATE                  ,
9356     fnd_global.user_id       ,
9357     SYSDATE                  ,
9358     fnd_global.user_id       ,
9359     fnd_global.conc_login_id ,
9360     taxes.tax_id
9361 FROM
9362     zx_taxes_b                     taxes,
9363     zx_rates_b                     rates,
9364     fnd_lookup_values              flv,
9365     ar_vat_tax_all_b               ar_code
9366 WHERE
9367        taxes.CONTENT_OWNER_ID   = rates.CONTENT_OWNER_ID
9368 AND    taxes.TAX_REGIME_CODE    = rates.TAX_REGIME_CODE
9369 AND    taxes.TAX          = rates.TAX
9370 AND    taxes.Record_Type_Code   = 'MIGRATED'
9371 AND    rates.tax_rate_id = ar_code.vat_tax_id
9372 AND    flv.lookup_code = ar_code.global_attribute1
9373 AND    ar_code.global_attribute_category = 'JE.CZ.ARXSUVAT.TAX_ORIGIN'
9374 AND    flv.lookup_type = 'JGZZ_TAX_ORIGIN'
9375 AND    NOT EXISTS
9376     (select NULL
9377          from ZX_TAXES_TL T
9378          where T.TAX_ID =  TAXES.TAX_ID
9379          and   T.LANGUAGE = FLV.LANGUAGE);
9380 
9381 
9382 INSERT INTO ZX_TAXES_TL
9383 (
9384  LANGUAGE                    ,
9385  SOURCE_LANG                 ,
9386  TAX_FULL_NAME               ,
9387  CREATION_DATE               ,
9388  CREATED_BY                  ,
9389  LAST_UPDATE_DATE            ,
9390  LAST_UPDATED_BY             ,
9391  LAST_UPDATE_LOGIN           ,
9392  TAX_ID
9393 )
9394 SELECT
9395     DISTINCT
9396     flv.language             ,
9397     userenv('LANG')          ,
9398     CASE WHEN flv.meaning = UPPER(flv.meaning)
9399      THEN    Initcap(flv.meaning)
9400      ELSE
9401              flv.meaning
9402      END,
9403     SYSDATE                  ,
9404     fnd_global.user_id       ,
9405     SYSDATE                  ,
9406     fnd_global.user_id       ,
9407     fnd_global.conc_login_id ,
9408     taxes.tax_id
9409 FROM
9410     zx_taxes_b                     taxes,
9411     zx_rates_b                     rates,
9412     fnd_lookup_values              flv,
9413     ar_vat_tax_all_b               ar_code
9414 WHERE
9415        taxes.CONTENT_OWNER_ID   = rates.CONTENT_OWNER_ID
9416 AND    taxes.TAX_REGIME_CODE    = rates.TAX_REGIME_CODE
9417 AND    taxes.TAX          = rates.TAX
9418 AND    taxes.Record_Type_Code   = 'MIGRATED'
9419 AND    rates.tax_rate_id = ar_code.vat_tax_id
9420 AND    flv.lookup_code = ar_code.global_attribute1
9421 AND    ar_code.global_attribute_category = 'JE.HU.ARXSUVAT.TAX_ORIGIN'
9422 AND    flv.lookup_type = 'JGZZ_TAX_ORIGIN'
9423 AND    NOT EXISTS
9424     (select NULL
9425          from ZX_TAXES_TL T
9426          where T.TAX_ID =  TAXES.TAX_ID
9427          and   T.LANGUAGE = FLV.LANGUAGE);
9428 
9429 INSERT INTO ZX_TAXES_TL
9430 (
9431  LANGUAGE                    ,
9432  SOURCE_LANG                 ,
9433  TAX_FULL_NAME               ,
9434  CREATION_DATE               ,
9435  CREATED_BY                  ,
9436  LAST_UPDATE_DATE            ,
9437  LAST_UPDATED_BY             ,
9438  LAST_UPDATE_LOGIN           ,
9439  TAX_ID
9440 )
9441 SELECT
9442     DISTINCT
9443     flv.language             ,
9444     userenv('LANG')          ,
9445     CASE WHEN flv.meaning = UPPER(flv.meaning)
9446      THEN    Initcap(flv.meaning)
9447      ELSE
9448              flv.meaning
9449      END,
9450     SYSDATE                  ,
9451     fnd_global.user_id       ,
9452     SYSDATE                  ,
9453     fnd_global.user_id       ,
9454     fnd_global.conc_login_id ,
9455     taxes.tax_id
9456 FROM
9457     zx_taxes_b                     taxes,
9458     zx_rates_b                     rates,
9459     fnd_lookup_values              flv,
9460     ar_vat_tax_all_b               ar_code
9461 WHERE
9462        taxes.CONTENT_OWNER_ID   = rates.CONTENT_OWNER_ID
9463 AND    taxes.TAX_REGIME_CODE    = rates.TAX_REGIME_CODE
9464 AND    taxes.TAX          = rates.TAX
9465 AND    taxes.Record_Type_Code   = 'MIGRATED'
9466 AND    rates.tax_rate_id = ar_code.vat_tax_id
9467 AND    flv.lookup_code = ar_code.global_attribute1
9468 AND    ar_code.global_attribute_category = 'JE.PL.ARXSUVAT.TAX_ORIGIN'
9469 AND    flv.lookup_type = 'JGZZ_TAX_ORIGIN'
9470 AND    NOT EXISTS
9471     (select NULL
9472          from ZX_TAXES_TL T
9473          where T.TAX_ID =  TAXES.TAX_ID
9474          and   T.LANGUAGE = FLV.LANGUAGE);
9475 
9476 --
9477 -- LTE Tax Handling
9478 --
9479 INSERT INTO ZX_TAXES_TL
9480   (
9481    LANGUAGE                    ,
9482    SOURCE_LANG                 ,
9483    TAX_FULL_NAME               ,
9487    LAST_UPDATED_BY             ,
9484    CREATION_DATE               ,
9485    CREATED_BY                  ,
9486    LAST_UPDATE_DATE            ,
9488    LAST_UPDATE_LOGIN           ,
9489    TAX_ID
9490   )
9491     SELECT
9492       DISTINCT
9493       L.LANGUAGE_CODE          ,
9494       userenv('LANG')          ,
9495       CASE WHEN NVL(categs.description, rates.tax) = UPPER(NVL(categs.description, rates.tax))
9496            THEN Initcap(NVL(categs.description, rates.tax))
9497      ELSE
9498           NVL(categs.description, rates.tax)
9499      END,
9500       SYSDATE                  ,
9501       fnd_global.user_id       ,
9502       SYSDATE                  ,
9503       fnd_global.user_id       ,
9504       fnd_global.conc_login_id ,
9505       B.TAX_ID
9506   FROM
9507       FND_LANGUAGES     L,
9508       ZX_TAXES_B        B,
9509       zx_rates_b        rates,
9510       ar_vat_tax_all_b  codes,
9511       jl_zz_ar_tx_categ_all  categs
9512   WHERE
9513       L.INSTALLED_FLAG in ('I', 'B')
9514   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9515   AND  b.tax_regime_code = rates.tax_regime_code
9516   AND  b.tax = rates.tax
9517   AND  b.content_owner_id = rates.content_owner_id
9518   AND  codes.vat_tax_id = rates.tax_rate_id
9519   and    codes.global_attribute_category = 'JL.AR.ARXSUVAT.AR_VAT_TAX'
9520   and    codes.global_attribute1 = to_char(categs.tax_category_id)
9521   and    codes.org_id = categs.org_id
9522   AND  not exists
9523        (select NULL
9524         from   ZX_TAXES_TL T
9525         where  T.TAX_ID =  B.TAX_ID
9526         and    T.LANGUAGE = L.LANGUAGE_CODE);
9527 
9528 INSERT INTO ZX_TAXES_TL
9529   (
9530    LANGUAGE                    ,
9531    SOURCE_LANG                 ,
9532    TAX_FULL_NAME               ,
9533    CREATION_DATE               ,
9534    CREATED_BY                  ,
9535    LAST_UPDATE_DATE            ,
9536    LAST_UPDATED_BY             ,
9537    LAST_UPDATE_LOGIN           ,
9538    TAX_ID
9539   )
9540     SELECT
9541       DISTINCT
9542       L.LANGUAGE_CODE          ,
9543       userenv('LANG')          ,
9544       CASE WHEN NVL(categs.description, rates.tax) = UPPER(NVL(categs.description, rates.tax))
9545            THEN Initcap(NVL(categs.description, rates.tax))
9546      ELSE
9547           NVL(categs.description, rates.tax)
9548      END                       ,
9549       SYSDATE                  ,
9550       fnd_global.user_id       ,
9551       SYSDATE                  ,
9552       fnd_global.user_id       ,
9553       fnd_global.conc_login_id ,
9554       B.TAX_ID
9555   FROM
9556       FND_LANGUAGES     L,
9557       ZX_TAXES_B        B,
9558       zx_rates_b        rates,
9559       ar_vat_tax_all_b  codes,
9560       jl_zz_ar_tx_categ_all  categs
9561   WHERE
9562       L.INSTALLED_FLAG in ('I', 'B')
9563   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9564   AND  b.tax_regime_code = rates.tax_regime_code
9565   AND  b.tax = rates.tax
9566   AND  b.content_owner_id = rates.content_owner_id
9567   AND  codes.vat_tax_id = rates.tax_rate_id
9568   and    codes.global_attribute_category = 'JL.CO.ARXSUVAT.AR_VAT_TAX'
9569   and    codes.global_attribute1 = to_char(categs.tax_category_id)
9570   and    codes.org_id = categs.org_id
9571   AND  not exists
9572        (select NULL
9573         from   ZX_TAXES_TL T
9574         where  T.TAX_ID =  B.TAX_ID
9575         and    T.LANGUAGE = L.LANGUAGE_CODE);
9576 
9577 INSERT INTO ZX_TAXES_TL
9578   (
9579    LANGUAGE                    ,
9580    SOURCE_LANG                 ,
9581    TAX_FULL_NAME               ,
9582    CREATION_DATE               ,
9583    CREATED_BY                  ,
9584    LAST_UPDATE_DATE            ,
9585    LAST_UPDATED_BY             ,
9586    LAST_UPDATE_LOGIN           ,
9587    TAX_ID
9588   )
9589     SELECT
9590       DISTINCT
9591       L.LANGUAGE_CODE          ,
9592       userenv('LANG')          ,
9593       CASE WHEN NVL(categs.description, rates.tax) = UPPER(NVL(categs.description, rates.tax))
9594            THEN Initcap(NVL(categs.description, rates.tax))
9595      ELSE
9596           NVL(categs.description, rates.tax)
9597      END          ,
9598       SYSDATE                  ,
9599       fnd_global.user_id       ,
9600       SYSDATE                  ,
9601       fnd_global.user_id       ,
9602       fnd_global.conc_login_id ,
9603       B.TAX_ID
9604   FROM
9605       FND_LANGUAGES     L,
9606       ZX_TAXES_B        B,
9607       zx_rates_b        rates,
9608       ar_vat_tax_all_b  codes,
9609       jl_zz_ar_tx_categ_all  categs
9610   WHERE
9611       L.INSTALLED_FLAG in ('I', 'B')
9612   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9613   AND  b.tax_regime_code = rates.tax_regime_code
9614   AND  b.tax = rates.tax
9615   AND  b.content_owner_id = rates.content_owner_id
9616   AND  codes.vat_tax_id = rates.tax_rate_id
9617   and    codes.global_attribute_category = 'JL.BR.ARXSUVAT.Tax Information'
9618   and    codes.global_attribute1 = to_char(categs.tax_category_id)
9619   and    codes.org_id = categs.org_id
9620   AND  not exists
9621        (select NULL
9622         from   ZX_TAXES_TL T
9623         where  T.TAX_ID =  B.TAX_ID
9624         and    T.LANGUAGE = L.LANGUAGE_CODE);
9625 
9626 
9627   INSERT INTO ZX_TAXES_TL
9628   (
9629       TAX_ID,
9630       TAX_FULL_NAME,
9631       CREATION_DATE,
9632       CREATED_BY,
9636       LANGUAGE,
9633       LAST_UPDATE_DATE,
9634       LAST_UPDATED_BY,
9635       LAST_UPDATE_LOGIN,
9637       SOURCE_LANG
9638     )
9639   SELECT
9640       TAX_ID,
9641     CASE WHEN TAX = UPPER(TAX)
9642      THEN    Initcap(TAX)
9643      ELSE
9644              TAX
9645      END,
9646       SYSDATE,
9647       fnd_global.user_id,
9648       SYSDATE,
9649       fnd_global.user_id,
9650       fnd_global.conc_login_id,
9651       L.LANGUAGE_CODE,
9652       userenv('LANG')
9653   FROM
9654       FND_LANGUAGES L,
9655       ZX_TAXES_B B     -- cartesian join
9656   WHERE
9657       L.INSTALLED_FLAG in ('I', 'B')
9658   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9659   AND  not exists
9660        (select NULL
9661        from ZX_TAXES_TL T
9662        where T.TAX_ID =  B.TAX_ID
9663        and T.LANGUAGE = L.LANGUAGE_CODE);
9664 
9665 /***** LTE handling is replaced by the insert statement executed above
9666 --
9667 --Bug 4400704
9668   -- Unique Index : zx_taxes_tl_u1 (tax_id, language)
9669   INSERT INTO ZX_TAXES_TL
9670   (
9671    LANGUAGE                    ,
9672    SOURCE_LANG                 ,
9673    TAX_FULL_NAME               ,
9674    CREATION_DATE               ,
9675    CREATED_BY                  ,
9676    LAST_UPDATE_DATE            ,
9677    LAST_UPDATED_BY             ,
9678    LAST_UPDATE_LOGIN           ,
9679    TAX_ID
9680   )
9681 
9682   SELECT
9683       L.LANGUAGE_CODE          ,
9684       userenv('LANG')          ,
9685       case when decode(c.global_attribute_category,
9686              'JL.AR.ARXSUVAT.AR_VAT_TAX', c.description,
9687              'JL.BR.ARXSUVAT.AR_VAT_TAX', c.description,
9688              'JL.CO.ARXSUVAT.AR_VAT_TAX', c.description,
9689              B.TAX)
9690        = UPPER(decode(c.global_attribute_category,
9691              'JL.AR.ARXSUVAT.AR_VAT_TAX', c.description,
9692              'JL.BR.ARXSUVAT.AR_VAT_TAX', c.description,
9693              'JL.CO.ARXSUVAT.AR_VAT_TAX', c.description,
9694              B.TAX) )
9695            then
9696      Initcap(decode(c.global_attribute_category,
9697              'JL.AR.ARXSUVAT.AR_VAT_TAX', c.description,
9698              'JL.BR.ARXSUVAT.AR_VAT_TAX', c.description,
9699              'JL.CO.ARXSUVAT.AR_VAT_TAX', c.description,
9700              B.TAX) )
9701      else
9702      decode(c.global_attribute_category,
9703              'JL.AR.ARXSUVAT.AR_VAT_TAX', c.description,
9704              'JL.BR.ARXSUVAT.AR_VAT_TAX', c.description,
9705              'JL.CO.ARXSUVAT.AR_VAT_TAX', c.description,
9706              B.TAX) ,
9707       SYSDATE                  ,
9708       fnd_global.user_id       ,
9709       SYSDATE                  ,
9710       fnd_global.user_id       ,
9711       fnd_global.conc_login_id ,
9712       B.TAX_ID
9713   FROM
9714       FND_LANGUAGES   L,
9715       ZX_TAXES_B      B,
9716       (select rates.tax_regime_code             tax_regime_code,
9717               rates.tax                         tax,
9718               rates.content_owner_id            content_owner_id,
9719               categs.description                description,
9720               codes.global_attribute_category   global_attribute_category
9721        from   zx_rates_b              rates,
9722               ar_vat_tax_all_b        codes,
9723               jl_zz_ar_tx_categ_all   categs
9724        where  codes.vat_tax_id = nvl(rates.source_id, rates.tax_rate_id)
9725        and    codes.global_attribute_category in ('JL.AR.ARXSUVAT.AR_VAT_TAX',
9726                                                   'JL.BR.ARXSUVAT.AR_VAT_TAX',
9727                                                   'JL.CO.ARXSUVAT.AR_VAT_TAX')
9728        and    codes.global_attribute1 = to_char(categs.tax_category_id)
9729       )   C
9730   WHERE
9731       L.INSTALLED_FLAG in ('I', 'B')
9732   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9733 
9734   -- LTE handling
9735   AND  b.tax_regime_code = c.tax_regime_code (+)
9736   AND  b.tax = c.tax (+)
9737   AND  b.content_owner_id = c.content_owner_id (+)
9738 
9739   AND  not exists
9740        (select NULL
9741         from   ZX_TAXES_TL T
9742         where  T.TAX_ID =  B.TAX_ID
9743         and    T.LANGUAGE = L.LANGUAGE_CODE);
9744 ******/
9745 
9746 
9747   -- ****** STATUS ******
9748 
9749   -- Bug 4936196 : Inserting fnd_lookups.meaning for Taiwanese localization
9750   INSERT INTO ZX_STATUS_TL
9751   (
9752   TAX_STATUS_ID,
9753   TAX_STATUS_NAME,
9754   CREATION_DATE,
9755   CREATED_BY,
9756   LAST_UPDATE_DATE,
9757   LAST_UPDATED_BY,
9758   LAST_UPDATE_LOGIN,
9759   LANGUAGE,
9760   SOURCE_LANG
9761   )
9762   select distinct
9763    status.tax_status_id,
9764       CASE WHEN flv.meaning = UPPER(flv.meaning)
9765        THEN    Initcap(flv.meaning)
9766        ELSE
9767          flv.meaning
9768        END,
9769    sysdate,
9770    fnd_global.user_id,
9771    sysdate,
9772    fnd_global.user_id,
9773    fnd_global.conc_login_id,
9774    flv.language,
9775    userenv('LANG')
9776   from   zx_rates_b         rates,
9777    zx_status_b        status,
9778    ar_vat_tax_all_b   codes,
9779    fnd_lookup_values  flv
9780   where  rates.tax_regime_code = status.tax_regime_code
9781   and    rates.tax = status.tax
9782   and    rates.tax_status_code = status.tax_status_code
9786   and    rates.tax_rate_id = codes.vat_tax_id
9783   and    rates.content_owner_id = status.content_owner_id
9784   and    status.record_type_code = 'MIGRATED'
9785   and    rates.record_type_code = 'MIGRATED'
9787   and    codes.global_attribute_category = 'JA.TW.ARXSUVAT.VAT_TAX'
9788   and    flv.lookup_code = codes.global_attribute1
9789   and    flv.view_application_id = 7000
9790   and    flv.security_group_id = 0
9791   and    flv.lookup_type = 'JATW_GOVERNMENT_TAX_TYPE'
9792   and    not exists
9793    (select NULL
9794     from   ZX_STATUS_TL T
9795     where  T.TAX_STATUS_ID =  status.tax_status_id
9796     and    T.LANGUAGE = flv.language);
9797 
9798   -- inserting into zx_status_tl for records other than Taiwanese localization
9799   INSERT INTO ZX_STATUS_TL
9800   (
9801       TAX_STATUS_ID,
9802       TAX_STATUS_NAME,
9803       CREATION_DATE,
9804       CREATED_BY,
9805       LAST_UPDATE_DATE,
9806       LAST_UPDATED_BY,
9807       LAST_UPDATE_LOGIN,
9808       LANGUAGE,
9809       SOURCE_LANG
9810     )
9811   SELECT
9812       TAX_STATUS_ID,
9813     CASE WHEN TAX_STATUS_CODE = UPPER(TAX_STATUS_CODE)
9814      THEN    Initcap(TAX_STATUS_CODE)
9815      ELSE
9816              TAX_STATUS_CODE
9817      END,
9818       SYSDATE,
9819       fnd_global.user_id,
9820       SYSDATE,
9821       fnd_global.user_id,
9822       fnd_global.conc_login_id,
9823       L.LANGUAGE_CODE,
9824       userenv('LANG')
9825   FROM
9826       FND_LANGUAGES L,
9827       ZX_STATUS_B B     -- cartesian join
9828   WHERE
9829       L.INSTALLED_FLAG in ('I', 'B')
9830   AND B.RECORD_TYPE_CODE = 'MIGRATED'
9831   AND  not exists
9832        (select NULL
9833        from ZX_STATUS_TL T
9834        where T.TAX_STATUS_ID =  B.TAX_STATUS_ID
9835        and T.LANGUAGE = L.LANGUAGE_CODE);
9836 
9837   -- ****** RATES ******
9838   INSERT INTO  ZX_RATES_TL
9839   (
9840       TAX_RATE_ID,
9841       TAX_RATE_NAME,
9842       CREATED_BY,
9843       CREATION_DATE,
9844       LAST_UPDATED_BY,
9845       LAST_UPDATE_DATE,
9846       LAST_UPDATE_LOGIN,
9847       LANGUAGE,
9848       SOURCE_LANG,
9849       DESCRIPTION
9850   )
9851   SELECT  avtt.vat_tax_id,
9852     -- Commented avtb.description for Bug 4705196
9853     -- avtb.description,        --Bug 4636694
9854       CASE WHEN avtt.PRINTED_TAX_NAME = UPPER(avtt.PRINTED_TAX_NAME)
9855            THEN    Initcap(avtt.PRINTED_TAX_NAME)
9856            ELSE    avtt.PRINTED_TAX_NAME
9857       END,-- Bug 4705196
9858       fnd_global.user_id             ,
9859       SYSDATE                        ,
9860       fnd_global.user_id             ,
9861       SYSDATE                        ,
9862       fnd_global.conc_login_id       ,
9863       avtt.language                  ,
9864       avtt.source_lang               ,
9865       avtb.description
9866   FROM    ar_vat_tax_all_tl  avtt,
9867           ar_vat_tax_all_b   avtb, --Bug 4636694
9868           zx_rates_b         zrb
9869   WHERE   avtt.vat_tax_id = zrb.tax_rate_id
9870   AND     avtt.vat_tax_id = avtb.vat_tax_id
9871   AND     NOT EXISTS (SELECT 1
9872                       FROM   zx_rates_tl  zrt
9873                       WHERE  zrt.tax_rate_id = avtt.vat_tax_id
9874                       AND    zrt.language = avtt.language);
9875 EXCEPTION
9876   WHEN OTHERS THEN
9877     NULL;
9878 END populate_mls_tables;
9879 
9880 
9881 /*===========================================================================+
9882  | PROCEDURE
9883  |    insert_tax_rate_code
9884  |
9885  | IN
9886  |    p_tax_regime_code : For Tax Regime Code
9887  |    p_tax             : For Tax
9888  |    p_tax_status_code : For Tax Status Code
9889  |    p_tax_rate_code   : For Tax Rate Code
9890  |
9891  | OUT
9892  |
9893  | DESCRIPTION
9894  |     This routine inserts a record into zx_rates_b.
9895  |
9896  | SCOPE - PRIVATE
9897  |
9898  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
9899  |
9900  | CALLED FROM
9901  |        zx_migrate_ar_tax_def.migrate_vnd_tax_code
9902  |
9903  | NOTES
9904  |
9905  | MODIFICATION HISTORY
9906  | 10/03/2005   Yoshimichi Konishi   Created.
9907  |
9908  +==========================================================================*/
9909 PROCEDURE insert_tax_rate_code (p_tax_regime_code     VARCHAR2,
9910                                 p_tax                 VARCHAR2,
9911                                 p_tax_status_code     VARCHAR2,
9912                                 p_tax_rate_code       VARCHAR2,
9913                                 p_content_owner_id    NUMBER,
9914                                 p_org_id              NUMBER,
9915                                 p_active_flag         VARCHAR2,
9916                                 p_effective_from      DATE,
9917                                 p_adhoc_rate_flag     VARCHAR2,
9918                                 p_tax_account_ccid    NUMBER,
9919                                 p_ledger_id           NUMBER)
9920 IS
9921 BEGIN
9922   INSERT ALL
9923     WHEN (NOT EXISTS (SELECT  1
9924                       FROM    zx_rates_b
9925                       WHERE   tax_rate_code = p_tax_rate_code
9926                       AND     content_owner_id = p_content_owner_id
9927                       AND     active_flag = p_active_flag
9928                       AND     TRUNC(effective_from) = p_effective_from
9929                      )
9930          ) THEN
9934       TAX_RATE_CODE                  ,
9931   INTO zx_rates_b_tmp
9932   (
9933       TAX_RATE_ID                    ,
9935       CONTENT_OWNER_ID               ,
9936       EFFECTIVE_FROM                 ,
9937       EFFECTIVE_TO                   ,
9938       TAX_REGIME_CODE                ,
9939       TAX                            ,
9940       TAX_STATUS_CODE                ,
9941       SCHEDULE_BASED_RATE_FLAG       ,
9942       RATE_TYPE_CODE                 ,
9943       PERCENTAGE_RATE                ,
9944       QUANTITY_RATE                  ,
9945       UOM_CODE                       ,
9946       TAX_JURISDICTION_CODE          ,
9947       RECOVERY_TYPE_CODE             ,
9948       ACTIVE_FLAG                    ,
9949       DEFAULT_RATE_FLAG              ,
9950       DEFAULT_FLG_EFFECTIVE_FROM     ,
9951       DEFAULT_FLG_EFFECTIVE_TO       ,
9952       DEFAULT_REC_TYPE_CODE          ,
9953       DEFAULT_REC_RATE_CODE          ,
9954       OFFSET_TAX                     ,
9955       OFFSET_STATUS_CODE             ,
9956       OFFSET_TAX_RATE_CODE           ,
9957       RECOVERY_RULE_CODE             ,
9958       DEF_REC_SETTLEMENT_OPTION_CODE ,
9959       VAT_TRANSACTION_TYPE_CODE      ,
9960       ADJ_FOR_ADHOC_AMT_CODE         ,
9961       ALLOW_ADHOC_TAX_RATE_FLAG      ,
9962       TAX_CLASS                      ,
9963       SOURCE_ID                      ,
9964       TAXABLE_BASIS_FORMULA_CODE     ,
9965       INCLUSIVE_TAX_FLAG             ,
9966       TAX_INCLUSIVE_OVERRIDE_FLAG    ,
9967       RECORD_TYPE_CODE               ,
9968       CREATED_BY                     ,
9969       CREATION_DATE                  ,
9970       LAST_UPDATED_BY                ,
9971       LAST_UPDATE_DATE               ,
9972       LAST_UPDATE_LOGIN              ,
9973       REQUEST_ID                     ,
9974       PROGRAM_APPLICATION_ID         ,
9975       PROGRAM_ID                     ,
9976       PROGRAM_LOGIN_ID               ,
9977       ATTRIBUTE1                     ,
9978       ATTRIBUTE2                     ,
9979       ATTRIBUTE3                     ,
9980       ATTRIBUTE4                     ,
9981       ATTRIBUTE5                     ,
9982       ATTRIBUTE6                     ,
9983       ATTRIBUTE7                     ,
9984       ATTRIBUTE8                     ,
9985       ATTRIBUTE9                     ,
9986       ATTRIBUTE10                    ,
9987       ATTRIBUTE11                    ,
9988       ATTRIBUTE12                    ,
9989       ATTRIBUTE13                    ,
9990       ATTRIBUTE14                    ,
9991       ATTRIBUTE15                    ,
9992       ATTRIBUTE_CATEGORY             ,
9993       OBJECT_VERSION_NUMBER          ,
9994       ALLOW_EXEMPTIONS_FLAG          , --Bug 4204464
9995       ALLOW_EXCEPTIONS_FLAG
9996   )
9997   VALUES
9998   (
9999       zx_rates_b_s.nextval             ,  --TAX_RATE_ID
10000       p_tax_rate_code                  ,  --tax_rate_code
10001       p_content_owner_id               ,  --content_owner_id
10002       p_effective_from                 ,  --effective_from
10003       NULL                             ,  --effective_to
10004       p_tax_regime_code                ,  --tax_regime_code
10005       p_tax                            ,  --tax
10006       p_tax_status_code                ,  --tax_status_code
10007       'N'                              ,  --schedule_based_rate_flag
10008       'PERCENTAGE'                     ,  --rate_type_code
10009       0                                ,  --percentage_rate
10010       NULL                             ,  --quantity_rate
10011       NULL                             ,  --uom_code
10012       NULL                             ,  --tax_jurisdiction_code
10013       NULL                             ,  --recovery_type_code
10014       'Y'                              ,  --active_flag
10015       'N'                              ,  --default_rate_flag : YK:8/25/2004: How to populate this flag?
10016       NULL                             ,  --default_flg_effective_from
10017       NULL                             ,  --default_flg_effective_to
10018       NULL                             ,  --default_rec_type_code
10019       NULL                             ,  --default_rec_rate_code
10020       NULL                             ,  --offset_tax
10021       NULL                             ,  --offset_status_code
10022       NULL                             ,  --offset_tax_rate_code
10023       NULL                             ,  --recovery_rule_code
10024       'IMMEDIATE'                      ,  --def_rec_settlement_option_code
10025       NULL                             ,  --vat_transaction_type_code
10026       'TAX_RATE'                          ,  --adj_for_adhoc_amt_code
10027       'Y'                              ,  --allow_adhoc_tax_rate_flag
10028       'OUTPUT'                         ,  --tax_class
10029       NULL                             ,  --source_id
10030       'STANDARD_TB'                    ,  --taxable_basis_formula_code
10031       'N'                              ,  --inclusive_tax_flag
10032       'N'                              ,  --tax_inclusive_override_flag
10033       'MIGRATED'                       ,  --record_type_code
10034       fnd_global.user_id               ,  --created_by
10035       SYSDATE                          ,  --creation_date
10036       fnd_global.user_id               ,  --last_updated_by
10037       SYSDATE                          ,  --last_update_date
10038       fnd_global.user_id               ,  --last_update_login
10039       fnd_global.conc_request_id       ,  --request_id
10040       fnd_global.prog_appl_id          ,  --program_application_id
10041       fnd_global.conc_program_id       ,  --program_id
10042       fnd_global.conc_login_id         ,  --program_login_id
10043       NULL                             ,  --ATTRIBUTE1
10044       NULL                             ,  --ATTRIBUTE2
10045       NULL                             ,  --ATTRIBUTE3
10046       NULL                             ,  --ATTRIBUTE4
10047       NULL                             ,  --ATTRIBUTE5
10048       NULL                             ,  --ATTRIBUTE6
10049       NULL                             ,  --ATTRIBUTE7
10050       NULL                             ,  --ATTRIBUTE8
10051       NULL                             ,  --ATTRIBUTE9
10052       NULL                             ,  --ATTRIBUTE10
10053       NULL                             ,  --ATTRIBUTE11
10054       NULL                             ,  --ATTRIBUTE12
10055       NULL                             ,  --ATTRIBUTE13
10056       NULL                             ,  --ATTRIBUTE14
10057       NULL                             ,  --ATTRIBUTE15
10058       NULL                             ,  --ATTRIBUTE_CATEGORY
10059       1                                ,
10060       'Y'                              ,  --ALLOW_EXEMPTIONS_FLAG
10061       'Y'                                --ALLOW_EXCEPTIONS_FLAG
10062   )
10063   INTO zx_accounts
10064   (
10065       TAX_ACCOUNT_ID                 ,
10066       TAX_ACCOUNT_ENTITY_ID          ,
10067       TAX_ACCOUNT_ENTITY_CODE        ,
10068       LEDGER_ID                      ,
10069       INTERNAL_ORGANIZATION_ID       , -- Bug 3495741
10070       TAX_ACCOUNT_CCID               ,
10071       INTERIM_TAX_CCID               ,
10072       NON_REC_ACCOUNT_CCID           ,
10073       ADJ_CCID                       ,
10074       EDISC_CCID                     ,
10075       UNEDISC_CCID                   ,
10076       FINCHRG_CCID                   ,
10077       ADJ_NON_REC_TAX_CCID           ,
10078       EDISC_NON_REC_TAX_CCID         ,
10079       UNEDISC_NON_REC_TAX_CCID       ,
10080       FINCHRG_NON_REC_TAX_CCID       ,
10081       RECORD_TYPE_CODE               ,
10082       CREATED_BY                  ,
10083       CREATION_DATE                  ,
10084       LAST_UPDATED_BY                ,
10085       LAST_UPDATE_DATE               ,
10086       LAST_UPDATE_LOGIN              ,
10087       REQUEST_ID                     ,
10088       PROGRAM_APPLICATION_ID         ,
10089       PROGRAM_ID                     ,
10090       PROGRAM_LOGIN_ID               ,
10091       ATTRIBUTE1             ,
10092       ATTRIBUTE2             ,
10093       ATTRIBUTE3             ,
10094       ATTRIBUTE4             ,
10095       ATTRIBUTE5             ,
10096       ATTRIBUTE6             ,
10097       ATTRIBUTE7             ,
10098       ATTRIBUTE8             ,
10099       ATTRIBUTE9             ,
10100       ATTRIBUTE10            ,
10101       ATTRIBUTE11            ,
10102       ATTRIBUTE12            ,
10103       ATTRIBUTE13            ,
10104       ATTRIBUTE14            ,
10105       ATTRIBUTE15            ,
10106       ATTRIBUTE_CATEGORY     ,
10107       OBJECT_VERSION_NUMBER
10108   )
10109   VALUES
10110   (
10111        ZX_ACCOUNTS_S.nextval  ,--TAX_ACCOUNT_ID
10112        zx_rates_b_s.nextval   ,--TAX_RATE_ID
10113        'RATES'                ,--TAX_ACCOUNT_ENTITY_CODE
10114        p_ledger_id            ,--LEDGER_ID
10115        p_org_id               ,--ORG_ID
10116        p_tax_account_ccid     ,--TAX_ACCOUNT_CCID
10117        NULL                   ,--INTERIM_TAX_CCID
10118        NULL                   ,--NON_REC_ACCOUNT_CCID
10119        NULL                   ,--ADJ_CCID
10120        NULL                   ,--EDISC_CCID
10121        NULL                   ,--UNEDISC_CCID
10122        NULL                   ,--FINCHRG_CCID
10123        NULL                   ,--ADJ_NON_REC_TAX_CCID
10124        NULL                   ,--EDISC_NON_REC_TAX_CCID
10125        NULL                   ,--UNEDISC_NON_REC_TAX_CCID
10126        NULL                   ,--FINCHRG_NON_REC_TAX_CCID
10127        'MIGRATED'             ,--RECORD_TYPE_CODE
10128        fnd_global.user_id     ,--CREATED_BY
10129        sysdate                ,--CREATION_DATE
10130        fnd_global.user_id     ,--LAST_UPDATED_BY
10131        sysdate                ,--LAST_UPDATE_DATE
10132        fnd_global.user_id     ,--LAST_UPDATE_LOGIN
10133        fnd_global.conc_request_id  ,--REQUEST_ID
10134        fnd_global.prog_appl_id     ,--PROGRAM_APPLICATION_ID
10135        fnd_global.conc_program_id  ,--PROGRAM_ID
10136        fnd_global.conc_login_id    ,--PROGRAM_LOGIN_ID
10137        NULL                        ,--ATTRIBUTE1
10138        NULL                        ,--ATTRIBUTE2
10139        NULL                        ,--ATTRIBUTE3
10140        NULL                        ,--ATTRIBUTE4
10141        NULL                        ,--ATTRIBUTE5
10142        NULL                        ,--ATTRIBUTE6
10143        NULL                        ,--ATTRIBUTE7
10147        NULL                        ,--ATTRIBUTE11
10144        NULL                        ,--ATTRIBUTE8
10145        NULL                        ,--ATTRIBUTE9
10146        NULL                        ,--ATTRIBUTE10
10148        NULL                        ,--ATTRIBUTE12
10149        NULL                        ,--ATTRIBUTE13
10150        NULL                        ,--ATTRIBUTE14
10151        NULL                        ,--ATTRIBUTE15
10152        NULL                        ,--ATTRIBUTE_CATEGORY
10153        1
10154   )
10155   SELECT 1 FROM DUAL;
10156 
10157   -- *** Note *** Need to insert into _tl as we're creating new records
10158   INSERT INTO  ZX_RATES_TL
10159   (
10160       TAX_RATE_ID,
10161       TAX_RATE_NAME,
10162       CREATED_BY,
10163       CREATION_DATE,
10164       LAST_UPDATED_BY,
10165       LAST_UPDATE_DATE,
10166       LAST_UPDATE_LOGIN,
10167       LANGUAGE,
10168       SOURCE_LANG,
10169       description
10170   )
10171   SELECT
10172       b.tax_rate_id,
10173       b.tax_rate_code,
10174       fnd_global.user_id,
10175       sysdate,
10176       fnd_global.user_id,
10177       sysdate,
10178       fnd_global.login_id,
10179       l.language_code,
10180       userenv('LANG'),
10181       avtb.description
10182   FROM
10183       fnd_languages l,
10184       zx_rates_b    b,
10185       ar_system_parameters_all asp,
10186       zx_party_tax_profile    ptp,
10187       ar_vat_tax_all_b   avtb
10188   WHERE
10189       l.installed_flag in ('I', 'B')
10190   AND avtb.vat_tax_id = b.tax_rate_id
10191   AND b.record_type_code = 'MIGRATED'
10192   AND b.content_owner_id = ptp.party_tax_profile_id
10193   AND ptp.party_id = asp.org_id
10194   AND ptp.party_type_code = 'OU'
10195   AND NOT EXISTS
10196       (SELECT 1
10197        FROM   zx_rates_tl  t
10198        WHERE  t.tax_rate_id = b.tax_rate_id
10199        AND    t.language = l.language_code);
10200 
10201 EXCEPTION
10202   WHEN OTHERS THEN
10203     NULL;
10204 END insert_tax_rate_code;
10205 
10206 /*===========================================================================+
10207  | PROCEDURE
10208  |    upd_criteria_results
10209  |
10210  | IN
10211  |    NA
10212  |
10213  | OUT
10214  |    NA
10215  |
10216  | DESCRIPTION
10217  |     This routine updates zx_update_criteria_results table when
10218  |     there's tax codes with same name, one with tax_precedence with a
10219  |     value the others with null tax_precedence.
10220  |
10221  | i.e.
10222  |  zx_migrate_tax_def_common.load_tax_comp_results_for_ar loaded
10223  |  QCTVQ with tax_precedence.
10224  |  After that, zx_migrate_tax_def_common.load_results_for_ar loaded
10225  |  QCTV with null tax_precedence.
10226  |
10227  |  TAX_PRECEDENCE TAX_CODE                ORG_ID
10228  |  -------------- ------------------- ----------
10229  |               26 QCTVQ                     204
10230  |                  QCTVQ                     204
10231  |
10232  |  While createing taxes (create_zx_taxes), tax_precedence is a part
10233  |  of grouping criteria. If there're records described above,
10234  |  create_zx_taxes failes with unique index zx_taxes_b_u2 violation.
10235  |
10236  |
10237  | SCOPE - PRIVATE
10238  |
10239  | EXETERNAL PROCEDURES/FUNCTIONS ACCESSED
10240  |
10241  | CALLED FROM
10242  |        zx_migrate_ar_tax_def.migrate_ar_tax_code_setup
10243  |
10244  | NOTES
10245  |
10246  | MODIFICATION HISTORY
10247  | 11/02/2005   Yoshimichi Konishi   Created.
10248  |
10249  +==========================================================================*/
10250 PROCEDURE update_criteria_results AS
10251 BEGIN
10252 
10253 UPDATE zx_update_criteria_results  zucr1
10254 SET    tax_precedence = (SELECT   zucr2.tax_precedence
10255                          FROM     zx_update_criteria_results zucr2
10256                          WHERE    zucr1.tax_code = zucr2.tax_code
10257                          AND      zucr1.tax_class = zucr2.tax_class
10258                          AND      zucr1.tax_class = 'OUTPUT'
10259                          AND      zucr1.org_id = zucr2.org_id
10260                          AND      zucr1.rowid <> zucr2.rowid
10261                          AND      zucr2.tax_precedence is not null
10262                          AND      zucr1.tax_precedence is null
10263                          AND      rownum = 1)
10264 WHERE  zucr1.tax_precedence is null
10265 AND    zucr1.tax_class = 'OUTPUT';
10266 
10267 EXCEPTION
10268   WHEN OTHERS THEN
10269     NULL;
10270 END;
10271 
10272 /*===========================================================================+
10273  | PROCEDURE
10274  |    stamp_exe_exc_flag
10275  |
10276  | IN
10277  |    None
10278  |
10279  |
10280  | OUT
10281  |    None
10282  | DESCRIPTION
10283  |     This routine is used to stamp the correct values for allow_exemptions_flag
10284  |     and allow_exceptions_flag for clashing P2P and O2C taxes and statuses
10285  |     since AP runs before AR this values would have got stamped incorrectly
10286  |     to start off with.
10287  |
10288  | SCOPE - PRIVATE
10289  |
10290  | EXTERNAL PROCEDURES/FUNCTIONS ACCESSED
10291  |
10292  | CALLED FROM
10293  |
10294  | NOTES
10295  |
10296  | MODIFICATION HISTORY
10297  | 12th May 2006  Arnab Sengupta   Created.
10298  |
10299  +==========================================================================*/
10300 
10301 PROCEDURE stm_exmpt_excpt_flg
10302 IS
10303   l_allow_exemptions_flag  VARCHAR2(100);
10304   l_allow_exceptions_flag  VARCHAR2(100);
10305 BEGIN
10306   FOR cursor_rec IN (SELECT party_id,
10307                             party_tax_profile_id
10308                      FROM   zx_party_tax_profile
10309                      WHERE  party_tax_profile_id IN (SELECT content_owner_id
10310                                                      FROM   zx_rates_b
10311                                                      WHERE  tax_class = 'OUTPUT'
10312                                                      INTERSECT
10313                                                      SELECT content_owner_id
10314                                                      FROM   zx_rates_b
10315                                                      WHERE  tax_class = 'INPUT')
10316            AND party_type_code = 'OU'
10317            AND record_type_code = 'MIGRATED')
10318   LOOP
10319    BEGIN
10320     SELECT nvl(tax_use_customer_exempt_flag,'N'),
10321            CASE
10322              WHEN     nvl(tax_use_product_exempt_flag,'N') = 'N'
10323                   AND nvl(tax_use_loc_exc_rate_flag,'N') = 'N'
10324        THEN 'N'
10325              ELSE 'Y'
10326            END
10327     INTO   l_allow_exemptions_flag,
10328            l_allow_exceptions_flag
10329     FROM   ar_system_parameters_all
10330     WHERE  org_id = cursor_rec.party_id;
10331 
10332     UPDATE zx_taxes_b_tmp
10333     SET    allow_exemptions_flag = l_allow_exemptions_flag,
10334            allow_exceptions_flag = l_allow_exceptions_flag
10335     WHERE  content_owner_id = cursor_rec.party_tax_profile_id
10336     AND    record_type_code = 'MIGRATED';
10337 
10338     UPDATE zx_status_b_tmp
10339     SET    allow_exemptions_flag = l_allow_exemptions_flag,
10340            allow_exceptions_flag = l_allow_exceptions_flag
10341     WHERE  content_owner_id = cursor_rec.party_tax_profile_id
10342     AND    record_type_code = 'MIGRATED';
10343    EXCEPTION WHEN OTHERS THEN
10344    NULL;
10345    END;
10346 
10347   END LOOP;
10348 END;
10349 
10350 
10351 
10352 
10353 -- ****** CONSTRUCTORS ******
10354 BEGIN
10355   -- Check if LTE is used
10356   /* Bug 5248597*/
10357   /*BEGIN
10358     SELECT 'Y' INTO L_LTE_USED FROM DUAL
10359     WHERE EXISTS (select 1
10360                   from   ar_vat_tax_all_b
10361                   where  global_attribute_category in ('JL.AR.ARXSUVAT.AR_VAT_TAX',
10362                                                        'JL.BR.ARXSUVAT.AR_VAT_TAX',
10363                                                        'JL.CO.ARXSUVAT.AR_VAT_TAX')
10364                  );
10365   EXCEPTION
10366     WHEN no_data_found THEN
10367       NULL;
10368     WHEN others THEN
10369       arp_util_tax.debug('e:pkg_condt:lte_used:'||sqlcode || ' : ' || sqlerrm);
10370   END;*/
10371 
10372   -- Check if JATW is used
10373   BEGIN
10374     SELECT 'Y' INTO L_JATW_USED FROM DUAL
10375     WHERE EXISTS (select 1
10376                   from   ar_vat_tax_all_b
10377                   where  global_attribute_category = 'JA.TW.ARXSUVAT.VAT_TAX');  --YK:B:10/08/2004: Modified.
10378   EXCEPTION
10379     WHEN no_data_found THEN
10380       NULL;
10381     WHEN others THEN
10382       arp_util_tax.debug('e:pkg_const:jatw_used:'||sqlcode || ' : ' || sqlerrm);
10383   END;
10384 
10385   -- Check MIN START DATE
10386   BEGIN
10387     SELECT min(start_date)
10388     INTO   L_MIN_START_DATE
10389     FROM   ar_vat_tax_all_b;
10390   EXCEPTION
10391     WHEN OTHERS THEN
10392       arp_util_tax.debug('e:pkg_const:l_min_start_date:'||sqlcode || ' : ' || sqlerrm);
10393   END;
10394 
10395 
10396 BEGIN
10397    SELECT NVL(MULTI_ORG_FLAG,'N')  INTO L_MULTI_ORG_FLAG FROM
10398     FND_PRODUCT_GROUPS;
10399 
10400     IF L_MULTI_ORG_FLAG  = 'N' THEN
10401 
10402           FND_PROFILE.GET('ORG_ID',L_ORG_ID);
10403 
10404                  IF L_ORG_ID IS NULL THEN
10408          L_ORG_ID := NULL;
10405                    arp_util_tax.debug('MO: Operating Units site level profile option value not set , resulted in Null Org Id');
10406                  END IF;
10407     ELSE
10409     END IF;
10410 
10411 
10412 EXCEPTION
10413 WHEN OTHERS THEN
10414     arp_util_tax.debug('Exception in constructor of AR TAX DEFINITION'||sqlerrm);
10415 END;
10416 
10417   BEGIN
10418         MO_GLOBAL.INIT('ZX');
10419   EXCEPTION WHEN OTHERS THEN
10420         arp_util_tax.debug('Exception in MO_GLOBAL.init');
10421   END;
10422 
10423 
10424 END;