GET_I17_LIST

Aprašymas

Prekių likučių sąrašas

Specifikacija

Address

POST https://api.manorivile.lt/client/v2

Header
  • ApiKey : Privalomas. Unikalus API raktas išduodamas užsakant paslaugą
  • Content-Type : Privalomas. Kokiu formatu paduodami parametrai ir duomenys (request):
    • application/xml
    • application/json
  • Accept: Neprivalomas. Gražinamo rezultato (response) formatas
    • application/xml(default)
    • application/json (veikia nuo Manorivile-Gateway-1.1.0 versijos)
Body
  • method : GET_I17_LIST
  • params :
    • fil : filtravimo sąlyga. T-SQL tipo where sąlygos užklausa iš lentelės I17 nenurodant pačio where tag'o. Neprivaloma
    • group : Galimybė nurodyti likučio pasumavimą - pagal prekę (I17_KODAS_PS), padalinį (I17_KODAS_IS), objektą (I17_KODAS_OS), seriją (I17_SERIJA). pvz.: "I17_KODAS_PS,I17_KODAS_IS" - grąžins pasumuotus likučius pagal prekę ir padalinį. Parametras neprivalomas - tuomet grąžinama informacija detaliausia (pagal raktą).
    • pagenumber: įrašų puslapio numeris. GET_LIST metodai rezultatus grąžina puslapiais po 100 įrašų, pagenumber parametras nurodo kelintą puslapį grąžinti. Jei nenurodomas, tuomet grąžinamas pirmas puslapis su 100 naujausių įrašų. Neprivaloma

Sąraše su daugiau nei 1 įrašu informacija visada grąžinama surūšiuota pagal atitinkamos lentelės raktą (Primary Key)

GET_LIST metodų apribojima 100 įrašų, todėl norint gauti visą sąrašą, turite naudoti filtrus, kurie grąžins rezultatą „porcijomis“ per kelis kartus, filtruojant pagal paskutinio gauto įrašo rakto reikšmę.

pvz application/xml:

<body>
    <method>GET_I17_LIST</method>
    <params>
        <fil>i17_kodas_ps='1' and i17_kodas_is='01'</fil>
    </params>
</body>

pvz application/json:

{
    "method": "GET_I17_LIST",
    "params": {
        "fil": "i17_kodas_ps='1' and i17_kodas_is='01'"
    }
}
Response (status 200 OK)

Grąžinama informacija XML formate tarp tag'ų <RET_DOK>..</RET_DOK>. Esant daugiau nei vienam įrašui informacija rūšiuojama (order) pagal lentelės raktinį lauką i17_kodas_ps+i17_kodas_is+i17_kodas_us_a+i17_kodas_os+i17_serija

Jeigu įrašų nerasta pagal užduotas sąlygas, tuomet gražinama status=200 bei tuščias tag'as

pvz:

<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
    <I17>
        <Row_number>1</Row_number>
        <I17_KODAS_PS>1</I17_KODAS_PS>
        <I17_KODAS_IS>01</I17_KODAS_IS>
        <I17_KODAS_US_A>05_MAISELIS </I17_KODAS_US_A>
        <I17_KODAS_OS></I17_KODAS_OS>
        <I17_SERIJA></I17_SERIJA>
        <I17_KODAS_US>KG</I17_KODAS_US>
        <I17_FRAKCIJA>1000</I17_FRAKCIJA>
        <I17_KIEKIS>5000</I17_KIEKIS>
        <I17_ATIDUOTA>0</I17_ATIDUOTA>
        <I17_REZERVAS>0</I17_REZERVAS>
        <I17_PARD_UZS>0</I17_PARD_UZS>
        <I17_PIRK_UZS>0</I17_PIRK_UZS>
        <I17_SUMA>22.25</I17_SUMA>
        <I17_P_PIR_K>2.0000</I17_P_PIR_K>
        <I17_P_PIR_D>2020-01-09T00:00:00</I17_P_PIR_D>
        <I17_P_PAR_K>5.0000</I17_P_PAR_K>
        <I17_P_PAR_D>2020-01-06T00:00:00</I17_P_PAR_D>
        <I17_VID_UZS>0</I17_VID_UZS>
        <I17_REIKALAVIMAS>0</I17_REIKALAVIMAS>
        <I17_KELYJE>0</I17_KELYJE>
        <I17_KAINA>0.0000</I17_KAINA>
        <I17_USERIS>MASTER</I17_USERIS>
        <I17_ADDUSR>MASTER</I17_ADDUSR>
        <I17_R_DATE>2020-01-23T21:12:42</I17_R_DATE>
        <likutis_us>5.0000</likutis_us>
        <likutis_us_a>10.0000</likutis_us_a>
        <N37_BAR_KODAS>000000000001</N37_BAR_KODAS>
    </I17>
    <I17>
        <Row_number>2</Row_number>
        <I17_KODAS_PS>1</I17_KODAS_PS>
        <I17_KODAS_IS>01</I17_KODAS_IS>
        <I17_KODAS_US_A>KG</I17_KODAS_US_A>
        <I17_KODAS_OS></I17_KODAS_OS>
        <I17_SERIJA></I17_SERIJA>
        <I17_KODAS_US>KG</I17_KODAS_US>
        <I17_FRAKCIJA>1000</I17_FRAKCIJA>
        <I17_KIEKIS>19500</I17_KIEKIS>
        <I17_ATIDUOTA>1500</I17_ATIDUOTA>
        <I17_REZERVAS>0</I17_REZERVAS>
        <I17_PARD_UZS>0</I17_PARD_UZS>
        <I17_PIRK_UZS>0</I17_PIRK_UZS>
        <I17_SUMA>87.75</I17_SUMA>
        ...
        <likutis_us>18.0000</likutis_us>
        <likutis_us_a>18.0000</likutis_us_a>
        <N37_BAR_KODAS>000000000002</N37_BAR_KODAS>
    </I17>
