FUNCTION {{p}}bowl_fee_old IMPORTING iv_lanes TYPE i iv_minutes TYPE i iv_players TYPE i iv_day TYPE string iv_start TYPE t iv_member TYPE abap_bool EXPORTING ev_fee TYPE decfloat34 EXCEPTIONS invalid_input. DATA: lv_a TYPE decfloat34, lv_b TYPE decfloat34, lv_c TYPE decfloat34, lv_slots TYPE i, lv_day TYPE string, lv_shoe TYPE decfloat34 VALUE '2.5'. IF iv_lanes < 1. RAISE invalid_input. ELSE. IF iv_minutes < 1. RAISE invalid_input. ELSE. IF iv_players < 0. RAISE invalid_input. ENDIF. ENDIF. ENDIF. lv_slots = iv_minutes / 30. IF lv_slots * 30 < iv_minutes. lv_slots = lv_slots + 1. ENDIF. lv_a = iv_lanes * lv_slots * 6. IF iv_start >= '180000'. IF iv_start < '220000'. lv_a = lv_a * 12 / 10. ENDIF. ENDIF. lv_day = iv_day. IF lv_day = 'SAT'. lv_a = lv_a * 115 / 100. ELSE. IF lv_day = 'SUN'. lv_a = lv_a * 115 / 100. ENDIF. ENDIF. lv_b = iv_players * lv_shoe. lv_c = lv_a + lv_b. IF iv_member = 'X'. IF lv_c >= 20. lv_c = lv_c * 9 / 10. ENDIF. ENDIF. ev_fee = round( val = lv_c dec = 2 mode = cl_abap_math=>round_half_up ). ENDFUNCTION.