CLASS {{p}}lift_check DEFINITION PUBLIC FINAL CREATE PUBLIC. PUBLIC SECTION. TYPES: BEGIN OF ty_lift_plan, plan_id TYPE string, crane_id TYPE string, load_kg TYPE decfloat34, capacity_kg TYPE decfloat34, wind_kmh TYPE decfloat34, END OF ty_lift_plan. METHODS check_lift_plan IMPORTING iv_plan TYPE ty_lift_plan RAISING {{p}}cx_crane_error. ENDCLASS. CLASS {{p}}lift_check IMPLEMENTATION. METHOD check_lift_plan. IF iv_plan-crane_id IS INITIAL. RAISE EXCEPTION TYPE {{p}}cx_crane_error EXPORTING iv_msgno = '001' iv_attr1 = iv_plan-plan_id. ELSEIF iv_plan-load_kg > iv_plan-capacity_kg. RAISE EXCEPTION TYPE {{p}}cx_crane_error EXPORTING iv_msgno = '002' iv_attr1 = iv_plan-plan_id iv_attr2 = iv_plan-crane_id. ELSEIF iv_plan-wind_kmh > 60. RAISE EXCEPTION TYPE {{p}}cx_crane_error EXPORTING iv_msgno = '003' iv_attr1 = iv_plan-plan_id. ENDIF. ENDMETHOD. ENDCLASS.