Exemplo de Gravação de Registro de Pessoa Com PHSYS API
Para ilustrar o processo de cadastro de cliente através da API, foi criado um exemplo através do script C_INSERTCLIENTE. Este script é responsável por inserir os dados na tabela de PESSOAS do sistema ERP. Ele recebe parâmetros como nome, endereço, número, bairro, tipo de pessoa (física ou jurídica), e CPF ou CNPJ. Além disso, preenche alguns campos, como país, estado, tipo de logradouro, município e se é cliente, de forma fixa.
procedure C_INSERTCLIENTE;
var Q:TPHQuery;
begin
Q := NewPHQuery;
try
Q.Cadastro := 'CLIENTES';
Q.NovoRegistro;
{ Preenchidos através dos parâmetros presentes no Body da Requisição }
Q.FieldByName('NOME').AsString := ParamByName('Nome').AsString;
Q.FieldByName('LOGRADOURO').AsString := ParamByName('Logradouro').AsString;
Q.FieldByName('NUMERO').AsInteger := ParamByName('Numero').AsInteger;
Q.FieldByName('BAIRRO').AsString := ParamByName('Bairro').AsString;
Q.FieldByName('TIPOPESSOA').AsInteger := ParamByName('TipoPessoa').AsInteger;
Q.FieldByName('CNPJCPF').AsString := ParamByName('CNPJCPF').AsString;
{ Preenchidos de Forma Fixa }
Q.FieldByName('PAIS').AsLargeInt := 1; { Valor Padrão: Brasil }
Q.FieldByName('ESTADO').AsLargeInt := 24; { Valor Padrão: SC }
Q.FieldByName('TIPOLOGRADOURO').AsLargeInt := 1; { Valor Padrão: Rua}
Q.FieldByName('MUNICIPIO').AsLargeInt := 3; { Valor Padrão: Blumenau }
Q.FieldByName('EHCLIENTE').AsString := 'S'; { Valor Padrão: Sim }
Q.Post;
{ Retorna o ID da PHSYS do registro que foi cadastrado através da integração }
ParamByName('ID_PHSYS').AsLargeInt := Q.FieldByName('ID').AsLargeInt;
finally
Q.Free;
end;
end;
begin
end.
Para enviar os dados de cadastro para a API, é necessário criar um objeto JSON no Body da Requisição contendo os parâmetros necessários para execução do script C_INSERTCLIENTE. Este objeto deve incluir a classe TPHSProcScript, o procedimento Executar, e os parâmetros PHSProcedimento e PHSScriptNome com os valores C_INSERTCLIENTE. Os demais parâmetros, como nome, endereço, número, etc., devem ser incluídos com seus respectivos valores.
{
"Classe":"TPHSProcScript",
"Procedimento":"Executar",
"Parametros":[{
"Nome":"PHSProcedimento",
"Tipo":"string",
"Valor":"C_INSERTCLIENTE"
},
{
"Nome":"PHSScriptNome",
"Tipo":"string",
"Valor":"C_INSERTCLIENTE"
},
{
"Nome":"Nome",
"Tipo":"string",
"Valor":"Pedro Henrique"
},
{
"Nome":"Logradouro",
"Tipo":"string",
"Valor":"Pedro Zimmerman"
},
{
"Nome":"Numero",
"Tipo":"integer",
"Valor": 25
},
{
"Nome":"Bairro",
"Tipo":"string",
"Valor": "Itoupavazinha"
},
{
"Nome":"TipoPessoa",
"Tipo":"integer",
"Valor": 1
},
{
"Nome":"CNPJCPF",
"Tipo":"string",
"Valor": "598.956.949-11"
}
]
}
Após enviar a requisição para a API, o script será executado e o cliente será cadastrado no sistema. O retorno da API incluirá o ID do cliente cadastrado, que pode ser utilizado para futuras consultas ou atualizações. Este processo permite cadastrar clientes de forma automatizada e integrada com o sistema ERP, proporcionando mais agilidade e precisão nas operações de cadastro. Segue a baixo o retorno da requisição contendo o ID do registro gerado na PHSYS.
{
"Parametros": [
{
"Nome": "ID_PHSYS",
"Tipo": "largeint",
"Valor": 53
}
]
}