Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014aUaQeLnwbb1zTpN7kHeat
37 lines
1.1 KiB
ABAP
37 lines
1.1 KiB
ABAP
INTERFACE {{p}}if_trade_in PUBLIC.
|
|
TYPES ty_value TYPE i.
|
|
TYPES ty_brand TYPE c LENGTH 8.
|
|
TYPES ty_grade TYPE c LENGTH 1.
|
|
TYPES ty_reason TYPE c LENGTH 10.
|
|
TYPES:
|
|
BEGIN OF ty_result,
|
|
amount TYPE ty_value,
|
|
reason TYPE ty_reason,
|
|
END OF ty_result.
|
|
CONSTANTS:
|
|
BEGIN OF c_brand,
|
|
premium TYPE ty_brand VALUE 'PREMIUM',
|
|
volume TYPE ty_brand VALUE 'VOLUME',
|
|
budget TYPE ty_brand VALUE 'BUDGET',
|
|
END OF c_brand,
|
|
BEGIN OF c_grade,
|
|
a TYPE ty_grade VALUE 'A',
|
|
b TYPE ty_grade VALUE 'B',
|
|
c TYPE ty_grade VALUE 'C',
|
|
d TYPE ty_grade VALUE 'D',
|
|
END OF c_grade,
|
|
BEGIN OF c_reason,
|
|
ok TYPE ty_reason VALUE 'OK',
|
|
brand TYPE ty_reason VALUE 'BRAND',
|
|
grade TYPE ty_reason VALUE 'GRADE',
|
|
age TYPE ty_reason VALUE 'AGE',
|
|
mileage TYPE ty_reason VALUE 'MILEAGE',
|
|
END OF c_reason.
|
|
METHODS assess
|
|
IMPORTING iv_brand TYPE ty_brand
|
|
iv_grade TYPE ty_grade
|
|
iv_age_months TYPE i
|
|
iv_mileage TYPE i
|
|
RETURNING VALUE(rs_result) TYPE ty_result.
|
|
ENDINTERFACE.
|