SAP Samouczek ABAP BDC (komunikacja danych wsadowych).

Wprowadzenie do wprowadzania wsadowego

Dane wejściowe wsadowe są zwykle używane do przesyłania danych z systemów innych niż R/3 do systemów R/3 lub do przesyłania danych między systemami R/3.

Jest to technika przesyłania danych, która pozwala na automatyczne przesyłanie zbiorów danych na ekrany należące do transakcji, a tym samym do SAP system. Wprowadzanie wsadowe jest kontrolowane przez sesję wprowadzania wsadowego.

Sesja wprowadzania wsadowego

Grupuje serię wywołań transakcji wraz z danymi wejściowymi i działaniami użytkownika. Sesję wprowadzania wsadowego można wykorzystać do wykonania transakcji dialogowej w trybie wsadowego wprowadzania danych, gdzie niektóre lub wszystkie ekrany są przetwarzane przez sesję. Sesje wejściowe wsadowe są przechowywane w bazie danych jako tabele bazy danych i mogą być używane w programie jako tabele wewnętrzne podczas uzyskiwania dostępu do transakcji.

Punkty do zapamiętania

  • BDI działa, wykonując normalne czynności SAP transakcje w taki sam sposób, jak zrobiłby to użytkownik, ale wykonuje transakcję automatycznie.Wszystkie weryfikacje ekranów i logiki biznesowej zostaną przeprowadzone podczas korzystania z wsadowego wprowadzania danych.
  • Nadaje się do wprowadzania dużej ilości danych.
  • Nie jest wymagana żadna ręczna interakcja

Metody wprowadzania wsadowego

SAP zapewniają dwie podstawowe metody przesyłania dotychczasowych danych do systemu R/3.

  1. Klasyczna metoda wprowadzania wsadowego.
  2. Zadzwoń do metody transakcji.

Klasyczna metoda wprowadzania wsadowego

W tej metodzie program ABAP/4 odczytuje dane zewnętrzne do SAP System i sklepy w sesji wprowadzania wsadowego.

Po utworzeniu sesji możesz ją uruchomić, aby wykonać SAP transakcja w nim.

W metodzie tej wykorzystywane są moduły funkcyjne BDC_OPEN, BDC_INSERT i BDC_CLOSE

Sesję wsadową można przetwarzać na 3 sposoby

  1. Na pierwszym planie
  2. W tle
  3. Podczas przetwarzania, ze wskazaniem błędu

Jeśli chcesz przetestować transfer danych, powinieneś przetwarzać sesje wprowadzania wsadowego na pierwszym planie lub korzystając z wyświetlania błędów.

Jeśli chcesz wykonać transfer danych lub przetestować jego wydajność, powinieneś przetwarzać sesje w tle.

Warto zwrócić uwagę na klasyczną metodę wprowadzania wsadowego

  • Syncokropne przetwarzanie
  • Przesyłaj dane dla wielu transakcji.
  • Syncstraszna aktualizacja bazy danych.
  • Dla każdej sesji generowany jest dziennik procesu wprowadzania wsadowego.
  • Sesja nie może być generowana równolegle.

Zadzwoń do metody transakcji.

W tej metodzie ABAPProgram /4 używa instrukcji CALL TRANSACTION USING do uruchomienia SAP transakcji.

Cały proces wprowadzania danych wsadowych odbywa się online w programie

Metoda transakcji wywołania

Uwaga:

  • Szybsze przetwarzanie danych
  • Przetwarzanie asynchroniczne
  • Prześlij dane dla pojedynczej transakcji.
  • Nie jest generowany żaden dziennik przetwarzania danych wsadowych.

Procedury wprowadzania wsadowego

Procedury wprowadzania wsadowego

Podczas opracowywania danych wejściowych wsadowych dla swojej organizacji zazwyczaj należy przestrzegać następującej sekwencji kroków

  1. Analiza danych historycznych. Określ, w jaki sposób przesyłane dane mają być mapowane w pliku SAP Struktura. Zwróć także uwagę na niezbędne konwersje typu danych lub długości danych.
  2. Wygeneruj SAP struktury danych do wykorzystania w programach eksportowych.
  3. Eksportuj dane do pliku sekwencyjnego. Należy pamiętać, że format znaku jest wymagany przez predefiniowany SAP programy do wprowadzania wsadowego.
  4. Jeśli SAP dostarczone programy BDC nie są używane, należy zakodować własny program do wprowadzania wsadowego. Wybierz odpowiednią metodę wprowadzania wsadowego w zależności od sytuacji.
  5. Przetwórz dane i dodaj je do pliku SAP Konfiguracja.
  6. Przeanalizuj dziennik procesu. Dla metody CALL TRANSACTION, gdzie nie jest tworzony odpowiedni log, wykorzystaj komunikaty zebrane przez Twój program.
  7. Na podstawie wyników analizy procesu popraw i ponownie przetwórz błędne dane.

Pisanie programu BDC

