Back to Gidas

MGAMA_EDIT_K16_ATOST

internetiniai-underscore-moduliai-api-underscore-rest-api-underscore-mgama-underscore-edit-underscore-k16-underscore-atost.md

latest11.0 KB
Original Source

PDF

Pradžia Internetiniai moduliai Rivile API v2 (REST web servisai) MGAMA_EDIT_K16_ATOST

MGAMA_EDIT_K16_ATOST

Aprašymas

Personalo atostogų operacijų dokumentų sukūrimas, koregavimas, trynimas.

Specifikacija

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

Body
  • method : MGAMA_EDIT_K16_ATOST

  • params :

    • oper :
    • I - naujo įrašo sukūrimas (numatytasis)
    • U - dokumento koregavimas
    • D - dokumento ištrynimas
    • P - dokumento perkėlimas
  • data: perduodami duomenys:

    • K16 - Personalo operacijų antraštė (k16)

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_K14_FIL. Šiame parametre įvedamas papildomas filtravimas, galimų reikšmių pavyzdžiai: 1=1 (visos darbuotojų kortelės), K14_KODAS_LS_1='L1' (tik darbuotojų kortelės su pirmu logistikos kodu 'L1'). Filtravimo sąlygose galima naudoti visus lentelės K14 laukus.

XML Request pvz.:

xml
<body>
    <method>MGAMA_EDIT_K16_ATOST</method>
    <params>
        <oper>I</oper>
    </params>
    <data>
        <K16>
            <K16_KODAS_6A_S>000000000001</K16_KODAS_6A_S>
            <K16_AT_RIBA>0</K16_AT_RIBA>
            <K16_BEG_DATE>2024-11-11T00:00:00</K16_BEG_DATE>
            <K16_DIENOS_SV>0.000</K16_DIENOS_SV>
            <K16_DIENU_SK>5.000</K16_DIENU_SK>
            <K16_DOK_NR>6AAT00001458</K16_DOK_NR>
            <K16_END_DATE>2024-11-15T00:00:00</K16_END_DATE>
            <K16_KAL>0</K16_KAL>
            <K16_KODAS_1A_19> </K16_KODAS_1A_19>
            <K16_KODAS_1A_25> </K16_KODAS_1A_25>
            <K16_KODAS_4A>001 </K16_KODAS_4A>
            <K16_KOR_POZ>0</K16_KOR_POZ>
            <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_SUT_NR> </K16_SUT_NR>
            <K16_SUT_TIPAS>1</K16_SUT_TIPAS>
        </K16>
    </data>
</body>

JSON Request pvz.:

json
{
        "method": "MGAMA_EDIT_K16_ATOST",
        "params": {
            "oper": "I"
        },
        "data": {
            "K16": {
                "K16_KODAS_6A_S": "000000000001",
                "K16_AT_RIBA": "0",
                "K16_BEG_DATE": "2024-11-11T00:00:00",
                "K16_DIENOS_SV": "0.000",
                "K16_DIENU_SK": "5.000",
                "K16_DOK_NR": "6AAT00001458",
                "K16_END_DATE": "2024-11-15T00:00:00",
                "K16_KAL": "0",
                "K16_KODAS_1A_19": "",
                "K16_KODAS_1A_25": "",
                "K16_KODAS_4A": "001",
                "K16_KOR_POZ": "0",
                "K16_OP_DATE": "2024-04-09T00:00:00",
                "K16_PAV": "v1 p1(darbuotojas r1)",
                "K16_RUSIS": "1",
                "K16_SUT_NR": "",
                "K16_SUT_TIPAS": "1"
            }
        }
}
Response (status 200 OK)

XML response pvz.:

xml
<RET_DOK>
    <K16_OPH>
        <K16_KODAS_6A>000R00015836</K16_KODAS_6A>
        <K16_KODAS_6A_S>000R00015831</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>6AKD00000169</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-09T11:03:08</K16_R_DATE>
        <K16_USERIS>1234567 </K16_USERIS>
    </K16_OPH>
</RET_DOK>

JSON response pvz.:

