EDIT_I16

Aprašymas

Gamybos operacijos komponentės įvedimas, koregavimas, trynimas.

Specifikacija

Informacija apie autorizaciją, bendruosius parametrus ir klaidų kodus: Rivile API v2 naudojimo pagrindai

Body
  • method : EDIT_I16
  • params :
    • oper :
      • I - naujos komponentės įvedimas (numatytasis)
      • U - komponentės koregavimas
      • D - komponentės ištrynimas
  • data: perduodami duomenys:
    • I16 - Komponentė (i16)

Yra galimybė dirbti su papildomomis dimensijomis, jeigu tokios naudojamos Rivile GAMA sistemoje. Tam naudojami tag'ai <I49_DIM01> ... <I49_DIM15>

Jegu dirbama su rinkinias, tuomet <I16_KODAS_OS> atitinka rinkinio kodą. Taip pat yra galimybė rinkinio kodą paduoti dalimis - tam naudojami tag'ai <K45_RIN01> ... <K45_RIN15>. Jeigu bus paduotI ir <I07_KODAS_OS> ir <K45_RIN01> ... <K45_RIN15> tag'ai, aukštesnį prioritetą turi <I16_KODAS_OS>. Rinkinio kodo iš anksto kurti nereikia, jis bus sukurtas automatiškai.

Norint atnaujinti rinkinio kodą, naujas kodas pateikiamas naudojant tag'ą <I16_KODAS_OS>. Jeigu norima naują rinkinio kodą paduoti dalimis - būtina paduoti tuščią tagą <I16_KODAS_OS>ir tada atskiras dalis naudojant tag'us <K45_RIN01> ... <K45_RIN15>.

XML request
<body>
    <method>EDIT_I16</method>
    <params>
        <oper>I</oper>
    </params>
    <data>
        <I16>
            <I16_KODAS_KA>010R00000001</I16_KODAS_KA>
            <I16_TIPAS>1</I16_TIPAS>
            <I16_KODAS_PS>005</I16_KODAS_PS>
            <I16_KODAS_US_A>VNT</I16_KODAS_US_A>
            <I16_FRAKCIJA_A>1</I16_FRAKCIJA_A>
            <I16_KIEKIS_A>2</I16_KIEKIS_A>
            <I16_KODAS_US>VNT</I16_KODAS_US>
            <I16_FRAKCIJA>1</I16_FRAKCIJA>
            <I16_KIEKIS>2</I16_KIEKIS>
            <I49_DIM01>MEN1</I49_DIM01> <!--Jeigu naudojamos dimensijos -->
            <K45_RIN01>RINKINYS</K45_RIN01> <!--Jeigu naudojami rinkiniai -->
        </I16>
    </data>
</body>
JSON request
{
    "method": "EDIT_I16",
    "params": {
        "oper": "I"
    },
    "data": {
        "I16": {
            "I16_KODAS_KA": "010R00000001",
            "I16_TIPAS": 1,
            "I16_KODAS_PS": "005",
            "I16_KODAS_US_A": "VNT",
            "I16_FRAKCIJA_A": 1,
            "I16_KIEKIS_A": 2,
            "I16_KODAS_US": "VNT",
            "I16_FRAKCIJA": 1,
            "I16_KIEKIS": 2,
            "I49_DIM01": "MEN1",
            "K45_RIN01": "RINKINYS"
        }
    }
}
Response (status 200 OK)
XML response
<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
    <I16>
        <I16_KODAS_KA>010R00000001</I16_KODAS_KA>
        <I16_EIL_NR>1</I16_EIL_NR>
        <I16_TIPAS>1</I16_TIPAS>
        <I16_KODAS_PS>005</I16_KODAS_PS>
        <I16_KODAS_OS></I16_KODAS_OS>
        <I16_SERIJA></I16_SERIJA>
        <I16_PERKELTA>1</I16_PERKELTA>
        <I16_KODAS_US_A>VNT</I16_KODAS_US_A>
        <I16_FRAKCIJA_A>1</I16_FRAKCIJA_A>
        <I16_KIEKIS_A>2</I16_KIEKIS_A>
        <I16_PARD_KAINA>0.0000</I16_PARD_KAINA>
        <I16_KODAS_US>VNT</I16_KODAS_US>
        <I16_FRAKCIJA>1</I16_FRAKCIJA>
        <I16_KIEKIS>2</I16_KIEKIS>
        <I16_LIKUTIS>2</I16_LIKUTIS>
        <I16_MINUSO_POZ>0</I16_MINUSO_POZ>
        <I16_SAVIKAINA>0.00</I16_SAVIKAINA>
        <I16_ISEIG_PROC>0.00</I16_ISEIG_PROC>
        <I16_GALIOJA>3999-01-01T00:00:00</I16_GALIOJA>
        <I16_USERIS>0HLPUFX</I16_USERIS>
        <I16_R_DATE>2020-11-03T21:29:57</I16_R_DATE>
        <I16_ADDUSR>0HLPUFX</I16_ADDUSR>
        <I16_KODAS_US_N>VNT</I16_KODAS_US_N>
        <I16_PAV></I16_PAV>
        <I49_DIM01>MEN1</I49_DIM01>
        <K45_RIN01>RINKINYS</K45_RIN01>
    </I16>
