EDIT_A02

Aprašymas

Algos kintamųjų koregavimas.

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 : EDIT_A02
  • params :
    • oper :
    • I - naujo įrašo sukūrimas (numatytasis)
    • U - dokumento koregavimas
    • D - dokumento ištrynimas
  • data: perduodami duomenys:
    • A02 - Personalo operacijų antraštė (a02)

Pirmi 7 ApiKey simboliai (pvz USERABC.JQKPGdd7Pkjxj37ObsgdfEkvfEfvF1oL7h7UMOLo -> USERABC) yra vartotojo vardas Rivile GAMA programoje, kuriuo bus kuriami ar koreguojami įrašai.

Vienu metu veiksmai atliekami tik su vienu įrašu.

Koreguoti galima tik to paties API vartotojo sukurtas operacijas. Teisės valdomos parametru RGI_ALL_EDIT

Kadangi darbuotojų kortelėse gali būti saugoma konfidenciali informacija, jau egzistuojančių įrašų nuskaitymui ir koregavimui būtinas papildomas leidimas per Rivile Gama parametrą RGI_A02_FIL. Šiame parametre įvedamas papildomas filtravimas, galimų reikšmių pavyzdžiai: 1=1 (visos darbuotojų kortelės), A02_KODAS_TB='004' (tik darbuotojų kortelės su tabeliniu kodu '004'). Filtravimo sąlygose galima naudoti visus lentelės A02 laukus.

XML Request pvz.:

<body>
    <method>EDIT_A02</method>
    <params>
        <oper>I</oper>
    </params>
    <data>
        <A02>
            <A02_KODAS_LK>25003</A02_KODAS_LK>
            <A02_TIPAS>4</A02_TIPAS>
            <A02_KODAS_TB>004</A02_KODAS_TB>
            <A02_KODAS_IS>999999999999</A02_KODAS_IS>
        </A02>
    </data>
</body>

JSON Request pvz.:

{
    "method": "EDIT_A02",
    "params": {
        "oper": "I"
    },
    "data": {
        "A02": {
            "A02_KODAS_LK": "25003",
            "A02_TIPAS": "4",
            "A02_KODAS_TB": "004",
            "A02_KODAS_IS": "999999999999"
        }
    }
}
Response (status 200 OK)

XML response pvz.:

<RET_DOK>
    <A02>
        <A02_KODAS_LK>000000025003</A02_KODAS_LK>
        <A02_TIPAS>4</A02_TIPAS>
        <A02_DATE>2025-02-03T00:00:00</A02_DATE>
        <A02_PAV>test - žmogaus padalinyje                                   </A02_PAV>
        <A02_KODAS_TB>004         </A02_KODAS_TB>
        <A02_KODAS_IS>999999999999</A02_KODAS_IS>
        <A02_SUMA>0.000</A02_SUMA>
        <A02_PASTABOS></A02_PASTABOS>
        <A02_USERIS>*******     </A02_USERIS>
        <A02_R_DATE>2025-02-03T00:00:00</A02_R_DATE>
        <A02_KODAS_OS>           </A02_KODAS_OS>
        <A02_KODAS_LI>           </A02_KODAS_LI>
    </A02>
</RET_DOK>

JSON response pvz.:

{
    "A02": {
        "A02_KODAS_LK": "000000025003",
        "A02_TIPAS": "4",
        "A02_DATE": "2025-02-03T00:00:00",
        "A02_PAV": "test - žmogaus padalinyje",
        "A02_KODAS_TB": "004",
        "A02_KODAS_IS": "999999999999",
        "A02_SUMA": "0.000",
        "A02_PASTABOS": "",
        "A02_USERIS": "*******",
        "A02_R_DATE": "2025-02-03T00:00:00",
        "A02_KODAS_OS": "",
        "A02_KODAS_LI": ""
    }
}
Response (status 400)

Klaida paduodant duomenis / SQL sintaksinės klaidos / kitos duomenų klaidos, pvz.:

