GET_I06_LIST_EXT

Aprašymas

Pirkimų, pardavimų dokumentų sąrašas su papildomais laukais iš padalinių, klientų, prekių kortelių

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_I06_LIST_EXT
  • params :
    • fil : filtravimo sąlyga. T-SQL tipo where sąlygos užklausa iš lentelės I06 nenurodant pačio where tag'o. Neprivaloma
    • 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
    • fields_i06: nurodomi pirkimo/pardavimo antraštės laukai. Jei parametras neperduodamas arba tuščias , grąžinama pagrindinė informacija.
    • fields_i07: nurodomas parametras norint gauti pirkimo/pardavimo detalių eilučių informaciją. Jei parametras neperduodamas, tuomet negrąžinama detalių eilučių informacija.
    • fields_i08: nurodomas parametras norint gauti mokėjimo terminus. Jei parametras neperduodamas, tuomet informacija negrąžinama.
    • fields_i13: nurodomas parametras norint gauti apmokėjimų informaciją. Jei parametras neperduodamas, tuomet informacija negrąžinama.
    • fields_n17: nurodomas parametras su papildomais laukais norint gauti prekės kortelės informaciją. Jei parametras neperduodamas arba tuščias, tuomet informacija negrąžinama.
    • fields_n07: nurodomas parametras su papildomais laukais norint gauti padalinio informaciją. Jei parametras neperduodamas arba tuščias, tuomet informacija negrąžinama.
    • fields_n08: nurodomas parametras su papildomais laukais norint gauti kliento kortelės informaciją. Jei parametras neperduodamas arba tuščias, tuomet informacija negrąžinama.
    • dokumentai: parametras skirtas gauti prisegtų prie operacijos dokumentų ar dokumentų nuorodų skaičiui . Jei parametras "DOKUMENTAI" lygus 1, tuomet grąžinami trys tagai: DOKUMENTAS, DOKUMENTAI ir NUORODA.

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ą dalimis per kelis kartus, filtruojant pagal paskutinio gauto įrašo rakto reikšmę.

Atkreipkite dėmesį, kad informacija yra grąžinama kitokia struktūra nei GET_I06_LIST.

Tagai DOKUMENTAS, DOKUMENTAI skirti prisegtų prie operacijos dokumentų ar dokumentų nuorodų skaičiui gauti.

Jei perduosite metoduose EDIT_I06 arba EDIT_I06_FULL tagą NUORODA su nuorodą į failą ar katalogą, tuomet gausite grąžiname rezultate <DOKUMENTAS>1</DOKUMENTAS> ir <NUORODA>https://www....lt/nuoroda</NUORODA>.

pvz be parametrų application/xml:

<body>
    <method>GET_I06_LIST_EXT</method>
    <params>
        <fil>i06_kodas_po='010R00000022'</fil>
    </params>
</body>

pvz su parametrais application/xml:

<body>
    <method>GET_I06_LIST_EXT</method>
    <params>
        <fil>i06_kodas_po='010R00000022'</fil>
        <fields_i06></fields_i06>
        <fields_i07></fields_i07>
        <fields_i13></fields_i13>
        <fields_i08></fields_i08>
        <fields_n17>n17_pav,n17_kod_t</fields_n17>
        <fields_n07></fields_n07>
        <fields_n08>n08_pav</fields_n08>
        <pagenumber>1</pagenumber>
    </params>
</body>

pvz application/json:

{
    "method": "GET_I06_LIST_EXT",
    "params": {
        "fil": "i06_kodas_po='010R00000022'",
        "fields_i06": "",
        "fields_i07": "",
        "fields_i13": "",
        "fields_i08": "",
        "fields_n17": "n17_pav,n17_kod_t",
        "fields_n07": "",
        "fields_n08": "n08_pav"
    }
}
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ą I06_KODAS_PO

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

pvz, kai request be parametrų:

<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
    <I06>
        <I06_KODAS_PO>010R00000022</I06_KODAS_PO>
        <I06_OP_TIP>51</I06_OP_TIP>
        <I06_DOK_NR>DOK-002</I06_DOK_NR>
        <I06_OP_DATA>2020-03-02T00:00:00</I06_OP_DATA>
        <I06_KODAS_KS>121411842   </I06_KODAS_KS>
        <I06_PAV>UAB "Rivilė"</I06_PAV>
        <I06_SUMA>1250.00</I06_SUMA>
        <I06_SUMA_PVM>262.50</I06_SUMA_PVM>
        <I06_KODAS_AK>1</I06_KODAS_AK>
    </I06>
