internetiniai-underscore-moduliai-api-underscore-rest-get-underscore-prices-underscore-time.md
Pradžia Internetiniai moduliai Rivile API v2 (REST web servisai) GET_PRICES_TIME
Metodas grąžina informaciją apie prekių ir paslaugų kainų pasikeitimus remiantis koregavimo data. Grąžinama informacija gali būti pagal prekę ir mato vienetą arba pagal unikalų barkodą.
Informacija apie autorizaciją, bendruosius parametrus ir klaidų kodus: Rivile API v2 naudojimo pagrindai
method : GET_PRICES_TIME
params :
Norint dirbti su metodu turi būti inicijuoti atitinkami duomenų bazės pakeitimai. Reikalinga paleisti metodą INIT_TRIGGER
Metodas naudojamas norint gauti informaciją tik apie prekes, kurių kainos pasikeitė nuo tam tikros datos ir laiko.
Ištrintų kainų informacija nėra matoma
Kainos turi tag'us kaina, kaina1, kaina2, kaina3, ir nuolaidos atitinkamai nuolaida, nuolaida1, nuolaida2, nuolaida3. Visas keturias reikšmes gali įgyti akcijos KAIN_N13 ir NUOL_N13, prekių nuolaidų grupės – NUOL_N31, kainynai – KAIN_N32
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ę.
pvz application/xml:
<body>
<method>GET_PRICES_TIME</method>
<params>
<fil></fil>
<pagenumber>1</pagenumber>
<listType>B</listType>
<lastDate>2022-01-31T16:30:00.000</lastDate>
</params>
</body>
pvz application/json:
{
"method": "GET_PRICES_TIME",
"params": {
"fil": "",
"pagenumber": 1,
"lastdate": "2022-01-31",
"listType": "B"
}
}
Grąžinama informacija XML formate tarp tag'ų <RET_DOK>..</RET_DOK>.
pvz :
<?xml version='1.0' encoding='UTF-8' ?>
<RET_DOK>
<KAINOS>
<Row_number>1</Row_number>
<kodas_ps>010101 </kodas_ps>
<kodas_us>DE </kodas_us>
<bar_kodas>906230010427</bar_kodas>
<r_date>2022-01-31T11:28:21.807</r_date>
<KAIN_I33>
<I33>
<kodas_is>ADM </kodas_is>
<kaina>15.4000</kaina>
<prioritetas>4</prioritetas>
</I33>
...
</KAIN_I33>
</KAINOS>
<KAINOS>
<Row_number>2</Row_number>
<kodas_ps>010101 </kodas_ps>
<kodas_us>VNT </kodas_us>
<bar_kodas>000020320003</bar_kodas>
<r_date>2022-01-31T11:28:21.807</r_date>
<KAIN_I33>
<I33>
<kodas_is>01 </kodas_is>
<kaina>25.5000</kaina>
<prioritetas>4</prioritetas>
</I33>
...
</KAIN_I33>
<NUOL_I33>
<I33>
<kodas_is>IM </kodas_is>
<nuolaida>10.0000</nuolaida>
<prioritetas>3</prioritetas>
</I33>
</NUOL_I33>
<KAIN_N32>
<N32>
<kaina>100.9100</kaina>
<kain_kodas>A </kain_kodas>
<prioritetas>3</prioritetas>
<pradzia>2019-01-17T00:00:00</pradzia>
</N32>
<N32>
<kaina>96.1000</kaina>
<kain_kodas>B </kain_kodas>
<prioritetas>3</prioritetas>
<pradzia>2019-01-17T00:00:00</pradzia>
</N32>
</KAIN_N32>
</KAINOS>
</RET_DOK>
Klaida paduodant duomenis / SQL sintaksės klaidos / kitos DB klaidos
<?xml version='1.0' encoding='UTF-8'?>
<RET_DOK>
<id>0</id>
<durationMs>0</durationMs>
<errorMessage>Method GET_PRICE_TIME does not exist</errorMessage>
</RET_DOK>
<?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_PRICES_TIME",
"params": {
"fil": "",
"pagenumber": 1,
"lastdate": "2022-01-31",
"listType": "B"
}
}');
$response = curl_exec($ch);
curl_close($ch);