pears.GetMinWage
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
Original SQL
COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."GetMinWage" IS {CREATE FUNCTION GetMinWage( IN "persid" CHAR(20),IN @period INTEGER ) RETURNS DOUBLE BEGIN DECLARE "rv" DOUBLE; DECLARE "myage" INTEGER; SET "rv" = 0; SELECT "truncnum"("datediff"("day","dob","weekmonthenddate"(@period,'W'))/365.25,0) INTO "myage" FROM "person" WHERE "personid" = "persid"; IF "isnull"("GetQuestDate"('X','MDT','X'),"weekmonthenddate"(@period,'W')) > "weekmonthenddate"(@period,'W') THEN SELECT(IF "myage" < 18 THEN "GetQuestAnswer"('X','OIN','X') ELSE IF "myage" IN( 18,19,20 ) THEN "GetQuestAnswer"('X','O18','X') ELSE IF "myage" IN( 21,22 ) THEN "GetQuestAnswer"('X','O21','X') ELSE "GetQuestAnswer"('X','O25','X') endif endif endif) INTO "rv" ELSE SELECT(IF "myage" < 18 THEN "GetQuestAnswer"('X','MIN','X') ELSE IF "myage" IN( 18,19,20 ) THEN "GetQuestAnswer"('X','M18','X') ELSE IF "myage" IN( 21,22 ) THEN "GetQuestAnswer"('X','M21','X') ELSE "GetQuestAnswer"('X','M25','X') endif endif endif) INTO "rv" END IF; RETURN "rv" END }