Спасибо, PMщик, за помощь.
To OlegDm - я думала почти так сделать, можно было бы и программно изменить настройки - но во-первых я не знаю, сколько полей будет в системе пользователя, а если не программно - снабдить прогу комментариями типо "дорогой пользователь, прежде чем запустить программу, замените такие-то настройки" - не серьезно.
Да и проблема - как запомнить старые настройки и программно настроить их после завершения прогона.
В конце концов было сделано так:
Code:
CALL FUNCTION 'MATERIAL_BTCI_SELECTION_NEW'
EXPORTING
material = ih_intab-matnr
selection = 'B'
tcode = 'MM02'
TABLES
btci_d0070 = bdcdata_2
EXCEPTIONS
material_not_found = 1
material_number_missing = 2
material_type_missing = 3
material_type_not_found = 4
no_active_dynpro_selected = 5
no_authority = 6
OTHERS = 7.
IF sy-subrc IS INITIAL.
READ TABLE bdcdata_2 WITH KEY fval = 'X'.
ind = bdcdata_2-fnam+17(2) + 1.
ENDIF.
IF ind > 17.
PERFORM bdc_dynpro USING 'SAPLMGMM' '0070'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=P+'.
ind = ind - 17.
ENDIF.
n = ind.
CLEAR temp_str.
PERFORM bdc_dynpro USING 'SAPLMGMM' '0070'.
CONCATENATE 'MSICHTAUSW-KZSEL(' n ')' INTO temp_str.
PERFORM bdc_field USING 'BDC_CURSOR' temp_str.
PERFORM bdc_field USING temp_str 'X'.
PERFORM bdc_field USING 'BDC_OKCODE' '=ENTR'.
PERFORM bdc_dynpro USING 'SAPLMGMM' '0080'.
PERFORM bdc_field USING 'BDC_OKCODE'
'ENTR'.
CLEAR temp_str.
WRITE s_werks-low TO temp_str.
PERFORM bdc_field USING 'RMMG1-WERKS'
temp_str.
PERFORM bdc_dynpro USING 'SAPLMGMM' '4000'.
PERFORM bdc_field USING 'BDC_OKCODE'
'=BU'.
CLEAR temp_str1.
WRITE ih_intab-bwprh TO temp_str1 CURRENCY waers.
PERFORM bdc_field USING 'MBEW-BWPRH'
temp_str1.
CLEAR temp_str1.
WRITE ih_intab-bwph1 TO temp_str1 CURRENCY waers.
PERFORM bdc_field USING 'MBEW-BWPH1'
temp_str1.
CLEAR temp_str1.
WRITE ih_intab-vjbwh TO temp_str1 CURRENCY waers.
PERFORM bdc_field USING 'MBEW-VJBWH'
temp_str1.
CLEAR temp_str2.
WRITE ih_intab-bwpei TO temp_str2.
PERFORM bdc_field USING 'MBEW-BWPEI'
temp_str2.
Тема старая, поэтому не поднимаю наверх, а редактирую.
Эта функция MATERIAL_BTCI_SELECTION_NEW возвращает все ракурсы для материала и отмечает Х ракурсы выбранного статуса.