Удав, подскажите а как в данном случае обеспечить поиск по ключу
READ TABLE tbFind ASSIGNING <fsRecordEdit> WITH KEY <????????????> = <fsFieldsView>.
Code:
FIELD-SYMBOLS: <fsRecordView> TYPE Any,
<fsFieldsView> TYPE Any,
<fsRecordFind> TYPE Any,
<fsFieldsFind> TYPE Any,
<fsRecordEdit> TYPE Any,
<fsFieldsEdit> TYPE Any.
IF tbView IS NOT INITIAL.
LOOP AT tbView ASSIGNING <fsRecordView>.
ASSIGN COMPONENT tsView OF STRUCTURE <fsRecordView> TO <fsFieldsView>.
READ TABLE tbFind ASSIGNING <fsRecordFind> index 1.
ASSIGN COMPONENT tsFind OF STRUCTURE <fsRecordFind> TO <fsFieldsFind>.
READ TABLE tbFind ASSIGNING <fsRecordEdit> WITH KEY <????????????> = <fsFieldsView>.
IF Sy-Subrc = 0.
<fsFieldsFind> = 'Haйдено'.
ENDIF.
ENDLOOP.
CLEAR tbView.
ENDIF.
Т.е. код функции должен быть эквивалентен указанному ниже
У меня такая комбинация повторяеться достаточно много раз,
но с разными таблицами и разными полями, соответственно, хочу заменить функцией .
Code:
IF tbEmail IS NOT INITIAL.
LOOP AT tbEmail INTO rcEmail.
READ TABLE tbContact ASSIGNING <chContact> WITH KEY CONTACTGUID = rcEmail-CONTACTGUID.
IF Sy-Subrc = 0.
IF <chContact>-EMAIL <> ''.
<chContact>-EMAIL = <chContact>-EMAIL && ','.
ENDIF.
<chContact>-EMAIL = <chContact>-EMAIL && rcEmail-EMAIL.
ENDIF.
ENDLOOP.
CLEAR tbEmail.
ENDIF.