elielelie / laravel-sap
Laravel 集成的 SAP 功能。
v1.0.5
2024-04-20 14:24 UTC
Requires
- php: ^8.0
README
Laravel 集成的 SAP 功能。
安装
请确保已安装 php7-sapnwrfc 扩展。
composer require elielelie/laravel-sap
要建立与 SAP 的连接,您需要将以下变量添加到您的 .env
文件中
SAP_HOST Host
SAP_SYSTEM System number
SAP_LANGUAGE Language default
SAP_CLIENT Client instance
SAP_USERNAME Username
SAP_PASSWORD Password
您可以通过运行以下命令发布配置文件并添加新的连接
$ php artisan vendor:publish --provider="Elielelie\Sap\SapServiceProvider"
用法
连接到 SAP
<?php use Elielelie\Sap\Sap; $sap = app(Sap::class); $connection = $sap->open(); or // Connection name defined in the configuration file config/sap.php $connection = $sap->open('name');
执行功能模块调用
<?php // ... connection $function = $connection->fm('BAPI_USER_GET_DETAIL'); // Get function description. print_r($function->description()); // Add import parameter. $function->param('USERNAME', 'USER'); // Perform function call and retrieve result. $results = $function->execute(); $connection->close();
使用 RFC_READ_TABLE
获取用户详细信息
<?php // ... connection $function = $connection->fm('RFC_READ_TABLE'); $function->param('QUERY_TABLE', 'USR01') ->param('OPTIONS', [ ['TEXT' => 'BNAME = 'USER' OR BNAME = 'USER2' OR BNAME LIKE 'USER5*'] ]) ->param('ROWCOUNT', 5) ->param('DELIMITER', '~') ; $result = $function->execute(); $connection->close();
查询构建器使用
<?php // ... connection $fm = $connection->fmc(Table::class); $results = $fm->table('USR01') ->fields(['BNAME', 'STCOD', 'MANDT' ...]) ->where('bname', ['USER', 'USER5']) ->orWhere('bname', 'LIKE', 'USER5*') ->limit(5) ->get() ;
许可
本软件根据 MIT 许可证授权。有关详细信息,请参阅 LICENSE。
法律声明
本文提到的 SAP 以及其他 SAP 产品和服务是 SAP SE(或其附属公司)在德国和其他国家的商标或注册商标。