pears.AccordEmployeeCode

Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.

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
  • database/functions/pears_accordemployeecode.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1