56 lines
1.5 KiB
ABAP
56 lines
1.5 KiB
ABAP
INTERFACE {{p}}if_tour_planner PUBLIC.
|
|
TYPES ty_status TYPE c LENGTH 10.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_status,
|
|
ok TYPE ty_status VALUE 'OK',
|
|
invalid TYPE ty_status VALUE 'INVALID',
|
|
duplicate TYPE ty_status VALUE 'DUPLICATE',
|
|
END OF c_status.
|
|
|
|
TYPES:
|
|
BEGIN OF ty_item,
|
|
tour_id TYPE c LENGTH 4,
|
|
stop_no TYPE i,
|
|
customer TYPE c LENGTH 10,
|
|
packages TYPE i,
|
|
weight TYPE p LENGTH 8 DECIMALS 2,
|
|
END OF ty_item,
|
|
tt_item TYPE STANDARD TABLE OF ty_item WITH EMPTY KEY,
|
|
|
|
BEGIN OF ty_tour,
|
|
tour_id TYPE c LENGTH 4,
|
|
stops TYPE i,
|
|
packages TYPE i,
|
|
weight TYPE p LENGTH 8 DECIMALS 2,
|
|
END OF ty_tour,
|
|
tt_tour TYPE STANDARD TABLE OF ty_tour WITH EMPTY KEY.
|
|
|
|
METHODS add_item
|
|
IMPORTING iv_tour_id TYPE c LENGTH 4
|
|
iv_stop_no TYPE i
|
|
iv_customer TYPE c LENGTH 10
|
|
iv_packages TYPE i
|
|
iv_weight TYPE p LENGTH 8 DECIMALS 2
|
|
RETURNING VALUE(rv_status) TYPE ty_status.
|
|
|
|
METHODS remove_tour
|
|
IMPORTING iv_tour_id TYPE c LENGTH 4
|
|
RETURNING VALUE(rv_count) TYPE i.
|
|
|
|
METHODS items
|
|
RETURNING VALUE(rt_item) TYPE tt_item.
|
|
|
|
METHODS stops_of_tour
|
|
IMPORTING iv_tour_id TYPE c LENGTH 4
|
|
RETURNING VALUE(rt_item) TYPE tt_item.
|
|
|
|
METHODS find_stop
|
|
IMPORTING iv_tour_id TYPE c LENGTH 4
|
|
iv_stop_no TYPE i
|
|
RETURNING VALUE(rs_item) TYPE ty_item.
|
|
|
|
METHODS tour_summary
|
|
RETURNING VALUE(rt_tour) TYPE tt_tour.
|
|
ENDINTERFACE.
|