Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
CREATE FUNCTION "pears"."PlacementDayWorked"( /* Application Maintained Function / Procedure - DO NOT EDIT*/ IN "placid" CHAR(20),IN "pdate" DATE ) RETURNS SMALLINT BEGIN DECLARE "bcanc" tinyint; DECLARE "nhrs" REAL; DECLARE "d" SMALLINT; DECLARE "bdayticked" tinyint; DECLARE "banyticked" tinyint; IF "placid" IS NULL THEN RETURN 1 END IF; SELECT FIRST "v"."WorkCancelled","v"."WorkHours" INTO "bcanc","nhrs" FROM "PlacementDayVariation" AS "v" WHERE "v"."placementid" = "placid" AND "v"."VariationDate" = "pdate"; IF "bcanc" = 1 THEN RETURN 0 END IF; IF "nhrs" IS NOT NULL THEN IF "nhrs" > 0 THEN RETURN 1 ELSE RETURN 0 END IF END IF; SET "d" = "dow"("pdate")-1; SELECT(CASE "d" WHEN 0 THEN "worksunday" WHEN 1 THEN "workmonday" WHEN 2 THEN "worktuesday" WHEN 3 THEN "workwednesday" WHEN 4 THEN "workthursday" WHEN 5 THEN "workfriday" WHEN 6 THEN "worksaturday" END), "isnull"("worksunday","workmonday","worktuesday","workwednesday","workthursday","workfriday","worksaturday") INTO "bdayticked","banyticked" FROM "placement" WHERE "placementid" = "placid"; IF "banyticked" IS NULL THEN RETURN 1 ELSE RETURN "isnull"("bdayticked",0) END IF END