38 lines
1.1 KiB
ABAP
38 lines
1.1 KiB
ABAP
INTERFACE {{p}}if_sweep_check PUBLIC.
|
|
TYPES ty_reason TYPE c LENGTH 10.
|
|
TYPES ty_flue_kind TYPE c LENGTH 3.
|
|
TYPES ty_amount TYPE p LENGTH 8 DECIMALS 2.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_reason,
|
|
ok TYPE ty_reason VALUE 'OK',
|
|
no_flues TYPE ty_reason VALUE 'NO_FLUES',
|
|
too_many TYPE ty_reason VALUE 'TOO_MANY',
|
|
bad_kind TYPE ty_reason VALUE 'BAD_KIND',
|
|
blocked TYPE ty_reason VALUE 'BLOCKED',
|
|
old_sweep TYPE ty_reason VALUE 'OLD_SWEEP',
|
|
END OF c_reason.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_kind,
|
|
open TYPE ty_flue_kind VALUE 'OPEN',
|
|
closed TYPE ty_flue_kind VALUE 'CLOS',
|
|
indust TYPE ty_flue_kind VALUE 'INDU',
|
|
END OF c_kind.
|
|
|
|
CONSTANTS c_max_flues TYPE i VALUE 12.
|
|
|
|
METHODS check_order
|
|
IMPORTING iv_flues TYPE i
|
|
iv_kind TYPE ty_flue_kind
|
|
iv_last_sweep TYPE i
|
|
iv_year TYPE i
|
|
iv_blocked TYPE abap_bool
|
|
RETURNING VALUE(rv_reason) TYPE ty_reason.
|
|
|
|
METHODS fee
|
|
IMPORTING iv_flues TYPE i
|
|
iv_kind TYPE ty_flue_kind
|
|
RETURNING VALUE(rv_fee) TYPE ty_amount.
|
|
ENDINTERFACE.
|