<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id>4641133481.622e80b9.1739444187123</id>
    <durationMs>46</durationMs>
    <errorMessage>Nepavyko įvykdyti metodo</errorMessage>
    <document/>
    <errors>
        <error>
            <data>&lt;A02>&lt;num_row>1&lt;/num_row>&lt;A02_KODAS_LK>250017&lt;/A02_KODAS_LK>&lt;A02_DATE>2025-01-01T00:00:00&lt;/A02_DATE>&lt;A02_TIPAS>1&lt;/A02_TIPAS>&lt;/A02></data>
            <dataErrors>
                <dataError>
                    <tag>A02_KODAS_LK</tag>
                    <code>29018</code>
                    <message>Nerastas kodas [000000250017]</message>
                </dataError>
            </dataErrors>
        </error>
    </errors>
</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>/v2</path>
</Map>
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>

Koregavimas ir trynimas

Koregavimas ir trynimas vyksta pagal atitinkamos lentelės raktą (Primary Key).

Koreguojant informaciją bus koreguojami tik perduodami laukai.

Pvz. koregavimas:

<body>
    <method>EDIT_A02</method>
    <params>
        <oper>U</oper>
    </params>
    <data>
        <A02>
            <A02_KODAS_LK>25003</A02_KODAS_LK>
            <A02_TIPAS>4</A02_TIPAS>
            <A02_DATE>2025.01.01</A02_DATE>
            <A02_KODAS_TB>004</A02_KODAS_TB>
            <A02_KODAS_IS>999999999999</A02_KODAS_IS>
            <A02_KODAS_OS></A02_KODAS_OS>
            <A02_PAV>update</A02_PAV>
            <A02_PASTABOS>update</A02_PASTABOS>
        </A02>
    </data>
</body>

Pvz. trynimas:

<body>
    <method>EDIT_A02</method>
    <params>
        <oper>D</oper>
    </params>
    <data>
        <A02>
            <A02_KODAS_LK>25003</A02_KODAS_LK>
            <A02_TIPAS>4</A02_TIPAS>
            <A02_DATE>2025.01.01</A02_DATE>
            <A02_KODAS_TB>004</A02_KODAS_TB>
            <A02_KODAS_IS>999999999999</A02_KODAS_IS>
            <A02_KODAS_OS></A02_KODAS_OS>
        </A02>
    </data>
</body>

PHP pavyzdys:

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
      'ApiKey: *******.************',
      'Content-Type: application/json',
      ]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{
    "method": "EDIT_A02",
    "params": {
        "oper": "I"
    },
    "data": {
        "A02": {
            "A02_KODAS_LK": "25003",
            "A02_TIPAS": "4",
            "A02_KODAS_TB": "004",
            "A02_KODAS_IS": "999999999999"
        }
    }
}');
$response = curl_exec($ch);
curl_close($ch);

Lentelės

A02

Algos kintamųjų koregavimo informacija

Kodas Tipas Aprašymas Pastabos naudojant EDIT metodus
A02_KODAS_LK char(12) Kintamojo kodas Būtinas laukas
A02_TIPAS numeric(1,0) Tipas:1-sistemos; 2-padalinio; 3-žmogaus; 4-žmogaus skyriuje; 5-sudėtiniai. Būtinas laukas
A02_DATE datetime Data Būtinas laukas
A02_PAV char(60) Pavadinimas
A02_KODAS_TB char(12) Tabelinis Nr. Būtinas laukas, kai tipas - 3,4
A02_KODAS_IS char(12) Padalinys Būtinas laukas, kai tipas - 2,4
A02_SUMA numeric(14,3) Reikšmė
A02_PASTABOS varchar(max) Pastabos
A02_USERIS char(12) Kas koregavo
A02_R_DATE datetime Kada koregavo
A02_KODAS_OS char(12) Objektas/Rinkinio ID Būtinas laukas
A02_KODAS_LI char(12) Algos dokumentas