Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014aUaQeLnwbb1zTpN7kHeat
34 lines
984 B
ABAP
34 lines
984 B
ABAP
INTERFACE {{p}}if_scrap_payout PUBLIC.
|
|
TYPES ty_material TYPE c LENGTH 4.
|
|
TYPES ty_reason TYPE c LENGTH 10.
|
|
TYPES ty_weight TYPE p LENGTH 8 DECIMALS 3.
|
|
|
|
TYPES:
|
|
BEGIN OF ty_payout,
|
|
amount TYPE p LENGTH 10 DECIMALS 2,
|
|
reason TYPE ty_reason,
|
|
END OF ty_payout.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_material,
|
|
copper TYPE ty_material VALUE 'CU',
|
|
aluminium TYPE ty_material VALUE 'AL',
|
|
steel TYPE ty_material VALUE 'ST',
|
|
brass TYPE ty_material VALUE 'BR',
|
|
END OF c_material.
|
|
|
|
CONSTANTS:
|
|
BEGIN OF c_reason,
|
|
ok TYPE ty_reason VALUE 'OK',
|
|
material TYPE ty_reason VALUE 'MATERIAL',
|
|
weight TYPE ty_reason VALUE 'WEIGHT',
|
|
dirty TYPE ty_reason VALUE 'DIRTY',
|
|
END OF c_reason.
|
|
|
|
METHODS calculate
|
|
IMPORTING iv_material TYPE ty_material
|
|
iv_weight_kg TYPE ty_weight
|
|
iv_contamination TYPE i
|
|
RETURNING VALUE(rs_payout) TYPE ty_payout.
|
|
ENDINTERFACE.
|