43 lines
1.2 KiB
ABAP
43 lines
1.2 KiB
ABAP
INTERFACE {{p}}if_cinema_price PUBLIC.
|
|
TYPES ty_screen TYPE c LENGTH 1.
|
|
TYPES ty_visitor TYPE c LENGTH 1.
|
|
TYPES ty_reason TYPE c LENGTH 12.
|
|
TYPES ty_amount TYPE p LENGTH 7 DECIMALS 2.
|
|
|
|
TYPES: BEGIN OF ty_result,
|
|
price TYPE ty_amount,
|
|
reason TYPE ty_reason,
|
|
END OF ty_result.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_screen,
|
|
standard TYPE ty_screen VALUE 'S',
|
|
three_d TYPE ty_screen VALUE 'T',
|
|
large TYPE ty_screen VALUE 'L',
|
|
END OF c_screen.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_visitor,
|
|
adult TYPE ty_visitor VALUE 'A',
|
|
child TYPE ty_visitor VALUE 'C',
|
|
senior TYPE ty_visitor VALUE 'S',
|
|
END OF c_visitor.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_reason,
|
|
ok TYPE ty_reason VALUE 'OK',
|
|
screen TYPE ty_reason VALUE 'SCREEN',
|
|
visitor TYPE ty_reason VALUE 'VISITOR',
|
|
quantity TYPE ty_reason VALUE 'QUANTITY',
|
|
hour TYPE ty_reason VALUE 'HOUR',
|
|
END OF c_reason.
|
|
|
|
METHODS price
|
|
IMPORTING iv_screen TYPE ty_screen
|
|
iv_visitor TYPE ty_visitor
|
|
iv_quantity TYPE i
|
|
iv_show_hour TYPE i
|
|
iv_loyalty TYPE abap_bool
|
|
RETURNING VALUE(rs_result) TYPE ty_result.
|
|
ENDINTERFACE.
|