</RET_DOK>
JSON response
{
    "I16": {
        "I16_KODAS_KA": "010R00000001",
        "I16_EIL_NR": 2,
        "I16_TIPAS": 1,
        "I16_KODAS_PS": "005",
        "I16_KODAS_OS": "",
        "I16_SERIJA": "",
        "I16_PERKELTA": 1,
        "I16_KODAS_US_A": "VNT",
        "I16_FRAKCIJA_A": 1,
        "I16_KIEKIS_A": 2,
        "I16_PARD_KAINA": 0,
        "I16_KODAS_US": "VNT",
        "I16_FRAKCIJA": 1,
        "I16_KIEKIS": 2,
        "I16_LIKUTIS": 0,
        "I16_MINUSO_POZ": 0,
        "I16_SAVIKAINA": 0,
        "I16_ISEIG_PROC": 0,
        "I16_GALIOJA": "3999-01-01T00:00:00",
        "I16_USERIS": "0HLPUFX",
        "I16_R_DATE": "2020-11-03T21:38:14",
        "I16_ADDUSR": "0HLPUFX",
        "I16_KODAS_US_N": "VNT",
        "I16_PAV": "",
        "I49_DIM01": "MEN1",
        "K45_RIN01": "RINKINYS"
    }
}
Response (status 400)

Klaida paduodant duomenis / SQL sintaksės klaidos / kitos duomenų klaidos

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id>1266808491.ba84eed1.1604432380910</id>
    <durationMs>9</durationMs>
    <errorMessage>Nepavyko įvykdyti metodo</errorMessage>
    <document/>
    <errors>
        <error>
            <data>&lt;I16>&lt;I16_TIPAS>1&lt;/I16_TIPAS>&lt;I16_FRAKCIJA_A>1&lt;/I16_FRAKCIJA_A>&lt;I16_KIEKIS_A>2&lt;/I16_KIEKIS_A>&lt;I16_KIEKIS>2&lt;/I16_KIEKIS>&lt;I16_KODAS_US>VNT&lt;/I16_KODAS_US>&lt;I16_KODAS_US_A>VNT&lt;/I16_KODAS_US_A>&lt;I16_KODAS_KAS>010R00000001&lt;/I16_KODAS_KAS>&lt;I16_FRAKCIJA>1&lt;/I16_FRAKCIJA>&lt;I16_KODAS_PS>005&lt;/I16_KODAS_PS>&lt;/I16></data>
            <dataErrors>
                <dataError>
                    <tag>I15_KODAS_KA</tag>
                    <code>8003</code>
                    <message>Tokio įrašo nėra</message>
                </dataError>
            </dataErrors>
        </error>
    </errors>
</RET_DOK>
Koregavimas ir trynimas

Koregavimas ir trynimas vyksta pagal atitinkamos lentelės raktą (Primary Key) ir eilės numerį

Koreguojant informaciją bus koreguojami tik perduodami laukai.

pvz koregavimas:

<body>
    <method>EDIT_I16</method>
    <params>
        <oper>U</oper>
    </params>
    <data>
        <I16>
            <I16_KODAS_KA>010R00000001</I16_KODAS_KA>
            <I16_EIL_NR>1</I16_EIL_NR>
            <I16_PAV>Pavadinimas naujas</I16_PAV>
        </I16>
    </data>
</body>

pvz trynimas:

<body>
    <method>EDIT_I16</method>
    <params>
        <oper>D</oper>
    </params>
    <data>
        <I16>
            <I16_KODAS_KA>010R00000001</I16_KODAS_KA>
            <I16_EIL_NR>2</I16_EIL_NR>
        </I16>
    </data>
