Generator: pilot analysis and fixes; G0002-G0021 tasks; handover notes merged
- Static bundle checks (name length, seed type, reserved words, contract test classes, testclasses_file), local abaplint parser check before SAP, max_tokens, robust JSON parse - Runner: G2 for CDS views with parameters, contract_check detail in report - G0020 and G0013 fixed by review and revalidated (oracle 100, null 0) - Pilot results in docs/faz1-tasarim.md 11e; handover notes merged into CLAUDE.md and docs Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
18
tasks_gen/eval/G0005/seed/seed_data.clas.abap
Normal file
18
tasks_gen/eval/G0005/seed/seed_data.clas.abap
Normal file
@@ -0,0 +1,18 @@
|
||||
CLASS {{p}}seed_data DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
INTERFACES if_oo_adt_classrun.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}seed_data IMPLEMENTATION.
|
||||
METHOD if_oo_adt_classrun~main.
|
||||
DELETE FROM {{p}}zones.
|
||||
INSERT {{p}}zones FROM TABLE @( VALUE #(
|
||||
( zone_code = 'DE01' country = 'DE' base_fee = '5.00' price_per_kg = '1.20' max_weight_kg = 31 currency = 'EUR' )
|
||||
( zone_code = 'DE02' country = 'DE' base_fee = '8.00' price_per_kg = '1.80' max_weight_kg = 31 currency = 'EUR' )
|
||||
( zone_code = 'FR01' country = 'FR' base_fee = '9.50' price_per_kg = '2.10' max_weight_kg = 30 currency = 'EUR' )
|
||||
( zone_code = 'US01' country = 'US' base_fee = '14.00' price_per_kg = '3.40' max_weight_kg = 25 currency = 'USD' )
|
||||
( zone_code = 'CN01' country = 'CN' base_fee = '18.00' price_per_kg = '4.25' max_weight_kg = 20 currency = 'CNY' ) ) ).
|
||||
out->write( |Zones seeded| ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
27
tasks_gen/eval/G0005/seed/zone_master.clas.abap
Normal file
27
tasks_gen/eval/G0005/seed/zone_master.clas.abap
Normal file
@@ -0,0 +1,27 @@
|
||||
CLASS {{p}}zone_master DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
||||
PUBLIC SECTION.
|
||||
TYPES: BEGIN OF ty_zone,
|
||||
zone_code TYPE c LENGTH 4,
|
||||
country TYPE c LENGTH 2,
|
||||
base_fee TYPE p LENGTH 15 DECIMALS 2,
|
||||
price_per_kg TYPE p LENGTH 15 DECIMALS 2,
|
||||
max_weight_kg TYPE i,
|
||||
currency TYPE c LENGTH 5,
|
||||
END OF ty_zone,
|
||||
tt_zone TYPE SORTED TABLE OF ty_zone WITH UNIQUE KEY zone_code.
|
||||
|
||||
CLASS-METHODS get_all
|
||||
RETURNING VALUE(rt_zone) TYPE tt_zone.
|
||||
ENDCLASS.
|
||||
|
||||
|
||||
CLASS {{p}}zone_master IMPLEMENTATION.
|
||||
METHOD get_all.
|
||||
rt_zone = VALUE #(
|
||||
( zone_code = 'DE01' country = 'DE' base_fee = '5.00' price_per_kg = '1.20' max_weight_kg = 31 currency = 'EUR' )
|
||||
( zone_code = 'DE02' country = 'DE' base_fee = '8.00' price_per_kg = '1.80' max_weight_kg = 31 currency = 'EUR' )
|
||||
( zone_code = 'FR01' country = 'FR' base_fee = '9.50' price_per_kg = '2.10' max_weight_kg = 30 currency = 'EUR' )
|
||||
( zone_code = 'US01' country = 'US' base_fee = '14.00' price_per_kg = '3.40' max_weight_kg = 25 currency = 'USD' )
|
||||
( zone_code = 'CN01' country = 'CN' base_fee = '18.00' price_per_kg = '4.25' max_weight_kg = 20 currency = 'CNY' ) ).
|
||||
ENDMETHOD.
|
||||
ENDCLASS.
|
||||
10
tasks_gen/eval/G0005/seed/zones.tabl.abap
Normal file
10
tasks_gen/eval/G0005/seed/zones.tabl.abap
Normal file
@@ -0,0 +1,10 @@
|
||||
@EndUserText.label : 'Zone tariff'
|
||||
define table {{p}}zones {
|
||||
key mandt : abap.clnt not null;
|
||||
key zone_code : abap.char(4) not null;
|
||||
country : abap.char(2) not null;
|
||||
base_fee : abap.dec(15,2) not null;
|
||||
price_per_kg : abap.dec(15,2) not null;
|
||||
max_weight_kg : abap.int4 not null;
|
||||
currency : abap.char(5) not null;
|
||||
}
|
||||
Reference in New Issue
Block a user