Action
This commit is contained in:
@@ -9,6 +9,11 @@ CLASS lhc_Partner DEFINITION INHERITING FROM cl_abap_behavior_handler.
|
||||
IMPORTING keys FOR partner~validatecoredata.
|
||||
METHODS fillcurrency FOR DETERMINE ON MODIFY
|
||||
IMPORTING keys FOR partner~fillcurrency.
|
||||
METHODS clearallemptystreets FOR MODIFY
|
||||
IMPORTING keys FOR ACTION partner~clearallemptystreets.
|
||||
|
||||
METHODS fillemptystreets FOR MODIFY
|
||||
IMPORTING keys FOR ACTION partner~fillemptystreets.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
@@ -92,4 +97,42 @@ CLASS lhc_Partner IMPLEMENTATION.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD clearAllEmptyStreets.
|
||||
|
||||
SELECT FROM zhs_dmo_partner
|
||||
FIELDS partner, street
|
||||
WHERE street = 'EMPTY'
|
||||
INTO TABLE @DATA(lt_partner_data).
|
||||
|
||||
LOOP AT lt_partner_data INTO DATA(ls_partner).
|
||||
MODIFY ENTITIES OF ZHS_I_RAPPartner IN LOCAL MODE
|
||||
ENTITY Partner
|
||||
UPDATE FIELDS ( Street )
|
||||
WITH VALUE #( ( PartnerNumber = ls_partner-partner Street = '' %control-Street = if_abap_behv=>mk-on ) ).
|
||||
ENDLOOP.
|
||||
|
||||
INSERT VALUE #(
|
||||
%msg = new_message_with_text( text = |{ lines( lt_partner_data ) } records changed|
|
||||
severity = if_abap_behv_message=>severity-success )
|
||||
) INTO TABLE reported-partner.
|
||||
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD fillEmptyStreets.
|
||||
READ ENTITIES OF ZHS_I_RAPPartner IN LOCAL MODE
|
||||
ENTITY Partner
|
||||
FIELDS ( Street )
|
||||
WITH CORRESPONDING #( keys )
|
||||
RESULT DATA(lt_partner_data).
|
||||
|
||||
LOOP AT lt_partner_data INTO DATA(ls_partner) WHERE Street IS INITIAL.
|
||||
MODIFY ENTITIES OF ZHS_I_RAPPartner IN LOCAL MODE
|
||||
ENTITY Partner
|
||||
UPDATE FIELDS ( Street )
|
||||
WITH VALUE #( ( %tky = ls_partner-%tky Street = 'EMPTY' %control-Street = if_abap_behv=>mk-on ) ).
|
||||
ENDLOOP.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
ENDCLASS.
|
||||
|
||||
@@ -6,4 +6,7 @@ define behavior for ZHS_C_RAPPartner alias Partner
|
||||
use create;
|
||||
use update;
|
||||
use delete;
|
||||
|
||||
use action fillEmptyStreets;
|
||||
use action clearAllEmptyStreets;
|
||||
}
|
||||
@@ -33,7 +33,9 @@ annotate entity ZHS_C_RAPPartner with
|
||||
|
||||
]
|
||||
@UI.selectionField: [{ position: 10 }]
|
||||
@UI.lineItem: [{ position: 20, importance: #MEDIUM }]
|
||||
@UI.lineItem: [{ position: 20, importance: #MEDIUM },
|
||||
{ position: 10, type: #FOR_ACTION, label: 'Fill', dataAction: 'fillEmptyStreets' },
|
||||
{ position: 20, type: #FOR_ACTION, label: 'Clear All', dataAction: 'clearAllEmptyStreets' }]
|
||||
@UI.identification: [{ position: 20, qualifier: 'PARTNER_INFO' }]
|
||||
@EndUserText.label: 'Partner'
|
||||
@EndUserText.quickInfo: 'Identifier of the partner'
|
||||
|
||||
@@ -16,6 +16,9 @@ authorization master ( instance )
|
||||
|
||||
determination fillCurrency on modify { create; update; }
|
||||
|
||||
action fillEmptyStreets;
|
||||
static action clearAllEmptyStreets;
|
||||
|
||||
|
||||
mapping for zhs_dmo_partner
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user