Navodila so namenjena prenosu imenika poslovnih partnerjev z zunanjega izvora – baze podatkov ali tekstovne datoteke v EBA DMS klient.
1.Priprava
Če želimo prenesti partnerje direktno iz obstoječe baze, potem preskočite na korak 1.2, v primeru, da prenašamo podatke iz .CSV datoteke, pa je le-to potrebno ustrezno pripraviti.
1.1 Priprava .CSV datoteke
Podatki, ki so priporočljivi za EBA imenik so:
1. zunanji ID (ID raznih ERP programov, npr. SAOP ipd.)
2. Kratko ime (naziv) podjetja
3. Dolgo ime podjetja
4. Naslov s hišno št.
5. Pošta številka
6. Naziv pošte
7. Država
8. Davčna št.
9. Matična št.
Priporočljivo je, da skrčite oziroma dopolnite podatke, da bodo ustrezali zgornjim zahtevam.
Pri shranjevanju datoteke poskrbite za ustrezno znakovno kodiranje datoteke – UTF 8 in ustrezen znak za ločevanje posameznih polj. Ločilo nastavimo tudi kasneje pri prenosu, priporočamo uporabo podpičja (;).
Datoteko shranite kot plain text v UTF-8 formatu.
1.2 Priprava .INI datoteke
V tem koraku bomo v datoteki addressbooktransfer.ini nastavili potrebne parametre za prenos podatkov. Datoteka se nahaja v mapi C:/Program Files/EBA/bin oziroma v mapi, kamor ste namestili EBA DMS.
Datoteko odprite s programom za tekstovno urejanje.
Pomembno! Datoteka adressbooktransfer.ini je skupna tako za bazni kot tekstovni prenos, zato poskrbite, da bodo ustrezne nastavitve in ukazi ne bodo »komentirani« (znak #), odvečne nastavitve pa naj bodo »komentirane« z znakom # pred ukazom.
Datoteka je sestavljena iz treh sklopov: izvorna baza, ciljna baza in dodatne nastavitve:
Primer baznega vira (prenos iz podatkovne baze)
- Source_type: database ali text, v tem primeru database
- Source: vpišemo podatke in pot do baze v formatu, kot je zapisano:
dbtype://username:password@hostname:port/dbname
dbtype = tip baze (oracle, msql, postgresql, sqlite)
username, password = podatki za dostop do baze
hostname:port = Hostname (lahko tudi IP) in vrata serverja
dbname = ime podatkovne baze
Primer:
SOURCE = msql://testeba:eba123@testserver:1433/ebatest
- Source query: določimo iz katerih kolon ter seveda baze bomo pobirali podatke, nazive kolon vnesemo med besedi select in from, za from vnesemo ime tabele.
Primer:
SOURCE_QUERY = select name, shortname, street, town, country, zipcode, postoffice, email, phone, fax, contact, taxnum, companyid, gln, orgunit, extern_id from eba_abtest
Primer tekstovnega vira (.csv datoteka)
Postopek je zelo podoben kot da bi prenašali podatke iz baze, le da v tem primeru nastavimo lokalno pot do .cvs datoteke, iz katere bomo prenašali podatke.
- Source_type: text
- Source: vpišemo celotno pot do .csv datoteke, primer: c:\Users\ebadms\Desktop\Baza_partnerjev.csv
- Source_encoding: Privzeto je UTF-8, priporočamo, da tudi vi nastavite .csv datoteko na UTF-8.
- Column_separator: nastavimo field delimiter, v našem primeru podpičje ;
- Has_title_row: Izberemo true, v kolikor imamo v datoteki heading vrstico, drugače false.
Primer nastavitev za prenos iz .csv datoteke:
SOURCE_TYPE = text SOURCE = c:\temp\partnerji.csv SOURCE_ENCODING = UTF-8 COLUMN_SEPARATOR = ; HAS_TITLE_ROW = true MOVE_SOURCE = false
Nastavitev ciljne baze
Podobno, kot smo nastavili bazo za vir podatkov, tako moramo nastaviti tudi ciljno bazo – bazo EBA DMS programa.
Edina nastavitev, ki je tu potrebna, se nahaja pod izrazom DESTINATION:
- Destination:dbtype://username:password@hostname:port/dbname
- Enako kot pri izvoru vnesemo ustrezne nastavitve.
Primer (pgslq, mssql in oracle):
DESTINATION = pgsql://ebauser:password1@192.168.1.100:1433/ebadb_test DESTIONATION = mssql://ebauser:oassword1@192.168.1.100:1433/test DESTINATION = oracle://system:1234@:1521/(DESCRIPTION =(ADDRESS=(PROTOCOL=TCP)(HOST=EBA-DEMO)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=XE)))
Mapiranje kolon
Zelo pomemben korak nastavitev je ustrezno mapiranje kolon iz izvornih podatkov v ciljne.
Parametri, katere moramo nastaviti: extern_id, name, shortname, street, zipcode, town, postoffice, country, taxnum.
Na primer, če se nam v izvorni bazi (ali .csv datoteki) naziv podjetja shranjuje v kolono z naslovom »naziv_podjetja«, potem moramo za uspešen prenos parameter »name« v nastavitveni datoteki ustrezno oštevilčiti, torej, če imamo kolono »naziv_podjetja« na prvem mestu, potem bomo nastavili parameter »name« na številko 1 in tako naprej za vse ostale kolone.
Primer:
extern_id=0 name=1 shortname=2 street=3 town=4 country=7 zipcode=5 postoffice=6 email=8 phone=9 fax=10 taxnum=11 companyid=12
S primera vidimo, da imamo sledeče kolone: ID, naziv, naziv 2, naslov, mesto. Vse te podatke želimo prenesti v EBA DMS, zato bomo pod map fields nastavili slednje atribute:extern_id=0, shortname=1, name=2, street=3, town=4 in tako naprej za vsako kolono posebej. Če podatka nimamo oziroma ga ne potrebujemo, potem parameter preprosto komentiramo z znakom # in skripta te kolone ne bo upoštevala. Če imamo v eni koloni podatek za 2 mesti, npr. naziv pošte in kraj, potem uporabimo enako številko: zipcode=4 in town=4.
Na koncu moramo nastaviti še parameter owner.Ta podatek pridobimo iz EBA DMS programa in sicer tako, da odpremo EBA program, se pomaknemo na meni Orodja, nato Imenik, pritisnemo enter in s seznama izberemo podjetje, za katerega urejamo podatke (nosilec programa). Pri privzeti namestitvi programa je to tudi edini vnos v imeniku.
Z desnim klikom pritisnemo na podjetje ter nato na Podrobnosti. Odpre se nam okno s podatki podjetja in čisto zadnje polje (EBA ID) nam da podatek za parameter Owner.
owner=ebatest
1.3 Priprava .bat datoteke
V namestitveno lokacijo EBA DMS programa v mapi bin kreiramo datoteko adbt.bat – najlažje je kreirati nov dokument v programu Notepad ali Notepad++. Pazimo, da ima datoteka .bat končnico. Ko kreiramo adbt.bat, skopiramo spodnjo vrstico:
"C:\Program Files\EBA\bin\addressbooktransfer.exe" -ini "C:\Program Files\EBA\bin\addressbooktransfer.ini" -unique_field extern_id -verbose -log "C:\temp\adbt.log"
Preverimo, ali so izpisane poti prave, če niso, jih ustrezno popravimo. Če niste spreminjali privzete namestitvene lokacije, potem spremembe niso potrebne.
2. Izvedba
Odpremo ukazno vrstico (command prompt) in se premaknemo v mapo, kjer se nahaja datoteka adbt.bat.
Vpišemo ime datoteke adbt.bat in pritisnemo enter, s tem poženemo skripto.
Na koncu se nam izpišejo podatki, če je bil prenos uspešen, ali so se vnosi prepisali ter če je prišlo do napake.
Primer uspešno opravljene izvedbe:

3. Test
Za zaključek preverimo, če so se vnosi uspešno prenesli. Odpremo program EBA DMS, izberemo meni Orodja, Imenik. Pritisni ENTER za izpis podatkov. V kolikor so podatki v redu, potem smo nalogo opravili, v nasprotnem primeru pa glejte naprej pod točko 5.
Primer uspešnega prenosa:

4. Nastavitev samodejnega prenosa
Če bi radi redno posodabljali imenik v EBA DMS, potem lahko s pomočjo Task Scheduler nastavimo, da se skripta izvaja samodejno ob določenem času.
- Odprite Task Scheduler, kreirajte novo mapo (npr. EBA) ter kreirajte novo opravilo »Create Basic Task«.
2. Poimenujte opravilo ter nato izberete, kdaj naj se sproži. Tu imate več možnosti, izberite ustrezno.
3. Izberite »Start a program«. Izberite program/skripto s klikom na »Browse«. Izberite skripto ADBT.bat, ki smo jo prej kreirali.
4. Preverite nastavitve in kliknite na »Finish«. Program se bo samodejno izvajal v ozadju ob določenih terminih.
5. Morebitne težave in odpravljanje le-teh
Pri odpravljanju težav si lahko pomagamo z log datoteko, ki jo program kreira ob izvedbi. Log datoteko vklopimo tako, da v datoteki adbt.bat ukazu na koncu dodamo -debug -log. Priporočamo, da nastavite pot do log datoteke C:\Temp\adbt.log. Če temp mapa ne obstaja, jo prej kreirajte.
Primer ukaza z log datoteko:
"C:\Program Files\EBA\bin\addressbooktransfer.exe" -ini "C:\Program Files\EBA\bin\addressbooktransfer.ini" -unique_field extern_id -debug -log "C:\temp\adbt.log"
Najpogostejše težave oziroma napake pri prenosu podatkov:
- Neuspešna povezava s SOURCE ali DESTINATION bazo:
Preverite pravilnost podatkov in zapisa. Predvsem pazite, da ni presledkov. Za pomoč pri povezavi si lahko pomagate z orodjem SQL browser. - Napačno mapirana polja:
dobro preverite pozicije kolon v izvoru in .ini nastavitveni datoteki. Če prenašate iz podatkovne baze, bodite pozorni, če ste nastavili ustrezne kolone in tabelo v nastavitveni datoteki pod parametrom SOURCE_QUERY. - Težave s šumniki:
priporočamo uporabo odprto kodnega programa Notepad++ ter prav tako odprto kodnega programa LibreOffice Calc. Najprej s programom Calc uredite podatke in shranite .csv datoteko v UTF-8 formatu, nato isto datoteko odprite s programom Notepad++ in v meniju Formatting izberite »Convert to UTF-8 with BOM«. - Če je potrebno pobrisati (izprazniti) celoten imenik v EBA DMS programu, je najlažje izvesti TRUNCATE tabele v bazi. Podatki se zapisujejo v tabelo eba_addressbook. Pazite, da zbrišete samo tiste vnose, ki imajo v polju inserted_source vrednost adbt!
- Samodejni prenos ne deluje:
Preverite, če so pravilno nastavljene poti, predvsem se to lahko zgodi, če posodabljate starejšo verzijo EBA DMS, ki je 32 bitna z novejšo, 64bitno.