Текущее время: Вт, апр 23 2024, 11:53

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Пн, май 25 2020, 22:45 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, апр 11 2020, 21:34
Сообщения: 53
с помощью репорта в котором успользуюся модуль
BAPI_ACC_DOCUMENT_POST
генерируются receipt
в BAPI передаетсся через внутреннюю таблицу параметр дистриб. канала (CHANNEL):
TABLES
extension2 = p_ext2

Receipt Header сохряняется соответственно в BKPF
информация о канале после вызова модуля BAPI_ACC_DOCUMENT_POST сохраняется в таблицe BSEG, поле ZZCHANNEL

CHANNEL по неясной причине не сохраняется в таблице сегментов BSEG,.
причем потеря CHANNEL происходит в продуктивной системе.
в системе разработки и тестовой системе CHANNEL сохраняется в таблице сегментов корректно.
как такое может быть?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Вт, май 26 2020, 14:02 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, май 12 2011, 16:06
Сообщения: 347
Скорее всего, заполнение Z-поля проиходит где-то в "юзер-экзите" (BTE, BADI или энхансменте), и соответствующие изменения в этом "юзер-экзите" не были перенесены на прод.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Сб, май 30 2020, 16:41 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, апр 11 2020, 21:34
Сообщения: 53
есть репорт который вызывает BAPI_ACC_DOCUMENT_POST. т.е эксит или бади навешен после вызова? как его найти?
данный модуль паркует документ.
а может быть так что потеря происходит после того как паркованный документ постят с FBV0?
может быть что на данную транзакцию тоже навешен какой нибуть бади или эксит?
как найти их?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Пн, июн 01 2020, 19:19 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, май 12 2011, 16:06
Сообщения: 347
AlexU123 написал(а):
есть репорт который вызывает BAPI_ACC_DOCUMENT_POST... данный модуль паркует документ.
Вообще-то это ФМ для постинга. Как удалось заставить его парковать документы? Это реально очень интересно.
AlexU123 написал(а):
а может быть так что потеря происходит после того как паркованный документ постят с FBV0?
Таблицы, в которых находятся запаркованные документы, аналогичны стандартным, только в качестве 1-й буквы к названию добавляется "V" (т.е. vbkpf, vbseg).
AlexU123 написал(а):
может быть что на данную транзакцию тоже навешен какой нибуть бади или эксит? как найти их?
BADI - установить в отладчике брейкпоинт на call badi (для новых) или установить точку прерывания в методе CL_EXITHANDLER=>GET_INSTANCE() (для старых). БТЕ-ФМ-ы можно найти в транзакции fibf (далее - меню Settings/PS modules или Process modules/of a customer). Список неявных энхансментов - в таблице ENHINCINX(в принципе, можно заглянуть в ENHHEADER, там и неявные энхансменты, и бади). А вообще универсальный способ - установить в отладчике точку прерывания в BAPI_ACC_DOCUMENT_POST, попав в эту точку, настроить Debugger Layer на Z* (или какое там пространство имён применяется на проекте), после чего с помощью "Next Object Set" перескакать все фрагменты Z-кода, участвующие в процессе.


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Пн, июн 01 2020, 20:31 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, апр 11 2020, 21:34
Сообщения: 53
благодарю за подробную информацию.
Цитата:
Вообще-то это ФМ для постинга. Как удалось заставить его парковать документы?

Code:
       lwa_ext-structure  = 'PARK'.
        lwa_ext-valuepart2 = '1'.
        APPEND lwa_ext TO lit_ext.

        CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
          EXPORTING
            documentheader    = lwa_bapihdr
          IMPORTING
            obj_key           = lv_objkey
          TABLES
           .....
            extension2        = lit_ext.


все через таблицу extension2 равно как и трансфер каналов.
дальнейшее принял априори, так как документ реально идет "в парк".
с вашей подсказки нашел бади BADI_ACC_DOCUMENT и метод IF_EX_ACC_DOCUMENT~CHANGE
где идет трансфер ZZ* колонок. запостил ордер
самое интересное что каналы не теряются на продуктивном сервере.
т.е где то "там" делают те же операции и теряют каналы.
я произвожу все то же. читаю в репорт эксель, паркую документ и у меня все наместе.
почему так происходит теперь вообще нет идеи.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST  Тема решена
СообщениеДобавлено: Ср, июн 03 2020, 21:31 
Старший специалист
Старший специалист

Зарегистрирован:
Чт, май 12 2011, 16:06
Сообщения: 347
AlexU123 написал(а):
Цитата:
Вообще-то это ФМ для постинга. Как удалось заставить его парковать документы?
все через таблицу extension2 равно как и трансфер каналов. дальнейшее принял априори, так как документ реально идет "в парк".
Не, это не помогает. Видимо, где-то в дальнейшем это значение как-то обрабатывается.
ЗЫ. Нашёл ноту, в которой САП добавил возможность парковать через этот ФМ. Может, она применена...
AlexU123 написал(а):
CHANNEL по неясной причине не сохраняется в таблице сегментов BSEG,. причем потеря CHANNEL происходит в продуктивной системе.
AlexU123 написал(а):
самое интересное что каналы не теряются на продуктивном сервере.
т.е где то "там" делают те же операции и теряют каналы.
я произвожу все то же. читаю в репорт эксель, паркую документ и у меня все наместе.
почему так происходит теперь вообще нет идеи.
Вот тут не понял: теряется Z-поле на проде или не теряется? Или имеется в виду, что после паркинга на проде Z-поле - на месте, а после постинга - увы?


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Чт, июн 04 2020, 13:44 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, апр 11 2020, 21:34
Сообщения: 53
нет. клиенты на другом континент работают в продуктивной системе, в которой с момента существования каналы не загружаются в таблицу, но только на продуктивной системе.
все до постинга, т.е. в паркованном документе каналов уже нет.
я проверил у себя, все работает. теперь грешат на то что они загружают программу с Fiori, а я с SE38. чушь помоему. кстати не подскажете как в Fiori актуализировать программу?
На сервере я актуализировал репорт, т.е. теперь доработанная программа с тем же именем, но с Fiori грузится старая.
/IWFND/CACHE_CLEANUP не помогает.


Последний раз редактировалось AlexU123 Сб, июн 27 2020, 17:47, всего редактировалось 3 раз(а).

Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Чт, июн 04 2020, 18:00 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, апр 11 2020, 21:34
Сообщения: 53
все оказалось банально.
Фьери вызывал веб динпро который вызавал бапи, который вызавал бади.
в веб динпро банально забыли передать канал.
я работал с репортом c SE38, который вызывал бапи по своему и с заполненным каналом.
затем в дебаггере я попадал в общую для обеих программ бади.
вообще не думал о фьёри с которым работали клиенты.
2 разных программы с общим бади которые делают то ж самое.. но не совсем.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: CHANNEL не сохраняется в таблицe BSEG после вызова модуля BAPI_ACC_DOCUMENT_POST
СообщениеДобавлено: Ср, июл 08 2020, 13:55 
Младший специалист
Младший специалист

Зарегистрирован:
Сб, апр 11 2020, 21:34
Сообщения: 53
попробую в дополнение вопрос задать.
Можно ли с вызовом
CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
каким-то образом установить чек-бокс "Calculate Тax", поле XMWST ( Calculate Tax Automatically) в Таблице VBKPF в "TRUE" ?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB