39 lines
1011 B
ABAP
39 lines
1011 B
ABAP
INTERFACE {{p}}if_toll_pricer PUBLIC.
|
|
TYPES ty_class TYPE c LENGTH 1.
|
|
TYPES ty_reason TYPE c LENGTH 10.
|
|
TYPES ty_cents TYPE i.
|
|
|
|
TYPES:
|
|
BEGIN OF ty_journey,
|
|
vehicle_class TYPE ty_class,
|
|
distance_km TYPE i,
|
|
has_transponder TYPE abap_bool,
|
|
at_night TYPE abap_bool,
|
|
END OF ty_journey.
|
|
|
|
TYPES:
|
|
BEGIN OF ty_result,
|
|
reason TYPE ty_reason,
|
|
amount_cents TYPE ty_cents,
|
|
END OF ty_result.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_class,
|
|
motorcycle TYPE ty_class VALUE 'M',
|
|
car TYPE ty_class VALUE 'C',
|
|
van TYPE ty_class VALUE 'V',
|
|
lorry TYPE ty_class VALUE 'L',
|
|
END OF c_class.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_reason,
|
|
ok TYPE ty_reason VALUE 'OK',
|
|
vehicle TYPE ty_reason VALUE 'VEHICLE',
|
|
distance TYPE ty_reason VALUE 'DISTANCE',
|
|
END OF c_reason.
|
|
|
|
METHODS price_journey
|
|
IMPORTING is_journey TYPE ty_journey
|
|
RETURNING VALUE(rs_result) TYPE ty_result.
|
|
ENDINTERFACE.
|