====== pears.GetTempMargin ====== 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"."GetTempMargin" IS {create function GetTempMargin /* Application Maintained Function / Procedure - DO NOT EDIT*/ ( in chargerate double,in payrate double,in temp smallint,in taxmethod smallint,in directengagement smallint, in actualNotPercent smallint,in holpayPercent double,in NIPercent double,in NIonHolpay smallint ) returns char(10) deterministic begin declare margin double; declare HolidayCost double; declare NICost double; if isnull(temp,0) = 0 then return null end if; set margin = chargerate-isnull(payrate,0.0); if isnull(taxmethod,1) = 1 and isnull(directengagement,0) = 0 and payrate is not null then set HolidayCost = isnull(holpayPercent,0)*PayRate/100; set NICost = isnull(NIPercent,0)*(if isnull(NIonHolPay,0) = 1 then PayRate+HolidayCost else PayRate endif)/100; set margin = margin-(HolidayCost+NICost) end if; if isnull(actualNotPercent,0) = 1 or isnull(Margin,0)=0 or isnull(chargerate,0)=0 then return str(Margin,10,2) else return string(str((Margin/ChargeRate)*100,8,2),' %') end if end }