Personalo komandiruočių dokumentų sukūrimas, koregavimas, trynimas.
POST https://api.manorivile.lt/client/v2
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)method
: MGAMA_EDIT_K16_KOM
params
:
oper
:I
- naujo įrašo sukūrimas (numatytasis)U
- dokumento koregavimasD
- dokumento ištrynimasdata
: perduodami duomenys:
K16
- Personalo operacijų antraštė (k16) 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
XML Request pvz.:
<body>
<method>MGAMA_EDIT_K16_KOM</method>
<params>
<oper>I</oper>
</params>
<data>
<K16>
<K16_KODAS_6A_S>000R00015880</K16_KODAS_6A_S>
<K16_BEG_DATE>2024-11-11T00:00:00</K16_BEG_DATE>
<K16_DIENU_SK>9</K16_DIENU_SK>
<K16_DOK_NR>6AKD00000175</K16_DOK_NR>
<K16_KODAS_0A>555</K16_KODAS_0A>
<K16_KODAS_1A_24></K16_KODAS_1A_24>
<K16_KODAS_1A_25></K16_KODAS_1A_25>
<K16_KODAS_4A>001</K16_KODAS_4A>
<K16_KODAS_5A></K16_KODAS_5A>
<K16_KODAS_IS>999999999999</K16_KODAS_IS>
<K16_OP_DATE>2024-04-09T00:00:00</K16_OP_DATE>
<K16_PAV>v1 p1(darbuotojas r1) </K16_PAV>
<K16_RUSIS>1</K16_RUSIS>
</K16>
</data>
</body>
JSON Request pvz.:
{
"method": "MGAMA_EDIT_K16_KOM",
"params": {
"oper": "I"
},
"data": {
"K16": {
"K16_KODAS_6A_S": "000R00015880",
"K16_BEG_DATE": "2024-11-11T00:00:00",
"K16_DIENU_SK": "9",
"K16_DOK_NR": "6AKD00000175",
"K16_KODAS_0A": "555",
"K16_KODAS_1A_24": "",
"K16_KODAS_1A_25": "",
"K16_KODAS_4A": "001",
"K16_KODAS_5A": "",
"K16_KODAS_IS": "999999999999",
"K16_OP_DATE": "2024-04-09T00:00:00",
"K16_PAV": "v1 p1(darbuotojas r1)",
"K16_RUSIS": "1"
}
}
}
XML response pvz.:
<RET_DOK>
<K16_OPH>
<K16_KODAS_6A>000R00015886</K16_KODAS_6A>
<K16_KODAS_6A_S>000R00015880</K16_KODAS_6A_S>
<K16_BEG_DATE>2024-11-11T00:00:00</K16_BEG_DATE>
<K16_DIENOS_SV>11.000</K16_DIENOS_SV>
<K16_DIENU_SK>9.000</K16_DIENU_SK>
<K16_DOK_NR>6AKD00000178</K16_DOK_NR>
<K16_END_DATE>2024-11-21T00:00:00</K16_END_DATE>
<K16_KODAS_0A>555 </K16_KODAS_0A>
<K16_KODAS_1A_24> </K16_KODAS_1A_24>
<K16_KODAS_1A_25> </K16_KODAS_1A_25>
<K16_KODAS_4A>001 </K16_KODAS_4A>
<K16_KODAS_5A> </K16_KODAS_5A>
<K16_KODAS_IS>999999999999</K16_KODAS_IS>
<K16_OP_DATE>2024-04-09T00:00:00</K16_OP_DATE>
<K16_PAV>v1 p1(darbuotojas r1) </K16_PAV>
<K16_RUSIS>1</K16_RUSIS>
<K16_PERKELTA>1</K16_PERKELTA>
<K16_ADDUSR>1234567 </K16_ADDUSR>
<K16_R_DATE>2024-04-09T15:45:57</K16_R_DATE>
<K16_USERIS>1234567 </K16_USERIS>
</K16_OPH>
</RET_DOK>
JSON response pvz.:
{
"K16_OPH": {
"K16_KODAS_6A": "000R00015887",
"K16_KODAS_6A_S": "000R00015880",
"K16_BEG_DATE": "2024-11-11T00:00:00",
"K16_DIENOS_SV": 11,
"K16_DIENU_SK": 9,
"K16_DOK_NR": "6AKD00000179",
"K16_END_DATE": "2024-11-21T00:00:00",
"K16_KODAS_0A": 555,
"K16_KODAS_1A_24": "",
"K16_KODAS_1A_25": "",
"K16_KODAS_4A": "001",
"K16_KODAS_5A": "",
"K16_KODAS_IS": 999999999999,
"K16_OP_DATE": "2024-04-09T00:00:00",
"K16_PAV": "v1 p1(darbuotojas r1)",
"K16_RUSIS": 1,
"K16_PERKELTA": 1,
"K16_ADDUSR": "1234567",
"K16_R_DATE": "2024-04-09T15:46:39",
"K16_USERIS": "1234567"
}
}
Klaida paduodant duomenis / SQL sintaksinės klaidos / kitos duomenų klaidos, pvz.:
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id>4641133481.e152d6b4.1714466958577</id>
<durationMs>192</durationMs>
<errorMessage>Nepavyko įvykdyti metodo</errorMessage>
<document/>
<errors>
<error>
<data><K16><num_row>1</num_row></K16></data>
<dataErrors>
<dataError>
<tag>K16_KODAS_6A_S</tag>
<code>19013</code>
<message>Nenurodytas kodas</message>
</dataError>
<dataError>
<tag>K16_BEG_DATE</tag>
<code>15012</code>
<message>Bloga reiksmė</message>
</dataError>
<dataError>
<tag>K16_END_DATE</tag>
<code>15012</code>
<message>Bloga reiksmė</message>
</dataError>
<dataError>
<tag>K16_KODAS_4A</tag>
<code>19013</code>
<message>Nenurodytas kodas</message>
</dataError>
<dataError>
<tag>K16_KODAS_0A</tag>
<code>19013</code>
<message>Nenurodytas kodas</message>
</dataError>
<dataError>
<tag>K16_KODAS_IS</tag>
<code>19013</code>
<message>Nenurodytas kodas</message>
</dataError>
</dataErrors>
</error>
</errors>
</RET_DOK>
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>
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>
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>
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 vyksta pagal atitinkamos lentelės raktą (Primary Key).
Koreguojant informaciją bus koreguojami tik perduodami laukai.
Pvz. koregavimas:
<body>
<method>MGAMA_EDIT_K16_KOM</method>
<params>
<oper>U</oper>
</params>
<data>
<K16>
<K16_KODAS_6A>000000000001</K16_KODAS_6A>
<K16_apr>REDAGUOTAS</K16_apr>
</K16>
</data>
</body>
Pvz. trynimas:
<body>
<method>MGAMA_EDIT_K16_KOM</method>
<params>
<oper>D</oper>
</params>
<data>
<K16>
<K16_KODAS_6A>000000000001</K16_KODAS_6A>
</K16>
</data>
</body>
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'ApiKey: 999.987654321',
'Content-Type: application/json',
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{
"method": "MGAMA_EDIT_K16_KOM ",
"params": {
"oper": "I"
},
"data": {
"K16": {
"K16_KODAS_6A_S": "000000000001",
"K16_BEG_DATE": "2024-11-11T00:00:00",
"K16_DIENU_SK": "9",
"K16_DOK_NR": "6AKD00000175",
"K16_KODAS_0A": "555",
"K16_KODAS_1A_24": "",
"K16_KODAS_1A_25": "",
"K16_KODAS_4A": "001",
"K16_KODAS_5A": "",
"K16_KODAS_IS": "999999999999",
"K16_OP_DATE": "2024-04-09T00:00:00",
"K16_PAV": "v1 p1(darbuotojas r1)",
"K16_RUSIS": "1"
}
}');
$response = curl_exec($ch);
curl_close($ch);
Personalo komandiruočių dokumentų antraštės lentelė
Kodas | Tipas | Aprašymas | Pastabos naudojant EDIT metodus |
---|---|---|---|
K16_APR | C(200) | Aprašymas | |
K16_BAND | C(100) | Tikslas | |
K16_BEG_DATE | T(8) | Pradžios data | Būtinas, kai oper=I |
K16_DIENOS_SV | N(12,3) | Kalendorinių dienų skaičius | Laukas tik skaitomas |
K16_DIENU_SK | N(12,3) | Darbo dienų skaičius | Laukas tik skaitomas |
K16_DOK_NR | C(12) | Dokumento numeris | Būtinas, kai neaprašytas personalo operacijų, perkėlimo skaitliukas |
K16_END_DATE | T(8) | Pabaigos data | Būtinas, kai oper=I |
K16_KODAS_0A | C(12) | Etatas | Laukas tik skaitomas |
K16_KODAS_1A_24 | C(12) | Vieta | |
K16_KODAS_1A_25 | C(12) | Algos klasifikatorius | |
K16_KODAS_4A | C(12) | Personalo kodas | Laukas apdorojime užsipildo automatiškai pagal informaciją iš priėmimo operacijos, nurodytos lauke KODAS_6A_S. Jeigu nenurodytas K16_KODAS_6A_S ir K16_KODAS_6A_F, tai pagal K16_KODAS_4A surandama aktyvi priėmimo operacija. Aktyvių priėmimo operacijų turi būti ne daugiau 1, kitu atveju gaunama klaida. |
K16_KODAS_5A | C(12) | Specialybė | Laukas tik skaitomas |
K16_KODAS_6A | C(12) | Operacijos kodas | Būtinas, kai oper=U,D |
K16_KODAS_6A_F | C(12) | Pirminė priėmimo operacija | Jeigu nenurodytas K16_KODAS_6A_S, tai pagal K16_KODAS_6A_F surandama aktyvi priėmimo operacija. Aktyvių priėmimo operacijų turi būti ne daugiau 1, kitu atveju gaunama klaida. |
K16_KODAS_6A_S | C(12) | Priėmimo operacija | Būtinas, kai oper=I |
K16_KODAS_IS | C(12) | Padalinys | Laukas tik skaitomas |
K16_OP_DATE | T(8) | Operacijos data | |
K16_PAV | C(200) | Personalo vardas, pavardė | |
K16_RUSIS | N(1,0) | Operacijos rūšis | |
K16_TERMIN | C(100) | Vieta - pavadinimas | |
K16_TIPAS | N(3,0) | Operacijos tipas |