SAP Vodič za ABAP BDC (Batch Data Communication).
Uvod u skupni unos
Skupni unos obično se koristi za prijenos podataka sa sustava koji nisu R/3 na R/3 sustave ili za prijenos podataka između R/3 sustava.
To je tehnika prijenosa podataka koja vam omogućuje automatski prijenos skupova podataka na zaslone koji pripadaju transakcijama, a time i na SAP sustav. Skupnim unosom upravlja sesija skupnog unosa.
Sesija skupnog unosa
Grupira niz transakcijskih poziva zajedno s ulaznim podacima i radnjama korisnika. Sesija skupnog unosa može se koristiti za izvršavanje dijaloške transakcije u skupnom unosu, gdje se neki ili svi ekrani obrađuju u sesiji. Sesije skupnog unosa pohranjuju se u bazu podataka kao tablice baze podataka i mogu se koristiti unutar programa kao interne tablice prilikom pristupa transakcijama.
Točke na koje treba obratiti pažnju
- BDI radi tako da obavlja normalan rad SAP transakcije kao što bi to učinio korisnik, ali transakciju izvršava automatski.Sve provjere valjanosti zaslona i poslovne logike izvršit će se korištenjem skupnog unosa podataka.
- Pogodan je za unos velike količine podataka.
- Nije potrebna ručna interakcija
Metode skupnog unosa
SAP pružaju dvije osnovne metode za prijenos naslijeđenih podataka u sustav R/3.
- Klasična metoda skupnog unosa.
- Metoda transakcije poziva.
Klasična metoda skupnog unosa
U ovoj metodi program ABAP/4 čita vanjske podatke u SAP Sustav i pohranjuje u sesiji skupnog unosa.
Nakon stvaranja sesije, možete pokrenuti sesiju da biste izvršili SAP transakcija u njemu.
Ova metoda koristi funkcijske module BDC_ OPEN, BDC_INSERT i BDC_CLOSE
Sesija skupnog unosa može se obraditi na 3 načina
- U prvom planu
- U pozadini
- Tijekom obrade, s prikazom greške
Trebali biste obraditi sesije skupnog unosa u prvom planu ili pomoću prikaza pogreške ako želite testirati prijenos podataka.
Ako želite izvršiti prijenos podataka ili testirati njegovu izvedbu, trebali biste obraditi sesije u pozadini.
Napomene o klasičnoj metodi skupnog unosa
- Synchronska obrada
- Prijenos podataka za više transakcija.
- Synchronous ažuriranje baze podataka.
- Dnevnik procesa skupnog unosa generira se za svaku sesiju.
- Sesija se ne može generirati paralelno.
Metoda transakcije poziva.
U ovoj metodi ABAP/4 program koristi naredbu CALL TRANSACTION USING za pokretanje SAP transakcija.
Cijeli proces skupnog unosa odvija se online u programu
Bilješke:
- Brža obrada podataka
- Asinkrona obrada
- Prijenos podataka za jednu transakciju.
- Ne generira se dnevnik obrade skupnog unosa.
Postupci grupnog unosa
Obično ćete promatrati sljedeći niz koraka za razvoj skupnog unosa za svoju organizaciju
- Analiza naslijeđenih podataka. Odredite kako će se podaci koji se prenose mapirati u SAP Struktura. Također uzmite u obzir potrebne vrste podataka ili pretvorbe duljine podataka.
- Generirati SAP strukture podataka za korištenje u izvoznim programima.
- Izvezite podatke u sekvencijalnu datoteku. Imajte na umu da je format znakova predefiniran SAP programi skupnog unosa.
- Ako SAP isporučeni BDC programi se ne koriste, kodirajte vlastiti program skupnog unosa. Odaberite odgovarajuću metodu skupnog unosa prema situaciji.
- Obradite podatke i dodajte ih u SAP sistem.
- Analizirajte dnevnik procesa. Za metodu CALL TRANSACTION, gdje se ne stvara odgovarajući dnevnik, koristite poruke koje je prikupio vaš program.
- Iz rezultata analize procesa ispravite i ponovno obradite pogrešne podatke.
Pisanje BDC programa
Možete promatrati sljedeći postupak za pisanje vašeg BDC programa
- Analizirajte transakciju(e) za obradu skupnih ulaznih podataka.
- Odlučite se za metodu grupnog unosa.
- Čitanje podataka iz sekvencijalne datoteke
- Izvršite konverziju podataka ili provjeru pogrešaka.
- Pohranjivanje podataka u strukturi skupnog unosa, BDCDATA.
- Generirajte sesiju skupnog unosa za klasičan skupni unos ili obradite podatke izravno pomoću izjave CALL TRANSACTION USING.
Struktura skupnih ulaznih podataka
Deklaracija strukture skupnih ulaznih podataka
DATA : BEGIN OF < bdc table> OCCURS <occurs parameters>. INCLUDE STRUCTURE BDCDATA. DATA:END OF <bdc table>.
naziv polja | Tip | Dužina | Description |
---|---|---|---|
PROGRAM | TENK | 8 | Modul bazen |
DYNPRO | NUMC | 4 | Dynpro broj |
DYNBEGIN | TENK | 1 | Pokretanje dynproa |
FNAM | TENK | 35 | naziv polja |
FVAL | TENK | 80 | Vrijednost polja |
Redoslijed polja unutar podataka za određeni zaslon nije od značaja
Bodovi na bilješku
- Prilikom popunjavanja BDC podataka vodite računa o korisničkim postavkama. Ovo je posebno relevantno za popunjavanje polja koja uključuju brojeve (kao što je količina, iznos). Korisnička je postavka ta koja odlučuje o tome koji je znak grupiranja za brojeve. Npr.: Broj pedeset tisuća može se napisati kao 50,000.00 ili 50.000,00 na temelju korisničkih postavki.
- Sažmite polje FVAL za polja iznosa i količine tako da budu poravnata lijevo.
- Imajte na umu da se sva polja koja popunjavate putem BDC-a trebaju tretirati kao polja tipa znakova tijekom popunjavanja tablice BDC podataka.
- Na nekim zaslonima kada popunjavate vrijednosti u kontroli tablice pomoću BDC-a, morate zabilježiti koliko je redaka prisutno na zadanoj veličini zaslona i kodirati za toliko redaka. Ako morate popuniti više redaka, tada morate kodirati funkciju "Page down" kao što biste učinili kada ručno popunjavate kontrolu tablice.
- Broj redaka koji bi se pojavio u gornjem scenariju razlikovat će se ovisno o veličini zaslona koji korisnik koristi. Stoga uvijek kodirajte standardnu veličinu zaslona i neka vaš BDC uvijek radi u standardnoj veličini zaslona bez obzira na to koju veličinu zaslona korisnik koristi.
Stvaranje sesije skupnog unosa
- Otvorite sesiju sesije skupnog unosa koristeći funkcijski modul BDC_OPEN_GROUP.
- Za svaku transakciju u sesiji:
- Ispunite BDCDATA vrijednostima za sve ekrane i polja obrađena u transakciji.
- Prenesite transakciju u sesiju s BDC_INSERT.
- Zatvorite sesiju skupnog unosa s BDC_CLOSE_GROUP
Batch Input Recorder
Snimač skupnog unosa (Sustav > Usluge > Skupni unos > Snimač) bilježi transakcije koje su ručno unesene i stvara sesiju skupnog unosa koja se kasnije može izvršiti pomoću SM35.
- Pokrenite snimač skupnog unosa odabirom gumba Snimanje na početnom zaslonu skupnog unosa.
- Naziv snimke korisnički je definiran naziv i može odgovarati nazivu sesije skupnog unosa koji se može stvoriti iz snimke.
- Unesite SAP transakciju i počnite knjižiti transakciju.
- Nakon što ste dovršili objavu a SAP transakciju odaberite Dohvati transakciju i spremi za završetak snimanja ili Sljedeća transakcija i objavite drugu transakciju.
- Nakon što ste spremili snimku, možete stvoriti sesiju skupnog unosa iz snimke i/ili generirati program skupnog unosa iz snimke.
- Sesija skupnog unosa koju ste stvorili sada se može analizirati kao i bilo koja druga sesija skupnog unosa.
- Program koji je generiran funkcijom snimača batch inputa moćan je alat za programer podatkovnog sučelja. Osigurava čvrstu osnovu koja se zatim može mijenjati prema zahtjevima kupaca.