Svi pozivi za metodu processRequest() su XML struktuirani.
Razvrstavanje poziva je izvršeno u sledeće segmente:
-
dokument
-
izveštaj
-
lager
-
local
-
partner
-
system
-
transport
Segment local sačinjen je od poziva čija je obrada kompleksnija, omogućavajući i ukrštanje rezultata više poziva, ukoliko je to neophodno za generisanje traženih podataka. Preporuka je da se za svaki poziv (iz bilo kog segmenta), potraži alternativa u local segmentu.
XML struktuiran zahtev/odgovor
Struktura XML zahteva:
<request> <command name="#funkcija#" output="#xml/json#"> <parametar></parametar> </command> </request>
Svaki zahtev (request tag) može sadržati jednu ili više komandi (command tag). Shodno tome, odgovor (reposnse tag) sadrži onoliko rezultata koliko je komandi upućeno u zahtevu.
Struktura XML odgovora:
<response> <command name="#funkcija#" retcode="#0/1#" message="#poruka#"> <atribut></atribut> </command> </response>
Atribut retcode može imati dve vrednosti:
-
0 – operacija nije izvršena (greška prilikom izvršavanja),
-
1 – operacija uspešno izvršena.
Atribut message pruža dodatno objašnjenje / opis nastale greške.
DOKUMENT
Narudžbenica (komercijalista) [DEPRECATED]
Napomena: Ne preporučuje se korišćenje ovog poziva. Umesto njega treba koristiti local poziv – narudžbenica (korisnik / komercijalista).
XML zahtev:
<command name="dokument.narudzbenica.komercijalista" output="json"> <artikal> <id>8555</id> <kolicina>7</kolicina> <rabat>2</rabat> </artikal> <artikal> <id>8557</id> <kolicina>5</kolicina> <rabat>4</rabat> </artikal> <partner>30</partner> <status>K</status> <komercijalista>5</komercijalista> <valuta>23.03.10</valuta> // Važi do <rok>10</rok> // Rok plaćanja (broj dana) <objekat/> <tip/> <magacin/> // Ide ŠIFRA magacina, ne ID !
<napomena>Kontaktirati centralu pre isporuke.</napomena> // Maksimalno 75 karaktera po redu <print>2</print> // Broj kopija za štampanje (0 - bez štampanja dokumenta) </command>
XML odgovor:
<narudzbenica> <artikal>False</artikal> // False (za artikal koji nije prošao proveru) <broj>7226</broj> // -1 u slučaju greške (Id) <brojPF>561</brojPF> // -1 u slučaju greške (broj profakture) </narudzbenica>
JSON odgovor:
{ "artikal": [ False ], // False (za artikal koji nije prošao proveru) "broj": 7226, // -1 u slučaju greške (Id) "brojPF": 561 // -1 u slučaju greške (broj profakture) }
Narudžbenica (partner)
XML zahtev:
<command name="dokument.narudzbenica.partner" output="json"> <artikal> <id>8587</id> <kolicina>5</kolicina> </artikal> <artikal> <id>8556</id> <kolicina>3</kolicina> </artikal> <partner>11995</partner> <objekat/> <magacin/> <napomena/> // Maksimalno 75 karaktera po redu <firma/> // Opciono (u slučaju MP, eksternog korisnika) <pib/> <ime/> <prezime/> <jmbg/> <adresa/> <telefon/> <mobilni/> <email/> </command>
XML odgovor:
<narudzbenica> <artikal>False</artikal> // False (za artikal koji nije prošao proveru) <broj>7227</broj> // -1 u slučaju greške (Id) <brojPF>561</brojPF> // -1 u slučaju greške (broj profakture) </narudzbenica>
JSON odgovor:
{ "artikal": [ False ], // False (za artikal koji nije prošao proveru) "broj": 7227, // -1 u slučaju greške (Id) "brojPF": 561 // -1 u slučaju greške (broj profakture) }
Narudžbenica (dobavljač)
XML zahtev:
<command name="dokument.narudzbenica.dobavljac" output="json"> <artikal> <id>9331</id> <kolicina>2</kolicina> </artikal> <artikal> <id>9892</id> <kolicina>1</kolicina> </artikal> </command>
XML odgovor:
<narudzbenica> <broj>23</broj> // -1 u slučaju greške </narudzbenica>
JSON odgovor:
{ "broj": 23 // -1 u slučaju greške }
Faktura
XML zahtev:
<command name="dokument.faktura.komercijalista" output="json"> <artikal> <id>9331</id> <kolicina>2</kolicina> <cena>780</cena> <rabat>2</rabat> </artikal> <artikal> <id>9892</id> <kolicina>1</kolicina> <cena>1960</cena> <rabat>1</rabat> </artikal> <usluga> <opis>Usl. 001</opis> <kolicina>1</kolicina> <cena>1250</cena> <rabat>5</rabat> </usluga> <registrator>IF-</registrator> <tip>PDV18</tip> <komercijalista>5</komercijalista> <partner>11283</partner> <objekat/> <status>K</status> <valuta>26.09.11</valuta> <magacin>VP</magacin> <napomena/> // Maksimalno 75 karaktera po redu <print>2</print> // Broj kopija za štampanje (0 - bez štampanja dokumenta) </command>
XML odgovor:
<faktura> <broj>12551</broj> // -1 u slučaju greške (Id) <brojF>128</brojF> // -1 u slučaju greške (broj fakture) </faktura>
JSON odgovor:
{ "broj": 12551, // -1 u slučaju greške (Id) "brojF": 128 // -1 u slučaju greške (broj fakture) }
Interni prenos
XML zahtev:
<command name="dokument.intprenos.komercijalista" output="json"> <artikal> <id>9331</id> <kolicina>10</kolicina> <cena_nab>680</cena_nab> <cena_prod>760</cena_prod> </artikal> <artikal> <id>9892</id> <kolicina>1</kolicina> <cena_nab>1720</cena_nab> <cena_prod>1940</cena_prod> </artikal> <registrator>INT-</registrator> <mag_izlaz>REPMG</mag_izlaz> <mag_ulaz>PRMG</mag_ulaz> <datum>26.09.11</datum> <napomena/> // Maksimalno 75 karaktera po redu <print>2</print> // Broj kopija za štampanje (0 - bez štampanja dokumenta) </command>
XML odgovor:
<intprenos> <broj>73</broj> // -1 u slučaju greške </intprenos>
JSON odgovor:
{ "broj": 73 // -1 u slučaju greške }
IZVEŠTAJ
Godišnja tabela (pregled)
XML zahtev:
<command name="izvestaj.godisnjatabela.pregled" output="json"/>
XML odgovor:
<godisnjatabela> <datum>31.03.07</datum> <fakturisano>453.01</fakturisano> <naplaceno>0.00</naplaceno> </godisnjatabela> <godisnjatabela> <datum>30.04.07</datum> <fakturisano>4,463.55</fakturisano> <naplaceno>50.00</naplaceno> </godisnjatabela>
JSON odgovor:
[ [ "Datum", "Fakturisano", "Naplaceno" ], [ [ "31.03.07", "453.01", "0.00" ], [ "30.04.07", "4,463.55", "50.00" ] ] ]
Godišnja tabela – fakturisano
XML zahtev:
<command name="izvestaj.godisnjatabela.fakturisano" output="json"> <datum>01.01.07</datum> </command>
XML odgovor:
<fakturisano> <status>*</status> <datum>15.01.07</datum> <valuta>15.01.07</valuta> <partner>Verbatim</partner> <dokument>1</dokument> <iznos>1,000.00</iznos> </fakturisano>
JSON odgovor:
[ [ "Status", "Datum", "Valuta", "Partner", "Dokument", "Iznos" ], [ [ "*", "15.01.07", "15.01.07", "Verbatim", "1", "1,000.00" ] ] ]
Godišnja tabela – naplaćeno
XML zahtev:
<command name="izvestaj.godisnjatabela.naplaceno" output="json"> <datum>01.07.08</datum> </command>
XML odgovor:
<fakturisano> <status/> <datum>18.07.08</datum> <partner>Verbatim</partner> <dokument>28</dokument> <iznos>5,700.00</iznos> </fakturisano>
JSON odgovor:
[ [ "Status", "Datum", "Partner", "Dokument", "Iznos" ], [ [ "*", "18.07.08", "Verbatim", "28", "5,700.00" ] ] ]
Spisak bankovnih računa
XML zahtev:
<command name="izvestaj.izvod.banke" output="json"/>
XML odgovor:
<banka> <id>0</id> <naziv>RAIFFEISEN</naziv> <racun>265-1630310003382-57</racun> </banka> <banka> <id>4</id> <naziv>LHB BANKA</naziv> <racun/> </banka>
JSON odgovor:
[ [ "Id", "Naziv", "Racun" ], [ [ "0", "RAIFFEISEN", "265-1630310003382-57" ], [ "4", "LHB BANKA", "" ] ] ]
Pregled izvoda
XML zahtev:
<command name="izvestaj.izvod.izvodi" output="json"> <banka>0</banka> </command>
XML odgovor:
<izvod> <id>601</id> <broj>1</broj> <datum>10.01.99</datum> <prethodnostanje>0.00</prethodnostanje> <isplate>9,000.00</isplate> <uplate>25,300.00</uplate> <tekucestanje>16,300.00</tekucestanje> </izvod> <izvod> <id>602</id> <broj>2</broj> <datum>10.02.99</datum> <prethodnostanje>16,300.00</prethodnostanje> <isplate>1,000.00</isplate> <uplate>2,000.00</uplate> <tekucestanje>17,300.00</tekucestanje> </izvod>
JSON odgovor:
[ [ "Id", "Broj", "Datum", "Prethodno stanje", "Isplate (dug)", "Uplate (potr)", "Tekuce stanje" ], [ [ 601, 1, "10.01.99", "0.00", "9,000.00", "25,300.00", "16,300.00" ], [ 602, 2, "10.02.99", "16,300.00", "1,000.00", "2,000.00", "17,300.00" ] ] ]
Pregled promena (stavki) na izvodu
XML zahtev:
<command name="izvestaj.izvod.stavke" output="json"> <izvod>603</izvod> </command>
XML odgovor:
<stavka> <realizovano/> <partner>BELI BREG</partner> <dokument>-</dokument> <duguje/> <potrazuje>1,000.00</potrazuje> </stavka> <stavka> <realizovano>*</realizovano> <partner>ZEPTER</partner> <dokument>-</dokument> <duguje>15,000.00</duguje> <potrazuje/> </stavka>
JSON odgovor:
[ [ "Realizovano", "Partner", "Dokument", "Duguje", "Potrazuje" ], [ [ "", "BELI BREG", "-", "", "1,000.00" ], [ "*", "ZEPTER", "-", "15,000.00", "" ] ] ]
Lista narudžbenica (po komercijalisti)
XML zahtev:
<command name="izvestaj.narudzbenica.komercijalista" output="json"> <komercijalista>0</komercijalista> // 0 - svi komercijalisti </command>
Napomena: Ovaj poziv ne podržava filtriranje po statusu narudžbenice (realizovane/nerealizovane). Preporuka je koristiti local poziv – lista narudžbenica (po komercijalisti).
XML odgovor:
<narudzbenica> <id>7197</id> <status/> <dokument>pf-191</dokument> <datum>08.02.10</datum> <kupac>A TRADE</kupac> <komercijalista/> <vrednost>24,532.20</vrednost> </narudzbenica> <narudzbenica> <id>7198</id> <status/> <dokument>pf-192</dokument> <datum>08.02.10</datum> <kupac>INSTITUT VINČA</kupac> <komercijalista>Mikan Mikić</komercijalista> <vrednost>25,122.20</vrednost> </narudzbenica>
JSON odgovor:
[ [ "Id", "Status", "Dokument", "Datum", "Kupac", "Komercijalista", "Vrednost" ], [ [ 7197, "", "pf-191", "08.02.10", "A TRADE", "", "24,532.20" ], [ 7198, "", "pf-192", "08.02.10", "INSTITUT VINČA", "Mikan Mikić", "25,122.20" ] ] ]
Lista narudžbenica od kupca
XML zahtev:
<command name="izvestaj.narudzbenica.kupac" output="json"/> // Podrazumeva se ulogovani kupac
Napomena: Ovaj poziv ne podržava filtriranje po statusu narudžbenice (realizovane/nerealizovane). Preporuka je koristiti local poziv – lista narudžbenica od kupca.
XML odgovor:
<narudzbenica> <id>7197</id> <status/> <dokument>pf-191</dokument> <datum>08.02.10</datum> <kupac>A TRADE</kupac> <komercijalista/> <vrednost>24,532.20</vrednost> </narudzbenica> <narudzbenica> <id>7201</id> <status/> <dokument>pf-194</dokument> <datum>09.02.10</datum> <kupac>A TRADE</kupac> <komercijalista/> <vrednost>2,910.74</vrednost> </narudzbenica>
JSON odgovor:
[ [ "Id", "Status", "Dokument", "Datum", "Kupac", "Komercijalista", "Vrednost" ], [ [ 7197, "", "pf-191", "08.02.10", "A TRADE", "", "24,532.20" ] , [ 7201, "", "pf-194", "09.02.10", "A TRADE", "", "2,910.74" ] ] ]
Lista narudžbenica od dobavljača
XML zahtev:
<command name="izvestaj.narudzbenica.dobavljac" output="json"/> // Podrazumeva se ulogovani dobavljač
Napomena: Stavke narudžbenice mogu se dobiti pozivom upita izvestaj.narudzbenica.dokstavka.
XML odgovor:
<narudzbenica> <id>16</id> <dokument>1</dokument> <tmp/> <datum>01.05.13</datum> <naziv>ALFA</naziv> </narudzbenica> <narudzbenica> <id>18</id> <dokument>3</dokument> <tmp/> <datum>27.02.13</datum> <naziv>ALFA</naziv> </narudzbenica>
JSON odgovor:
[ [ "Id", "Dokument", "", "Datum", "Naziv" ], [ [ 16, "1", "", "01.05.13", "ALFA" ] , [ 18, "3", "", "27.02.13", "ALFA" ] ] ]
Stavke narudžbenice (narudžbenica od dobavljača)
XML zahtev:
<command name="izvestaj.narudzbenica.dokstavka" output="json"> <dokument>16</dokument> // Id dokumenta <command/>
XML odgovor:
<stavka> <id>8581</id> <sifra>001</sifra> <naziv>Aditiv AD-45</naziv> <kolicina>2</kolicina> <cena>12.00</cena> </stavka> <stavka> <id>8566</id> <sifra>002</sifra> <naziv>Bela fascikla</naziv> <kolicina>3</kolicina> <cena>2.00</cena> </stavka>
JSON odgovor:
[ [ "Id", "Šifra", "Naziv artikla", "Količina", "Cena" ], [ [ 8581, "001", "Aditiv AD-45", "2", "12.00" ] , [ 8566, "002", "Bela fascikla", "3", "2.00" ] ] ]
Narudžbenica (HTML format)
XML zahtev:
<command name="izvestaj.narudzbenica.dokument" output="xml"> <profaktura>7203</profaktura> </command>
Napomena: Znakove « i » potrebno je zameniti znacima < i > da bi HTML odgovor bio validan (sintaksno ispravan).
XML odgovor:
«div style="width: 600px; font-family: Verdana, Arial, Helvetica; font-size: 12pt; font-weight: normal;"» «div style="width: 100%; float: left; margin-bottom: 15px; border-bottom: 1px solid black; padding-bottom: 10px;"» «strong»DEMO«/strong»«br /» Nikolaja Gogolja 1«br /» Beograd«br /» «/div» «div style="display: block; float: right; margin-bottom: 15px;"» «strong»INSTITUT VINČA«/strong»«br /» VINČA«br /»«br /»«br /» «/div» «div style="clear: both; margin-bottom: 15px;"» Profaktura: pf-196«br /» Datum: 25.02.10«br /» «/div» «div style="margin-bottom: 15px;"» «table style="width: 100%; border: 1px solid black"» «thead» «tr style="border-bottom: 2px solid black"» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Šifra«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Artikal«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Količina«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Cena«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Popust«/th» «/tr» «/thead» «tbody» «tr» «td style="text-align: left;"»057«/td» «td style="text-align: left;"»Štednjak LAGUMA«/td» «td style="text-align: right;"»1«/td» «td style="text-align: right;"»9,000.00«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»058«/td» «td style="text-align: left;"»Štednjak SMEDEREVO«/td» «td style="text-align: right;"»5«/td» «td style="text-align: right;"»12,000.00«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»002«/td» «td style="text-align: left;"»Bela fascikla«/td» «td style="text-align: right;"»3«/td» «td style="text-align: right;"»40.00«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»003«/td» «td style="text-align: left;"»Biber«/td» «td style="text-align: right;"»5«/td» «td style="text-align: right;"»409.61«/td» «td style="text-align: right;"»0.00«/td» «/tr» «/tbody» «/table» «table style="width: 100%; border: 0; margin-top: 15px;"» «tbody» «tr» «td style="text-align: left;"»Vrednost bez PDV«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»71,168.05«/td» «/tr» «tr» «td style="text-align: left;"»Popust«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»Osnovica za obračun PDV«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»71,168.05«/td» «/tr» «tr» «td style="text-align: left;"»Porez na dodatu vrednost«/td» «td style="text-align: left;"»18.0%«/td» «td style="text-align: right;"»12,810.25«/td» «/tr» «tr» «td style="text-align: left;"»«strong»Za uplatu«/strong»«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»«strong»83,978.30«/strong»«/td» «/tr» «tr» «td style="text-align: left;"»Uplatiti na račun: 40803-685-5-154106«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»«/td» «/tr» «tr» «td style="text-align: left;"»Pozvati se na broj: 97 92-196«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»«/td» «/tr» «/tbody» «/table» «p style="margin: 30px 0 0 50px;"»DEMO«/p» «/div» «/div»
JSON odgovor:
{ "narudzbenica": "<HTML odgovor>" // Isti kao kod XML odgovora }
Faktura (HTML format)
XML zahtev:
<command name="izvestaj.faktura.dokument" output="xml"> <faktura>7203</faktura> </command>
Napomena: Znakove « i » potrebno je zameniti znacima < i > da bi HTML odgovor bio validan (sintaksno ispravan).
XML odgovor:
«div style="width: 600px; font-family: Verdana, Arial, Helvetica; font-size: 12pt; font-weight: normal;"» «div style="width: 100%; float: left; margin-bottom: 15px; border-bottom: 1px solid black; padding-bottom: 10px;"» «strong»DEMO«/strong»«br /» Nikolaja Gogolja 1«br /» Beograd«br /» «/div» «div style="display: block; float: right; margin-bottom: 15px;"» «strong»INSTITUT VINČA«/strong»«br /» VINČA«br /»«br /»«br /» «/div» «div style="clear: both; margin-bottom: 15px;"» Faktura: if-196«br /» Datum: 25.02.10«br /» «/div» «div style="margin-bottom: 15px;"» «table style="width: 100%; border: 1px solid black"» «thead» «tr style="border-bottom: 2px solid black"» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Šifra«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Artikal«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Količina«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Cena«/th» «th style="font-weight: normal; background: #DDE2EB; border-bottom: 2px solid black"»Popust«/th» «/tr» «/thead» «tbody» «tr» «td style="text-align: left;"»057«/td» «td style="text-align: left;"»Štednjak LAGUMA«/td» «td style="text-align: right;"»1«/td» «td style="text-align: right;"»9,000.00«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»058«/td» «td style="text-align: left;"»Štednjak SMEDEREVO«/td» «td style="text-align: right;"»5«/td» «td style="text-align: right;"»12,000.00«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»002«/td» «td style="text-align: left;"»Bela fascikla«/td» «td style="text-align: right;"»3«/td» «td style="text-align: right;"»40.00«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»003«/td» «td style="text-align: left;"»Biber«/td» «td style="text-align: right;"»5«/td» «td style="text-align: right;"»409.61«/td» «td style="text-align: right;"»0.00«/td» «/tr» «/tbody» «/table» «table style="width: 100%; border: 0; margin-top: 15px;"» «tbody» «tr» «td style="text-align: left;"»Vrednost bez PDV«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»71,168.05«/td» «/tr» «tr» «td style="text-align: left;"»Popust«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»0.00«/td» «/tr» «tr» «td style="text-align: left;"»Osnovica za obračun PDV«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»71,168.05«/td» «/tr» «tr» «td style="text-align: left;"»Porez na dodatu vrednost«/td» «td style="text-align: left;"»18.0%«/td» «td style="text-align: right;"»12,810.25«/td» «/tr» «tr» «td style="text-align: left;"»«strong»Za uplatu«/strong»«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»«strong»83,978.30«/strong»«/td» «/tr» «tr» «td style="text-align: left;"»Uplatiti na račun: 40803-685-5-154106«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»«/td» «/tr» «tr» «td style="text-align: left;"»Pozvati se na broj: 97 92-196«/td» «td style="text-align: left;"»«/td» «td style="text-align: right;"»«/td» «/tr» «/tbody» «/table» «p style="margin: 30px 0 0 50px;"»DEMO«/p» «/div» «/div»
JSON odgovor:
{ "faktura": "<HTML odgovor>" // Isti kao kod XML odgovora }
LAGER
Prikaz cenovnika
Napomena : ova funkcija je dostupna samo tipu korisnika : App i komercijalista.
XML zahtev:
<command name="lager.artikal.cenovnik" output="xml"> <cenovnik>MP</cenovnik> </command>
XML odgovor :
<stavka> <id>8545</id> <sifra>017</sifra> <naziv>Frižider OBODIN 100l</naziv> <cena>16600.000</cena> </stavka> <stavka> <id>8546</id> <sifra>018</sifra> <naziv>Frižider OBODIN 110l</naziv> <cena>17430.000</cena> </stavka>
JSON odgovor :
[ { "id" : 8545, "sifra" : "017", "naziv" : "Frižider OBODIN 100l", "cena" : "16600.000" }, { "id" : 8546, "sifra" : "018", "naziv" : "Frižider OBODIN 110l", "cena" : "17430.000" } ]
Spisak (zadatih) artikala
XML zahtev:
<command name="lager.artikal.svi" output="xml"> <partnerId/> <artikal> <id>8581</id> </artikal> <artikal> <id>8551</id> </artikal> </command>
Napomena: Maksimalno se može zadati 4.000 artikala.
XML odgovor:
<artikal> <id>8581</id> <sifra>001</sifra> <naziv>Aditiv AD-45</naziv> <jm>m2</jm> <kolicina>19806.00</kolicina> <rezervacija>127.00</rezervacija> <cena>250.00</cena> <porez>18</porez> <rabat>0.00</rabat> <vrsta>AD</vrsta> <bar-kod>0185898001858</bar-kod> <proizvodjac/> <boja>B</boja> <namena/> <pakovanje>6</pakovanje> <pakovanje_jm>kutija</pakovanje_jm> </artikal> <artikal> <id>8551</id> <sifra>057</sifra> <naziv>Štednjak LAGUMA</naziv> <jm>kom</jm> <kolicina>50.00</kolicina> <rezervacija>21.00</rezervacija> <cena>9000.00</cena> <porez>18</porez> <rabat>0.00</rabat> <vrsta>ŠP</vrsta> <bar-kod>5785598057855</bar-kod> <proizvodjac/> <boja>R</boja> <namena/> <pakovanje>1</pakovanje> <pakovanje_jm/> </artikal>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv artikla", "Jm", "Kolicina", "Rezervacija", "Cena", "Porez", "Rabat", "Vrsta", "Bar-kod", "Proizvodjac", "Boja", "Namena", "Pakovanje", "Pakovanje Jm" ], [ [ 8581, "001", "Aditiv AD-45", "m2", 19806.00, 127.00, "250.00", "18", "0.00", "AD", "0185898001858", "", "B", "", 6, "kutija" ], [ 8551, "057", "Štednjak LAGUMA", "kom", 50.00, 21.00, "9000.00", "18", "0.00", "ŠP", "5785598057855", "", "R", "", 1, "" ] ] ]
Napomena za artikal
XML zahtev:
<command name="lager.artikal.napomena" output="json"> <artikal>8555</artikal> </command>
XML odgovor:
<artikal> <napomena>Garancija godinu dana.</napomena> </artikal>
JSON odgovor:
{ "napomena" : "Garancija godinu dana." }
Stanje po magacinima
XML zahtev:
<command name="lager.artikal.magacin" output="json"> <artikal>8581</artikal> </command>
XML odgovor:
<stanje> <sifra>MGPR</sifra> <magacin>Gotovi proizvodi</magacin> <kolicina>12</kolicina> <rezervacija>0</rezervacija> </stanje> <stanje> <sifra>VELMG</sifra> <magacin>VP magacin</magacin> <kolicina>19785</kolicina> <rezervacija>127</rezervacija> </stanje>
JSON odgovor:
[ [ "Sifra", "Magacin", "Kolicina", "Rezervacija" ], [ [ "MGPR", "Gotovi proizvodi", "12", "0" ], [ "VELMG", "VP magacin", "19785", "127" ] ] ]
Stanje po magacinima sa prikazom količina u bojama
XML zahtev:
<command name="lager.artikal.magacin_2" output="json"> <artikal>8581</artikal> </command>
XML odgovor:
<stanje> <sifra>MGPR</sifra> <magacin>Gotovi proizvodi</magacin> <kolicina>Y</kolicina> </stanje> <stanje> <sifra>VELMG</sifra> <magacin>VP magacin</magacin> <kolicina>B</kolicina> </stanje>
JSON odgovor:
[ [ "Sifra", "Magacin", "Kolicina" ], [ [ "MGPR", "Gotovi proizvodi", "Y" ], [ "VELMG", "VP magacin", "B" ] ] ]
Legenda boja (za količinu)
XML zahtev:
<command name="lager.artikal.legenda" output="json"/>
XML odgovor:
<legenda> <boja>Y</boja> <opis>Mala količina</opis> </legenda> <legenda> <boja>G</boja> <opis>Dovoljna kol.</opis> </legenda> <legenda> <boja>B</boja> <opis>Trajna količina</opis> </legenda> <legenda> <boja>R</boja> <opis>Nema na stanju</opis> </legenda>
JSON odgovor:
[ [ "Boja", "Opis" ], [ [ "Y", "Mala količina" ], [ "G", "Dovoljna kol." ], [ "B", "Trajna količina" ], [ "R", "Nema na stanju" ] ] ]
Legenda atributa
XML zahtev:
<command name="lager.atribut.svi" output="json"/>
XML odgovor:
<atribut> <id>1</id> <naziv>ISO standard</naziv> <vrsta>5002</vrsta> </atribut> <atribut> <id>2</id> <naziv>Boja</naziv> <vrsta>5002</vrsta> </atribut> <atribut> <id>3</id> <naziv>Garancija</naziv> <vrsta>5002</vrsta> </atribut>
JSON odgovor:
[ [ "ID", "Naziv", "Vrsta" ], [ [ 1, "ISO standard", 5002 ], [ 2, "Boja", 5002 ], [ 3, "Garancija", 5002 ] ] ]
Vrste artikala
XML zahtev:
<command name="lager.vrsta.svi" output="json"/>
XML odgovor:
<vrsta> <sifra>PA</sifra> <naziv>PREHRAMBENI ARTIKLI</naziv> <id>5001</id> <nad>0</nad> // Id nadvrste (ako je različito od 0, u pitanju je stavka podrvrste) <vp>VP</vp> // Vrsta se prikazuje u VP-u <mp>MP</mp> // Vrsta se prikazuje u MP-u </vrsta> <vrsta> <sifra>BT</sifra> <naziv>BELA TEHNIKA</naziv> <id>5002</id> <nad>0</nad> <vp></vp> <mp></mp> </vrsta>
JSON odgovor:
[ [ "Sifra", "Naziv vrste", "Id", "Nad", "VP", "MP" ], [ [ "PA", "PREHRAMBENI ARTIKLI", 5001, 0, "VP", "MP" ], [ "BT", "BELA TEHNIKA", 5002, 0, "VP", "" ] ] ]
Spisak magacina
XML zahtev:
<command name="lager.magacin.svi" output="json"> <svi>true</svi> // Lista sve magacine </command>
XML odgovor:
<magacin> <id>1</id> <sifra>MGPR</sifra> <naziv>Gotovi proizvodi</naziv> <useId>0</useId> // Id magacina koji treba da se koristi (umesto originalnog Id-a) </magacin> <magacin> <id>4</id> <sifra>SIROV</sifra> <naziv>Sirovine</naziv> <useId>0</useId> </magacin>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "UseID" ], [ [ 1, "MGPR", "Gotovi proizvodi", 0 ], [ 4, "SIROV", "Sirovine", 0 ] ] ]
Lager lista (sekvencijalni poziv)
XML zahtev:
<command name="lager.data.artikal" output="xml"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 artikala, počevši od startne pozicije. S obzirom da je namena ovog poziva da vrati neophodne podatke za ažuriranje baze (videti ažuriranje artikala), izostavljena je dodatna transformacija za imenovanje atributa. Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<root> <query id="1" retcode="1" message=""> <record> <column>8545</column> // Id <column>017</column> // Šifra <column>Frižider OBODIN 100l</column> // Naziv <column>kom</column> // Jedinica mere <column>18</column> // Porez <column>FR</column> // Vrsta <column>1785498017854</column> // Bar-kod <column>Obodin</column> // Proizvođač <column/> // Namena <column>NP</column> // Atributi <column>V</column> // VP <column>M</column> // MP <column>127</column> // Dobavljač Id <column>4</column> // Prodaja - 7 dana <column>21</column> // 30 dana </record> <record> <column>8546</column> <column>018</column> <column>Frižider OBODIN 110l</column> <column>kom</column> <column>18</column> <column>FR</column> <column>1885498018854</column> <column>Obodin</column> <column/> <column/> <column>V</column> <column>M</column> <column>215</column> <column>13</column> <column>42</column> </record> <record> <column>CONTINUE 12301</column> // Naredna startna pozicija (samo ukoliko ima još stavki) </record> </query> </root>
JSON transformacija nije implementirana, a odgovor u slučaju njenog zahteva će biti identičan XML formatu odgovora.
Alternativne šifre (sekvencijalni poziv)
XML zahtev:
<command name="lager.data.artikal_altsifra" output="xml"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 alternativnih šifara, počevši od startne pozicije. S obzirom da je namena ovog poziva da vrati neophodne podatke za ažuriranje baze (videti ažuriranje alternativnih šifara), izostavljena je dodatna transformacija za imenovanje atributa. Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<root> <query id="1" retcode="1" message=""> <record> <column>1234</column> // Id <column>A00123</column> // Šifra </record> <record> <column>1234</column> <column>A01111</column> </record> <record> <column>1234</column> <column>A00001</column> </record> <record> <column>1235</column> <column>B99990</column> </record> <record> <column>CONTINUE 5001</column> // Naredna startna pozicija (samo ukoliko ima još stavki) </record> </query> </root>
JSON transformacija nije implementirana, a odgovor u slučaju njenog zahteva će biti identičan XML formatu odgovora.
Napomene za artikle (sekvencijalni poziv)
XML zahtev:
<command name="lager.data.artikal_napomena" output="xml"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 napomena, počevši od startne pozicije. S obzirom da je namena ovog poziva da vrati neophodne podatke za ažuriranje baze (videti ažuriranje napomena), izostavljena je dodatna transformacija za imenovanje atributa. Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<root> <query id="1" retcode="1" message=""> <record> <column>##1234</column> // ##<Id> </record> <record> <column>Napomena 1</column> // Prvi red </record> <record> <column>Napomena N</column> // N-ti red </record> <record> <column>##1235</column> </record> <record> <column>Napomena</column> </record> <record> <column>CONTINUE 5001</column> // Naredna startna pozicija (samo ukoliko ima još stavki) </record> </query> </root>
JSON transformacija nije implementirana, a odgovor u slučaju njenog zahteva će biti identičan XML formatu odgovora.
Atributi artikala (sekvencijalni poziv)
XML zahtev:
<command name="lager.data.artikal_atribut" output="xml"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 napomena, počevši od startne pozicije. S obzirom da je namena ovog poziva da vrati neophodne podatke za ažuriranje baze (videti ažuriranje atributa), izostavljena je dodatna transformacija za imenovanje atributa. Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<root> <query id="1" retcode="1" message=""> <record> <column>1248</column> // Artikal Id <column>1</column> // Atribut Id <column>ISO-99872</column> // Vrednost </record> <record> <column>1248</column> <column>3</column> <column>Godinu dana</column> </record> <record> <column>CONTINUE 5001</column> // Naredna startna pozicija (samo ukoliko ima još stavki) </record> </query> </root>
JSON transformacija nije implementirana, a odgovor u slučaju njenog zahteva će biti identičan XML formatu odgovora.
LOCAL
Informacije o portalu
XML zahtev:
<command name="local.portal.info" output="json"/>
XML odgovor:
<?xml version="1.0"?> <portal> <id>1</id> <naziv>WINGS software</naziv> <email>office@wings.rs</email> <datum/> <initDB>0</initDB> <tip>3</tip> // Tip ulogovanog korisnika (1-APP korisnik, 2-komercijalista, 3-kupac, 4-eksterni korisnik, 5-dobavljač) <parametri> <Mail>0</Mail> // Slanje obaveštenja na mail (0-ne šalje se mail, 1-vlasnik, 2-kupac, 3-vlasnik+kupac) <ArtIni>1</ArtIni> // Inicijalni pregled artikala (1-tabelarni, 2-sa slikama) <ArtExp>1</ArtExp> // Eksport artikala <ArtVrs>1</ArtVrs> // Prikaz vrsta artikala <ArtSubSrc>1</ArtSubSrc> // Traženje artikala po delu naziva <ProView>1</ProView> // Prikaz narudžbenice posle kreiranja <PicView>1</PicView> // Prikaz slika u tabeli <Obj>1</Obj> // Izbor objekata <Rab>1</Rab> // Izmena rabata <Mag>1</Mag> // Izbor magacina <ChkKol>0</ChkKol> // Provera stanja kod naručivanja <Pon>0</Pon> // Zahtev za ponudu (Narudžbenica) <PopCena>0</PopCena> // Cena sa popustom (Artikli, Narudžbenica) <AqlMaxKol>0</AqlMaxKol> // Maksimalna količina za prikaz <Kup>K</Kup> // Statusi kupaca <ArtMag>1</ArtMag> // Prikaz stanja po magacinima <AqlTabArt>1</AqlTabArt> // Prikaz tabele artikala bez traženja </parametri> </portal>
JSON odgovor:
{ "id": "1", "naziv": "WINGS software", "email": "office@wings.rs", "datum": "", "initDB": 0, "tip": 3, "parametri": { "Mail": 0, "ArtIni": 1, "ArtExp": 1, "ArtVrs": 1, "ArtSubSrc": 1, "ProView": 1, "PicView": 1, "Obj": 1, "Rab": 1, "Mag": 1, "ChkKol": 0, "Pon": 0, "PopCena": 0, "AqlMaxKol": 0, "Kup": "K", "ArtMag": 1, "AqlTabArt": 1 } }
Informacije o korisniku
XML zahtev:
<command name="local.korisnik.info" output="json"/>
XML odgovor:
<korisnik> <id>101</id> <username>DEMO</username> </korisnik>
JSON odgovor:
{ "id": "101", "username": "DEMO" }
Informacije o komercijalisti
XML zahtev:
<command name="local.komercijalista.info" output="json"/>
XML odgovor:
<komercijalista> <id>5</id> <ime>Laza Lazić</ime> <sifra>K-BG1</sifra> <jmbg>2407973715222</jmbg> </komercijalista>
JSON odgovor:
{ "id": "5", "ime": "Laza Lazić", "sifra": "K-BG1", "jmbg": "2407973715222" }
Informacije o eksternom korisniku
XML zahtev:
<command name="local.extuser.info" output="json"/>
XML odgovor:
<extuser> <id>127</id> <tip>1</tip> <ime>Petar</ime> <prezime>Petrović</prezime> <jmbg/> <firma>SOFT PLUS</firma> <pib/> <adresa/> <telefon/> <mobilni/> <email/> <napomena/> <kupac> // Kupac na koga će se u APP-u evidentirati narudžbenica (MP) <id>12023</id> <sifra>401</sifra> <naziv>_MP KUPAC</naziv> <adresa1/> <adresa2/> <telefon/> <pib/> <rabat>0.00</rabat> <mail/> </kupac> <autoLogin>0</autoLogin> // Automatsko logovanje na portal, bez autorizacije (MP) </extuser>
JSON odgovor:
{ "id": "127", "tip": "1", "ime": "Petar", "prezime": "Petrović", "jmbg": "", "firma": "SOFT PLUS", "pib": "", "adresa": "", "telefon": "", "mobilni": "", "email": "", "napomena": "", "kupac": { "id": 12023, "sifra": "401", "naziv": "_MP KUPAC", "adresa1": "", "adresa2": "", "telefon": "", "pib": "", "rabat": "0.00", "mail": "" }, "autoLogin": "0" }
Otvaranje novog kupca
XML zahtev:
<command name="local.kupac.nov" output="xml"> <naziv>XY FIRMA</naziv> <sifra>FRMXY</sifra> <adresa>Bulevar JNA BB</adresa> <mesto>11000 Beograd</mesto> <telefon>011/1234-567</telefon> <fax>011/1234-578</fax> <mobilni>063/123-123</mobilni> <pib>102345678</pib> <email>pera@example.com</email> <radnovreme>9-16h</radnovreme> <kontakt>Pera</kontakt> <status>K</status> <komercijalista>5</komercijalista> <klasa>A1</klasa> // ne čuva se u keširanim podacima </command>
XML odgovor:
<kupac> <id>385</id> // Id novootvorenog kupca </kupac>
JSON odgovor:
{ "sifra": 385 // Id novootvorenog kupca }
Spisak kupaca po komercijalisti
XML zahtev:
<command name="local.kupac.svi" output="json"> <komercijalista>5</komercijalista> <status>K</status> // K - kupac, D - dobavljač </command>
Napomena:
-
Poziv vraća keširane podatke.
-
Filtriranje po komercijalisti nije obavezno, može se izostaviti parametar.
-
Omogućeno filtriranje po tipu partnera (K-kupac, D-dobavljač). Ako se ništa ne prosledi, podrazumeva se K. Odgovor će uvek biti uokviren sa <kupac> i kada je filter postavljen da se vraćaju samo dobavljači.
XML odgovor:
<kupac> <id>11995</id> <sifra/> <naziv>A TRADE</naziv> <adresa>Bulevar JNA BB</adresa> <mesto>11000 BEOGRAD</mesto> <kontakt>Pera</kontakt> <telefon>123-456</telefon> <fax/> <mobilni/> <email/> <radnovreme/> <status>K</status> <pib/> <rabat>0.00</rabat> <komercijalista>5</komercijalista> <mb>24418750</mb> <limit>0.00</limit> <racun/> <rokplacanja>30</rokplacanja> </kupac> <kupac> <id>10</id> <sifra>109</sifra> <naziv>AUDIO VIDEO CENTAR</naziv> <adresa/> <mesto/> <kontakt/> <telefon/> <fax/> <mobilni/> <email/> <radnovreme/> <status>K</status> <pib/> <rabat>0.00</rabat> <komercijalista>5</komercijalista> <mb/> <limit>0.00</limit> <racun/> <rokplacanja>90</rokplacanja> </kupac>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "Adresa", "Mesto", "Kontakt", "Telefon", "Fax", "Mobilni", "E-mail", "Radno vreme", "Status", "PIB", "Rabat", "Komercijalista", "Maticni broj", "Limit", "Tekuci racun", "Rok placanja" ], [ [ 11995, "", "A TRADE", "Bulevar JNA BB", "11000 BEOGRAD", "Pera", "123-456", "", "", "", "", "K", "", "0.00", 5, "24418750", 0.00, "", 30 ], [ 10, "109", "AUDIO VIDEO CENTAR", "", "", "", "", "", "", "", "", "K", "", "0.00", 5, "", 0.00, "", 90 ] ] ]
Spisak objekata (za partnera) po komercijalisti
XML zahtev:
<command name="local.objekat.svi" output="json"> <partner>99</partner> <komercijalista>0</komercijalista> </command>
XML odgovor:
<objekat> <id>1</id> <sifra>TNS</sifra> <naziv>TOYOTA NOVI SAD</naziv> <adresa/> <mesto>Novi Sad</mesto> <telefon/> <fax/> <komercijalista>0</komercijalista> <kontakt>Pera</kontakt> <mobilni/> <email/> <objekat> <objekat> <id>2</id> <sifra>TLE</sifra> <naziv>TOYOTA LESKOVAC</naziv> <adresa/> <mesto>Leskovac</mesto> <telefon/> <fax/> <komercijalista>0</komercijalista> <kontakt>Mika</kontakt> <mobilni/> <email/> <objekat>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "Adresa", "Mesto", "Telefon", "Fax", "Komercijalista", "Kontakt", "Mobilni", "E-mail" ], [ [ 1, "TNS", "TOYOTA NOVI SAD", "", "Novi Sad", "", "", 0, "Pera", "", "" ], [ 2, "TLE", "TOYOTA LESKOVAC", "", "Leskovac", "", "", 0, "Mika", "", "" ] ] ]
Spisak objekata (za partnera) po komercijalisti – keširani podaci
XML zahtev:
<command name="local.cache.objekat" output="json"> <partnerId>99</partnerId> // (ukoliko je komercijalista autorizovani korisnik, ovaj element je opcion -> vraća spisak svih njegovih objekata) <komercijalista>0</komercijalista> </command>
XML odgovor:
<objekat> <id>1</id> <sifra>TNS</sifra> <naziv>TOYOTA NOVI SAD</naziv> <adresa/> <mesto>Novi Sad</mesto> <telefon/> <fax/> <komercijalista>0</komercijalista> <kontakt>Pera</kontakt> <mobilni/> <email/> <partnerId>99</partnerId> <objekat> <objekat> <id>2</id> <sifra>TLE</sifra> <naziv>TOYOTA LESKOVAC</naziv> <adresa/> <mesto>Leskovac</mesto> <telefon/> <fax/> <komercijalista>0</komercijalista> <kontakt>Mika</kontakt> <mobilni/> <email/> <partnerId>99</partnerId> <objekat>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "Adresa", "Mesto", "Telefon", "Fax", "Komercijalista", "Kontakt", "Mobilni", "E-mail", "Id partnera" ], [ [ 1, "TNS", "TOYOTA NOVI SAD", "", "Novi Sad", "", "", 0, "Pera", "", "", 99 ], [ 2, "TLE", "TOYOTA LESKOVAC", "", "Leskovac", "", "", 0, "Mika", "", "", 99 ] ] ]
Lager lista sa prikazom količina i rezervacija
XML zahtev:
<command name="local.cache.artikal" output="json"> <magacin/> // Id magacina <partnerId/> // Id partnera <dStart>0</dStart> // Redni broj početnog sloga <dLength>10</dLength> // Broj slogova za prikaz <dSearch/> // Uslov pretrage podataka (filter) <dProizvodjac/> // Filtriranje po proizvođaču <dVrste/> // Filtriranje po vrsti/vrstama artikla <dAtributi/> // Filtriranje artikala koji su na akciji, rasprodaji, itd. <atr> // Filtriranje po atributima <id>1</id> <vrednost>ISO-99227</vrednost> </atr> <atr> <id>3</id> <vrednost>2 godine</vrednost> </atr> <dAtrRet>true</dAtrRet> // Prikaz atributa za svaki artikal (samo za XML output; type: boolean) <artikal> <id>8581</id> </artikal> <artikal> <id>8551</id> </artikal> <dNapRet>true</dNapRet> // Prikaz napomene za svaki artikal (type: boolean) <modul/> // Modul iz kog se vrši poziv { ART, NAR, XML, PDF, ADM } (interno, statistika) <offline/> // Artikli sa podrazumevanim cenama (type: boolean) </command>
Napomena: Ukoliko je dobavljač (tip korisnika) autorizovani korisnik ovog servisa, prikazuju se samo artikli od tog dobavljača. U tom slucaju, prosleđeni parametar partnerId se ne uzima u obzir. Dobavljač ima mogućnost da prati analizu prodaje njegovih artikala – broj prodatih artikala u poslednjih 7 i 30 dana.
XML odgovor:
<artikal> <id>8581</id> <sifra>001</sifra> <bar-kod>0185898001858</bar-kod> <naziv>Aditiv AD-45</naziv> <proizvodjac/> <jm>m2</jm> <kolicina>19806</kolicina> <rezervacija>127</rezervacija> <cena>250.00</cena> // Cena <rabat>0.00</rabat> // Rabat (%) <cena_rabat>250.00</cena_rabat> // Cena - Rabat <porez>18</porez> // PDV (%) <cena_pdv>295.00</cena_pdv> // Cena + PDV <cena_mp>450.00</cena_mp> // MP cena <vrsta>AD</vrsta> <namena/> <pakovanje>6</pakovanje> <pakovanje_jm>kutija</pakovanje_jm> <atributi>NR</atributi> <atributi_2> // Ukoliko je prosleđen parametar dAtrRet (true) <atr> <id>1</id> <vrednost>ISO-99227</vrednost> </atr> <atr> <id>2</id> <vrednost/> </atr> <atr> <id>3</id> <vrednost>2 godine</vrednost> </atr> </atributi_2> <prodaja> // Analiza prodaje (samo za autorizovanog dobavljača) <p7>10</p7> // Prodaja - 7 dana <p30>45</p30> // 30 dana </prodaja> <napomena/> </artikal> <artikal> <id>8551</id> <sifra>057</sifra> <bar-kod>5785598057855</bar-kod> <naziv>Štednjak LAGUMA</naziv> <proizvodjac/> <jm>kom</jm> <kolicina>1</kolicina> <rezervacija>21</rezervacija> <cena>9,000.00</cena> <rabat>0.00</rabat> <cena_rabat>9,000.00</cena_rabat> <porez>18</porez> <cena_pdv>10,620.00</cena_pdv> <cena_mp>12,000.00</cena_mp> <vrsta>ŠP</vrsta> <namena/> <pakovanje>1</pakovanje> <pakovanje_jm/> <atributi/> <atributi_2> <atr> <id>1</id> <vrednost>ISO-99227</vrednost> </atr> <atr> <id>2</id> <vrednost/> </atr> <atr> <id>3</id> <vrednost>2 godine</vrednost> </atr> </atributi_2> <prodaja> <p7>1</p7> <p30>8</p30> </prodaja> <napomena/> </artikal> <filtertotal>2</filtertotal> <total>76</total>
JSON odgovor:
[ [ "ID", "Šifra", "Bar-kod", "Naziv artikla", "Proizvođač", "Jm", "Količina", "Rezervacija", "Cena", "Rabat (%)", "Cena-Rabat", "PDV (%)", "Cena+PDV", "MP cena", "Vrsta", "Namena", "Pakovanje", "Pakovanje Jm", "Atributi", "Prodaja", "Napomena" ], [ [ 8581, "001", "0185898001858", "Aditiv AD-45", "", "m2", 19806, 127, "250.00", "0.00", "250.00", "18", "295.00", "450.00", "AD", "", 6, "kutija", "NR", { "p7": "10", "p30": "45" }, "" ], [ 8551, "057", "5785598057855", "Štednjak LAGUMA", "", "kom", 1, 21, "9,000.00", "0.00", "9,000.00", "18", "10,620.00", "12,000.00", "ŠP", "", 1, "", "", { "p7": "1", "p30": "8" }, "" ] ], [ 2, 76 ] ]
Lager lista sa prikazom količina u bojama
XML zahtev:
<command name="local.cache.artikal_2" output="json"> <magacin/> // Id magacina <partnerId/> // Id partnera <dStart>0</dStart> // Redni broj početnog sloga <dLength>10</dLength> // Broj slogova za prikaz <dSearch/> // Uslov pretrage podataka (filter) <dProizvodjac/> // Filtriranje po proizvođaču <dVrste/> // Filtriranje po vrsti/vrstama artikla <dAtributi/> // Filtriranje artikala koji su na akciji, rasprodaji, itd. <atr> // Filtriranje po atributima <id>1</id> <vrednost>ISO-99227</vrednost> </atr> <atr> <id>3</id> <vrednost>2 godine</vrednost> </atr> <dAtrRet>true</dAtrRet> // Prikaz atributa za svaki artikal (samo za XML output; type: boolean) <artikal> <id>8581</id> </artikal> <artikal> <id>8551</id> </artikal> <dNapRet>true</dNapRet> // Prikaz napomene za svaki artikal (type: boolean) <modul/> // Modul iz kog se vrši poziv { ART, NAR, XML, PDF, ADM } (interno, statistika) <offline/> // Artikli sa podrazumevanim cenama (type: boolean) </command>
Napomena: Ukoliko je dobavljač (tip korisnika) autorizovani korisnik ovog servisa, prikazuju se samo artikli od tog dobavljača. U tom slucaju, prosleđeni parametar partnerId se ne uzima u obzir. Dobavljač ima mogućnost da prati analizu prodaje njegovih artikala – broj prodatih artikala u poslednjih 7 i 30 dana.
XML odgovor:
<artikal> <id>8581</id> <sifra>001</sifra> <bar-kod>0185898001858</bar-kod> <naziv>Aditiv AD-45</naziv> <proizvodjac/> <jm>m2</jm> <kolicina>B</kolicina> <cena>250.00</cena> // Cena <rabat>0.00</rabat> // Rabat (%) <cena_rabat>250.00</cena_rabat> // Cena - Rabat <porez>18</porez> // PDV (%) <cena_pdv>295.00</cena_pdv> // Cena + PDV <cena_mp>450.00</cena_mp> // MP cena <vrsta>AD</vrsta> <namena/> <pakovanje>6</pakovanje> <pakovanje_jm>kutija</pakovanje_jm> <atributi>NR</atributi> <atributi_2> // Ukoliko je prosleđen parametar dAtrRet (true) <atr> <id>1</id> <vrednost>ISO-99227</vrednost> </atr> <atr> <id>2</id> <vrednost/> </atr> <atr> <id>3</id> <vrednost>2 godine</vrednost> </atr> </atributi_2> <prodaja> // Analiza prodaje (samo za autorizovanog dobavljača) <p7>10</p7> // Prodaja - 7 dana <p30>45</p30> // 30 dana </prodaja> <napomena/> </artikal> <artikal> <id>8551</id> <sifra>057</sifra> <bar-kod>5785598057855</bar-kod> <naziv>Štednjak LAGUMA</naziv> <proizvodjac/> <jm>kom</jm> <kolicina>R</kolicina> <cena>9,000.00</cena> <rabat>0.00</rabat> <cena_rabat>9,000.00</cena_rabat> <porez>18</porez> <cena_pdv>10,620.00</cena_pdv> <cena_mp>12,000.00</cena_mp> <vrsta>ŠP</vrsta> <namena/> <pakovanje>1</pakovanje> <pakovanje_jm/> <atributi/> <atributi_2> <atr> <id>1</id> <vrednost>ISO-99227</vrednost> </atr> <atr> <id>2</id> <vrednost/> </atr> <atr> <id>3</id> <vrednost>2 godine</vrednost> </atr> </atributi_2> <prodaja> <p7>1</p7> <p30>8</p30> </prodaja> <napomena/> </artikal> <filtertotal>2</filtertotal> <total>76</total>
JSON odgovor:
[ [ "ID", "Šifra", "Bar-kod", "Naziv artikla", "Proizvođač", "Jm", "Količina", "Cena", "Rabat (%)", "Cena-Rabat", "PDV (%)", "Cena+PDV", "MP cena", "Vrsta", "Namena", "Pakovanje", "Pakovanje Jm", "Atributi", "Prodaja", "Napomena" ] [ [ 8581, "001", "0185898001858", "Aditiv AD-45", "", "m2", "B", "250.00", "0.00", "250.00", "18", "295.00", "450.00", "AD", "", 6, "kutija", "NR", { "p7": "10", "p30": "45" }, "" ], [ 8551, "057", "5785598057855", "Štednjak LAGUMA", "", "kom", "R", "9,000.00", "0.00", "9,000.00", "18", "10,620.00", "12,000.00", "ŠP", "", 1, "", "", { "p7": "1", "p30": "8" }, "" ] ], [ 2, 76 ] ]
Vrste artikala
Poziv vraća vrste koje su keširane na Wingsovom serveru. U zavisnosti od tipa autorizovanog korisnika, vraćaju se samo VP ili samo MP vrste artikala.
XML zahtev:
<command name="local.cache.vrsta" output="json"> <tip>mp</tip> // moguće vrednosti [sve,mp,vp] </command>
XML odgovor:
<vrsta> <sifra>PA</sifra> <naziv>PREHRAMBENI ARTIKLI</naziv> <id>5001</id> <nad>0</nad> // Id nadvrste (ako je različito od 0, u pitanju je stavka podrvrste) <vp>V</vp> // Ukoliko je vp stoji oznaka V <mp>M</mp> // Ukoliko je mp stoji oznaka M </vrsta> <vrsta> <sifra>BT</sifra> <naziv>BELA TEHNIKA</naziv> <id>5002</id> <nad>0</nad> <vp></vp> <mp></mp> </vrsta>
JSON odgovor:
[ [ "Sifra", "Naziv vrste", "Id", "Nad", "VP", "MP" ], [ [ "PA", "PREHRAMBENI ARTIKLI", 5001, 0, "V", "M"], [ "BT", "BELA TEHNIKA", 5002, 0, "", ""] ] ]
Napomena: parametar tip nije obavezan. Ukoliko nema parametra učitavaju se vrste u zavisnosti od tipa korisnika : VP za App korisnika, komercijalistu i partnera, MP za maloprodajnog kupca.
Finansijska kartica partnera – keširani podaci
XML zahtev:
<command name="local.cache.finkartica" output="json"> <partnerId>11990</partnerId> <status>K</status> // K - kupac, D - dobavljač </command>
XML odgovor:
<kartica> <stavka> <realizovano/> <datum>01.01.07</datum> <valuta>01.01.07</valuta> <dokument>1</dokument> <duguje/> <potrazuje>1,000.00</potrazuje> <preostalo/> </stavka> <stavka> <realizovano/> <datum>15.01.07</datum> <valuta>15.01.07</valuta> <dokument>1</dokument> <duguje>1,000.00</duguje> <potrazuje/> <preostalo/> </stavka> <stavka> <realizovano>*</realizovano> <datum>01.01.10</datum> <valuta>01.01.10</valuta> <dokument>*PRENOS*</dokument> <duguje>59,737.44</duguje> <potrazuje/> <preostalo>59,737.44</preostalo> </stavka> <saldo>59,737.44</saldo> <dospelo>59,737.44</dospelo> <duguje> <januar>0</januar> <februar>60737.44</februar> <mart>0</mart> <april>0</april> <maj>0</maj> <jun>0</jun> <jul>0</jul> <avgust>0</avgust> <septembar>0</septembar> <oktobar>0</oktobar> <novembar>0</novembar> <decembar>0</decembar> <ukupno>60737.44</ukupno> </duguje> <potrazuje> <januar>0</januar> <februar>1000.00</februar> <mart>0</mart> <april>0</april> <maj>0</maj> <jun>0</jun> <jul>0</jul> <avgust>0</avgust> <septembar>0</septembar> <oktobar>0</oktobar> <novembar>0</novembar> <decembar>0</decembar> <ukupno>1000</ukupno> </potrazuje> <preostalo> <januar>0</januar> <februar>59737.44</februar> <mart>0</mart> <april>0</april> <maj>0</maj> <jun>0</jun> <jul>0</jul> <avgust>0</avgust> <septembar>0</septembar> <oktobar>0</oktobar> <novembar>0</novembar> <decembar>0</decembar> <ukupno>59737.44</ukupno> </preostalo> </kartica>
JSON odgovor:
[ [ "Realizovano", "Datum", "Valuta", "Dokument", "Duguje", "Potrazuje", "Preostalo" ], [ [ "", "01.01.07", "01.01.07", "1", " ", " 1,000.00 ", " " ], [ "", "15.01.07", "15.01.07", "1", " 1,000.00 ", " ", " " ], [ "*", "01.01.10", "01.01.10", "*PRENOS*", " 59,737.44 ", " ", " 59,737.44 " ] ], { saldo: "59,737.44", dospelo: "59,737.44" }, [ [ 0, 60737.44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60737.44 ], // Sum. duguje (januar, februar, ... decembar, ukupno) [ 0, 1000.00, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1000 ], // Sum. potražuje (januar, februar, ... decembar, ukupno) [ 0, 59737.44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59737.44 ] // Sum. preostalo (januar, februar, ... decembar, ukupno) ] ]
Potraživanja kupaca (grupisano po mesecima za tekuću godinu)
XML zahtev:
<command name="local.cache.potrazivanje" output="json"> <komercijalistaId/> // Šifra komercijaliste <tip/> // Tip (0-duguje, 1-potražuje, 2-preostalo) </command>
XML odgovor:
<potrazivanje> <partnerId>11995</partnerId> <partnerNaziv>A TRADE</partnerNaziv> <januar>288501.58</januar> <februar></februar> <mart></mart> <april></april> <maj></maj> <jun></jun> <jul></jul> <avgust></avgust> <septembar></septembar> <oktobar></oktobar> <novembar></novembar> <decembar></decembar> <ukupno>288501.58</ukupno> </potrazivanje> <potrazivanje> <partnerId>257</partnerId> <partnerNaziv>ADACO</partnerNaziv> <januar>149864.09</januar> <februar></februar> <mart></mart> <april></april> <maj></maj> <jun></jun> <jul></jul> <avgust></avgust> <septembar></septembar> <oktobar></oktobar> <novembar></novembar> <decembar></decembar> <ukupno>149864.09</ukupno> </potrazivanje> <duguje> <januar>0</januar> <februar>756996.18</februar> <mart>0</mart> <april>0</april> <maj>0</maj> <jun>0</jun> <jul>51605.82</jul> <avgust>1374</avgust> <septembar>0</septembar> <oktobar>54716.36</oktobar> <novembar>0</novembar> <decembar>0</decembar> <ukupno>864692.36</ukupno> </duguje> <potrazuje> <januar>0</januar> <februar>30980</februar> <mart>2000</mart> <april>1000</april> <maj>20000</maj> <jun>1000</jun> <jul>0</jul> <avgust>1392</avgust> <septembar>0</septembar> <oktobar>0</oktobar> <novembar>0</novembar> <decembar>0</decembar> <ukupno>71372</ukupno> </potrazuje> <preostalo> <januar>0</januar> <februar>698681.18</februar> <mart>705</mart> <april>0</april> <maj>648</maj> <jun>0</jun> <jul>51235.82</jul> <avgust>0</avgust> <septembar>0</septembar> <oktobar>54716.36</oktobar> <novembar>0</novembar> <decembar>0</decembar> <ukupno>805986.36</ukupno> </preostalo>
JSON odgovor:
[ [ "Id", "Partner", "Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar", "Ukupno" ], [ [ 11995, "A TRADE", 288501.58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 288501.58 ], [ 257, "ADACO", 149864.09, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 149864.09 ] ], [ [ 0, 756996.18, 0, 0, 0, 0, 51605.82, 1374, 0, 54716.36, 0, 0, 864692.36 ], // Sum. duguje (januar, februar, ... decembar, ukupno) [ 0, 30980, 2000, 1000, 20000, 1000, 0, 1392, 0, 0, 0, 0, 71372 ], // Sum. potražuje (januar, februar, ... decembar, ukupno) [ 0, 698681.18, 705, 0, 648, 0, 51235.82, 0, 0, 54716.36, 0, 0, 805986.36 ] // Sum. preostalo (januar, februar, ... decembar, ukupno) ] ]
Spisak eksternih korisnika
Eksterni korisnici se evidentiraju na Wingsovom serveru i njihova veza sa APP-om trenutno nije podržana.
XML zahtev:
<command name="local.extuser.svi" output="json"/>
XML odgovor:
<extuser> <id>127</id> <tip>1</tip> // Tip korisnika (0-fizičko, 1-pravno lice) <ime>Petar</ime> <prezime>Petrović</prezime> <jmbg/> <firma>SOFT PLUS</firma> <pib/> <adresa/> <telefon/> <mobilni/> <email/> <napomena/> <authEnabled>1<authEnabled> // Odobren pristup sistemu? (0-ne, 1-da) <authUsername>petar</authUsername> // Korisničko ime <authPassword/> <authIP>97.107.133.87</authIP> // IP adresa računara sa koga je podnet zahtev za registraciju naloga </extuser>
JSON odgovor:
[ [ "ID", "Tip", "Ime", "Prezime", "JMBG", "Firma", "PIB", "Adresa", "Telefon", "Mobilni", "Email", "Napomena", "Autorizacija", "Username", "Password", "IP" ], [ [ 127, 1, "Petar", "Petrović", "", "SOFT PLUS", "", "", "", "", "", "", "1", "petar", "", "97.107.133.87" ], ] ]
Izmena podataka eksternog korisnika
XML zahtev:
<command name="local.extuser.izmena" output="json"> <op>1</op> // Operacija (0-nov, 1-izmena, 2-brisanje korisnika) <id>127</id> <tip>1</tip> // Tip korisnika (0-fizičko, 1-pravno lice) <ime>Petar</ime> <prezime>Petrović</prezime> <jmbg/> <firma>SOFT PLUS</firma> <pib/> <adresa/> <telefon/> <mobilni/> <email/> <napomena/> <autorizacija>1<autorizacija> // Odobren pristup sistemu? (0-ne, 1-da) <username>petar</username> // Korisničko ime <password/> </command>
XML odgovor:
<status>true</status>
JSON odgovor:
{ "status": true }
Lista narudžbenica (po komercijalisti)
XML zahtev:
<command name="local.narudzbenica.komercijalista" output="json"> <komercijalista>0</komercijalista> // 0 - svi komercijalisti <status>-</status> // "" - nerealizovane, "R" - realizovane, "-" - sve narudžbenice </command>
Napomena: Ukoliko je komercijalista (tip korisnika) autorizovani korisnik ovog servisa, parametar <komercijalista> se ignoriše.
XML odgovor:
<narudzbenica> <id>7197</id> <status/> <dokument>pf-191</dokument> <datum>08.02.10</datum> <kupac>A TRADE</kupac> <komercijalista/> <vrednost>24,532.20</vrednost> </narudzbenica> <narudzbenica> <id>7198</id> <status/> <dokument>pf-192</dokument> <datum>08.02.10</datum> <kupac>INSTITUT VINČA</kupac> <komercijalista>Mikan Mikić</komercijalista> <vrednost>25,122.20</vrednost> </narudzbenica>
JSON odgovor:
[ [ "Id", "Status", "Dokument", "Datum", "Kupac", "Komercijalista", "Vrednost" ], [ [ 7197, "", "pf-191", "08.02.10", "A TRADE", "", "24,532.20" ], [ 7198, "", "pf-192", "08.02.10", "INSTITUT VINČA", "Mikan Mikić", "25,122.20" ] ] ]
Lista narudžbenica od kupca
XML zahtev:
<command name="local.narudzbenica.kupac" output="json"> <status>-</status> // "" - nerealizovane, "R" - realizovane, "-" - sve narudžbenice </command>
Napomena:
-
Podaci se odnose na ulogovanog kupca
-
Storno profakture se ne prikazuju (status: S)
XML odgovor:
<narudzbenica> <id>7197</id> <status/> <dokument>pf-191</dokument> <datum>08.02.10</datum> <kupac>A TRADE</kupac> <komercijalista/> <vrednost>24,532.20</vrednost> </narudzbenica> <narudzbenica> <id>7201</id> <status/> <dokument>pf-194</dokument> <datum>09.02.10</datum> <kupac>A TRADE</kupac> <komercijalista/> <vrednost>2,910.74</vrednost> </narudzbenica>
JSON odgovor:
[ [ "Id", "Status", "Dokument", "Datum", "Kupac", "Komercijalista", "Vrednost" ], [ [ 7197, "", "pf-191", "08.02.10", "A TRADE", "", "24,532.20" ] , [ 7201, "", "pf-194", "09.02.10", "A TRADE", "", "2,910.74" ] ] ]
Notifikacije po kreiranju narudžbenice
Nakon kreiranja narudžbenice, može se izvršiti notifikacija obe strane (prodavca i kupca) putem email-a. Na mejl se šalje profaktura u HTML formatu, a isto to predstavlja i povratni rezultat ovog poziva.
XML zahtev:
<command name="local.narudzbenica.dokument" output="xml"> <profaktura>7600</profaktura> // Id profakture <sendMail>2</sendMail> // Slanje obaveštenja na mail (0-ne šalje se, 1-vlasnik, 2-kupac, 3-vlasnik+kupac) <kupacMail>office@example.com</kupacMail> // E-mail kupca <kupacNaziv>A TRADE</kupacNaziv> // Naziv kupca </command>
Za XML i JSON format odgovora videti poziv izvestaj.narudzbenica.dokument.
Notifikacije po kreiranju fakture
Nakon kreiranja fakture, može se izvršiti notifikacija obe strane (prodavca i kupca) putem email-a. Na mejl se šalje faktura u HTML formatu, a isto to predstavlja i povratni rezultat ovog poziva.
XML zahtev:
<command name="local.faktura.dokument" output="xml"> <faktura>7600</faktura> // Id fakture <sendMail>2</sendMail> // Slanje obaveštenja na mail (0-ne šalje se, 1-vlasnik, 2-kupac, 3-vlasnik+kupac) <kupacMail>office@example.com</kupacMail> // E-mail kupca <kupacNaziv>A TRADE</kupacNaziv> // Naziv kupca </command>
Za XML i JSON format odgovora videti poziv izvestaj.faktura.dokument.
Zahtev za ponudu
Zahtev za ponudu se ne evidentira ni u APP-u, ni na Wingsovom serveru. Ovaj poziv inicira slanje mail-a sa neophodnim podacima.
XML zahtev:
<command name="local.narudzbenica.ponuda" output="json"> <sendMail>2</sendMail> // Slanje zahteva za ponudu na mail (2-kupac, 3-vlasnik+kupac) <artikal>8555</artikal> // Id artikla <artikal>8557</artikal> // Id artikla <napomena/> <firma/> // Sledeći podaci su obavezni samo ukoliko je ulogovani korisnik EXTUSER <pib/> <ime/> <prezime/> <jmbg/> <adresa/> <telefon/> <mobilni/> <email/> </command>
XML odgovor:
<status>true</status>
JSON odgovor:
{ "status": true }
Zahtev za ponudu se šalje na mail (u zavisnosti od parametra sendMail + vlasniku portala) i sledećeg je formata:
ZAHTEV ZA PONUDU SIFRA NAZIV ARTIKLA PROIZVODJAC KOLICINA ----------------------------------------------------------------------------------- <sifra> <naziv> <proizvodjac> <kolicina> NAPOMENA -------- <napomena> PODACI O PODNOSIOCU ZAHTEVA --------------------------- Firma...: PIB.....: Ime.....: Prezime.: JMBG....: Adresa..: Telefon.: Mobilni.: E-mail..:
Narudžbenica (korisnik / komercijalista)
XML zahtev:
<command name="local.proxy.narudzbenica" output="json"> <artikal> <id>8555</id> <kolicina>7</kolicina> <rabat>2</rabat> </artikal> <artikal> <id>8557</id> <kolicina>5</kolicina> <rabat>4</rabat> </artikal> <partner>30</partner> <status>K</status> <komercijalista>5</komercijalista> <valuta>23.03.10</valuta> // Važi do <rok>10</rok> // Rok plaćanja (broj dana) <objekat/> <isporuka>AKS</isporuka> // Šifra tipa isporuke <tip/> <magacin/> <napomena>Kontaktirati centralu pre isporuke.</napomena> // Maksimalno 75 karaktera po redu <print>2</print> // Broj kopija za štampanje (0 - bez štampanja dokumenta) </command>
XML odgovor:
<narudzbenica> <artikal>False</artikal> // False (za artikal koji nije prošao proveru) <broj>7226</broj> // -1 u slučaju greške (Id) <brojPF>561</brojPF> // -1 u slučaju greške (broj profakture) </narudzbenica>
JSON odgovor:
{ "artikal": [ False ], // False (za artikal koji nije prošao proveru) "broj": 7226, // -1 u slučaju greške (Id) "brojPF": 561 // -1 u slučaju greške (broj profakture) }
Ažuriranje artikala u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu artikala koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 artikala. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
Napomena: Ovaj poziv ažurira i vrste artikala u bazi podataka.
XML zahtev:
<command name="local.data.artikal" output="json"> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
Ažuriranje alternativnih šifara u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu alternativnih šifara koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 alternativnih šifara. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
XML zahtev:
<command name="local.data.artikal_altsifra" output="json"> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
Ažuriranje napomena u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu napomena koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 napomena. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
XML zahtev:
<command name="local.data.artikal_napomena" output="json"> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
Ažuriranje atributa u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu atributa koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 atributa. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
XML zahtev:
<command name="local.data.artikal_atribut" output="json"> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
Ažuriranje partnera u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu partnera koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 partnera. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
XML zahtev:
<command name="local.data.partner" output="json"> <status>K</status> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
Ažuriranje objekata u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu objekata koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 objekata. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
XML zahtev:
<command name="local.data.objekat" output="json"> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
Ažuriranje finansijskih kartica partnera u bazi podataka (sekvencijalni poziv)
Ovaj poziv ažurira tabelu finansijskih kartica partnera koja se čuva na Wingsovom serveru. Pri svakom pozivu ažurira se 5.000 slogova. Kao rezultat poziva vraća se i ukupan broj slogova, kako bi se moglo tačno odrediti koliko je puta neophodno izvršiti ovaj poziv.
XML zahtev:
<command name="local.data.finkartica" output="json"> <continue>-1</continue> </command>
XML odgovor:
<continue>end</continue> // Startna pozicija za naredni poziv (end - kraj) <length>0</length> // Ukupan broj slogova
JSON odgovor:
[ "end" , 0 ] // Startna pozicija za naredni poziv, ukupan broj slogova
PARTNER
Spisak svih komercijalista
XML zahtev:
<command name="partner.komercijalista.svi" output="json"/>
XML odgovor:
<komercijalista> <id>5</id> <ime>Laza Lazić</ime> <sifra>K-BG1</sifra> <jmbg>2407973715222</jmbg> </komercijalista> <komercijalista> <id>4</id> <ime>Mikan Mikić</ime> <sifra>K-LE7</sifra> <jmbg/> </komercijalista>
JSON odgovor:
[ [ "ID", "Ime", "Sifra", "JMBG" ], [ [ 5, "Laza Lazić", "K-BG1", "2407973715222" ], [ 4, "Mikan Mikić", "K-LE7", "" ] ] ]
Informacije o kupcu
XML zahtev:
<command name="partner.kupac.info" output="json"/>
XML odgovor:
<kupac> <id>11995</id> <sifra/> <naziv>A TRADE</naziv> <adresa1>Bulevar JNA BB</adresa1> <adresa2>11000 BEOGRAD</adresa2> <telefon>123-456</telefon> <pib>0.00</pib> <rabat/> </kupac>
JSON odgovor:
{ "id": 11995, "sifra": "", "naziv": "A TRADE", "adresa1": "Bulevar JNA BB", "adresa2": "11000 BEOGRAD", "telefon": "123-456", "pib": "", "rabat": "0.00" }
Otvaranje novog kupca
XML zahtev:
<command name="partner.kupac.nov" output="xml"> <naziv>XY FIRMA</naziv> <adresa>Bulevar JNA BB</adresa> <mesto>11000 Beograd</mesto> <telefon>011/1234-567</telefon> <fax>011/1234-578</fax> <mobilni>063/123-123</mobilni> <pib>102345678</pib> <email>pera@example.com</email> <radnovreme>9-16h</radnovreme> <kontakt>Pera</kontakt> <status>K</status> <komercijalista>5</komercijalista> </command>
Napomena: Ovaj poziv ne upisuje novootvorenog kupca u tabelu kupaca u bazi na serveru. Preporuka je koristiti local poziv – otvaranje novog kupca.
XML odgovor:
<kupac> <id>385</id> // Id novootvorenog kupca </kupac>
JSON odgovor:
{ "sifra": 385 // Id novootvorenog kupca }
Pregled kontakta sa kupcem
XML zahtev:
<command name="partner.kontakt.svi" output="json"> <partner>11990</partner> </command>
XML odgovor:
<kontakt> <alarm/> <datum>14.09.09</datum> <datum_alarm>. .</datum_alarm> <korisnik>DEMO</korisnik> <opis/> </kontakt> <kontakt> <alarm/> <datum>30.09.09</datum> <datum_alarm>. .</datum_alarm> <korisnik>DEMO</korisnik> <opis/> </kontakt>
JSON odgovor:
[ [ "Alarm", "Datum", "Datum alarma", "Korisnik", "Opis" ], [ [ "", "14.09.09", ". .", "DEMO", "" ], [ "", "30.09.09", ". .", "DEMO", "" ] ] ]
Evidencija novog kontakta
XML zahtev:
<command name="partner.kontakt.nov" output="json"> <partner>11995</partner> <alarm>31.03.10</alarm> <opis1>Kontaktirati ih u vezi dogovora za sastanak.</opis1> <opis2/> <opis3/> <kontakt>DEMO</kontakt> </command>
XML odgovor:
<status>False</status> // True/False
JSON odgovor:
{ "status": "False" // True/False }
Finansijska kartica partnera
XML zahtev:
<command name="partner.kartica.partner" output="json"> <partner>11990</partner> <status>K</status> // K - kupac, D - dobavljač </command>
XML odgovor:
<kartica> <stavka> <realizovano/> <datum>01.01.07</datum> <valuta>01.01.07</valuta> <dokument>1</dokument> <duguje/> <potrazuje>1,000.00</potrazuje> <preostalo/> </stavka> <stavka> <realizovano/> <datum>15.01.07</datum> <valuta>15.01.07</valuta> <dokument>1</dokument> <duguje>1,000.00</duguje> <potrazuje/> <preostalo/> </stavka> <stavka> <realizovano>*</realizovano> <datum>01.01.10</datum> <valuta>01.01.10</valuta> <dokument>*PRENOS*</dokument> <duguje>59,737.44</duguje> <potrazuje/> <preostalo>59,737.44</preostalo> </stavka> <saldo>59,737.44</saldo> <dospelo>59,737.44</dospelo> </kartica>
JSON odgovor:
[ [ "Realizovano", "Datum", "Valuta", "Dokument", "Duguje", "Potrazuje", "Preostalo" ], [ [ "", "01.01.07", "01.01.07", "1", "", "1,000.00", "" ], [ "", "15.01.07", "15.01.07", "1", "1,000.00", "", "" ], [ "*", "01.01.10", "01.01.10", "*PRENOS*", "59,737.44", "", "59,737.44" ] ], { saldo: "59,737.44", dospelo: "59,737.44" } ]
Spisak svih kupaca
XML zahtev:
<command name="partner.kupac.svi" output="json"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 stavki, počevši od startne pozicije. Namena ovog poziva je da vrati neophodne podatke za ažuriranje baze (videti ažuriranje partnera). Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<kupac> <id>11990</id> <sifra/> <naziv>Verbatim</naziv> <adresa>Đure Jakšića 58</adresa> <mesto>11000 Beograd</mesto> <kontakt>Direktor</kontakt> <telefon>063 662 266</telefon> <fax/> <mobilni/> <email/> <radnovreme/> <status>K</status> <pib/> <rabat>3.00</rabat> <komercijalista>0</komercijalista> <mb>07466101</mb> <limit>95000.00</limit> <racun>123-22886551-88</racun> <rokplacanja>0</rokplacanja> </kupac> <kupac> <id>11995</id> <sifra/> <naziv>A TRADE</naziv> <adresa>Bulevar JNA BB</adresa> <mesto>11000 BEOGRAD</mesto> <kontakt>Pera</kontakt> <telefon>123-456</telefon> <fax/> <mobilni/> <email/> <radnovreme/> <status>K</status> <pib/> <rabat>0.00</rabat> <komercijalista>5</komercijalista> <mb>24418750</mb> <limit>0.00</limit> <racun/> <rokplacanja>30</rokplacanja> </kupac>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "Adresa", "Mesto", "Kontakt", "Telefon", "Fax", "Mobilni", "E-mail", "Radno vreme", "Status", "PIB", "Rabat", "Komercijalista", "Maticni broj", "Limit", "Tekuci racun", "Rok placanja" ], [ [ 11990, "", "Verbatim", "Đure Jakšića 58", "11000 Beograd", "Direktor", "063 662 266", "", "", "", "", "K", "", "3.00", 0, "07466101", 95000.00, "123-22886551-88", 0 ], [ 11995, "", "A TRADE", "Bulevar JNA BB", "11000 BEOGRAD", "Pera", "123-456", "", "", "", "", "K", "", "0.00", 5, 0, "24418750", 0.00, "", 30 ] ] ]
Spisak svih dobavljača
XML zahtev:
<command name="partner.dobavljac.svi" output="json"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 stavki, počevši od startne pozicije. Namena ovog poziva je da vrati neophodne podatke za ažuriranje baze (videti ažuriranje partnera). Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<dobavljac> <id>11991</id> <sifra/> <naziv>Uprava Carina</naziv> <adresa/> <mesto/> <kontakt/> <telefon/> <fax/> <mobilni/> <email/> <radnovreme/> <status>D</status> <pib/> <rabat>0.00</rabat> <komercijalista>0</komercijalista> <mb/> <limit>0.00</limit> <racun/> <rokplacanja>0</rokplacanja> </dobavljac> <dobavljac> <id>33</id> <sifra>126</sifra> <naziv>PROSVETA</naziv> <adresa/> <mesto/> <kontakt/> <telefon/> <fax/> <mobilni/> <email/> <radnovreme/> <status>D</status> <pib/> <rabat>0.00</rabat> <komercijalista>0</komercijalista> <mb/> <limit>0.00</limit> <racun/> <rokplacanja>0</rokplacanja> </dobavljac>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "Adresa", "Mesto", "Kontakt", "Telefon", "Fax", "Mobilni", "E-mail", "Radno vreme", "Status", "PIB", "Rabat", "Komercijalista", "Maticni broj", "Limit", "Tekuci racun", "Rok placanja" ], [ [ 11991, "", "Uprava Carina", "", "", "", "", "", "", "", "", "D", "", "0.00", 0, "", 0.00, "", 0 ], [ 33, "126", "PROSVETA", "", "", "", "", "", "", "", "", "D", "", "0.00", 0, "", 0.00, "", 0 ] ] ]
Spisak objekata za partnera
XML zahtev:
<command name="partner.objekat.svi" output="json"> <partner>99</partner> </command>
XML odgovor:
<objekat> <id>1</id> <sifra>TNS</sifra> <naziv>TOYOTA NOVI SAD</naziv> <adresa/> <mesto>Novi Sad</mesto> <telefon/> <fax/> <komercijalista>0</komercijalista> <kontakt>Pera</kontakt> <mobilni/> <email/> <objekat> <objekat> <id>2</id> <sifra>TLE</sifra> <naziv>TOYOTA LESKOVAC</naziv> <adresa/> <mesto>Leskovac</mesto> <telefon/> <fax/> <komercijalista>0</komercijalista> <kontakt>Mika</kontakt> <mobilni/> <email/> <objekat>
JSON odgovor:
[ [ "ID", "Sifra", "Naziv", "Adresa", "Mesto", "Telefon", "Fax", "Komercijalista", "Kontakt", "Mobilni", "E-mail" ], [ [ 1, "TNS", "TOYOTA NOVI SAD", "", "Novi Sad", "", "", 0, "Pera", "", "" ], [ 2, "TLE", "TOYOTA LESKOVAC", "", "Leskovac", "", "", 0, "Mika", "", "" ] ] ]
Finansijske kartice (sekvencijalni poziv)
XML zahtev:
<command name="partner.data.finkartica" output="xml"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 stavki, počevši od startne pozicije. S obzirom da je namena ovog poziva da vrati neophodne podatke za ažuriranje baze (videti ažuriranje finansihskih kartica partnera), izostavljena je dodatna transformacija za imenovanje atributa. Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<root> <query id="1" retcode="1" message=""> <record> <column/> // Status <column>11990</column> // Id partnera <column>K</column> // Status partnera <column>01.01.07</column> // Datum (dd.mm.yy) <column>01.01.07</column> // Valuta (dd.mm.yy) <column>1</column> // Dokument <column/> // Duguje <column>1,000.00</column> // Potražuje <column/> // Preostalo </record> <record> <column/> <column>11990</column> <column>K</column> <column>15.01.07</column> <column>15.01.07</column> <column>1</column> <column>1,000.00</column> <column/> <column/> </record> <record> <column>CONTINUE 5000</column> // Naredna startna pozicija (samo ukoliko ima još stavki) </record> </query> </root>
JSON transformacija nije implementirana, a odgovor u slučaju njenog zahteva će biti identičan XML formatu odgovora.
Objekti (sekvencijalni poziv)
XML zahtev:
<command name="partner.data.objekat" output="xml"> <continue>-1</continue> // Startna pozicija (videti napomenu) </command>
Napomena: Po jednom pozivu dobija se 5.000 stavki, počevši od startne pozicije. S obzirom da je namena ovog poziva da vrati neophodne podatke za ažuriranje baze (videti ažuriranje objekata), izostavljena je dodatna transformacija za imenovanje atributa. Nije preporučljivo direktno korišćenje ovog poziva.
XML odgovor:
<root> <query id="1" retcode="1" message=""> <record> <column>99</column> // Id partnera <column>1</column> // Id <column>TNS</column> // Šifra <column>TOYOTA NOVI SAD</column> // Naziv <column/> // Adresa <column>Novi Sad</column> // Mesto <column/> // Telefon <column/> // Fax <column>0</column> // Id komercijaliste <column>Pera</column> // Kontakt osoba <column/> // Mobilni <column/> // Email </record> <record> <column>99</column> <column>2</column> <column>TLE</column> <column>TOYOTA LESKOVAC</column> <column/> <column>Leskovac</column> <column/> <column/> <column>0</column> <column>Mika</column> <column/> <column/> </record> <record> <column>CONTINUE 5000</column> // Naredna startna pozicija (samo ukoliko ima još stavki) </record> </query> </root>
JSON transformacija nije implementirana, a odgovor u slučaju njenog zahteva će biti identičan XML formatu odgovora.
SYSTEM
APP verzija
XML zahtev:
<command name="system.app.version" output="xml"/>
XML odgovor:
<version>APP 08.03.10.</version>
JSON odgovor:
{ "version": "APP 08.03.10." }
APP autorizacija
XML zahtev:
<command name="system.user.log" output="xml"/>
XML odgovor:
<user> // <user>False</user> - u slučaju neispravnih podataka <id>101</id> <tip>U</tip> <moduli>12345ABCDEFIJKLNOPQ</moduli> </user>
JSON odgovor:
{ // False - u slučaju neispravnih podataka "id": 101, "tip": "U", "moduli": "12345ABCDEFIJKLNOPQ" }
TRANSPORT
Spisak vozila
XML zahtev:
<command name="transport.vozilo.svi" output="json"/>
XML odgovor:
<vozilo> <id>1</id> <naziv>Peugeot 306</naziv> <registarskibroj>BG 123-456</registarskibroj> <sasija/> <brojmotora/> </vozilo> <vozilo> <id>2</id> <naziv>Yugo 55</naziv> <registarskibroj>BG 111-222</registarskibroj> <sasija/> <brojmotora/> </vozilo>
JSON odgovor:
[ [ "ID", "Naziv", "Registarski broj", "Sasija", "Broj motora" ], [ [ 1, "Peugeot 306", "BG 123-456", "", "" ], [ 2, "Yugo 55", "BG 111-222", "", "" ] ] ]
Spisak vozača
XML zahtev:
<command name="transport.vozac.svi" output="json"/>
XML odgovor:
<vozac> <id>1</id> <ime>Petar Milic</ime> <adresa></adresa> <lk/> </vozac> <vozac> <id>2</id> <ime>Mika Mikic</ime> <adresa/> <lk/> </vozac>
JSON odgovor:
[ [ "ID", "Ime i prezime", "Adresa", "Broj LK" ], [ [ 1, "Petar Milic", "", "" ], [ 2, "Mika Mikic", "", "" ] ] ]
Tipovi isporuke
XML zahtev:
<command name="transport.isporuka.svi" output="json"/>
XML odgovor:
<isporuka> <oznaka>AKS</oznaka> <opis>AKS Dostava</opis> <transport>0</transport> <popust>1</popust> </isporuka> <isporuka> <oznaka>BPS</oznaka> <opis>Brza pošta Srbije</opis> <transport>1</transport> <popust>0</popust> </isporuka>
JSON odgovor:
[ { "oznaka":"AKS", "opis": "AKS Dostava", "transport": false, "popust": true }, { "oznaka":"BPS", "opis": "Brza pošta Srbije", "transport": true, "popust": false } ]