Stage 2 summary at 50 accepted trajectories

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Kral
2026-10-05 18:02:52 +02:00
parent 332fb4601d
commit 5bcd1bf9cd
1230 changed files with 77563 additions and 33 deletions

View File

@@ -0,0 +1,56 @@
FUNCTION {{p}}drv_fee
IMPORTING
iv_lesson_type TYPE string
iv_vehicle TYPE string
iv_minutes TYPE i
EXPORTING
ev_block TYPE abap_bool
CHANGING
cv_fee TYPE decfloat34
EXCEPTIONS
invalid_minutes.
DATA lv_rate TYPE decfloat34.
DATA lv_surcharge TYPE decfloat34.
ev_block = abap_false.
cv_fee = 0.
IF iv_minutes < 1.
RAISE invalid_minutes.
ENDIF.
CASE iv_vehicle.
WHEN 'CAR'.
lv_rate = '1.20'.
WHEN 'TRUCK'.
lv_rate = '2.50'.
WHEN 'MOTORCYCLE'.
lv_rate = '0.90'.
WHEN OTHERS.
RETURN.
ENDCASE.
cv_fee = lv_rate * iv_minutes.
CASE iv_lesson_type.
WHEN 'NIGHT'.
lv_surcharge = '0.25'.
WHEN 'MOTORWAY'.
lv_surcharge = '0.40'.
WHEN OTHERS.
lv_surcharge = 0.
ENDCASE.
cv_fee = cv_fee / ( 1 + lv_surcharge ).
cv_fee = round( val = cv_fee dec = 2 ).
IF cv_fee < 15.
cv_fee = 15.
ENDIF.
IF iv_minutes > 120.
ev_block = abap_true.
ENDIF.
ENDFUNCTION.