Razmjena podataka s vanjskim sustavima

Export podataka putem 4D Wand2XML aplikacije

Upute za korištenje 4D Wand2XML aplikacije

Datum kreiranja: 02.12.2016.

Datum zadnje izmjene: 04.10.2023 - Uređeno poglavlje "Opis aplikacije" i opisi primjera

Opis aplikacije

Wand2XML (Wand2Xml.exe) je aplikacija koja služi za generiranje izvještaja i dohvat podataka u .XML formatu. Koristi se za dohvat različitih podataka iz 4D Wanda. Niže u tekstu možete pronaći nekoliko primjera koje smo do sada radili. Uvijek se radilo o unaprijed definiranom podskupu podataka koje je potrebno periodično eksportirati za treće strane.

Ako u vašem slučaju trebate neki poseban ili specifičan izraz, uz pomoć osobe koja poznaje 4D Wand definirajte podatke koji su potrebni iz 4D Wanda i proslijedite nam upit kako bismo vam kreirali odgovarajući izraz.

Napomena: Za korištenje Wand2XML-a potrebno je posjedovati istoimenu licencu. Za kupnju licence možete nazvati na broj 01/6312-600 ili poslati e-mail na 4d@4d.hr.

Lokacija aplikacije

Wand2XML aplikacija se standardno nalazi u sys poddirektoriju 4D Wand instalacije, zajedno s ostalim izvršnim datotekama. Npr. w:\4d\wand\sys\Wand2Xml.exe

Poziv aplikacije

Wand2Xml.exe [PutanjaFirme] [GodinaZaEksport] [XmlDatoteka] [Baza=Baza] [Filter=Filter] [/S] [/P] […]

Primjer:

Wand2Xml.exe "w:\4d\wand\demo\" 2013 "c:\XMLExporti\TestDok.xml" Baza=DOK Filter="DOK:Dokument>10 AND DOK:Dokument<20" /S /P

Parametri za poziv aplikacije

PutanjaFirme: putanja do 4D Wand poduzeća iz kojeg treba vršiti eksport podataka
GodinaZaEksport: poslovna godina za koju se vrši eksport podataka
XmlDatoteka: Datoteka u koju se vrši eksport podataka
Baza: Primarna baza podataka za koju se vrši eksport. Za sada su podržane baze: DOK - Dokumenti, STA - Stavke, REG - Registri, PAR - Partneri, ROB - Robe, KOM - Komercijalisti, IME - Imenik, BCD - Dodatne šifre, SER - Serijski/Lot brojevi, OSN - Osnovna sredstva, RAD - Radnici.
 Filter: Izraz za filtriranje podataka
/S: Eksportiraj stavke za sve eksportirane dokumente
/P: Eksportiraj partnere za sve eksportirane dokumente ili stavke
/R: Eksportiraj robe za sve eksportirane stavke
/A: Eksportiraj adresante za sve eksportirane partnere
/K: Eksportiraj komercijaliste za sve eksportirane dokumente
/B: Eksportiraj dodatne šifre za sve eksportirane robe
/CEN: Eksportiraj centralu za sve eksportirane partnere
/SER: Eksportiraj serijske brojeve uz svaku eksportiranu stavku
/DOKPartnerIzraz : Dodatno eksportiraj sve partnere za eksportirane dokumente koji zadovoljavaju izraz

Vezano za konstrukciju filtera postoji nekoliko važnih napomena. Filter koristi standardnu Clarion sintaksu iz čega proizlazi da:

Nizovi znakova koji se koriste u izrazu moraju biti delimitirani jednostrukim navodnikom '. Na primjer DOK:Klasa='OTPNP'

String slice nad tekstualnim poljima se postiže korištenjem uglatih zagrada. Na primjer DOK:Klasa[1:3]='OTP' ili DOK:Klasa[4]='N'

Sva polja u bazi podataka koriste prefiks, dvotočku i naziv polja. Na primjer DOK:Broj ili STA:Dokument

Svi datumi su zapisani kao long integeri, i označavaju broj dana koji su prošli od 28.12.1800. Alternativno možete koristiti naredbu TODAY() kako bi se referencirali na današnji datum. Na primjer: svi dokumenti sa datumom u zadnjih 15 dana DOK:Datum>TODAY()-15

Filter se odnosi samo na primarnu bazu. Na primjer ako se radi eksport po bazi dokumenata, nije moguće dodatno filtrirati koje će se stavke eksportirati.

Brzina filtera dramatično ovisi o poštivanju ključeva u pojedinoj bazi podataka

Redoslijed uvjeta u filteru može značajno utjecati na brzinu izvršavanja filtera

Primjeri poziva aplikacije

Primjer će eksprotirati izlazne račune od broja 100 do broja 105. Za svaki dokument, također će se eksportirati pripadajuće stavke, te artikli na stavkama.

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Dokumenti.xml" Baza=DOK Filter="DOK:Tip=91 AND (DOK:Broj>=100 AND DOK:Broj<=105)" /R /S

Primjer će eksprotirati izlazne račune skladišta 0000101, počevši od izlaznog računa broj 100 do broja 999. Za svaki dokument, također će se eksportirati pripadajuće stavke, te artikli na stavkama.

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Dokumenti.xml" Baza=DOK Filter="UPPER(DOK:Orgjed1)='0000101' AND DOK:Tip=91 AND (DOK:Broj>=100 AND DOK:Broj<=999)" /R /S

Primjer će eksprotirati stanje skladišta 0000101.

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Zaliha0000101.xml" Baza=STA Filter="UPPER(STA:OrgJed)='0000101' AND STA:Tip=4 AND STA:Kolicina1>STA:Kolicina2" /R

Primjer će eksprotirati registar 'NPL' u kojem se nalaze sredstva plaćanja

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\SredstvaPlacanja.xml" Baza=REG Filter="REG:Baza='NPL'"

Primjer će eksprotirati sve komitente (partnere) čiji naziv počinje slovom 'F'

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Partneri.xml" Baza=PAR Filter="UPPER(PAR:Naziv[1])='F'"

Primjer će eksprotirati sve robe na kojima je upisan atribut 1 s vrijednošću '001'

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Robe.xml" Baza=ROB Filter="UPPER(ROB:A1)='001'"

Primjer će eksprotirati sve komercijaliste

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Komercijalisti.xml" Baza=KOM Filter="1"

Primjer će eksprotirati sve osobe komitenta sa šifrom 1

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Osobe.xml" Baza=IME Filter="IME:Partner=1"

Primjer će eksprotirati sve dodatne šifre artikala s količinom pakiranja većom od 1

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\DodatneSifre.xml" Baza=BCD Filter="BCD:Kolicina>1"

Primjer će eksprotirati sve serijske brojeve robe id 453

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Serijski.xml" Baza=SER Filter="SER:Roba=453"

Primjer će eksprotirati sva osnovna sredstva s amortizacijskom stopom 20%

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\OsnovnaSredstva.xml" Baza=OSN Filter="OSN:AmortStopa=20"

Primjer će eksprotirati sve radnike s mjestom rada '012103'

wand2xml "w:\4d\wand\demo\" 2019 "c:\XMLExporti\Radnici.xml" Baza=RAD Filter="RAD:MjestoRada='012103'"