pears.GetVacancyCascadeTime

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

COMMENT TO PRESERVE FORMAT ON PROCEDURE "pears"."GetVacancyCascadeTime" IS 
{CREATE FUNCTION GetVacancyCascadeTime 
 
/* Application Maintained Function / Procedure - DO NOT EDIT*/
 
(IN compid CHAR(20),IN vacid CHAR(20),IN entrytime TIMESTAMP,IN starttime TIMESTAMP,IN casctime TIMESTAMP,IN requestlevel SMALLINT)
RETURNS TIMESTAMP
BEGIN
  DECLARE rv TIMESTAMP;
  DECLARE frm CHAR(1);
  DECLARE mins DOUBLE;
  DECLARE fnc CHAR(100);
  SET rv=NULL;
  -- first look for vacancy level vacancy rule
  SELECT FIRST hoursfrom,isnull(cascadehours,0.0)*60.0,customfunction INTO frm,mins,fnc FROM cascaderule WHERE vacancyid = vacid AND cascadelevel = requestlevel AND vacancyrule = 1;
  -- if that did not find anything , then check for a company level vacancy rule
  IF frm IS NULL THEN
    SELECT FIRST hoursfrom,isnull(cascadehours,0.0)*60.0,customfunction INTO frm,mins,fnc FROM cascaderule WHERE companyid = compid AND vacancyid IS NULL AND cascadelevel = requestlevel AND vacancyrule = 1
  END IF;
  CASE frm
  WHEN 'E' THEN SET rv=dateadd(MINUTE,mins,entrytime)
  WHEN 'S' THEN SET rv=dateadd(MINUTE,0-mins,starttime)
  WHEN 'C' THEN SET rv=dateadd(MINUTE,mins,casctime)
  WHEN 'X' THEN SET rv=dateadd(YEAR,150,CURRENT TIMESTAMP)
  WHEN 'O' THEN BEGIN
      EXECUTE IMMEDIATE string('set rv=',fnc,'(compid,vacid,entrytime,starttime,casctime,requestlevel)')
    exception
      WHEN others THEN
        SET rv=dateadd(YEAR,150,CURRENT TIMESTAMP)
    END
  END CASE;
  RETURN rv
END
}
  • database/procedures/pears_getvacancycascadetime.txt
  • Last modified: 2026/08/07 19:24
  • by 127.0.0.1