0% found this document useful (0 votes)
27 views5 pages

Common Local Tax XFRM Script

The document describes creating and populating tables to store extracted employee tax data for loading. It creates staging and transformation tables, extracts and transforms the data, and loads it into a transaction table with additional processing to handle employees with multiple state tax records.

Uploaded by

tkchavan12
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views5 pages

Common Local Tax XFRM Script

The document describes creating and populating tables to store extracted employee tax data for loading. It creates staging and transformation tables, extracts and transforms the data, and loads it into a transaction table with additional processing to handle employees with multiple state tax records.

Uploaded by

tkchavan12
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 5

/*----Create below staging for dba Extracted data and then import the dba extracted

data -----*/
CREATE TABLE XXARG.XXRE_EBS_LOCAL_TAX_NEW
( EMPLOYEE_NUMBER VARCHAR2(30 BYTE),
STATE_CODE VARCHAR2(2 BYTE),
COUNTY_CODE VARCHAR2(3 BYTE),
CITY_CODE VARCHAR2(4 BYTE),
STATE_NAME VARCHAR2(25 BYTE),
CITY_NAME VARCHAR2(30 BYTE),
COUNTY_NAME VARCHAR2(30 BYTE),
CITY_SCHOOL_DIST_CODE VARCHAR2(5 BYTE),
CITY_SCHOOL_DIST_NAME VARCHAR2(15 BYTE),
COUNTY_SCHOOL_DIST_CODE VARCHAR2(5 BYTE),
COUNTY_SCHOOL_DIST_NAME VARCHAR2(15 BYTE),
JURISDICTION_CODE VARCHAR2(11 BYTE),
FILING_STATUS VARCHAR2(80 BYTE),
CONTRIBUTION_PERCENTAGE NUMBER,
WITHHOLDING_ALLOWANCES NUMBER(3,0),
LIT_ADDITIONAL_TAX NUMBER(11,2),
ADDITIONAL_WA_RATE NUMBER(6,3),
LIT_EXEMPT VARCHAR2(30 BYTE),
SD_EXEMPT VARCHAR2(30 BYTE),
HT_EXEMPT VARCHAR2(30 BYTE),
LIT_OVERRIDE_RATE NUMBER(6,3),
LIT_OVERRIDE_AMOUNT NUMBER(11,2),
WAGE_EXEMPT VARCHAR2(30 BYTE),
EFFECTIVE_START_DATE DATE,
EFFECTIVE_END_DATE DATE
);

drop table xxarg.xxre_ebs_local_tax_xfrm;

Create table xxarg.xxre_ebs_local_tax_xfrm as


SELECT * FROM
xxarg.xxre_ebs_local_tax_new;

/*Select * from
xxarg.xxre_ebs_local_tax_new
WHERE
county_school_dist_code IS NOT NULL
AND city_school_dist_code IS NULL;

SELECT
*
FROM
xxarg.xxre_ebs_local_tax_new new
WHERE
NOT EXISTS (
SELECT
'x'
FROM
xxarg.xxre_ebs_local_tax old
WHERE
old.employee_number = new.employee_number
AND old.state_code = new.state_code
AND old.county_code = new.county_code
AND old.city_code = new.city_code
)
--AND county_school_dist_code IS NULL
; */

--Getting Assignment date and assignment ID--


ALTER TABLE xxarg.xxre_ebs_local_tax_xfrm ADD New_effective_start_date DATE;

ALTER TABLE xxarg.xxre_ebs_local_tax_xfrm ADD ASGID VARCHAR2(100);


commit;

UPDATE xxarg.xxre_ebs_local_tax_xfrm A SET A.New_effective_start_date =


(Select max(c.effective_start_date) from XXARG.xxre_workrelationship_xfrm c where
c.employee_number = a.employee_number);
commit;

ALTER TABLE xxarg.xxre_ebs_local_tax_xfrm ADD Final_effective_start_date DATE;

UPDATE xxarg.xxre_ebs_local_tax_xfrm SET Final_effective_start_date =


(CASE
WHEN New_effective_start_date > effective_start_date then New_effective_start_date
WHEN New_effective_start_date < effective_start_date then effective_start_date
WHEN New_effective_start_date = effective_start_date then effective_start_date
END)
;

commit;

UPDATE xxarg.xxre_ebs_local_tax_xfrm A SET A.ASGID =


(Select max(b.asgid) from XXARG.xxre_workrelationship_xfrm b where
b.employee_number = a.employee_number and
b.effective_start_date = a.New_effective_start_date);

commit;
------
--Creating TRANS table --

DROP TABLE xxarg.xxre_local_tax_tbl_trans;