Aby napisać program BDC, możesz zastosować się do następującego procesu

  1. Analizuj transakcje, aby przetwarzać dane wejściowe wsadowo.
  2. Wybierz metodę wprowadzania wsadowego, która ma zostać użyta.
  3. Odczytaj dane z pliku sekwencyjnego
  4. Wykonaj konwersję danych lub sprawdź błędy.
  5. Przechowywanie danych w wsadowej strukturze wejściowej,BDCDATA.
  6. Wygeneruj wsadową sesję wejściową dla klasycznego wsadowego wprowadzania danych lub przetwórz dane bezpośrednio za pomocą instrukcji CALL TRANSACTION USING.

Struktura danych wejściowych wsadowych

Deklaracja struktury danych wejściowych wsadu

DATA : BEGIN OF < bdc table>

OCCURS <occurs parameters>.

INCLUDE STRUCTURE BDCDATA.

DATA:END OF <bdc table>.
Nazwa pola Typ Długość Opis
PROGRAM ZWĘGLAĆ 8 Pula modułów
DYNPRO NUMC 4 Numer Dynpro
DYNBEGIN ZWĘGLAĆ 1 Uruchamianie dynpro
FNAM ZWĘGLAĆ 35 Nazwa pola
FVAL ZWĘGLAĆ 80 Wartość pola

Kolejność pól w danych dla konkretnego ekranu nie ma znaczenia

Punkty do uwagi

  • Podczas wypełniania danych BDC upewnij się, że bierzesz pod uwagę ustawienia użytkownika. Jest to szczególnie istotne w przypadku wypełniania pól zawierających liczby (takie jak ilość, kwota). To ustawienie użytkownika decyduje, jaki jest znak grupowania dla liczb. Np.: liczba pięćdziesiąt tysięcy może być zapisana jako 50,000.00 lub 50.000,00 w zależności od ustawienia użytkownika.
  • Skondensuj pole FVAL dla pól kwoty i ilości, tak aby były wyrównane do lewej strony.
  • Należy pamiętać, że podczas wypełniania tabeli danych BDC wszystkie pola wypełniane za pośrednictwem usługi BDC powinny być traktowane jako pola znakowe.
  • Na niektórych ekranach, gdy wypełniasz wartości w kontrolce tabeli za pomocą BDC, musisz zanotować, ile wierszy jest obecnych na ekranie o domyślnym rozmiarze i zakodować odpowiednią liczbę wierszy. Jeśli musisz wypełnić więcej wierszy, musisz zakodować funkcję „Page down”, tak jak w przypadku ręcznego wypełniania kontrolki tabeli.
  • Liczba linii, które pojawią się w powyższym scenariuszu, będzie się różnić w zależności od rozmiaru ekranu używanego przez użytkownika. Dlatego zawsze koduj standardowy rozmiar ekranu i spraw, aby Twój BDC działał zawsze w standardowym rozmiarze ekranu, niezależnie od tego, jaki rozmiar ekranu użytkownik utrzymuje.

Tworzenie wsadowej sesji wejściowej

  1. Otwórz sesję sesji wsadowej za pomocą modułu funkcyjnego BDC_OPEN_GROUP.
  2. Dla każdej transakcji w sesji:
  3. Wypełnij BDCDATA wartościami dla wszystkich ekranów i pól przetwarzanych w transakcji.
  4. Przenieś transakcję do sesji z BDC_INSERT.
  5. Zamknij sesję wprowadzania wsadowego za pomocą BDC_CLOSE_GROUP

Rejestrator wejściowy wsadowy

Rejestrator danych wejściowych wsadowych (System > Usługi > Dane wejściowe wsadowe > Rejestrator) rejestruje transakcje wprowadzane ręcznie i tworzy sesję danych wejściowych wsadowych, którą można później wykonać przy użyciu SM35.

Rejestrator wejściowy wsadowy

  • Rozpocznij rejestrację wejścia wsadowego, wybierając przycisk Nagrywanie na ekranie początkowym wejścia wsadowego.
  • Nazwa nagrania jest nazwą zdefiniowaną przez użytkownika i może odpowiadać nazwie sesji wprowadzania wsadowego, którą można utworzyć na podstawie nagrania.
  • Wpisz SAP transakcję i rozpocznij księgowanie transakcji.
  • Po zakończeniu wysyłania a SAP transakcji, wybierz opcję Uzyskaj transakcję i zapisz, aby zakończyć rejestrację, lub opcję Następna transakcja i zaksięguj kolejną transakcję.
  • Po zapisaniu nagrania możesz utworzyć sesję wprowadzania wsadowego na podstawie nagrania i/lub wygenerować program wprowadzania wsadowego na podstawie nagrania.
  • Utworzoną sesję wsadową można teraz analizować tak samo, jak każdą inną sesję wsadową.
  • Program generowany przez funkcję wsadowego rejestratora wejściowego jest potężnym narzędziem dla programisty interfejsu danych. Zapewnia solidną podstawę, którą można następnie modyfikować zgodnie z wymaganiami klienta.