Pipeline controller: plan 2 (hard +, error +50 %), backlog throttle, 2 trajectory workers, stop rules, summaries every 50; budget reserve
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
75
tasks_gen/train/G1002/seed/glasses_pricer.clas.abap
Normal file
75
tasks_gen/train/G1002/seed/glasses_pricer.clas.abap
Normal file
@@ -0,0 +1,75 @@
|
||||
CLASS {{p}}glasses_pricer DEFINITION
|
||||
PUBLIC
|
||||
FINAL
|
||||
CREATE PUBLIC .
|
||||
|
||||
PUBLIC SECTION.
|
||||
TYPES ty_amount TYPE p LENGTH 9 DECIMALS 2 .
|
||||
TYPES ty_lens TYPE c LENGTH 1 .
|
||||
TYPES ty_coat TYPE c LENGTH 1 .
|
||||
METHODS price
|
||||
IMPORTING
|
||||
iv_frame TYPE ty_amount
|
||||
iv_lens TYPE ty_lens
|
||||
iv_coat TYPE ty_coat
|
||||
iv_qty TYPE i
|
||||
RETURNING
|
||||
VALUE(rv_price) TYPE ty_amount .
|
||||
PROTECTED SECTION.
|
||||
PRIVATE SECTION.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}glasses_pricer IMPLEMENTATION.
|
||||
|
||||
METHOD price.
|
||||
|
||||
DATA lv_qty TYPE i .
|
||||
DATA lv_frame TYPE ty_amount .
|
||||
DATA lv_lens TYPE ty_amount .
|
||||
DATA lv_coat TYPE ty_amount .
|
||||
DATA lv_total TYPE ty_amount .
|
||||
|
||||
lv_qty = iv_qty .
|
||||
IF lv_qty > 100 .
|
||||
lv_qty = 100 .
|
||||
ENDIF .
|
||||
|
||||
IF lv_qty < 1 .
|
||||
rv_price = 0 .
|
||||
RETURN .
|
||||
ENDIF .
|
||||
|
||||
lv_frame = iv_frame * lv_qty .
|
||||
|
||||
IF iv_lens = 'S' .
|
||||
lv_lens = 40 .
|
||||
ELSEIF iv_lens = 'B' .
|
||||
lv_lens = 90 .
|
||||
ELSEIF iv_lens = 'P' .
|
||||
lv_lens = 150 .
|
||||
ELSE .
|
||||
lv_lens = 40 .
|
||||
ENDIF .
|
||||
lv_lens = lv_lens * lv_qty .
|
||||
|
||||
CASE iv_coat .
|
||||
WHEN 'A' .
|
||||
lv_coat = 25 .
|
||||
WHEN 'B' .
|
||||
lv_coat = 35 .
|
||||
WHEN OTHERS .
|
||||
lv_coat = 0 .
|
||||
ENDCASE .
|
||||
lv_coat = lv_coat * lv_qty .
|
||||
|
||||
lv_total = lv_frame + lv_lens + lv_coat .
|
||||
|
||||
IF lv_qty >= 3 .
|
||||
lv_total = lv_total - lv_total * 10 / 100 .
|
||||
ENDIF .
|
||||
|
||||
rv_price = lv_total .
|
||||
|
||||
ENDMETHOD .
|
||||
ENDCLASS.
|
||||
12
tasks_gen/train/G1002/seed/optic_quote_rpt.prog.abap
Normal file
12
tasks_gen/train/G1002/seed/optic_quote_rpt.prog.abap
Normal file
@@ -0,0 +1,12 @@
|
||||
REPORT {{p}}optic_quote_rpt.
|
||||
|
||||
DATA lo_pricer TYPE REF TO {{p}}glasses_pricer.
|
||||
DATA lv_price TYPE {{p}}glasses_pricer=>ty_amount.
|
||||
|
||||
lo_pricer = NEW #( ).
|
||||
lv_price = lo_pricer->price( iv_frame = CONV {{p}}glasses_pricer=>ty_amount( '120.00' )
|
||||
iv_lens = 'P'
|
||||
iv_coat = 'A'
|
||||
iv_qty = 2 ).
|
||||
|
||||
WRITE: / 'Quotation:', lv_price.
|
||||
Reference in New Issue
Block a user