</RET_DOK>

LIKUTIS_US dešimtainis kiekis pagrindiniu matavimo vientetu, o LIKUTIS_US_A - dešimtainis kiekis alternatyviu matavimo vienetu

Response (status 400)

Klaida paduodant duomenis / SQL sintaksės klaidos / kitos DB klaidos

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id>13271746441.6a246776.1581056600545</id>
    <durationMs>5</durationMs>
    <errorMessage>Invalid column name 'ii17_kodas_ps'.</errorMessage>
</RET_DOK>
Response (status 401)

Blogai nurodytas adresas / neteisingai nurodytas API raktas / nenurodytas API raktas / pasibaigęs API rakto galiojimas, pvz

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>Api key is not valid</errorMessage>
</RET_DOK>
Response (status 500)

Bendrinė sistemos klaida, pvz

<?xml version='1.0' encoding='UTF-8'?>
<Map>
    <timestamp>2020-02-05T12:34:26.890+0000</timestamp>
    <status>500</status>
    <error>Internal Server Error</error>
    <message>No message available</message>
    <path>/v1</path>
</Map>

PHP pvz

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'ApiKey: uUCz6UD.sKVrjaWRDJAH1c7l4qL2nOoN2K0jARkvuHDdYsss',
      'Content-Type: application/json',
      ]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{
    "method": "GET_I17_LIST",
    "params": {
        "fil": "i17_kodas_ps=\'1\' and i17_kodas_is=\'01\'"
    }
}');
$response = curl_exec($ch);
curl_close($ch);

Lentelės

I17

Laukas Tipas Aprašymas Pastabos
I17_KODAS_IS C(12) Padalinio kodas
I17_KODAS_PS C(12) Prekės kodas
I17_KODAS_OS C(12) Objekto kodas
I17_SERIJA C(12) Serija
I17_KODAS_US_A C(12) Alternatyvaus matavimo vieneto kodas
I17_KODAS_US C(12) Pagrindinis matavimo vieneto kodas
I17_FRAKCIJA N(4) Pagrindinio matavimo vieneto frakcija
I17_KIEKIS N(14) FIFO likutis
I17_ATIDUOTA N(14) Atiduota
I17_REZERVAS N(14) Užrezervuota
I17_PARD_UZS N(14) Pirkėjų užsakymai
I17_PIRK_UZS N(14) Užsakyta pas tiekėjus
I17_SUMA N(12,2) FIFO likučių suma
I17_P_PIR_K N(12,4) Paskutinio pirkimo kaina
I17_P_PIR_D T(8) Paskutinio pirkimo data
I17_P_PAR_K N(12,4) Paskutinio pardavimo suma
I17_P_PAR_D T(8) Paskutinio pardavimo data
I17_VID_UZS N(14) Užsakymas iš vidinio padalinio
I17_REIKALAVIMAS N(14) Pareikalavimas iš vidinio padalinio
I17_KELYJE N(14) Prekės kelyje
I17_KAINA N(12,4) Pardavimo kaina objekte
I17_USERIS C(12) Kas koregavo
I17_ADDUSR C(12) Kas sukūrė
I17_R_DATE T(8) Kada koregavo