WillyMaciel / SankhyaPHP
PHP API 用于与 Sankhya WebService 集成
0.0.1
2020-02-11 15:01 UTC
Requires
- php: >=7.1
- tightenco/collect: 6.*
This package is auto-updated.
Last update: 2024-09-11 20:15:51 UTC
README
此包使用 "tightenco/collect" 包作为依赖,用于返回结果为 Collection(与 Laravel 框架中使用的相同)。
通过 composer 安装
composer require willymaciel/sankhya-php
认证
登录
require_once __DIR__ . '/vendor/autoload.php'; use WillyMaciel\Sankhya\SwServiceInvoker; $api = new SwServiceInvoker('http://urldosankhya.com.br:8080/'); $api->login('usuario_sankhya', 'senha');
登出
$api->logout();
服务
DbExplorer
要使用 DbExplorer,登录用户必须在此模块中拥有 SankhyaW 的权限。
注意:DbExplorer 对查询的记录数有限制,为 5000 条。
//Realiza uma query (Somente Select) //Retorna os resultados em uma Collection $result = $api->dbExplorer('SELECT * FROM TSIUSU'); dump($result);
CacSp - 添加发票
首先需要创建发票的抬头,这是创建发票所必需的,然后我们可以在发票中添加条目。添加发票的示例
use WillyMaciel\Sankhya\Models\Nota;
use WillyMaciel\Sankhya\Models\NotaCabecalho;
use WillyMaciel\Sankhya\Models\NotaItem;
use WillyMaciel\Sankhya\Services\CacSp;
//Cria Cabeçalho
$notaCabecalho = new NotaCabecalho();
$notaCabecalho->setTipMov('P');
$notaCabecalho->setDtNeg('11/05/2020');
$notaCabecalho->setCodTipVenda(234);
$notaCabecalho->setCodParc(2190);
$notaCabecalho->setCodTipOper(1033);
$notaCabecalho->setCodEmp(1);
$notaCabecalho->setCodVend(777);
$notaCabecalho->setCodNat(1010101);
$notaCabecalho->setCifFob('C');
$notaCabecalho->setCodCenCus(0);
$notaCabecalho->setCustomField('algum_custom_field', 'valor');
$notaCabecalho->setObservacao('Pedido criado pelo Package WillyMaciel\\Sankhya-php');
//Cria a nota enviando o cabeçalho no constructor
$nota = new Nota($notaCabecalho);
//utilize informarPreco = true se pretende informar o preço de cada item manualmente
// $nota->informarPreco(true);
//Cria itens e vincula a nota
$item = new NotaItem();
$item->setCodProd(10961);
$item->setCodVol('UN');
$item->setCodLocalOrig(0);
$item->setQtdNeg(1);
$item->setPercDesc(0);
$item->setVlrUnit(50);
$nota->addItem($item);
$item = new NotaItem();
$item->setCodProd(30068);
$item->setCodVol('UN');
$item->setCodLocalOrig(0);
$item->setQtdNeg(1);
$item->setPercDesc(0);
$item->setVlrUnit(60);
$nota->addItem($item);
//Chamada para incluir a nota no sankhya
dump($api->incluirNota($nota));