1. Go to this page and download the library: Download dakword/odata1c-client library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
dakword / odata1c-client example snippets
use \Dakword\OData1C\Client\ODataClient;
// клиент
$oData = new ODataClient($baseUri, 'login', 'password');
// дополнительные опциональные настройки клиента
$oData->setProxy('http://123.123.123.123:8080');
$oData->setTimeout(600);
// получить массив объектов метаданных,
// которые _включены_ в стандартный OData
$objects = $oData->getObjects();
// получить описание стандартного интерфейса OData в формате atom-xml
$metadata = $oData->getMetadata();
// запрос к справочнику «Номенклатура»
$oData->query('Справочник_Номенклатура');
$oData->query('Catalog_Номенклатура');
// запрос к табличной части «Контактная информация» справочника «Склады»
$oData->query('Справочник', 'Склады_КонтактнаяИнформация');
$oData->query('Справочник', 'Склады', 'КонтактнаяИнформация');
// запрос к записям регистра сведений «Цены номенклатуры»
$oData->query(['Регистр сведений', 'ЦеныНоменклатуры', 'RecordType']);
// вернуть первые 50 результатов
$oData->query('Справочник_Номенклатура')->top(50);
// исключить из результатов первые 10 записей
$oData->query('Справочник_Номенклатура')->skip(10);
// исключить из результатов первые 20 записей и вернуть 50 записей
$oData->query('Справочник_Номенклатура')->skip(20)->top(50);
// вернуть 3-ю сотню результатов
$oData->query('Справочник_Номенклатура')->page(3);
// вернуть 3-ю тысячу результатов
$oData->query('Справочник_Номенклатура')->page(3, 1000);
// количество записей в справочнике «Номенклатура»
$count = $oData->query('Справочник_Номенклатура')->count();
// количество записей в справочнике «Номенклатура» удовлетворяющих отбору
$count = $oData->query('Справочник_Номенклатура')->...filter...->count();
// получить 2-ю страницу результатов и добавить к ним общее количество результатов
$oData->query('Справочник_Номенклатура')->...filter...->page(2)->addCount();
// выполнение функций
// "InformationRegister_КурсыВалют/SliceFirst()",
$oData->query('Регистр сведений', 'КурсыВалют')
->call('SliceFirst');
// "InformationRegister_КурсыВалют/SliceFirst(Period=datetime'2024-09-01T00:00:00')",
$oData->query('Регистр сведений', 'КурсыВалют')
->call('SliceFirst', [
'Period' => "datetime'2024-09-01T00:00:00'",
]);