zastosowanie BAPI_ACC_DOCUMENT_POST w BTE

W tym dziale znajdują się posty z zakresu modułów finansowych systemu SAP...
ODPOWIEDZ
ANTON007
Posty: 3
Rejestracja: pn kwie 28, 2008 10:34 pm
Lokalizacja: Poznań

zastosowanie BAPI_ACC_DOCUMENT_POST w BTE

Post autor: ANTON007 »

Witam,
podczas księgowania dokumentu rachunkowości finansowej potrzebuję zaksięgować dodatkowy dokument FI. Ten pierwszy jest wynikiem ruchu materiałowego.
Zastosowałem BTE 1050 (Księgowanie dokumentu - interfejs dla rachunkowości) ponieważ potrzenuję numer pierwotnego dokumentu FI.
W implementacji interfejsu używam BAPI_ACC_DOCUMENT_POST.
Niestety po wywołaniu tego Bapi dzieją się dziwne rzeczy.
Gdy BTE zakończy działanie okazuje się, że do dalszej obsługi dokumentu pierwotnego wykorzystywany jest awkey i awtyp z którym wywołane zostało Bapi mimo że nigdzie takiego przypisania nie robię.

Wszystko kończy się dumpem.
Wiecie co może być przyczyną lub może macie sugestie w jaki inny sposób wykonać to księgowanie ?

Pozdrawiam
dominik.tylczynski
Posty: 8356
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 1924 times
Been thanked: 1477 times
Kontakt:

Post autor: dominik.tylczynski »

Nie wchodząc za bardzo w szczegóły, myślę że BAPI_ACC_DOCUMENT_POST korzysta z tych samych funkcji, które są wykorzystywane podczas normalnego księgowania dokumentu FI z dokumentu materiałowego. Stąd zapewne wywołanie BAPI_ACC_DOCUMENT_POST z BTE powoduje jakiś konflikt ze standardowym księgowaniem dokumentu FI i dlatego dziwne efekty, które obserwujesz.
Skoro chcesz zaksięgować dodatkowy dokument FI po zaksięgowaniu dokumentu materiałowego proponuję zamiast BTE wywołać BAPI_ACC_DOCUMENT_POST z:
  1. EXIT_SAPLMBMB_001 lub
  2. BADI MB_DOCUMENT_BADI lub
  3. programu przetwarzającego dodatkową informację wyjściową
Ta ostatnia metoda jest szczególnie korzystna, gdyż wynik działania BAPI_ACC_DOCUMENT_POST będziesz mógł zapisać w logu przetwarzania informacji wyjściowej przy pomocy funkcji NAST_PROTOCOL_UPDATE.
HTH
Dominik Tylczyński, ICG
ANTON007
Posty: 3
Rejestracja: pn kwie 28, 2008 10:34 pm
Lokalizacja: Poznań

Post autor: ANTON007 »

Dziękuje za odpowiedź. Napewno się przydadzą w przyszłości :D

Udało mi się wyeliminować już ten bląd poprzez wywołanie BAPI z parametrem "IN BACKGROUND TASK".

Pozdrawiam
Mikołaj Antoniewicz, Arvato
dominik.tylczynski
Posty: 8356
Rejestracja: wt kwie 03, 2007 4:05 pm
Has thanked: 1924 times
Been thanked: 1477 times
Kontakt:

Post autor: dominik.tylczynski »

W takim razie warto byłoby do wywołania dodać jeszcze:

Kod: Zaznacz cały

AS SEPARATE UNIT
Co w całości oddzieli Twoje wywołanie BAPI od standardowego księgowanie dokumentu FI.
Pomyśl jeszcze jak będzie obsługiwał ewentualne błędy księgowania. W razie błędu komunikat zostanie odłożony w logu RFC - transakcja SM58
Dominik Tylczyński, ICG
ODPOWIEDZ