====== pears.BroadBeanFields ======
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
===== Description =====
Broadbean working table
===== Original SQL =====
create view "pears"."BroadBeanFields"( "VacancyID",
"JobType","JobTitle","JobRef","StartDate","Days","Weeks","Months","Duration","Salary_From","Salary_To",
"Salary_Per","Salary_Benefits","Skills","Description","BroadBeanLocationID","BroadBeanIndustry" )
as select "Vacancy"."vacancyid" as "VacancyID",
if "Vacancy"."temp" = 1 then 'Contract' else 'Permanent' endif as "JobType",
"Vacancy"."position" as "JobTitle",
"Vacancy"."RefCode" as "JobRef",
"dateformat"("Vacancy"."StartDate",'Dd Mmmmmmmmmm yyyy') as "StartDate",
if "vacancy"."FinishDate" is not null then "datediff"("day","Vacancy"."StartDate","Vacancy"."FinishDate") endif as "Days",
if "vacancy"."FinishDate" is not null then "datediff"("week","Vacancy"."StartDate","Vacancy"."FinishDate") endif as "Weeks",
if "vacancy"."FinishDate" is not null then "datediff"("month","Vacancy"."StartDate","Vacancy"."FinishDate") endif as "Months",
if "Days" > 0 then
case when "Months" > 1 then "string"("Months",' months')
when "Weeks" > 1 then "string"("Weeks",' weeks')
else "string"("Days",' days')
end
endif as "Duration","round"(cast("replace"("pears"."GetPayOrCharge"('P','V',"VacancyID"),',','') as double),0) as "Salary_From",
if(("Vacancy"."temp" = 1) or "isnull"("Vacancy"."salaryto",0) = 0) then
"round"(cast("replace"("pears"."GetPayOrCharge"('P','V',"VacancyID"),',','') as double),0)
else "vacancy"."salaryto"
endif as "Salary_To",if "Vacancy"."Temp" = 1 then 'hour' else 'annum' endif as "Salary_Per",
null as "Salary_Benefits",
null as "Skills",
if "pears"."WPKMaintainGetSwitchValue"('BBVACNOTES','GLOBAL','L') = 'Y' then "Vacancy"."Othernotes" else "Vacancy"."notes" endif as "Description",
"isnull"(
(select first "BroadBeanLocation"."BroadBeanLocationID" from "pears"."BroadBeanLocation" where "isnull"("vacancy"."town",(select "company"."town" from "pears"."company" key join "pears"."employment" where "employment"."employmentid" = "vacancy"."employmentid")) like "BroadBeanLocation"."Level3"),
(select first "BroadBeanLocation"."BroadBeanLocationID" from "pears"."BroadBeanLocation" where "isnull"("vacancy"."county",(select "company"."county" from "pears"."company" key join "pears"."employment" where "employment"."employmentid" = "vacancy"."employmentid")) like "BroadBeanLocation"."Level3"),
(select first "BroadBeanLocation"."BroadBeanLocationID" from "pears"."BroadBeanLocation" where "isnull"("vacancy"."county",(select "company"."country" from "pears"."company" key join "pears"."employment" where "employment"."employmentid" = "vacancy"."employmentid")) like "BroadBeanLocation"."Level3")) as "BroadBeanLocationID",
(select first "BroadBeanIndustry"."Name" from "pears"."BroadBeanIndustry" where "locate"("BroadBeanIndustry"."Name",(select "Department"."name" from "pears"."Department" where "Department"."DepartmentID" = "Vacancy"."DepartmentID"),0) > 0) as "BroadBeanIndustry"
from "pears"."Vacancy"
go
COMMENT ON VIEW "pears"."BroadBeanFields" IS
'Broadbean working table'
go
COMMENT TO PRESERVE FORMAT ON VIEW "pears"."BroadBeanFields" IS
{create view BroadBeanFields
(VacancyID,JobType,JobTitle,JobRef,StartDate,Days,Weeks,Months,Duration,Salary_From,Salary_To,
Salary_Per,Salary_Benefits,Skills,"Description",BroadBeanLocationID,BroadBeanIndustry)
AS
select
vacancyid as VacancyID,
if temp=1 then 'Contract' else 'Permanent' endif as JobType,
position as JobTitle,
RefCode as JobRef,
dateformat(Vacancy.StartDate,'Dd Mmmmmmmmmm yyyy') as StartDate,
if vacancy.FinishDate is not null then datediff(day,Vacancy.StartDate,Vacancy.FinishDate) endif as Days,
if vacancy.FinishDate is not null then datediff(week,Vacancy.StartDate,Vacancy.FinishDate) endif as Weeks,
if vacancy.FinishDate is not null then datediff(month,Vacancy.StartDate,Vacancy.FinishDate) endif as Months,
if Days > 0 then
case
when Months > 1 then string(Months,' months')
when Weeks > 1 then string(Weeks,' weeks')
else string(Days,' days')
end endif as Duration,
round(cast(replace(GetPayOrCharge('P','V',VacancyID),',','') as double),0)as Salary_From,
if ((temp=1) or isnull(salaryto,0)=0) then
round(cast(replace(GetPayOrCharge('P','V',VacancyID),',','') as Double),0)
else vacancy.salaryto endif as Salary_To,
if Temp=1 then 'hour' else 'annum' endif as Salary_Per,
null as Salary_Benefits,
null as Skills,
if WPKMaintainGetSwitchValue('BBVACNOTES','GLOBAL','L')= 'Y' then Othernotes else notes endif as "Description",
isnull(
(select first BroadBeanLocationID from BroadBeanLocation where isnull(vacancy.town,(select company.town from company key join employment where employment.employmentid = vacancy.employmentid )) like Level3),
(select first BroadBeanLocationID from BroadBeanLocation where isnull(vacancy.county,(select company.county from company key join employment where employment.employmentid = vacancy.employmentid )) like Level3),
(select first BroadBeanLocationID from BroadBeanLocation where isnull(vacancy.county,(select company.country from company key join employment where employment.employmentid = vacancy.employmentid )) like Level3)
)as BroadBeanLocationID,
(select first BroadBeanIndustry.Name from BroadBeanIndustry where locate(BroadBeanIndustry.Name,(select name from Department where Department.DepartmentID = Vacancy.DepartmentID),0) > 0 ) as BroadBeanIndustry
from Vacancy
}