CREATE TABLE xxarg.xxre_local_tax_tbl_trans
(EMPLOYEE_NUMBER varchar2(2000),
ASG_EFF_DATE DATE,
ASGID varchar2(2000),
STATE_CODE varchar2(2000),
COUNTY_CODE varchar2(2000),
CITY_CODE varchar2(2000),
STATE_NAME varchar2(2000),
CITY_NAME varchar2(2000),
COUNTY_NAME varchar2(2000),
CITY_SCHOOL_DST_CODE varchar2(2000),
CITY_SCHOOL_DST_NAME varchar2(2000),
COUNTY_SCHOOL_DST_CODE varchar2(2000),
COUNTY_SCHOOL_DST_NAME varchar2(2000),
JURISDICTION_CODE varchar2(2000),
FILING_STATUS varchar2(2000),
CONTRIBUTION_PERCENTAGE varchar2(2000),
WITHHOLDING_ALLOWANCES varchar2(2000),
LIT_ADDITIONAL_TAX varchar2(2000),
ADDITIONAL_WA_RATE varchar2(2000),
LIT_EXEMPT varchar2(2000),
SD_EXEMPT varchar2(2000),
HT_EXEMPT varchar2(2000),
LIT_OVERRIDE_RATE varchar2(2000),
LIT_OVERRIDE_AMOUNT varchar2(2000),
WAGE_EXEMPT varchar2(2000),
EFFECTIVE_START_DATE DATE,
FINAL_EFFECTIVE_START_DATE DATE,
EFFECTIVE_END_DATE DATE,
cardname varchar2(2000),
cardsequence varchar2(2000),
componentname varchar2(2000),
componentsequence varchar2(2000),
tobeloaded varchar2(1),
comments varchar2(2000));

commit;

--Updating the trans table--

INSERT INTO XXARG.xxre_local_tax_tbl_trans


(EMPLOYEE_NUMBER,
ASG_EFF_DATE,
ASGID,
STATE_CODE,
COUNTY_CODE,
CITY_CODE,
STATE_NAME,
CITY_NAME,
COUNTY_NAME,
CITY_SCHOOL_DST_CODE,
CITY_SCHOOL_DST_NAME,
COUNTY_SCHOOL_DST_CODE,
COUNTY_SCHOOL_DST_NAME,
JURISDICTION_CODE,
FILING_STATUS,
CONTRIBUTION_PERCENTAGE,
WITHHOLDING_ALLOWANCES,
LIT_ADDITIONAL_TAX,
ADDITIONAL_WA_RATE,
LIT_EXEMPT,
SD_EXEMPT,
HT_EXEMPT,
LIT_OVERRIDE_RATE,
LIT_OVERRIDE_AMOUNT,
WAGE_EXEMPT,
EFFECTIVE_START_DATE,
FINAL_EFFECTIVE_START_DATE,
EFFECTIVE_END_DATE,
cardname,
cardsequence,
componentname,
componentsequence,
tobeloaded,
comments
)
Select
trim(EMPLOYEE_NUMBER),
trim(New_effective_start_date),
trim(ASGID),
trim(STATE_CODE),
trim(COUNTY_CODE),
trim(CITY_CODE),
trim(STATE_NAME),
trim(CITY_NAME),
trim(COUNTY_NAME),
trim(CITY_SCHOOL_DIST_CODE),
trim(CITY_SCHOOL_DIST_NAME),
trim(COUNTY_SCHOOL_DIST_CODE),
trim(COUNTY_SCHOOL_DIST_NAME),
trim(JURISDICTION_CODE),
trim(FILING_STATUS),
trim(CONTRIBUTION_PERCENTAGE),
trim(WITHHOLDING_ALLOWANCES),
trim(LIT_ADDITIONAL_TAX),
trim(ADDITIONAL_WA_RATE),
trim(LIT_EXEMPT),
trim(SD_EXEMPT),
trim(HT_EXEMPT),
trim(LIT_OVERRIDE_RATE),
trim(LIT_OVERRIDE_AMOUNT),
trim(WAGE_EXEMPT),
trim(EFFECTIVE_START_DATE),
trim(FINAL_EFFECTIVE_START_DATE),
trim(EFFECTIVE_END_DATE),
'Tax Withholding',
'1',
'City Taxes',
'1',
'Y',
'A'
from xxarg.xxre_ebs_local_tax_xfrm;

commit;

--Updating Component Sequence for employees with multiple states


update XXARG.xxre_local_tax_tbl_trans a set a.componentsequence='2'
where rowid in (
select min(rowid)
from XXARG.xxre_local_tax_tbl_trans b where b.tobeloaded='Y'
And a.employee_number=b.employee_number
and b.componentsequence='1'
group by employee_number
having count(*)>1 )
and a.componentsequence='1'
;

commit;

update XXARG.xxre_local_tax_tbl_trans a set a.componentsequence='3'


where rowid in (
select min(rowid)
from XXARG.xxre_local_tax_tbl_trans b where b.tobeloaded='Y'
And a.employee_number=b.employee_number
and b.componentsequence='1'
group by employee_number
having count(*)>1 )
and a.componentsequence='1'
;
commit;

You might also like