</RET_DOK>

pvz, kai request su parametrais:

<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
    <I06>
        <I06_KODAS_PO>010R00000022</I06_KODAS_PO>
        <I06_OP_TIP>51</I06_OP_TIP>
        <I06_DOK_NR>DOK-002</I06_DOK_NR>
        <I06_OP_DATA>2020-03-02T00:00:00</I06_OP_DATA>
        <I06_KODAS_KS>121411842</I06_KODAS_KS>
        <I06_PAV>UAB "Rivilė"</I06_PAV>
        <I06_SUMA>1250.00</I06_SUMA>
        <I06_SUMA_PVM>262.50</I06_SUMA_PVM>
        <I06_KODAS_AK>1</I06_KODAS_AK>
        <I07_PARD>
            <I07>
                <I07_EIL_NR>1</I07_EIL_NR>
                <I07_TIPAS>1</I07_TIPAS>
                <I07_KODAS>004</I07_KODAS>
                <I07_PAV>Kompiuteris</I07_PAV>
                <I07_KODAS_IS>01</I07_KODAS_IS>
                <I07_KODAS_OS></I07_KODAS_OS>
                <I07_SERIJA></I07_SERIJA>
                <I07_KODAS_US>VNT</I07_KODAS_US>
                ...
                <N17_PROD>
                    <N17>
                        <N17_PAV>Kompiuteris</N17_PAV>
                        <N17_KOD_T>TIEK002</N17_KOD_T>
                    </N17>
                </N17_PROD>
            </I07>
            <I07>
                <I07_EIL_NR>2</I07_EIL_NR>
                <I07_TIPAS>1</I07_TIPAS>
                <I07_KODAS>005</I07_KODAS>
                <I07_PAV>HDD</I07_PAV>
                <I07_KODAS_IS>01</I07_KODAS_IS>
                <I07_KODAS_OS></I07_KODAS_OS>
                <I07_SERIJA></I07_SERIJA>
                ...
                <N17_PROD>
                    <N17>
                        <N17_PAV>HDD</N17_PAV>
                        <N17_KOD_T></N17_KOD_T>
                    </N17>
                </N17_PROD>
            </I07>
        </I07_PARD>
        <I08_PART>
            <I08>
                <I08_EIL_NR>1</I08_EIL_NR>
                <I08_MOK_D>0</I08_MOK_D>
                <I08_MOK_P>100.00000</I08_MOK_P>
                <I08_MOK_S>0.00</I08_MOK_S>
            </I08>
        </I08_PART>
        <I13_PAMO>
            <I13>
                <I13_EIL_NR>1</I13_EIL_NR>
                <I13_KODAS_SS>2721</I13_KODAS_SS>
                <I13_SUMA>1512.50</I13_SUMA>
            </I13>
        </I13_PAMO>
        <N08_KLIJ>
            <N08>
                <N08_PAV>UAB "Rivilė"</N08_PAV>
            </N08>
        </N08_KLIJ>
    </I06>
</RET_DOK>
Response (status 400)

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

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id>3451ded.be556121580910178112</id>
    <durationMs>25</durationMs>
    <errorMessage>Invalid column name 'i06_kodas_pob'.</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 502)

Nepaleistas MANO Rivile Gateway arba kitaip sutrikusi jo veikla

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>Rivile GAMA database is unavailable. Please check if the gateway is running and is set up correctly.</errorMessage>
</RET_DOK>
Response (status 504)

Laiku nebuvo gautas Rivile API užklausos atsakymas, pavyzdžiui, apkrauta GAMA duomenų bazė

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id/>
    <durationMs>0</durationMs>
    <errorMessage>No response received from client gateway</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_I06_LIST_EXT",
    "params": {
        "fil": "i06_kodas_po='010R00000022'",
        "fields_i06": "",
        "fields_i07": "",
        "fields_i13": "",
        "fields_i08": "",
        "fields_n17": "n17_pav,n17_kod_t",
        "fields_n07": "",
        "fields_n08": "n08_pav"
    }
}');
$response = curl_exec($ch);
curl_close($ch);

Lentelės

I06

Nuoroda į lentelės aprašymą: I06

I07

Nuoroda į lentelės aprašymą: I07

I08

Nuoroda į lentelės aprašymą: I08

I13

Nuoroda į lentelės aprašymą: I13

N17

Nuoroda į lentelės aprašymą: N17

N07

Nuoroda į lentelės aprašymą: N07

N08

Nuoroda į lentelės aprašymą: N08