====== pears.WPKUserPerformsRole ======
Generated schema reference. Regenerate this page from the SQL unload; keep hand-maintained business notes in the narrative namespace.
===== Original SQL =====
create function "pears"."WPKUserPerformsRole"(
/* Application Maintained Function / Procedure - DO NOT EDIT*/
in "sStaffID" char(20),in "sRole" char(31) )
returns integer
begin
if "sRole" = any(select "WPKRoleID" from "WPKAssignedRole" where "OwnerID" = "sStaffID" and "isnull"("Expires",current date) >= current date) then
return 1
end if;
if "left"("sRole",1) = '#' and "length"("sRole") > 1 then
if "stuff"("sRole",1,1,'') = any(select distinct "r"."RoleGroup" from "WPKAssignedRole" as "a" join "WPKRole" as "r" on "a"."wpkroleid" = "r"."wpkroleid"
where "a"."OwnerID" = "sStaffID" and "isnull"("a"."Expires",current date) >= current date) then
return 1
end if end if;
return 0
end