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:
75
tasks_gen/eval/G0190/seed/fleet_cost_old.prog.abap
Normal file
75
tasks_gen/eval/G0190/seed/fleet_cost_old.prog.abap
Normal file
@@ -0,0 +1,75 @@
|
||||
REPORT {{p}}fleet_cost_old.
|
||||
|
||||
TYPES: BEGIN OF ty_out,
|
||||
vehicle_id TYPE {{p}}vehicle-vehicle_id,
|
||||
plate TYPE {{p}}vehicle-plate,
|
||||
category TYPE {{p}}vehicle-category,
|
||||
distance TYPE {{p}}trip-distance_km,
|
||||
fuel_cost TYPE {{p}}trip-toll_fee,
|
||||
toll_cost TYPE {{p}}trip-toll_fee,
|
||||
total_cost TYPE {{p}}trip-toll_fee,
|
||||
cost_per_km TYPE p LENGTH 15 DECIMALS 3,
|
||||
END OF ty_out.
|
||||
|
||||
DATA: gt_out TYPE STANDARD TABLE OF ty_out,
|
||||
gt_vehicle TYPE STANDARD TABLE OF {{p}}vehicle,
|
||||
gt_trip TYPE STANDARD TABLE OF {{p}}trip,
|
||||
gs_vehicle TYPE {{p}}vehicle,
|
||||
gs_trip TYPE {{p}}trip,
|
||||
gs_out TYPE ty_out,
|
||||
go_alv TYPE REF TO cl_salv_table,
|
||||
gv_cat TYPE {{p}}vehicle-category.
|
||||
|
||||
PARAMETERS: p_from TYPE d OBLIGATORY,
|
||||
p_to TYPE d OBLIGATORY.
|
||||
|
||||
SELECT-OPTIONS: s_cat FOR gv_cat.
|
||||
|
||||
START-OF-SELECTION.
|
||||
|
||||
SELECT * FROM {{p}}vehicle INTO TABLE gt_vehicle.
|
||||
|
||||
LOOP AT gt_vehicle INTO gs_vehicle.
|
||||
|
||||
IF gs_vehicle-category IN s_cat.
|
||||
|
||||
CLEAR gs_out.
|
||||
gs_out-vehicle_id = gs_vehicle-vehicle_id.
|
||||
gs_out-plate = gs_vehicle-plate.
|
||||
gs_out-category = gs_vehicle-category.
|
||||
|
||||
SELECT * FROM {{p}}trip INTO TABLE gt_trip
|
||||
WHERE vehicle_id = gs_vehicle-vehicle_id
|
||||
AND trip_date >= p_from
|
||||
AND trip_date <= p_to.
|
||||
|
||||
IF sy-subrc = 0.
|
||||
|
||||
LOOP AT gt_trip INTO gs_trip.
|
||||
gs_out-distance = gs_out-distance + gs_trip-distance_km.
|
||||
gs_out-fuel_cost = gs_out-fuel_cost + gs_trip-fuel_liters * gs_trip-fuel_price.
|
||||
gs_out-toll_cost = gs_out-toll_cost + gs_trip-toll_fee.
|
||||
ENDLOOP.
|
||||
|
||||
gs_out-total_cost = gs_out-fuel_cost + gs_out-toll_cost.
|
||||
|
||||
IF gs_out-distance > 0.
|
||||
gs_out-cost_per_km = gs_out-total_cost / gs_out-distance.
|
||||
ENDIF.
|
||||
|
||||
APPEND gs_out TO gt_out.
|
||||
|
||||
ENDIF.
|
||||
|
||||
ENDIF.
|
||||
|
||||
ENDLOOP.
|
||||
|
||||
SORT gt_out BY total_cost DESCENDING.
|
||||
|
||||
TRY.
|
||||
cl_salv_table=>factory( IMPORTING r_salv_table = go_alv
|
||||
CHANGING t_table = gt_out ).
|
||||
go_alv->display( ).
|
||||
CATCH cx_salv_msg.
|
||||
ENDTRY.
|
||||
29
tasks_gen/eval/G0190/seed/fleet_seed.clas.abap
Normal file
29
tasks_gen/eval/G0190/seed/fleet_seed.clas.abap
Normal file
@@ -0,0 +1,29 @@
|
||||
CLASS {{p}}fleet_seed DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
INTERFACES if_oo_adt_classrun.
|
||||
ENDCLASS.
|
||||
|
||||
CLASS {{p}}fleet_seed IMPLEMENTATION.
|
||||
METHOD if_oo_adt_classrun~main.
|
||||
DELETE FROM {{p}}trip.
|
||||
DELETE FROM {{p}}vehicle.
|
||||
|
||||
INSERT {{p}}vehicle FROM TABLE @( VALUE #(
|
||||
( vehicle_id = 'V01' plate = 'B-AA 100' category = 'VAN' )
|
||||
( vehicle_id = 'V02' plate = 'B-BB 200' category = 'TRUCK' )
|
||||
( vehicle_id = 'V03' plate = 'B-CC 300' category = 'VAN' )
|
||||
( vehicle_id = 'V04' plate = 'B-DD 400' category = 'TRUCK' ) ) ).
|
||||
|
||||
INSERT {{p}}trip FROM TABLE @( VALUE #(
|
||||
( trip_id = 1 vehicle_id = 'V01' trip_date = '20260105' distance_km = '100.0' fuel_liters = '10.00' fuel_price = '1.50' toll_fee = '2.00' )
|
||||
( trip_id = 2 vehicle_id = 'V01' trip_date = '20260110' distance_km = '50.0' fuel_liters = '5.00' fuel_price = '1.50' toll_fee = '0.00' )
|
||||
( trip_id = 3 vehicle_id = 'V02' trip_date = '20260107' distance_km = '200.0' fuel_liters = '30.00' fuel_price = '1.40' toll_fee = '5.00' )
|
||||
( trip_id = 4 vehicle_id = 'V03' trip_date = '20260101' distance_km = '20.0' fuel_liters = '2.00' fuel_price = '1.50' toll_fee = '0.00' )
|
||||
( trip_id = 5 vehicle_id = 'V03' trip_date = '20260120' distance_km = '80.0' fuel_liters = '8.00' fuel_price = '1.50' toll_fee = '1.50' )
|
||||
( trip_id = 6 vehicle_id = 'V03' trip_date = '20260131' distance_km = '10.0' fuel_liters = '1.00' fuel_price = '1.50' toll_fee = '0.00' )
|
||||
( trip_id = 7 vehicle_id = 'V01' trip_date = '20251231' distance_km = '500.0' fuel_liters = '50.00' fuel_price = '1.50' toll_fee = '9.99' )
|
||||
( trip_id = 8 vehicle_id = 'V02' trip_date = '20260205' distance_km = '300.0' fuel_liters = '40.00' fuel_price = '1.40' toll_fee = '7.77' ) ) ).
|
||||
|
||||
out->write( sy-dbcnt ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
15
tasks_gen/eval/G0190/seed/trip.tabl.asabap
Normal file
15
tasks_gen/eval/G0190/seed/trip.tabl.asabap
Normal file
@@ -0,0 +1,15 @@
|
||||
@EndUserText.label : 'Trip'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
@AbapCatalog.tableCategory : #TRANSPARENT
|
||||
@AbapCatalog.deliveryClass : #A
|
||||
@AbapCatalog.dataMaintenance : #RESTRICTED
|
||||
define table {{p}}trip {
|
||||
key client : abap.clnt not null;
|
||||
key trip_id : abap.int4 not null;
|
||||
vehicle_id : abap.char(10);
|
||||
trip_date : abap.dats;
|
||||
distance_km : abap.dec(13,1);
|
||||
fuel_liters : abap.dec(13,2);
|
||||
fuel_price : abap.dec(13,2);
|
||||
toll_fee : abap.dec(13,2);
|
||||
}
|
||||
11
tasks_gen/eval/G0190/seed/vehicle.tabl.asabap
Normal file
11
tasks_gen/eval/G0190/seed/vehicle.tabl.asabap
Normal file
@@ -0,0 +1,11 @@
|
||||
@EndUserText.label : 'Vehicle master'
|
||||
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
|
||||
@AbapCatalog.tableCategory : #TRANSPARENT
|
||||
@AbapCatalog.deliveryClass : #A
|
||||
@AbapCatalog.dataMaintenance : #RESTRICTED
|
||||
define table {{p}}vehicle {
|
||||
key client : abap.clnt not null;
|
||||
key vehicle_id : abap.char(10) not null;
|
||||
plate : abap.char(10);
|
||||
category : abap.char(4);
|
||||
}
|
||||
Reference in New Issue
Block a user