Päringute näidislingid: erinevus redaktsioonide vahel
Resümee puudub |
Resümee puudub |
||
(ei näidata sama kasutaja 5 vahepealset redaktsiooni) | |||
1. rida: | 1. rida: | ||
Kõik objektid: <code><nowiki>https://mars.excellent.ee:4455/api/ | ===Objektid=== | ||
Kõik objektid: <code><nowiki>https://mars.excellent.ee:4455/api/6/objvc</nowiki></code> | |||
Üks objekt, ANNIKA: <code><nowiki>https://mars.excellent.ee:4455/api/ | Üks objekt, ANNIKA: <code><nowiki>https://mars.excellent.ee:4455/api/6/objvc?sort=Code&range=annika</nowiki></code> | ||
Objektide vahemik ANNIKA kuni KORISTAJA (vahele jääb KONT): <code><nowiki>https://mars.excellent.ee:4455/api/ | Objektide vahemik ANNIKA kuni KORISTAJA (vahele jääb KONT): <code><nowiki>https://mars.excellent.ee:4455/api/6/objvc?sort=Code&range=annika:koristaja</nowiki></code> | ||
Objektide vahemik ANNIKA kuni KORISTAJA, tagastatavad väljad on Kood, Nimi ja Klass: <code><nowiki>https://mars.excellent.ee:4455/api/ | Objektide vahemik ANNIKA kuni KORISTAJA, tagastatavad väljad on Kood, Nimi ja Klass: <code><nowiki>https://mars.excellent.ee:4455/api/6/objvc?sort=Code&range=annika:koristaja&fields=Code,Comment,OTCode</nowiki></code> | ||
Vastus: <syntaxhighlight lang="xml" line="1"> | Vastus: <syntaxhighlight lang="xml" line="1"> | ||
26. rida: | 27. rida: | ||
</data> | </data> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===Artiklid=== | |||
kõik artiklid ühest ettevõttest: | |||
<code><nowiki>https://mars.excellent.ee:4455/api/6/INVc</nowiki></code> | |||
1 artikkel: | |||
<code><nowiki>https://mars.excellent.ee:4455/api/6/INVc?sort=Code&range=1002</nowiki></code> | |||
selle ühe artikli 5 välja: | |||
<code><nowiki>https://mars.excellent.ee:4455/api/6/INVc?sort=Code&range=1002&fields=Code,Name,Unittext,UPrice1,LastBasePriceChange</nowiki></code> | |||
Kõik artiklid 5 väljaga: | |||
<code><nowiki>https://mars.excellent.ee:4455/api/6/INVc?fields=Code,Name,Unittext,UPrice1,LastBasePriceChange</nowiki></code> | |||
===updates_after kasutamine=== | |||
Kõikide päringute liigub kaasa sequence numbriline väärtus | |||
Sequence väärtust uuendatakse iga päringu ajal. Ehk iga päring saab alati uue sequence väärtuse. | |||
Näide: | |||
Teen päringu <code><nowiki>https://mars.excellent.ee:4455/api/6/INVc</nowiki></code> | |||
Vastuse päis: <syntaxhighlight lang="xml"> | |||
<data register="INVc" sequence="226655" sort="Code" key="Code" range="annika:koristaja" systemversion="8.4.21.1414"> | |||
<INVc> | |||
</syntaxhighlight>Järgmise päring saan teha sellisel kujul: | |||
Teen päringu <code><nowiki>https://mars.excellent.ee:4455/api/6/INVc?updates_after=226655</nowiki></code> | |||
Selle vastuseks on artiklid, mis on alates viimasest päringust kuni praeguse hetkeni muutunud. | |||
====Teadaolev Rest API päringute sequence numbrite käitumise omapära==== | |||
Kui teha Standard Booksile versiooniuuendus, siis võib olla olukord, kus sequence numbrite järjekord läheb suure sammu tagasi. Ehk, vanas versioonis on viimane sequence "226655", peale versiooniuuendust on see väärtus "10200". Ehk palju väikesem. Tulemuseks on vastus, mida päringut tegev infosüsteem ilmselt ei oota. Ning päring tehakse Standard Booksi ajaloos mitte-eksisteeriva numbriga "226655". Vastuseks võib olla terve päritava registri sisu. | |||
Lahendus: peale versiooniuuendust teha üks päring käsitsi, kasutades curli, soapi, mõnda posterit ning veenduda sequence numbri suurusjärgu korrektsuses. Kui sequence on vale väärtusega, parandada see oma päringut teostavas tarkvaras käsitsi. | |||
PS: Kui päringut tegev infosüsteemi kood/andmebaas suudavad arvesse võtta korduvate dokumentide esinemst, siis võib seda olukorda ka ignoreerida - esimene päring peale versiooniuuendust võib olla lihtsalt suurem, edasised sequence numbrid hakkavad jälle korrektselt ise edasi jooksma. | |||
===Kontaktid=== | |||
Päring | |||
<nowiki>https://mars.excellent.ee:4455/api/1/CUVc?sort=DateCreated&Range=2020-01-01</nowiki>: | |||
tagastab kõik kontaktid, mis loodud peale 1. jaanuarit 2020 | |||
<nowiki>https://mars.excellent.ee:4455/api/1/CUVc?sort=DateChanged&Range=2020-01-01</nowiki>: | |||
tagastab kõik kontaktid, mis muudetud peale 1. jaanuarit 2020 | |||
<nowiki>https://mars.excellent.ee:4455/api/1/CUVc?sort=DateCreated&Range=2020-01-01:&fields=Code,Name,Addr1,Addr2,RegNr1</nowiki> | |||
tagastab kõik kontaktid, mis loodud peale 1. jaanuarit 2020 ja vastuses on väljad Kood, Nimi, Aadressi 1 rida, Aadressi teine rida ja reg nr. | |||
=== POST: Kanne === | |||
Postitame kande, kus on custom kuupäev (vaikimisi = currentdate) kaks rida, neist üks objektiga. | |||
POST: <nowiki>https://mars.excellent.ee:4455/api/1/CUVc?set_field.TransDate=2020-06-07&set_row_field.0.AccNumber=1010&set_row_field.0.DebVal=58&set_row_field.1.AccNumber=3100&set_row_field.1.Objects=KONT&set_row_field.1.CredVal=58&</nowiki> | |||
<br /> |
Viimane redaktsioon: 8. juuni 2020, kell 05:50
Objektid
Kõik objektid: https://mars.excellent.ee:4455/api/6/objvc
Üks objekt, ANNIKA: https://mars.excellent.ee:4455/api/6/objvc?sort=Code&range=annika
Objektide vahemik ANNIKA kuni KORISTAJA (vahele jääb KONT): https://mars.excellent.ee:4455/api/6/objvc?sort=Code&range=annika:koristaja
Objektide vahemik ANNIKA kuni KORISTAJA, tagastatavad väljad on Kood, Nimi ja Klass: https://mars.excellent.ee:4455/api/6/objvc?sort=Code&range=annika:koristaja&fields=Code,Comment,OTCode
Vastus:
<data register="ObjVc" sequence="226655" sort="Code" key="Code" range="annika:koristaja" systemversion="8.4.21.1414">
<ObjVc>
<Code>ANNIKA</Code>
<Comment>Annika Ainus</Comment>
<OTCode>ARUAN</OTCode>
</ObjVc>
<ObjVc>
<Code>KONT</Code>
<Comment>Kontor</Comment>
<OTCode/>
</ObjVc>
<ObjVc>
<Code>KORISTAJA</Code>
<Comment>Koristaja objekt</Comment>
<OTCode>ARUAN</OTCode>
</ObjVc>
</data>
Artiklid
kõik artiklid ühest ettevõttest:
https://mars.excellent.ee:4455/api/6/INVc
1 artikkel:
https://mars.excellent.ee:4455/api/6/INVc?sort=Code&range=1002
selle ühe artikli 5 välja:
https://mars.excellent.ee:4455/api/6/INVc?sort=Code&range=1002&fields=Code,Name,Unittext,UPrice1,LastBasePriceChange
Kõik artiklid 5 väljaga:
https://mars.excellent.ee:4455/api/6/INVc?fields=Code,Name,Unittext,UPrice1,LastBasePriceChange
updates_after kasutamine
Kõikide päringute liigub kaasa sequence numbriline väärtus
Sequence väärtust uuendatakse iga päringu ajal. Ehk iga päring saab alati uue sequence väärtuse.
Näide:
Teen päringu https://mars.excellent.ee:4455/api/6/INVc
Vastuse päis:
<data register="INVc" sequence="226655" sort="Code" key="Code" range="annika:koristaja" systemversion="8.4.21.1414">
<INVc>
Järgmise päring saan teha sellisel kujul:
Teen päringu https://mars.excellent.ee:4455/api/6/INVc?updates_after=226655
Selle vastuseks on artiklid, mis on alates viimasest päringust kuni praeguse hetkeni muutunud.
Teadaolev Rest API päringute sequence numbrite käitumise omapära
Kui teha Standard Booksile versiooniuuendus, siis võib olla olukord, kus sequence numbrite järjekord läheb suure sammu tagasi. Ehk, vanas versioonis on viimane sequence "226655", peale versiooniuuendust on see väärtus "10200". Ehk palju väikesem. Tulemuseks on vastus, mida päringut tegev infosüsteem ilmselt ei oota. Ning päring tehakse Standard Booksi ajaloos mitte-eksisteeriva numbriga "226655". Vastuseks võib olla terve päritava registri sisu.
Lahendus: peale versiooniuuendust teha üks päring käsitsi, kasutades curli, soapi, mõnda posterit ning veenduda sequence numbri suurusjärgu korrektsuses. Kui sequence on vale väärtusega, parandada see oma päringut teostavas tarkvaras käsitsi.
PS: Kui päringut tegev infosüsteemi kood/andmebaas suudavad arvesse võtta korduvate dokumentide esinemst, siis võib seda olukorda ka ignoreerida - esimene päring peale versiooniuuendust võib olla lihtsalt suurem, edasised sequence numbrid hakkavad jälle korrektselt ise edasi jooksma.
Kontaktid
Päring
https://mars.excellent.ee:4455/api/1/CUVc?sort=DateCreated&Range=2020-01-01:
tagastab kõik kontaktid, mis loodud peale 1. jaanuarit 2020
https://mars.excellent.ee:4455/api/1/CUVc?sort=DateChanged&Range=2020-01-01:
tagastab kõik kontaktid, mis muudetud peale 1. jaanuarit 2020
https://mars.excellent.ee:4455/api/1/CUVc?sort=DateCreated&Range=2020-01-01:&fields=Code,Name,Addr1,Addr2,RegNr1
tagastab kõik kontaktid, mis loodud peale 1. jaanuarit 2020 ja vastuses on väljad Kood, Nimi, Aadressi 1 rida, Aadressi teine rida ja reg nr.
POST: Kanne
Postitame kande, kus on custom kuupäev (vaikimisi = currentdate) kaks rida, neist üks objektiga.
POST: https://mars.excellent.ee:4455/api/1/CUVc?set_field.TransDate=2020-06-07&set_row_field.0.AccNumber=1010&set_row_field.0.DebVal=58&set_row_field.1.AccNumber=3100&set_row_field.1.Objects=KONT&set_row_field.1.CredVal=58&