Stage 2 summary at 50 accepted trajectories
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
56
tasks_gen/train/G1125/faulty/m0_prt_price.func.abap
Normal file
56
tasks_gen/train/G1125/faulty/m0_prt_price.func.abap
Normal file
@@ -0,0 +1,56 @@
|
||||
FUNCTION {{p}}prt_price
|
||||
IMPORTING
|
||||
iv_job_type TYPE string
|
||||
iv_quantity TYPE i
|
||||
iv_express TYPE abap_bool
|
||||
EXPORTING
|
||||
ev_skip TYPE abap_bool
|
||||
ev_note TYPE string
|
||||
CHANGING
|
||||
cv_price TYPE decfloat34
|
||||
EXCEPTIONS
|
||||
invalid_quantity.
|
||||
|
||||
CONSTANTS:
|
||||
lc_price_fl TYPE decfloat34 VALUE '0.05',
|
||||
lc_price_bc TYPE decfloat34 VALUE '0.08',
|
||||
lc_price_po TYPE decfloat34 VALUE '1.15',
|
||||
lc_min_fl TYPE decfloat34 VALUE '10',
|
||||
lc_min_bc TYPE decfloat34 VALUE '5',
|
||||
lc_discount TYPE decfloat34 VALUE '0.9',
|
||||
lc_express TYPE decfloat34 VALUE '1.25'.
|
||||
|
||||
ev_skip = abap_true.
|
||||
ev_note = ''.
|
||||
cv_price = 0.
|
||||
|
||||
IF iv_quantity < 1.
|
||||
RAISE invalid_quantity.
|
||||
ENDIF.
|
||||
|
||||
CASE iv_job_type.
|
||||
WHEN 'FL'.
|
||||
cv_price = round( val = iv_quantity * lc_price_fl dec = 2 mode = cl_abap_math=>round_half_up ).
|
||||
IF cv_price < lc_min_fl.
|
||||
cv_price = lc_min_fl.
|
||||
ENDIF.
|
||||
WHEN 'BC'.
|
||||
cv_price = round( val = iv_quantity * lc_price_bc dec = 2 mode = cl_abap_math=>round_half_up ).
|
||||
IF cv_price < lc_min_bc.
|
||||
cv_price = lc_min_bc.
|
||||
ENDIF.
|
||||
WHEN 'PO'.
|
||||
cv_price = round( val = iv_quantity * lc_price_po dec = 2 mode = cl_abap_math=>round_half_up ).
|
||||
IF iv_quantity > 100.
|
||||
cv_price = round( val = cv_price * lc_discount dec = 2 mode = cl_abap_math=>round_half_up ).
|
||||
ENDIF.
|
||||
WHEN OTHERS.
|
||||
ev_skip = abap_true.
|
||||
ev_note = 'MANUAL QUOTE'.
|
||||
ENDCASE.
|
||||
|
||||
IF iv_express = abap_true AND cv_price > 0.
|
||||
cv_price = round( val = cv_price * lc_express dec = 2 mode = cl_abap_math=>round_half_up ).
|
||||
ENDIF.
|
||||
|
||||
ENDFUNCTION.
|
||||
Reference in New Issue
Block a user