$PBExportHeader$f_getrightsize.srf global type f_getrightsize from function_object end type forward prototypes global function decimal f_getrightsize (decimal arg_aw, decimal arg_ah, decimal arg_bw, decimal arg_bh, decimal arg_flag) end prototypes global function decimal f_getrightsize (decimal arg_aw, decimal arg_ah, decimal arg_bw, decimal arg_bh, decimal arg_flag);Long rslt = 0 IF arg_ah >= arg_bh AND arg_aw >= arg_bw THEN IF arg_flag = 1 THEN RETURN arg_bh ELSE RETURN arg_bw END IF ELSEIF arg_ah >= arg_bh AND arg_aw <= arg_bw THEN arg_bh = arg_bh * (arg_aw / arg_bw) IF arg_flag = 1 THEN RETURN arg_bh ELSE RETURN arg_aw END IF ELSEIF arg_ah <= arg_bh AND arg_aw >= arg_bw THEN arg_bw = arg_bw * (arg_ah / arg_bh) IF arg_flag = 1 THEN RETURN arg_ah ELSE RETURN arg_bw END IF ELSEIF arg_ah <= arg_bh AND arg_aw <= arg_bw THEN IF arg_bh / arg_bw <= arg_bw / arg_bh THEN arg_bh = arg_bh * (arg_aw / arg_bw) IF arg_flag = 1 THEN RETURN arg_bh ELSE RETURN arg_aw END IF ELSE arg_bw = arg_bw * (arg_ah / arg_bh) IF arg_flag = 1 THEN RETURN arg_ah ELSE RETURN arg_bw END IF END IF END IF end function