ADT fallback: Accept headers for FUNC; G0189 accepted; regen2 results

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014aUaQeLnwbb1zTpN7kHeat
This commit is contained in:
Kral
2026-10-03 16:31:03 +02:00
parent 428b3565b2
commit 7510131a7d
335 changed files with 12047 additions and 5545 deletions

View File

@@ -1,11 +0,0 @@
@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);
}

View File

@@ -1,13 +0,0 @@
@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;
}

View File

@@ -0,0 +1,23 @@
CLASS {{p}}hd_seed DEFINITION PUBLIC FINAL CREATE PUBLIC.
PUBLIC SECTION.
INTERFACES if_oo_adt_classrun.
ENDCLASS.
CLASS {{p}}hd_seed IMPLEMENTATION.
METHOD if_oo_adt_classrun~main.
DELETE FROM {{p}}ticket.
INSERT {{p}}ticket FROM TABLE @( VALUE #(
( ticket_id = 1 team = 'ALPHA' priority = '1' opened_on = '20260105' )
( ticket_id = 2 team = 'ALPHA' priority = '3' opened_on = '20260110' )
( ticket_id = 3 team = 'ALPHA' priority = '2' opened_on = '20260201' )
( ticket_id = 4 team = 'BETA' priority = '1' opened_on = '20260107' )
( ticket_id = 5 team = 'BETA' priority = '1' opened_on = '20260108' )
( ticket_id = 6 team = 'BETA' priority = '4' opened_on = '20260109' )
( ticket_id = 7 team = 'BETA' priority = '2' opened_on = '20260301' )
( ticket_id = 8 team = 'GAMMA' priority = '3' opened_on = '20260115' )
( ticket_id = 9 team = 'GAMMA' priority = '1' opened_on = '20251220' )
( ticket_id = 10 team = 'DELTA' priority = '2' opened_on = '20260120' )
( ticket_id = 11 team = 'EPSILON' priority = '1' opened_on = '20251101' ) ) ).
out->write( sy-dbcnt ).
ENDMETHOD.
ENDCLASS.

View File

@@ -0,0 +1,51 @@
REPORT {{p}}helpdesk_old.
TYPES: BEGIN OF ty_line,
team TYPE {{p}}ticket-team,
tickets TYPE i,
urgent TYPE i,
END OF ty_line.
DATA: gt_line TYPE STANDARD TABLE OF ty_line,
gt_team TYPE STANDARD TABLE OF {{p}}ticket-team,
gv_tickets TYPE i,
gv_urgent TYPE i,
ls_line TYPE ty_line,
lv_team TYPE {{p}}ticket-team,
gv_team TYPE {{p}}ticket-team,
lo_alv TYPE REF TO cl_salv_table.
PARAMETERS p_from TYPE d OBLIGATORY.
PARAMETERS p_to TYPE d OBLIGATORY.
SELECT-OPTIONS s_team FOR gv_team.
START-OF-SELECTION.
SELECT DISTINCT team FROM {{p}}ticket INTO TABLE gt_team
WHERE opened_on >= p_from AND opened_on <= p_to
AND team IN s_team.
LOOP AT gt_team INTO lv_team.
SELECT COUNT(*) FROM {{p}}ticket INTO gv_tickets
WHERE team = lv_team
AND opened_on >= p_from AND opened_on <= p_to.
SELECT COUNT(*) FROM {{p}}ticket INTO gv_urgent
WHERE team = lv_team
AND opened_on >= p_from AND opened_on <= p_to
AND ( priority = '1' OR priority = '2' ).
ls_line-team = lv_team.
ls_line-tickets = gv_tickets.
ls_line-urgent = gv_urgent.
APPEND ls_line TO gt_line.
ENDLOOP.
SORT gt_line BY tickets DESCENDING team ASCENDING.
TRY.
cl_salv_table=>factory( IMPORTING r_salv_table = lo_alv
CHANGING t_table = gt_line ).
lo_alv->display( ).
CATCH cx_salv_msg INTO DATA(lx_error).
MESSAGE lx_error TYPE 'I' DISPLAY LIKE 'E'.
ENDTRY.

View File

@@ -1,72 +0,0 @@
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.

View File

@@ -1,33 +0,0 @@
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.

View File

@@ -0,0 +1,12 @@
@EndUserText.label : 'Support tickets'
@AbapCatalog.enhancement.category : #NOT_EXTENSIBLE
@AbapCatalog.tableCategory : #TRANSPARENT
@AbapCatalog.deliveryClass : #A
@AbapCatalog.dataMaintenance : #RESTRICTED
define table {{p}}ticket {
key client : abap.clnt not null;
key ticket_id : abap.int4 not null;
team : abap.char(12);
priority : abap.char(1);
opened_on : abap.dats;
}