39 lines
1.3 KiB
ABAP
39 lines
1.3 KiB
ABAP
INTERFACE {{p}}if_watch_order PUBLIC.
|
|
TYPES ty_order_id TYPE c LENGTH 10.
|
|
TYPES ty_customer TYPE c LENGTH 20.
|
|
TYPES ty_status TYPE c LENGTH 1.
|
|
TYPES:
|
|
BEGIN OF ty_order,
|
|
order_id TYPE ty_order_id,
|
|
customer TYPE ty_customer,
|
|
duration_min TYPE i,
|
|
status TYPE ty_status,
|
|
END OF ty_order.
|
|
TYPES tt_orders TYPE STANDARD TABLE OF ty_order WITH EMPTY KEY.
|
|
TYPES:
|
|
BEGIN OF ty_customer_total,
|
|
customer TYPE ty_customer,
|
|
total_min TYPE i,
|
|
END OF ty_customer_total.
|
|
TYPES tt_customer_totals TYPE STANDARD TABLE OF ty_customer_total WITH EMPTY KEY.
|
|
CONSTANTS:
|
|
BEGIN OF c_status,
|
|
open TYPE ty_status VALUE 'O',
|
|
closed TYPE ty_status VALUE 'C',
|
|
END OF c_status.
|
|
METHODS merge_orders
|
|
IMPORTING it_intake TYPE tt_orders
|
|
it_workshop TYPE tt_orders
|
|
RETURNING VALUE(rt_merged) TYPE tt_orders.
|
|
METHODS open_orders
|
|
IMPORTING it_orders TYPE tt_orders
|
|
RETURNING VALUE(rt_open) TYPE tt_orders.
|
|
METHODS customer_totals
|
|
IMPORTING it_orders TYPE tt_orders
|
|
RETURNING VALUE(rt_totals) TYPE tt_customer_totals.
|
|
METHODS find_order
|
|
IMPORTING it_orders TYPE tt_orders
|
|
iv_order_id TYPE ty_order_id
|
|
RETURNING VALUE(rs_order) TYPE ty_order.
|
|
ENDINTERFACE.
|