You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

540 lines
16 KiB

3 years ago
---
title: "EmployeesValidation"
author: "Scary Scarecrow"
date: "2022-10-17"
output: html_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
## Job ID Files
```{r}
jobid<-read_excel("./raw-data/Jobs.XLSX", sheet="str")
jobid
```
```{r}
str<-read_excel("./raw-data/org.XLSX", sheet="str")
str<-
str |>
select(ID, Name)
str
```
## CN
```{r}
emp<-read_excel("./raw-data/CN.XLSX", sheet="emp")
str<-read_excel("./raw-data/CN.XLSX", sheet="str")
str <-
str |>
select(ID, Name)
```
```{r}
emp |>
separate(`Job-Title`,c("Nm","JTitle","Geo"),sep="[|]") |>
separate(JTitle,c("JTitle","deptt"), sep="[,]") |>
mutate(org1=ifelse(
grepl("Sales", `Org Unit ID 1`) & !is.na(deptt), gsub(" ","",paste0("CN_Sales_",deptt)),
paste0("CN_",`Org Unit ID 1`)
)) |>
mutate(org2=ifelse(
is.na(`Org Unit ID 2`), NA,paste0("CN_",`Org Unit ID 2`)
)) |>
left_join(str, by=c("org1"="Name")) |>
mutate(`Org Unit ID 1`=ifelse(is.na(ID),`Org Unit ID 1`,ID)) |>
select(-c(org1,ID)) |>
left_join(str, by=c("org2"="Name")) |>
mutate(`Org Unit ID 2`=ifelse(is.na(ID),`Org Unit ID 2`,ID)) |>
select(-c(org2,ID)) |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
write.csv("./op/CN.csv", row.names = FALSE, na="")
```
## CZ
```{r}
emp<-read_excel("./raw-data/CZ.XLSX", sheet="emp")
```
```{r}
emp |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
write.csv("./op/CZ.csv", row.names = FALSE, na="")
```
## DE
```{r}
#str<-read_excel("./raw-data/DE.XLSX", sheet="str")
# str<-str |>
# select(ID,Name)
# jobidn<-jobid |>
# select(1,2) |>
# rename(JID=`Job ID`)
emp<-read_excel("./raw-data/DE.XLSX", sheet="emp")
emp |>
left_join(jobid, by=c("Job.Title.Eng"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID.y`), Job.Title.Eng, `Job ID.y`)) |>
select(-c(`Job ID.y`)) |>
left_join(str, by=c("Org. Unit-ID...20"="Name")) |>
mutate(`Org. Unit-ID...20`=ifelse(is.na(ID),`Org. Unit-ID...20`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...21"="Name")) |>
mutate(`Org. Unit-ID...21`=ifelse(is.na(ID),`Org. Unit-ID...21`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...22"="Name")) |>
mutate(`Org. Unit-ID...22`=ifelse(is.na(ID),`Org. Unit-ID...22`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...23"="Name")) |>
mutate(`Org. Unit-ID...23`=ifelse(is.na(ID),`Org. Unit-ID...23`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...24"="Name")) |>
mutate(`Org. Unit-ID...24`=ifelse(is.na(ID),`Org. Unit-ID...24`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...25"="Name")) |>
mutate(`Org. Unit-ID...25`=ifelse(is.na(ID),`Org. Unit-ID...25`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...26"="Name")) |>
mutate(`Org. Unit-ID...26`=ifelse(is.na(ID),`Org. Unit-ID...26`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...27"="Name")) |>
mutate(`Org. Unit-ID...27`=ifelse(is.na(ID),`Org. Unit-ID...27`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org. Unit-ID...28"="Name")) |>
mutate(`Org. Unit-ID...28`=ifelse(is.na(ID),`Org. Unit-ID...28`,ID)) |>
select(-ID) |>
write.csv("./op/DE.csv", row.names = FALSE, na="")
str
```
## ES
```{r}
emp<-read_excel("./raw-data/ES.XLSX", sheet="emp")
emp |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
mutate(`Org Unit ID`=ifelse(is.na(`Org Unit ID`),NA,paste0("ES_",`Org Unit ID`))) |>
left_join(str, by=c("Org Unit ID"="Name")) |>
mutate(`Org Unit ID`=ifelse(is.na(ID),`Org Unit ID`,ID)) |>
select(-ID) |>
write.csv("./op/ES.csv", row.names = FALSE, na="")
```
## IT
```{r}
emp<-read_excel("./raw-data/IT.XLSX", sheet="emp")
emp |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
mutate(`Org Unit ID`=ifelse(is.na(`Org Unit ID`),NA,paste0("IT_", `Org Unit ID`))) |>
left_join(str, by=c("Org Unit ID"="Name")) |>
mutate(`Org Unit ID`=ifelse(is.na(ID),`Org Unit ID`,ID)) |>
select(-ID) |>
write.csv("./op/IT.csv", row.names = FALSE, na="")
```
## NL
```{r}
emp<-read_excel("./raw-data/NL.XLSX", sheet="emp")
emp |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
write.csv("./op/NL.csv", row.names = FALSE, na="")
```
## PL
```{r}
emp<-read_excel("./raw-data/PL.XLSX", sheet="emp")
emp |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
mutate(`Org Unit ID`=ifelse(is.na(`Org Unit ID`),NA,paste0("PL_",`Org Unit ID`))) |>
left_join(str, by=c("Org Unit ID"="Name")) |>
mutate(`Org Unit ID`=ifelse(is.na(ID),`Org Unit ID`,ID)) |>
select(-ID) |>
write.csv("./op/PL.csv", row.names = FALSE, na="")
```
## SEFI
```{r}
str<-read_excel("./raw-data/SEFI.XLSX", sheet="str")
emp<-read_excel("./raw-data/SEFI.XLSX", sheet="emp")
emp |>
left_join(jobid, by=c("Job-ID"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(`Job ID`), `Job-ID`, `Job ID`)) |>
select(-c(`Job ID`)) |>
left_join(str, by=c("Org Unit ID 1"="Name")) |>
mutate(`Org Unit ID 1`=ifelse(is.na(ID),`Org Unit ID 1`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org Unit ID 2"="Name")) |>
mutate(`Org Unit ID 2`=ifelse(is.na(ID),`Org Unit ID 2`,ID)) |>
select(-ID) |>
write.csv("./op/SEFI.csv", row.names = FALSE, na="")
```
## AUS
```{r}
str<-read_excel("./raw-data/AUS.XLSX", sheet="str")
emp<-read_excel("./raw-data/AUS.XLSX", sheet="emp")
emp |>
separate(`Job-Title`,c("Job","Geo"), sep="[|]") |>
separate(Job, c("Job","Product"),sep="[,]") |>
mutate(Job=str_trim(Job)) |>
left_join(jobidn, by=c("Job"="Job Name")) |>
mutate(`Job-ID`=ifelse(is.na(JID), `Job-ID`, JID)) |>
rename(`New Job ID`=JID) |>
left_join(str, by=c("Org Unit ID 1"="Name")) |>
mutate(`Org Unit ID 1`=ifelse(is.na(ID),`Org Unit ID 1`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org Unit ID 2"="Name")) |>
mutate(`Org Unit ID 2`=ifelse(is.na(ID),`Org Unit ID 2`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org Unit ID 3"="Name")) |>
mutate(`Org Unit ID 3`=ifelse(is.na(ID),`Org Unit ID 3`,ID)) |>
select(-ID) |>
left_join(str, by=c("Org Unit ID 4"="Name")) |>
mutate(`Org Unit ID 4`=ifelse(is.na(ID),`Org Unit ID 4`,ID)) |>
select(-ID) |>
write.csv("./op/AUSNZ.csv", row.names = FALSE, na="")
```
## DE
```{r}
de<-read.csv("./op/DE.csv")
all<-read.csv("all_users.csv")
all<-all |>
select(City, Email.Address,Username..pre.2000.) |>
rename(city=City, email=Email.Address, uname=Username..pre.2000.)
de<-
de |>
select(S.4.Employee.ID, First.Name, Last.Name, Email.Address, Telephone.Number, Street, ZIP.Postal.Code,
Job.ID, Business.Role.ID, Org..Unit.ID...20, Org..Unit.ID...21, Org..Unit.ID...22, Org..Unit.ID...23,
Org..Unit.ID...24, Org..Unit.ID...25, Org..Unit.ID...26, Org..Unit.ID...27, Org..Unit.ID...28) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name,
email=Email.Address, phone=Telephone.Number, street=Street, zip=ZIP.Postal.Code,
jid=Job.ID, bid=Business.Role.ID, org1=Org..Unit.ID...20, org2=Org..Unit.ID...21,
org3=Org..Unit.ID...22, org4=Org..Unit.ID...23, org5=Org..Unit.ID...24,
org6=Org..Unit.ID...25, org7=Org..Unit.ID...26, org8=Org..Unit.ID...27, org9=Org..Unit.ID...28) |>
left_join(all, by=c("email")) |>
mutate(country="DE")
cnames<-colnames(de)
de
```
```{r}
aus<-read.csv("./op/AUSNZ.csv")
aus<-aus |>
select(S.4.Employee.ID, First.Name, Last.name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Job.ID,
Business.Role.ID, Org.Unit.ID.1, Org.Unit.ID.2, Org.Unit.ID.3, Org.Unit.ID.4) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID.1,
org2=Org.Unit.ID.2, org3=Org.Unit.ID.3, org4=Org.Unit.ID.4) |>
mutate(org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="AU") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
cn<-read.csv("./op/CN.csv")
cn<-cn |>
select(S.4.Employee.ID, First.Name, Last.name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Business.Role.ID,
Job.ID, Org.Unit.ID.1, Org.Unit.ID.2) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID.1,
org2=Org.Unit.ID.2) |>
mutate(org3=NA, org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="CN") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
cz<-read.csv("./op/CZ.csv")
cz<-cz |>
select(S.4.Employee.ID, First.Name, Last.Name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Business.Role.ID,
Job.ID, Org.Unit.ID) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID) |>
mutate(org2=NA,org3=NA, org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="CZ") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
es<-read.csv("./op/ES.csv")
es<-es |>
select(S.4.Employee.ID, First.Name, Last.Name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Business.Role.ID,
Job.ID, Org.Unit.ID) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID) |>
mutate(org2=NA,org3=NA, org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="ES") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
it<-read.csv("./op/IT.csv")
it<-it |>
select(S.4.Employee.ID, First.Name, Last.Name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Business.Role.ID,
Job.ID, Org.Unit.ID) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID) |>
mutate(org2=NA,org3=NA, org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="IT") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
nl<-read.csv("./op/NL.csv")
nl<-nl |>
select(S.4.Employee.ID, First.Name, Last.Name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Busines.Role.ID,
Job.ID, Org.Unit.ID...14, Org.Unit.ID...15, Org.Unit.ID...16) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Busines.Role.ID, org1=Org.Unit.ID...14,
org2=Org.Unit.ID...15, org3=Org.Unit.ID...16) |>
mutate(org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="NL") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
pl<-read.csv("./op/PL.csv")
pl<-
pl |>
select(S.4.Employee.ID, First.Name, Last.Name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Business.Role.ID,
Job.ID, Org.Unit.ID) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID) |>
mutate(org2=NA,org3=NA, org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="PL") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
se<-read.csv("./op/SEFI.csv")
se<-
se |>
select(S.4.Employee.ID, First.Name, Last.Name, User.Name, E.mail, Work.Phone, Street, Postal.Code, Business.Role.ID,
Job.ID, Org.Unit.ID.1, Org.Unit.ID.2, Org.Unit.ID.3) |>
rename(eid=S.4.Employee.ID, fname=First.Name, lname=Last.Name, email=E.mail, phone=Work.Phone,
street=Street, zip=Postal.Code, jid=Job.ID, bid=Business.Role.ID, org1=Org.Unit.ID.1,
org2=Org.Unit.ID.2, org3=Org.Unit.ID.3) |>
mutate(org4=NA,org5=NA,org6=NA, org7=NA, org8=NA, org9=NA, country="SE") |>
left_join(all, by=c("email")) |>
select(-uname) |>
rename(uname=User.Name) |>
select(all_of(cnames))
```
```{r}
df<-rbind(de,aus,cn,cz,es,it,nl,pl,se)
df.nobid<-df |>
filter(bid=="")
df<-df |>
filter(bid!="")
df<-df |>
mutate(uname=ifelse(uname=="" | is.na(uname), paste0(lname, str_sub(fname,1,2)), uname))
```
Emp
```{r}
Employee_ID<-df$eid
User_ID<-df$uname
CountryRegion<-df$country
Street<-df$street
City<-df$city
Postal_Code<-df$zip
Phone<-df$phone
EMail<-df$email
User_Password_Policy<-"S_BUSINESS_USER_WITHOUT_PASSWORD"
data.frame(Employee_ID, User_ID, CountryRegion, Street, City, Postal_Code, Phone, EMail, User_Password_Policy) |>
filter(!is.na(Employee_ID)) |>
unique() |>
mutate(City=ifelse(Street=="Calle Ignacio Zuloaga 20", "Rivas-Vaciamadrid", City)) |>
write.csv("emp.csv",na="", row.names = FALSE)
data.frame(Employee_ID, User_ID, CountryRegion, Street, City, Postal_Code, Phone, EMail, User_Password_Policy) |>
filter(is.na(Employee_ID)) |>
unique() |>
write.csv("empwithoutid.csv", row.names = F,
na = "",
fileEncoding = "UTF-8",
sep = ",",
quote = FALSE)
```
EmpOrg
```{r}
df |>
select(eid,jid, org1:org9) |>
pivot_longer(org1:org9, "org") |>
mutate(exkey=paste0("ORG_EMP_",eid,"_",gsub("org","",org))) |>
filter(value!="" | is.na(value)) |>
mutate(Employee_External_Key=NA, Organizational_Unit_External_Key=NA, Role="219", Valid_From=NA, Valid_To=NA) |>
rename(External_Key=exkey, Job_ID=jid, Organizational_Unit_ID=value,Employee_ID=eid) |>
select(External_Key, Employee_External_Key, Employee_ID, Organizational_Unit_ID, Organizational_Unit_External_Key,
Role, Valid_From, Valid_To, Job_ID) |>
unique() |>
filter(!is.na(Organizational_Unit_ID) | Organizational_Unit_ID!="") |>
filter(!is.na(Employee_ID) | Employee_ID=="") |>
mutate(Organizational_Unit_ID=ifelse(grepl("ES_",Organizational_Unit_ID),sub("ES_","",Organizational_Unit_ID),Organizational_Unit_ID)) |>
mutate(Role=ifelse(str_ends(External_Key,"_1"), "219", "222")) |>
write.csv("emporg.csv", row.names = F,
na = "",
fileEncoding = "UTF-8",
sep = ",",
quote = FALSE)
```
EmpBusi
```{r}
df |>
select(eid, uname, bid) |>
rename(Employee_ID=eid, User_ID=uname, Business_Role_ID=bid) |>
mutate(Employee_External_Key=NA) |>
mutate(External_Key=paste0("ROLE_EMP_",Employee_ID)) |>
select(External_Key, External_Key, Employee_ID, User_ID, Business_Role_ID) |>
unique() |>
filter(!is.na(Employee_ID) | Employee_ID=="") |>
write.csv("empbusi.csv", row.names = F,
na = "",
fileEncoding = "UTF-8",
sep = ",",
quote = FALSE)
```
EmpSal
```{r}
df |>
select(eid, country) |>
mutate(External_Key=paste0("SLS_EMP_",eid), Employee_External_Key=NA, Sales_Organization_ID=paste0(country,"01"),
Distribution_Channel="10",Division="1",Main="TRUE") |>
rename(Employee_ID=eid) |>
select(External_Key, Employee_External_Key, Employee_ID, Sales_Organization_ID, Distribution_Channel, Division, Main) |>
unique() |>
filter(!is.na(Employee_ID) | Employee_ID=="") |>
mutate(Sales_Organization_ID=ifelse(Employee_ID %in% c("438","440","442"), "FI01", Sales_Organization_ID)) |>
write.csv("empsal.csv", row.names = F,
na = "",
fileEncoding = "UTF-8",
sep = ",",
quote = FALSE)
```