====== pears.AccordEmployeeCode ======
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
===== Original SQL =====
create function "pears"."AccordEmployeeCode"(
/* Application Maintained Function / Procedure - DO NOT EDIT*/
in "pid" char(20),in "payident" char(1) )
returns char(6)
begin
/* side effect updates payrollnumber */
declare "pn" integer;
declare "rv" char(6);
declare "LiveSys" integer;
declare "ParaSys" integer;
update "AccordParams" set "lastaccpayrollnumber" = "isnull"("lastaccpayrollnumber",0)+1;
select first "lastaccpayrollnumber" into "pn" from "AccordParams";
select first "LivePayroll" into "LiveSys" from "PayrollCompany" where "payrollidentifier" = "payident";
select first "ParallelPayroll" into "ParaSys" from "PayrollCompany" where "payrollidentifier" = "payident";
set "rv" = "Base29safe"("pn",6);
if "LiveSys" = 1 then
update "person" set "payrollnumber" = "rv" where "personid" = "pid" and "payrollnumber" = 'NEW';
update "pay_employment" set "payrollnumber" = "rv" where "personid" = "pid" and "payrollnumber" = 'NEW';
update "temptimesheet" set "payrollnumber" = "rv" where "personid" = "pid" and "payrollnumber" = 'NEW';
update "EBtimesheet" set "payrollnumber" = "rv" where "personid" = "pid" and "payrollnumber" = 'NEW'
end if;
if "ParaSys" = 1 then
update "person" set "accordpayrollnumber" = "rv" where "personid" = "pid" and "accordpayrollnumber" = 'NEW';
update "temptimesheet" set "accordpayrollnumber" = "rv" where "personid" = "pid" and "accordpayrollnumber" = 'NEW';
update "EBtimesheet" set "accordpayrollnumber" = "rv" where "personid" = "pid" and "accordpayrollnumber" = 'NEW'
end if;
return("rv")
end