</body>
Rinkinio kodo atnaujinimas
<body>
    <method>EDIT_I16</method>
    <params>
        <oper>U</oper>
    </params>
    <data>
        <I16>
            <I16_KODAS_KA>010R00000001</I16_KODAS_KA>
            <I16_EIL_NR>1</I16_EIL_NR>
            <I16_KODAS_OS></I16_KODAS_OS>
            <K45_RIN01>RINKINYS</K45_RIN01>
        </I16>
    </data>
</body>

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": "EDIT_I16",
    "params": {
        "oper": "I"
    },
    "data": {
        "I16": {
            "I16_KODAS_KA": "010R00000001",
            "I16_TIPAS": 1,
            "I16_KODAS_PS": "005",
            "I16_KODAS_US_A": "VNT",
            "I16_FRAKCIJA_A": 1,
            "I16_KIEKIS_A": 2,
            "I16_KODAS_US": "VNT",
            "I16_FRAKCIJA": 1,
            "I16_KIEKIS": 2
        }
    }
}');
$response = curl_exec($ch);
curl_close($ch);

Lentelės

I16

Gamybos operacijos komponentės lentelė

Laukas Tipas Aprašymas Pastabos naudojant EDIT metodus
I16_KODAS_KA C(12) Operacijos kodas Privalomas , kai oper=U,D
I16_EIL_NR N(6) Detalios eilutės nr Privalomas , kai oper=U,D
I16_TIPAS N(1) Tipas:1-prekė,2-kodas,3-pranešimas,4-aprašymas
I16_KODAS_PS C(12) Prekės/Kodo kodas
I16_KODAS_OS C(12) Objekto kodas Arba rinkinio kodas, jei dirbama su rinkiniais.
I16_SERIJA C(12) Serija
I16_PERKELTA N(1) Prkėlimas:1-neperkelta,2-perkelta
I16_KODAS_US_A C(12) Alternatyvus matavimo vieneto kodas
I16_FRAKCIJA_A N(4) Alternatyvaus kiekio frakcija
I16_KIEKIS_A N(14) Reikalingas kiekis alternatyviu matu
I16_PARD_KAINA N(12,4) Pardavimo kaina
I16_KODAS_US C(12) Pagrindinio matavimo viento kodas
I16_FRAKCIJA N(4) Pagrindinio matavimo frakcija
I16_KIEKIS N(14) Reikalingas kiekis pagrindiniu matu
I16_LIKUTIS N(14) Prekės likutis operacijos atlikimo metu
I16_MINUSO_POZ N(1) Ar galima fiksuoti,jei trūksta kiekio:0-ne,1-taip
I16_SAVIKAINA N(12,2) Prekės savikaina
I16_ISEIG_PROC N(6,2) Sumos Išeigos procentas išbarstyme
I16_GALIOJA T(8) Galiojimo data
I16_USERIS C(12) Kas koregavo
I16_R_DATE T(8) Kada koregavo
I16_ADDUSR C(12) Kas sukūrė
I16_KODAS_US_N C(12) Matavimo vienetas nuo kurio nurašoma
I16_PAV C(40) Aprašymas
I16_APRASYMAS1 C(150) Aprašymas 1
I16_APRASYMAS2 C(150) Aprašymas 2
I16_APRASYMAS3 C(150) Aprašymas 3
I49_DIM01, ... , I49_DIM15 C(12) Dimensijos
K45_RIN01, ... , K45_RIN15 C(12) Rinkiniai
kiekis_u N(12,3) Alternatyvus kiekis dešimtainėje išraiškoje *
bar_kodas C(12) Barkodas *
obj_ser_order Likučių nurašymo tvarka. Sąlygą galima formuoti nurodant tik dvi kolonėles i17_kodas_os ir / arba i17_serija, pavyzdžiui, "i17_kodas_os, i17_serija", "i17_kodas_os desc, i17_serija asc", "i17_serija desc, i17_kodas_os asc" **

* jeigu naudojami laukai bar_kodas ir *kiekis_u**, tuomet eilutės kodas yra automatiškai užpildomas pagal barkodą ir kiekis išverčiamas iš dešimtainio kiekio į kiekius ir frakcijas. Jeigu naudojamas bar_kodas*, tuomet laukų I16_KODAS_PS, I16_PAV, I16_KODAS_US nebūtina nurodyti - jie randami pagal barkodo informaciją.

** Jeigu parametro reikšmė neperduodama, prekių likučiai nurašomi tiksliai su tokiu objektu ir serija, koks buvo perduotas. Perdavus reikšmę pirmiausiai tikrinamas prekės kiekis su perduotu objektu ir/ar serija. Jeigu toks kiekis nepakankamas, nurašomi likučiai su kitais objektais ir serijomis išlaikant parametre nurodyta rūšiavimo tvarką.