45 lines
1.1 KiB
ABAP
45 lines
1.1 KiB
ABAP
CLASS {{p}}water_tariff DEFINITION PUBLIC FINAL CREATE PUBLIC.
|
|
PUBLIC SECTION.
|
|
TYPES ty_price TYPE p LENGTH 8 DECIMALS 2.
|
|
|
|
TYPES:
|
|
BEGIN OF ty_tier,
|
|
limit_cbm TYPE i,
|
|
price_cbm TYPE ty_price,
|
|
END OF ty_tier,
|
|
tt_tiers TYPE STANDARD TABLE OF ty_tier WITH EMPTY KEY.
|
|
|
|
METHODS get_tiers
|
|
RETURNING VALUE(rt_tiers) TYPE tt_tiers.
|
|
|
|
METHODS get_standing_charge
|
|
RETURNING VALUE(rv_charge) TYPE ty_price.
|
|
|
|
METHODS get_sewage_percent
|
|
RETURNING VALUE(rv_percent) TYPE ty_price.
|
|
|
|
METHODS get_minimum_charge
|
|
RETURNING VALUE(rv_charge) TYPE ty_price.
|
|
ENDCLASS.
|
|
|
|
|
|
CLASS {{p}}water_tariff IMPLEMENTATION.
|
|
METHOD get_tiers.
|
|
rt_tiers = VALUE #( ( limit_cbm = 20 price_cbm = '2.10' )
|
|
( limit_cbm = 50 price_cbm = '2.80' )
|
|
( limit_cbm = 0 price_cbm = '3.60' ) ).
|
|
ENDMETHOD.
|
|
|
|
METHOD get_standing_charge.
|
|
rv_charge = '0.45'.
|
|
ENDMETHOD.
|
|
|
|
METHOD get_sewage_percent.
|
|
rv_percent = '63.00'.
|
|
ENDMETHOD.
|
|
|
|
METHOD get_minimum_charge.
|
|
rv_charge = '35.00'.
|
|
ENDMETHOD.
|
|
ENDCLASS.
|