xml
{
    "K16_OPH": {
        "K16_KODAS_6A": "000R00015837",
        "K16_KODAS_6A_S": "000R00015831",
        "K16_BEG_DATE": "2024-11-11T00:00:00",
        "K16_DIENOS_SV": 11,
        "K16_DIENU_SK": 9,
        "K16_DOK_NR": "6AKD00000170",
        "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-09T11:05:42",
        "K16_USERIS": "1234567"
    }
}
Response (status 400)

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

xml
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
    <id>4641133481.d2a886f7.1714466892448</id>
    <durationMs>175</durationMs>
    <errorMessage>Nepavyko įvykdyti metodo</errorMessage>
    <document/>
    <errors>
        <error>
            <data>&lt;K16>&lt;num_row>1&lt;/num_row>&lt;/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>
                <dataError>
                    <tag>K16_DIENU_SK</tag>
                    <code>15012</code>
                    <message>Bloga reiksmė</message>
                </dataError>
                <dataError>
                    <tag>K16_DIENU_SK</tag>
                    <code>21006</code>
                    <message>Negalima neigiama reikšmė</message>
                </dataError>
            </dataErrors>
        </error>
    </errors>
</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:

xml
<body>
    <method>MGAMA_EDIT_K16_ATOST</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:

xml
<body>
    <method>MGAMA_EDIT_K16_ATOST</method>
    <params>
        <oper>D</oper>
    </params>
    <data>
        <K16>
            <K16_KODAS_6A>000000000001</K16_KODAS_6A>
        </K16>
    </data>
</body>

PHP pavyzdys:

php
<?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_ATOST ",
    "params": {
        "oper": "I"
    },
    "data": {
"K16": {
                "K16_KODAS_6A_S": "000000000001",
                "K16_AT_RIBA": "0",
                "K16_BEG_DATE": "2024-11-11T00:00:00",
                "K16_DIENOS_SV": "0.000",
                "K16_DIENU_SK": "5.000",
                "K16_DOK_NR": "6AAT00001458",
                "K16_END_DATE": "2024-11-15T00:00:00",
                "K16_KAL": "0",
                "K16_KODAS_1A_19": "",
                "K16_KODAS_1A_25": "",
                "K16_KODAS_4A": "001",
                "K16_KOR_POZ": "0",
                "K16_OP_DATE": "2024-04-09T00:00:00",
                "K16_PAV": "v1 p1(darbuotojas r1)",
                "K16_RUSIS": "1",
                "K16_SUT_NR": "",
                "K16_SUT_TIPAS": "1"
            }

    }
}');
$response = curl_exec($ch);
curl_close($ch);

Lentelės

K16

Personalo atostogų dokumentų antraštės lentelė

KodasTipasAprašymasPastabos naudojant EDIT metodus
K16_APRC(200)Aprašymas
K16_AT_RIBAN(3,0)Po kelintos dienos koreguoti periodą
K16_BEG_DATET(8)Atostogų pradžiaBūtinas, kai oper=”I”
K16_DIENOS_SVN(12,3)Nedarbo dienų skaičius
K16_DIENU_SKN(12,3)Dienų skaičius
K16_DOK_NRC(12)Dokumento numerisBūtinas, jeigu neaprašytas personalo atostogų operacijų skaitliukas
K16_END_DATET(8)Atostogų pabaigaBūtinas, kai oper=”I”
K16_KALN(1,0)Atostogų rūšis
K16_KODAS_1A_19C(12)Atostogų tipas
K16_KODAS_1A_25C(12)Algos klasifikatorius
K16_KODAS_4AC(12)Personalo kodasLaukas 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_6AC(12)Operacijos NumerisBūtinas, kai oper=”U” arba “D”
K16_KODAS_6A_FC(12)Pirminė priėmimo operacijaJeigu 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_SC(12)Priėmimo operacijaBūtinas, kai oper=”I” ir darbuotojas (K16_KODAS_4A) turi daugiau nei 1 aktyvią priėmimo operaciją.
K16_KOR_POZN(1,0)Koreguojamų atostogų grupė (darbo/kalend. d.)
K16_OP_DATET(8)Operacijos Data
K16_PAVC(200)Personalo vardas/pavardė
K16_RUSISN(1,0)Operacijos rūšis
K16_SUT_NRC(12)Atostogų grafikas
K16_SUT_TIPASN(1,0)Koreguojamų atostogų grupė [A; H]
K16_TIPASN(3,0)Operacijos tipas