kilylabs / odata-1c Goto Github PK
View Code? Open in Web Editor NEWPHP oDATA protocol client adopted to use with 1C (1С Enterprise 8.3)
License: MIT License
PHP oDATA protocol client adopted to use with 1C (1С Enterprise 8.3)
License: MIT License
Ребята, спасибо за библиотеку !!!
Подскажите как обработать исключение когда нет доступа к серверу 1с
После указанного таймаута вываливается в 500 ошибку
\vendor\kilylabs\odata-1c\src\OData\Client.php on line 216
Как отловить что нет связи с сервером 1с
Версия в composer.json была изменена, а обработка TransferException осталась для версии guzzle 7.
Добрый день, использую Вашу библиотеку в проекте, в принципе проблем не возникает, работает стабильно.
Возникла необходимость изменять и обновлять информацию в табличной части, разных документов, класс update относится только к изменениям внешней части, не подскажите как мне провалиться в табличную часть и изменить определенную строку, возможно добавить новую, используя тот функционал который сейчас есть, или сейчас это невозможно?
Добрый день!
Использую данную библиотеку в Битриксе, версия платформы 1С 8.3.15.1830, режим совместимости 8.2.13.
Просто подключиться и получить данные из справочника получается без проблем, а вот при использовании фильтра возвращается пустота.
Подскажите что с этим делать.
Привет! Хочу использовать твою работу, на сколько она сырая для интеграции с крупным проектом на продакшене?
Здравствуйте!
Большое спасибо за библиотеку, использую уже некоторое время.
Не подскажете, как удалить запись из регистра сведений?
Добавить запись получается, код ниже.
А каким образом удалить запись, не могу понять. Если просто поменять create на delete выдает ошибку "Не удалось разобрать строку 'Array' как значение типа Edm.DateTime!"
$data = $client->{'InformationRegister_ЦеныНоменклатуры'}->create([
'ВидЦен_Key' => '7c647a18-e471-11e6-80e0-0050569c4e30',
'Номенклатура_Key' => $nomen,
'Характеристика_Key' => $char,
'Цена' => $price,
'ЕдиницаИзмерения' => 'f7dd78f9-e471-11e6-80e0-0050569c4e30',
'ЕдиницаИзмерения_Type' => 'StandardODATA.Catalog_КлассификаторЕдиницИзмерения',
'Актуальность' => true,
'Period' => '2018-02-26T00:00:00'
]);
$data = $client->{'Document_ЗаказКлиента'}->get()->values();//получаю заказ, ниже его привожу
//далее удаляю ключи
unset($data[0]['Ref_Key']);
unset($data[0]['Товары'][0]['Ref_Key']);
unset($data[0]['DataVersion']);
unset($data[0]['ЭтапыГрафикаОплаты'][0]['Ref_Key']);
//отправляю
$result = $client->{'Document_ЗаказКлиента'}->create($data[0]);
// отвечает 500
/*
"odata.error": {
"code": "-1",
"message": {
"lang": "ru",
"value": "Ошибка при выполнении обработчика - 'ОбработкаЗаполнения'"
}
}
*/
Цель создать заказ в 1с. Что делаю не так?
Array
(
[Ref_Key] => 1711a01c-b507-11e7-82e4-dc85de068416
[DataVersion] => AAAAAAAERK0=
[DeletionMark] =>
[Number] => 0000-000001
[Date] => 2017-10-19T22:52:52
[Posted] => 1
[Партнер_Key] => f086a25f-e54d-11e6-be4c-c4aaa95c8a87
[Контрагент_Key] => f086a260-e54d-11e6-be4c-c4aaa95c8a87
[Организация_Key] => 7023ff84-e51f-11e6-be4c-c4aaa95c8a87
[Соглашение_Key] => d83f0987-b4fd-11e7-82e4-dc85de068416
[Сделка_Key] => 00000000-0000-0000-0000-000000000000
[Валюта_Key] => 51c5ae5c-e3ff-11e6-b7ce-db9992ffcc86
[СуммаДокумента] => 1
[ГрафикОплаты_Key] => 00000000-0000-0000-0000-000000000000
[ЖелаемаяДатаОтгрузки] => 0001-01-01T00:00:00
[Склад_Key] => 93235842-57fc-11e7-82db-dc85de068416
[ЦенаВключаетНДС] =>
[Менеджер_Key] => f086a25a-e54d-11e6-be4c-c4aaa95c8a87
[ДополнительнаяИнформация] =>
[ДокументОснование] =>
[ДокументОснование_Type] => StandardODATA.Undefined
[НеОтгружатьЧастями] => 1
[Статус] => КОбеспечению
[МаксимальныйКодСтроки] => 1
[ДатаСогласования] => 2017-10-19T00:00:00
[Согласован] => 1
[ФормаОплаты] =>
[БанковскийСчет_Key] => 5207248a-e70d-11e6-82d3-dc85de068416
[БанковскийСчетКонтрагента_Key] => 00000000-0000-0000-0000-000000000000
[Касса_Key] => 00000000-0000-0000-0000-000000000000
[СуммаАвансаДоОбеспечения] => 0
[СуммаПредоплатыДоОтгрузки] => 1
[ДатаОтгрузки] => 2017-10-20T00:00:00
[АдресДоставки] =>
[НалогообложениеНДС] => ПродажаНеОблагаетсяНДС
[СкидкиРассчитаны] => 1
[ХозяйственнаяОперация] => РеализацияКлиенту
[Комментарий] =>
[НомерПоДаннымКлиента] =>
[ДатаПоДаннымКлиента] => 0001-01-01T00:00:00
[Грузоотправитель_Key] => 00000000-0000-0000-0000-000000000000
[Грузополучатель_Key] => 00000000-0000-0000-0000-000000000000
[БанковскийСчетГрузоотправителя_Key] => 00000000-0000-0000-0000-000000000000
[БанковскийСчетГрузополучателя_Key] => 00000000-0000-0000-0000-000000000000
[ГруппаФинансовогоУчета_Key] => 00000000-0000-0000-0000-000000000000
[КартаЛояльности_Key] => 00000000-0000-0000-0000-000000000000
[Договор_Key] => 00000000-0000-0000-0000-000000000000
[Подразделение_Key] => 00000000-0000-0000-0000-000000000000
[Автор] => f086a25a-e54d-11e6-be4c-c4aaa95c8a87
[Автор_Type] => UnavailableEntities.UnavailableEntity_604931cd-d4a8-48d0-bc59-2ac90e044abb
[ПорядокРасчетов] => ПоЗаказамНакладным
[Назначение_Key] => 00000000-0000-0000-0000-000000000000
[СпособДоставки] => Самовывоз
[ПеревозчикПартнер_Key] => 00000000-0000-0000-0000-000000000000
[ЗонаДоставки_Key] => 00000000-0000-0000-0000-000000000000
[ВремяДоставкиС] => 0001-01-01T00:00:00
[ВремяДоставкиПо] => 0001-01-01T00:00:00
[АдресДоставкиПеревозчика] =>
[АдресДоставкиЗначенияПолей] =>
[АдресДоставкиПеревозчикаЗначенияПолей] =>
[ДополнительнаяИнформацияПоДоставке] =>
[КонтактноеЛицо_Key] => 00000000-0000-0000-0000-000000000000
[Руководитель_Key] => 00000000-0000-0000-0000-000000000000
[ГлавныйБухгалтер_Key] => 00000000-0000-0000-0000-000000000000
[ВернутьМногооборотнуюТару] =>
[СрокВозвратаМногооборотнойТары] => 0
[СостояниеЗаполненияМногооборотнойТары] =>
[СуммаВозвратнойТары] => 0
[НазначениеПлатежа] =>
[ТребуетсяЗалогЗаТару] =>
[Приоритет_Key] => 743a8857-e3ff-11e6-b7ce-db9992ffcc86
[ИдентификаторПлатежа] => ЗК171000000000010006
[ОсобыеУсловияПеревозки] =>
[ОсобыеУсловияПеревозкиОписание] =>
[НаправлениеДеятельности_Key] => 00000000-0000-0000-0000-000000000000
[ПорядокОплаты] => РасчетыВРубляхОплатаВРублях
[Товары] => Array
(
[0] => Array
(
[Ref_Key] => 1711a01c-b507-11e7-82e4-dc85de068416
[LineNumber] => 1
[ДатаОтгрузки] => 2017-10-20T00:00:00
[Номенклатура_Key] => 235e1343-5ca0-11e7-82df-dc85de068416
[Характеристика_Key] => 00000000-0000-0000-0000-000000000000
[Упаковка_Key] => 00000000-0000-0000-0000-000000000000
[КоличествоУпаковок] => 1
[Количество] => 1
[ВидЦены_Key] => 00000000-0000-0000-0000-000000000000
[Цена] => 1
[Сумма] => 1
[СтавкаНДС] => БезНДС
[СуммаНДС] => 0
[СуммаСНДС] => 1
[ПроцентРучнойСкидки] => 0
[СуммаРучнойСкидки] => 0
[ПроцентАвтоматическойСкидки] => 0
[СуммаАвтоматическойСкидки] => 0
[ПричинаОтмены_Key] => 00000000-0000-0000-0000-000000000000
[КодСтроки] => 1
[Отменено] =>
[КлючСвязи] => 1
[Склад_Key] => 93235842-57fc-11e7-82db-dc85de068416
[СрокПоставки] => 0
[Содержание] =>
[СтатусУказанияСерий] => 0
[ВариантОбеспечения] => Требуется
[Серия_Key] => 00000000-0000-0000-0000-000000000000
[НоменклатураНабора_Key] => 00000000-0000-0000-0000-000000000000
[ХарактеристикаНабора_Key] => 00000000-0000-0000-0000-000000000000
[ЦенаСоСкидкой] => 0
[Скидка] => 0
)
)
[ЭтапыГрафикаОплаты] => Array
(
[0] => Array
(
[Ref_Key] => 1711a01c-b507-11e7-82e4-dc85de068416
[LineNumber] => 1
[ВариантОплаты] => ПредоплатаДоОтгрузки
[ДатаПлатежа] => 2017-10-19T00:00:00
[ПроцентПлатежа] => 100
[СуммаПлатежа] => 1
[ПроцентЗалогаЗаТару] => 0
[СуммаЗалогаЗаТару] => 0
[СуммаОтклоненияМерныхТоваров] => 0
)
)
[СкидкиНаценки] => Array
(
)
[ДополнительныеРеквизиты] => Array
(
)
)
Очевидно что версия установленного у меня guzzlehttp/guzzle выше чем при установке kilylabs/odata-1c 0.2 requires guzzlehttp/guzzle ^6.2
Скажите как быть, как поставить ваш пакет на версию guzzlehttp/guzzle ^7.0
Ошибка при установке
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for kilylabs/odata-1c ^0.2.0 -> satisfiable by kilylabs/odata-1c[0.2].
- kilylabs/odata-1c 0.2 requires guzzlehttp/guzzle ^6.2 -> satisfiable by guzzlehttp/guzzle[6.2.0, 6.2.1, 6.2.2, 6.2.3, 6.3.0, 6.3.1, 6.3.2, 6.3.3, 6.4.0, 6.4.1, 6.5.0, 6.5.1, 6.5.2, 6.5.3, 6.5.4,6.5.5, 6.5.x-dev] but these conflict with your requirements or minimum-stability.
Спасибо!
Здравствуйте!
Большое спасибо за библиотеку, пробую использовать для интеграции.
Подскажете, как ограничить выборку по полям? (например как можно отобрать только поля Data,КрайнийСрокУстранения &$select=Data,КрайнийСрокУстранения
и как сделать сортировку (&$orderby=Контрагент/ИНН asc )?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.