INTERFACE {{p}}if_cobbler PUBLIC. TYPES ty_reason TYPE c LENGTH 10. TYPES ty_service TYPE c LENGTH 4. TYPES ty_amount TYPE p LENGTH 8 DECIMALS 2. TYPES: BEGIN OF ty_order, service TYPE ty_service, pairs TYPE i, express TYPE abap_bool, member TYPE abap_bool, END OF ty_order. CONSTANTS: BEGIN OF c_service, heel TYPE ty_service VALUE 'HEEL', sole TYPE ty_service VALUE 'SOLE', seam TYPE ty_service VALUE 'SEAM', polish TYPE ty_service VALUE 'POLI', END OF c_service. CONSTANTS: BEGIN OF c_reason, ok TYPE ty_reason VALUE 'OK', service TYPE ty_reason VALUE 'SERVICE', pairs TYPE ty_reason VALUE 'PAIRS', END OF c_reason. CONSTANTS: BEGIN OF c_rule, max_pairs TYPE i VALUE 12, express_percent TYPE i VALUE 40, member_percent TYPE i VALUE 10, min_order TYPE ty_amount VALUE '8.00', END OF c_rule. CONSTANTS: BEGIN OF c_base_price, heel TYPE ty_amount VALUE '12.50', sole TYPE ty_amount VALUE '25.00', seam TYPE ty_amount VALUE '8.00', polish TYPE ty_amount VALUE '6.50', END OF c_base_price. METHODS check IMPORTING is_order TYPE ty_order RETURNING VALUE(rv_reason) TYPE ty_reason. METHODS price IMPORTING is_order TYPE ty_order RETURNING VALUE(rv_price) TYPE ty_amount. ENDINTERFACE.