ildarbahtigozin / yii2-1c-odata
用于通过activeRecord与1C oData交互的Yii2组件
0.1.8.4
2023-10-16 15:06 UTC
Requires
README
安装
安装此扩展的首选方法是通过 composer。
安装
运行以下命令之一:
$ composer require ildarbahtigozin/yii2-1c-odata "dev-master"
或
"ildarbahtigozin/yii2-1c-odata": "dev-master"
将以下内容添加到您的 composer.json
文件的 require
部分。
配置示例
将以下规则添加到应用程序配置中
[ 'components' => [ 'oData' => [ 'class' => \ildarbahtigozin\oData\Client::class, 'host' => $odataHost, 'path' => $odataPath, 'options' => [ 'auth' => [ $odataLogin, $odataPassword, ], ], 'customColumnsTypes' => [ // Here you custom columns types stubs configuration. Example: 'Catalog_Контрагенты' => [ 'НаименованиеПолное' => 'text', ], ], ], ], ];
配置后,您必须基于两个类:execut\oData\ActiveRecord 和 execut\oData\ActiveQuery 声明您的模型和查询
示例模型:标准文档 ЧекККМ(《源代码在这里》source here)
use execut\oData\ActiveRecord; class CheckKkm extends ActiveRecord { public $complexRelations = [ 'Оплата', 'Заказы' ]; public function getОплата() { return $this->hasMany(CheckKkmPayment::class, [ 'Ref_Key' => 'Ref_Key', ]); } public static function tableName() { return 'Document_ЧекККМ'; } } $check = CheckKkm::find()->andWhere([ 'Ref_Key' => '00000000-0000-0000-0000-000000000001' ])->one(); if ($check) { $check->attributes = [ //... ]; $check->save(); }
您的帮助是有用的
关于更多信息,时间不够 =(
计划
- 单元测试覆盖
- 扩展功能到标准 oData,无需 1C
许可证
yii2-1c-odata 在 Apache License Version 2.0 许可下发布。有关详细信息,请参阅捆绑的 LICENSE.md
文件。