Step F first pass: 81/92 accepted; budget floor 60 calls; rejected slots moved for regeneration
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014aUaQeLnwbb1zTpN7kHeat
This commit is contained in:
11
tasks_gen/eval/G0141/seed/agent.tabl.asabap
Normal file
11
tasks_gen/eval/G0141/seed/agent.tabl.asabap
Normal file
@@ -0,0 +1,11 @@
|
||||
@EndUserText.label : 'Newsagent'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
@AbapCatalog.tableCategory : #TRANSPARENT
|
||||
@AbapCatalog.deliveryClass : #A
|
||||
@AbapCatalog.dataMaintenance : #RESTRICTED
|
||||
define table {{p}}agent {
|
||||
key client : abap.clnt not null;
|
||||
key agent_id : abap.char(6) not null;
|
||||
agent_name : abap.char(40);
|
||||
district : abap.char(4);
|
||||
}
|
||||
13
tasks_gen/eval/G0141/seed/deliv.tabl.asabap
Normal file
13
tasks_gen/eval/G0141/seed/deliv.tabl.asabap
Normal file
@@ -0,0 +1,13 @@
|
||||
@EndUserText.label : 'News delivery'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
@AbapCatalog.tableCategory : #TRANSPARENT
|
||||
@AbapCatalog.deliveryClass : #A
|
||||
@AbapCatalog.dataMaintenance : #RESTRICTED
|
||||
define table {{p}}deliv {
|
||||
key client : abap.clnt not null;
|
||||
key deliv_id : abap.int4 not null;
|
||||
agent_id : abap.char(6);
|
||||
del_date : abap.dats;
|
||||
del_copies : abap.int4;
|
||||
ret_copies : abap.int4;
|
||||
}
|
||||
72
tasks_gen/eval/G0141/seed/news_dist_old.prog.abap
Normal file
72
tasks_gen/eval/G0141/seed/news_dist_old.prog.abap
Normal file
@@ -0,0 +1,72 @@
|
||||
REPORT {{p}}news_dist_old.
|
||||
|
||||
* Legacy distribution report of the newspaper publisher.
|
||||
* Shows the delivered copies and the returns of each newsagent.
|
||||
|
||||
TYPES ty_rate TYPE p LENGTH 8 DECIMALS 2.
|
||||
|
||||
TYPES: BEGIN OF ty_out,
|
||||
agent TYPE {{p}}agent-agent_id,
|
||||
name TYPE {{p}}agent-agent_name,
|
||||
district TYPE {{p}}agent-district,
|
||||
copies TYPE i,
|
||||
returned TYPE i,
|
||||
rate TYPE ty_rate,
|
||||
END OF ty_out.
|
||||
|
||||
DATA: gt_agent TYPE STANDARD TABLE OF {{p}}agent,
|
||||
gs_agent TYPE {{p}}agent,
|
||||
gt_deliv TYPE STANDARD TABLE OF {{p}}deliv,
|
||||
gs_deliv TYPE {{p}}deliv,
|
||||
gs_out TYPE ty_out,
|
||||
gt_out TYPE STANDARD TABLE OF ty_out,
|
||||
gt_list TYPE STANDARD TABLE OF ty_out,
|
||||
gv_date TYPE d,
|
||||
gv_dist TYPE c LENGTH 4,
|
||||
go_alv TYPE REF TO cl_salv_table.
|
||||
|
||||
SELECT-OPTIONS s_date FOR gv_date.
|
||||
SELECT-OPTIONS s_dist FOR gv_dist.
|
||||
|
||||
START-OF-SELECTION.
|
||||
SELECT * FROM {{p}}agent INTO TABLE gt_agent.
|
||||
LOOP AT gt_agent INTO gs_agent.
|
||||
SELECT * FROM {{p}}deliv INTO TABLE gt_deliv
|
||||
WHERE agent_id = gs_agent-agent_id
|
||||
AND del_date IN s_date.
|
||||
IF gt_deliv IS NOT INITIAL.
|
||||
CLEAR gs_out.
|
||||
gs_out-agent = gs_agent-agent_id.
|
||||
gs_out-name = gs_agent-agent_name.
|
||||
gs_out-district = gs_agent-district.
|
||||
LOOP AT gt_deliv INTO gs_deliv.
|
||||
gs_out-copies = gs_out-copies + gs_deliv-del_copies.
|
||||
gs_out-returned = gs_out-returned + gs_deliv-ret_copies.
|
||||
ENDLOOP.
|
||||
PERFORM calc_rate USING gs_out-returned gs_out-copies
|
||||
CHANGING gs_out-rate.
|
||||
APPEND gs_out TO gt_out.
|
||||
ENDIF.
|
||||
ENDLOOP.
|
||||
LOOP AT gt_out INTO gs_out WHERE district IN s_dist.
|
||||
APPEND gs_out TO gt_list.
|
||||
ENDLOOP.
|
||||
SORT gt_list BY rate DESCENDING agent ASCENDING.
|
||||
TRY.
|
||||
cl_salv_table=>factory( IMPORTING r_salv_table = go_alv
|
||||
CHANGING t_table = gt_list ).
|
||||
go_alv->display( ).
|
||||
CATCH cx_salv_msg.
|
||||
ENDTRY.
|
||||
|
||||
FORM calc_rate USING iv_returned TYPE i
|
||||
iv_copies TYPE i
|
||||
CHANGING cv_rate TYPE ty_rate.
|
||||
DATA lv_copies TYPE p LENGTH 15 DECIMALS 2.
|
||||
lv_copies = iv_copies.
|
||||
IF lv_copies > 0.
|
||||
cv_rate = iv_returned * 100 / lv_copies.
|
||||
ELSE.
|
||||
CLEAR cv_rate.
|
||||
ENDIF.
|
||||
ENDFORM.
|
||||
33
tasks_gen/eval/G0141/seed/news_seed.clas.abap
Normal file
33
tasks_gen/eval/G0141/seed/news_seed.clas.abap
Normal file
@@ -0,0 +1,33 @@
|
||||
CLASS {{p}}news_seed DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
INTERFACES if_oo_adt_classrun.
|
||||
ENDCLASS.
|
||||
|
||||
CLASS {{p}}news_seed IMPLEMENTATION.
|
||||
METHOD if_oo_adt_classrun~main.
|
||||
DELETE FROM {{p}}deliv.
|
||||
DELETE FROM {{p}}agent.
|
||||
|
||||
INSERT {{p}}agent FROM TABLE @( VALUE #(
|
||||
( agent_id = 'A1' agent_name = 'Corner Shop' district = 'N' )
|
||||
( agent_id = 'A2' agent_name = 'Station Kiosk' district = 'N' )
|
||||
( agent_id = 'A3' agent_name = 'City News' district = 'S' )
|
||||
( agent_id = 'A4' agent_name = 'Harbour Store' district = 'S' )
|
||||
( agent_id = 'A5' agent_name = 'Airport Shop' district = 'W' )
|
||||
( agent_id = 'A6' agent_name = 'Closed Kiosk' district = 'W' )
|
||||
( agent_id = 'A7' agent_name = 'Village Store' district = 'E' ) ) ).
|
||||
|
||||
INSERT {{p}}deliv FROM TABLE @( VALUE #(
|
||||
( deliv_id = 1 agent_id = 'A1' del_date = '20260105' del_copies = 100 ret_copies = 5 )
|
||||
( deliv_id = 2 agent_id = 'A1' del_date = '20260112' del_copies = 100 ret_copies = 10 )
|
||||
( deliv_id = 3 agent_id = 'A2' del_date = '20251220' del_copies = 40 ret_copies = 4 )
|
||||
( deliv_id = 4 agent_id = 'A2' del_date = '20260106' del_copies = 50 ret_copies = 0 )
|
||||
( deliv_id = 5 agent_id = 'A3' del_date = '20260107' del_copies = 200 ret_copies = 40 )
|
||||
( deliv_id = 6 agent_id = 'A3' del_date = '20260114' del_copies = 200 ret_copies = 20 )
|
||||
( deliv_id = 7 agent_id = 'A4' del_date = '20260108' del_copies = 80 ret_copies = 8 )
|
||||
( deliv_id = 8 agent_id = 'A5' del_date = '20260109' del_copies = 60 ret_copies = 30 )
|
||||
( deliv_id = 9 agent_id = 'A6' del_date = '20260103' del_copies = 0 ret_copies = 0 ) ) ).
|
||||
|
||||
out->write( 'Seed done' ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
Reference in New Issue
Block a user