Mudanças entre as edições de "Exemplo de Leitura de Registro de Pessoa Com PHSYS API"
Linha 70: | Linha 70: | ||
Em seguida, dentro do [[Servidor_de_Aplicação | servidor de aplicação]], na página API, criamos a chave de acesso '''PHGetPessoasByIDs''' conforme a imagem abaixo: | Em seguida, dentro do [[Servidor_de_Aplicação | servidor de aplicação]], na página API, criamos a chave de acesso '''PHGetPessoasByIDs''' conforme a imagem abaixo: | ||
− | <img src="https://wiki.phsys.com.br/images/WIKI/ | + | <img src="https://wiki.phsys.com.br/images/WIKI/PHGETPESSOASBYIDS_CHAVEACESSO.png" alt="Chave Acesso API GETPessoa" style="width:700px"> |
Para execução do script específico é necessário que seja estruturado o '''Body da Requisição''' conforme padrão PHSYS, contendo a classe | Para execução do script específico é necessário que seja estruturado o '''Body da Requisição''' conforme padrão PHSYS, contendo a classe | ||
Linha 81: | Linha 81: | ||
Com essa configuração e o desenvolvimento do script de leitura específico, ao realizar uma requisição para a chave de acesso, as informações do cliente são retornadas de acordo com os IDs passado por parâmetro através do '''Body da Requisição'''. | Com essa configuração e o desenvolvimento do script de leitura específico, ao realizar uma requisição para a chave de acesso, as informações do cliente são retornadas de acordo com os IDs passado por parâmetro através do '''Body da Requisição'''. | ||
− | <img src="https://wiki.phsys.com.br/images/WIKI/ | + | <img src="https://wiki.phsys.com.br/images/WIKI/PHGETPESSOASBYIDS_BODY.png" alt="Chave Acesso API GETPessoa" style="width:900px"> |
Ao executar a requisição, a resposta no '''Body da Requisição''' conterá as informações solicitadas, como no exemplo abaixo: | Ao executar a requisição, a resposta no '''Body da Requisição''' conterá as informações solicitadas, como no exemplo abaixo: | ||
− | <img src="https://wiki.phsys.com.br/images/WIKI/ | + | <img src="https://wiki.phsys.com.br/images/WIKI/PHGETPESSOASBYIDS_RESPONSE.png" alt="Chave Acesso API GETPessoa" style="width:900px"> |
Edição das 15h38min de 26 de março de 2024
Com a API é possível acessar diversas funcionalidades, incluindo a consulta de registros na base de dados. Para ilustrar, vamos considerar um cenário onde precisamos obter informações de um cliente no ERP. Com a PHSYS API, podemos consumir essas informações de forma fácil e eficiente.
Primeiramente, criamos um script específico dentro do ERP através do módulo desenvolvimento, no qual, foi chamado C_PHGetPessoasByIDs com e inserido o seguinte comportamento desenvolvido:
procedure C_PHGetPessoasByIDs; var Q: TPHQuery; TextJSON:String; IDList:TStringList; begin if (ParamByName('IDs').AsString <> ) then begin IDList := TStringList.Create; try IDList.CommaText := ParamByName('IDs').AsString; Q := NewPHQuery; try Q.Add('SELECT A.ID, '+ ' A.NOME, '+ ' A.TELEFONE, '+ ' B.NOME AS ESTADO, '+ ' C.NOME AS MUNICIPIO '+ 'FROM PESSOAS A '+ 'LEFT JOIN ESTADOS B ON B.ID = A.ESTADO '+ 'LEFT JOIN MUNICIPIOS C ON C.ID = A.MUNICIPIO '+ 'WHERE A.ID IN ('+ IDList.CommaText +')'); Q.Open; while not Q.Eof do begin if TextJSON <> then TextJSON := TextJSON + ', '; TextJSON := TextJSON + '{ ' + 'ID : '+ Q.FieldByName('ID').AsString + ',' + 'Nome : '+ Q.FieldByName('NOME').AsString + ',' + 'Telefone : '+ Q.FieldByName('TELEFONE').AsString + ',' + 'Estado : '+ Q.FieldByName('ESTADO').AsString + ',' + 'Municipio : '+ Q.FieldByName('MUNICIPIO').AsString + '}'; Q.Next end; ParamByName('Result').AsString := TextJSON; ParamByName('ResultCount').AsInteger := Q.RecordCount; finally Q.Free; end; finally IDList.Free; end; end; end; begin end.
Neste script existe o procedimento C_PHGetPessoasByIDs que realiza a consulta das informações cadastrais com base nos IDs que são preenchidos pelo parâmetro IDs do Body da Requisição.
Para consumir o parâmetro de IDs preenchido no Body da Requisição é utilizado no método ParamByName, da seguinte maneira:
ParamByName('IDs').AsString;
Para cada um dos campos retornados pela consulta é atribuído o ParamByName designando o nome do parâmetro e seu respectivo valor, desta forma, quando executado pela requisição, estes parâmetros serão retornados como resposta.
Em seguida, dentro do servidor de aplicação, na página API, criamos a chave de acesso PHGetPessoasByIDs conforme a imagem abaixo:
Para execução do script específico é necessário que seja estruturado o Body da Requisição conforme padrão PHSYS, contendo a classe TPHSProcScript e o procedimento Executar. É necessário que nos parâmetros seja incluso os seguintes parâmetros:
- PHSProcedimento: Preenchido com o nome do procedimento do script que será executado.
- PHSScriptNome: Preenchido com o nome do script que será executado.
- IDs: Preenchido com os IDs dos registros que é desejado retornar as informações cadastrais, separados por "," e sendo do tipo string.
Com essa configuração e o desenvolvimento do script de leitura específico, ao realizar uma requisição para a chave de acesso, as informações do cliente são retornadas de acordo com os IDs passado por parâmetro através do Body da Requisição.
Ao executar a requisição, a resposta no Body da Requisição conterá as informações solicitadas, como no exemplo abaixo: