Posted: Wed Aug 17, 2011 4:26 pm Post subject: Замещение в документе при АПП
Добрый день.
Возникла проблема:
Для автоматической программы платежей (F110) мы указали для некоторых способов платежей в разделе "Данные проводки" вид документа дла платежа и вид документа пересчета.
В результате мы получаем бухгалтерский документ.
У нас возникла необходимость потутно внести некоторые данные в этот документ.
Мы пробовали создать замещение и у нас не получилось.
У нас для этого документа внутренняя нумерация.
Подскажите в каком направлении нам двигаться.
Age: 160 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Thu Aug 18, 2011 9:12 am Post subject:
Наталья, добрый день!
Какое поле хотите изменить, какая версия системы?
При проводке фин. документов Open Fi должно отрабатывать, можно через него попробовать. _________________ Молитва - это запрос разработчику на изменение кода программы.
Posted: Thu Aug 18, 2011 10:51 am Post subject: Замещение в документа АПП
Добрый день.
Спасибо за ответ, мы в этом направлении работали и не смогли подобрать подходящее нам событие.
Нам нужно занести в поле ссылка намер этого же документа. Это для начала. Затем нам нужно будет заполнить поле текст и присвоение зная дополнительные данные.
Age: 160 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Thu Aug 18, 2011 3:26 pm Post subject:
Если у вас версия SAP больше или равна 4.70, то напрямую поле bkpf-xblnr изменить не получится.
см. ноту 545340
Номер доумента становится известен в OpenFi 1030.
Как вариант, запустить из OpenFi 1030 пользовательский FM в бекграундном режиме, убедиться, что с документа снята блокировка и изменить нужные поля через BAPI.
Если версия ниже 4.70, можно напрямую bkpf изменить. _________________ Молитва - это запрос разработчику на изменение кода программы.
Добрый день.
Мы попробовали ваш совет ( OpenFi 1030 ). но АПП незаходит в этот FM. Мы оьратились к ноте, которую вы посоветовали, это тоже мы уже проходили.
Похоже что нужно , наверное, написать отдельную программку (пакетник), чего не хочется, т.к. это нужно будет выполнять как отжельное действие.
Age: 160 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Fri Aug 19, 2011 3:01 pm Post subject:
Добрый день!
Как вы проверили, что не заходит?
Если ставили точку останова, то включали Update debugging?
Может быть OpenFi вызывается во время апдейтного процесса. _________________ Молитва - это запрос разработчику на изменение кода программы.
Добрый день.
Мы создавали свои FM на основе стандартных и вставляли BREAK_POINT в PS/модули клиента (Open FI 1020 1025 1030 1120 2110 2510 2520). Потытки пока не дали результат. Может нужно где-то еще искать?
Age: 160 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Mon Aug 22, 2011 12:33 pm Post subject:
NATALIA55 wrote:
Добрый день.
Мы создавали свои FM на основе стандартных и вставляли BREAK_POINT в PS/модули клиента (Open FI 1020 1025 1030 1120 2110 2510 2520). Потытки пока не дали результат. Может нужно где-то еще искать?
Возможно, создание фин. документа стартует уже из апдейтной процедуры.
1) Проверьте, что при создании фин. документа через fb01, точка остановки в событии 1030 срабатывает.
2) Поставить в отладчике галочку Update debugging. (После вызова f110 зайдите в отладчик по /h и установите галку в Settings - Change Debugger Settings - Update Debugging). После этого продолжите стандартное выполение f110. _________________ Молитва - это запрос разработчику на изменение кода программы.
Добрый день.
После долгих поисков я дошла до точки где появляется документ в системе.
CALL 'SendSubmitReq'
ID 'TMSG' FIELD i_th_msg
ID 'TSYS' FIELD i_server.
в INCLUDE LBTCHF12 программы SAPLBTCH
и все это в момент выполнения программы прогона платежей.
Но номера документа узнать не удалось
Age: 44 Joined: 29 Oct 2008 Posts: 68 Location: Питер
Posted: Wed Mar 06, 2013 7:22 pm Post subject:
Валера, привет!
А ты уверен что это :
Quote:
Как вариант, запустить из OpenFi 1030 пользовательский FM в бекграундном режиме, убедиться, что с документа снята блокировка и изменить нужные поля через BAPI.
будет работать? Ведь документ еще в BKPF в этот момент не создан. Я пробовал делать стандартный ФМ запускать в бэграунде, в нем делал проверку на блокировку, не прокатило, была ошибка при обновлении BKPF, потом перед проверкой на блокировку сделал SELECT из BKPF и делал до тех пор пока не сделается, и после проверка на блокировки и апдейт BKPF. Пробовал два ФМ по апдейту заголовка: 'FI_DOCUMENT_CHANGE' и FI_HEADER_UPDATE, обе ничего не изменили. _________________ Строчечку написал, стопочку пропустил...
Age: 44 Joined: 29 Oct 2008 Posts: 68 Location: Питер
Posted: Wed Mar 06, 2013 7:26 pm Post subject:
Ксати, здесь в мануале по OPEN-FI писали, что есть возможность дернуть данные из памяти, изменить их и обратно поместить в память, что бы SAP потом сам взял измененные данные, так как в событиях для проверки данные изменить не возможно. Не подскажешь как это сделать? То есть ASSIGN как я полагаю, но чего? _________________ Строчечку написал, стопочку пропустил...
Ксати, здесь в мануале по OPEN-FI писали, что есть возможность дернуть данные из памяти, изменить их и обратно поместить в память, что бы SAP потом сам взял измененные данные, так как в событиях для проверки данные изменить не возможно. Не подскажешь как это сделать? То есть ASSIGN как я полагаю, но чего?
Это зависит от события ИМХО. Для 1340 мы делали например так:
Code:
FORM load_knbk_open_fi USING is_kna1 TYPE kna1.
" Вызывается из ФМ ZFM_INTERFACE_00001340
DATA lv_memid(15) VALUE 'OPENFI'.
DATA t_xknbk TYPE TABLE OF fknbk.
DATA t_xknb5 TYPE TABLE OF fknb5.
DATA t_yknbk TYPE TABLE OF fknbk.
DATA t_yknb5 TYPE TABLE OF fknb5.
DATA t_xknza TYPE TABLE OF fknza.
DATA t_yknza TYPE TABLE OF fknza.
DATA t_xknas TYPE TABLE OF fknas.
DATA t_yknas TYPE TABLE OF fknas.
DATA t_xknex TYPE TABLE OF fknex.
DATA t_yknex TYPE TABLE OF fknex.
DATA t_xknva TYPE TABLE OF fknva.
DATA t_yknva TYPE TABLE OF fknva.
DATA t_xknvd TYPE TABLE OF fknvd.
DATA t_yknvd TYPE TABLE OF fknvd.
DATA t_xknvi TYPE TABLE OF fknvi.
DATA t_yknvi TYPE TABLE OF fknvi.
DATA t_xknvk TYPE TABLE OF fknvk.
DATA t_yknvk TYPE TABLE OF fknvk.
DATA t_xknvl TYPE TABLE OF fknvl.
DATA t_yknvl TYPE TABLE OF fknvl.
DATA t_xknvp TYPE TABLE OF fknvp.
DATA t_yknvp TYPE TABLE OF fknvp.
DATA t_xknat TYPE TABLE OF fknat.
DATA t_xknbw TYPE TABLE OF fknbw.
DATA t_yknat TYPE TABLE OF fknat.
DATA t_yknbw TYPE TABLE OF fknbw.
DATA ls_knbk TYPE fknbk.
FIELD-SYMBOLS:
<s_lfbk> TYPE flfbk.
FIELD-SYMBOLS:
<t_ylfbk> TYPE flfbk_tab,
<t_xlfbk> TYPE flfbk_tab.
ASSIGN ('(SAPMF02K)XLFBK[]') TO <t_xlfbk>.
CHECK sy-subrc = 0.
ASSIGN ('(SAPMF02K)YLFBK[]') TO <t_ylfbk>.
CHECK sy-subrc = 0.
Age: 44 Joined: 29 Oct 2008 Posts: 68 Location: Питер
Posted: Thu Mar 07, 2013 10:58 am Post subject:
Спасибо, alezhu, но это работать не будет, так как у них стоит нота 530655, которая идет в обход memory_id, через локальные переменные, и доступа к ним нет. Валера, может я что то не так делаю, у меня ФМ по обновлению стандартного типа, может мне тип поменять? Кстати почему не отрабатывает событие 1640? Я зашел в FIBF, создал продукт, поставил галку на "А", сохранил, зашел в процессы, поставил событие 1640, прикрепил свой Z фм, поставил продукт, все добро сохранил, потом через SCC1 перенес в песочницу, в той же системе и не отрабатывает, такая же история была с событием 1130, может я какую то настройку пропускаю? _________________ Строчечку написал, стопочку пропустил...
Age: 160 Joined: 04 Oct 2007 Posts: 1218 Location: Санкт-Петербург
Posted: Thu Mar 07, 2013 1:09 pm Post subject:
rstiv wrote:
Спасибо, alezhu, но это работать не будет, так как у них стоит нота 530655, которая идет в обход memory_id, через локальные переменные, и доступа к ним нет. Валера, может я что то не так делаю, у меня ФМ по обновлению стандартного типа, может мне тип поменять? Кстати почему не отрабатывает событие 1640? Я зашел в FIBF, создал продукт, поставил галку на "А", сохранил, зашел в процессы, поставил событие 1640, прикрепил свой Z фм, поставил продукт, все добро сохранил, потом через SCC1 перенес в песочницу, в той же системе и не отрабатывает, такая же история была с событием 1130, может я какую то настройку пропускаю?
Привет!
ФМ, который выполняешь в background режиме, должен иметь галку Remote-Enabled. Эти модули запускаются после commit work. Поставь галочку Start Delayed в Update Module, чтобы он был запущен как V2 update module, то есть когда уже FI документ будет точно создан.
Не все OpenFI должны обязательно запускаться, какие-то спроектированы только для определенных транзакций. Отлаживать надо, я так точно не скажу, почему 1640, 1130 не выполнились. Запуск всех OpenFi идет через один FM (не помню названия, посмотри по стеку выше при срабатывании 1030), поставь там точку останова, может настроек в FIFB не хватает.
Еще, возможно, в твоем FM в конце вызова 'BAPI_TRANSACTION_COMMIT' не хватает. Зависит в целом от схемы апедейтов, которую ты спроектировал. _________________ Молитва - это запрос разработчику на изменение кода программы.
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum
All product names are trademarks of their respective companies. SAPNET.RU websites are in no way affiliated with SAP AG. SAP, SAP R/3, R/3 software, mySAP, ABAP, BAPI, xApps, SAP NetWeaver and any other are registered trademarks of SAP AG. Every effort is made to ensure content integrity. Use information on this site at your own risk.