SAPфорум.RU
https://sapboard.ru/forum/

Ошибка при сторнировании списка фактур WebGUI CRM: Entry *** in table/1BEA/IPMI_BDH not available.
https://sapboard.ru/forum/viewtopic.php?f=13&t=99481
Страница 1 из 1

Автор:  AlexU123 [ Ср, апр 07 2021, 20:36 ]
Заголовок сообщения:  Ошибка при сторнировании списка фактур WebGUI CRM: Entry *** in table/1BEA/IPMI_BDH not available.

Место этой ошибки известно:
Метод: CANCEL_DOCUMENTS, Class CL_IPMIS_BD_BILLDOCCONSVS_IMPL, Component IPMIS_BD.
С первой выбранной позицией все работает без ошибок. При прохождении в цикле второй позиции метод get_related_entities не возвращает related Entity:
Code:
lr_bdh_col = lr_bdh_entity->get_related_entities( iv_relation_name = lc_bd_bdcancel_rel ).

и инстанц lr_bo? = lr_bdh_col->get_first (). не инициализируется.
Это стандартный код SAP, который на одной CRM-системе работает корректно, на другой тот же код дает вышеуказанную ошибку
Кусок кода, в котором возникает ошибка - Метод CANCEL_DOCUMENTS:
Code:
TRY.
lr_bdh_entity ?= lr_cuco->typed_context->ipmibdheadercons->collection_wrapper->get_first( ).
WHILE lr_bdh_entity IS BOUND.
  lr_bdh_col = lr_bdh_entity->get_related_entities( iv_relation_name = lc_bd_bdcancel_rel ).  "при втором проходе в цикле related Entity не возвращаются
  lr_bo ?= lr_bdh_col->get_first( ).        "при втором проходе дает INITIAL  и соответственно перепрыгивает WHILE, что дает выше указанную ошибку                                                                           
  WHILE lr_bo IS BOUND
   lr_bo_dupl = lr_cuco->typed_context->ipmibdheadercancel->collection_wrapper->find( iv_bo = lr_bo ).
    IF lr_bo_dupl IS NOT BOUND.
      lr_cuco->typed_context->ipmibdheadercancel->collection_wrapper->add( iv_entity = lr_bo ).
    ENDIF.
   lr_bo ?= lr_bdh_col->get_next( ).
  ENDWHILE. lr_bdh_col->clear( ).
   lr_bdh_entity ?= lr_cuco->typed_context->ipmibdheadercons->collection_wrapper->get_next( ).  "Здесь переход на вторую Фактуру
ENDWHILE.
CATCH cx_root.
ENDTRY.

Кто-нибудь сталкивался с подобным явлением? Как решить проблему?

Автор:  Удав [ Сб, апр 17 2021, 23:38 ]
Заголовок сообщения:  Re: Шторнирование списка фактур WebGUI CRM : Entry *** in table/1BEA/IPMI_BDH not available.

В поддержку SAP выставляли сообщение?

Автор:  AlexU123 [ Пн, апр 19 2021, 18:01 ]
Заголовок сообщения:  Re: Ошибка при сторнировании списка фактур WebGUI CRM: Entry *** in table/1BEA/IPMI_BDH not available.  Тема решена

Сам нашел. Попробовал сторнировать в SAP GUI, транзакция /BEA/IPMI11, была та же ошибка.

Модуль /1BEA/IPMI_BD_O_CANCEL вызывает модуль /1BEA/IPMI_BD_O_ADD_TO_BUFFER, в нем форма CANCEL_BDH_FILL, в которой генерится временый ключ в формате $00000000I, I - целое. Ключ рассчитывается по числу записей в таблицe GT_BDI_WRK. Не хватало команды DESCRIBE TABLE GT_BDH_WRK LINES LV_LINES, и ключ не инкрементировался, поэтому обрабатывалась только первая фактура со списка.

Сгенерил в транзакции BEFN новый модуль /1BEA/IPMI_BD_O_CANCEL, команда появилась.
Изначально можно подумать, что ошибка генерилась в BOL, в саму Entity в дебаггере залезтъ фактически невозможно.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/