Histórico da Página
A consulta do SUFRAMA funciona em duas etapas:
- verificação de imagem;
- seleção de inscrição SUFRAMA e segunda verificação de imagem.
O consumo do serviço pode ser feito de duas maneiras: a chamada do serviço, que abrirá as telas para verificação de imagem e seleção de inscrição, ou a execução em etapas, onde ocorrerá o retorno da imagem em base 64, reenvio dos dados com um segundo retorno com as inscrições SUFRAMA e segunda imagem de verificação em base 64 e um terceiro envio de dados.
...
ao Suframa trabalha com dois parâmetro: código do CNPJ e estado.
Execução
...
Após a configuração REST
...
Após a configuração, deve ser feita a chamado para a procedure SuframaConsultaSituacao com SuframaConsultaSituacao
com os seguintes parâmetros:
TIPO DE PARÂMETRO | TIPO DE DADO | DESCRIÇÃO |
---|---|---|
INPUT | CHARACTER | CNPJ para consulta |
INPUT | CHARACTER | Sigla do estado |
OUTPUT | JSON | Objeto JSON com informações do CNPJ informado |
...
|
...
|
...
|
...
|
...
|
...
|
...
Durante a consulta, serão exibidas duas telas:
...
|
Um exemplo completo pode ser baixado aqui.
Retorno de dados
...
Âncora |
---|
...
|
...
|
Os dados retornados pelo serviço de consulta do SUFRAMA são:
NOME |
---|
Após a configuração, deve ser feita a chamada para a procedure SuframaGetCaptcha, que possui um parâmetro de saída no formato JSON. Este objeto possui a imagem de verificação no valor "Imagem" em formato base 64. Esta imagem pode ser utilizada para verificação na tela de preferência do desenvolvedor. A tela utilizada no exemplo é a mesma que a utilizada na execução direta:
Bloco de código |
---|
RUN SuframaGetCaptcha IN hMashup(OUTPUT oJson).
/*imagem retorna em formato base 64 - utilização de longchar*/
lcImg = oJson:getString("Imagem").
RUN utp/ut-mashup-tela.w(INPUT lcImg, INPUT "", OUTPUT cCaptcha, OUTPUT cValor). |
Com o código de verificação da imagem, deve ser executada a procedure SuframaGetInscricoes com os seguintes parâmetros:
TIPO DE DADO |
---|
CNPJ |
String |
Inscrição |
String |
Razão |
Objeto retornado na etapa anterior - possui informações que serão utilizadas para consumo do serviço.
Será retornado um objeto com a nova imagem (valor "Imagem") e um objeto JSONArray com as inscrições SUFRAMA (valor "Inscricoes"). Os objetos do array possuem somente o código da inscrição, que podem ser encontrados sob o valor "Número".
Bloco de código |
---|
RUN GetCNPJ IN hMashup(INPUT "12345678901234", INPUT cCaptcha, INPUT-OUTPUT oJson).
lcImg = oJson:getString("Imagem").
oJsonArray = oJson:getJSONArray("Inscricoes").
/*percorrer array para montar LIST-ITEM-PAIRS a ser enviado à tela de verificação*/
DO iCount = 1 TO oJsonArray:COUNT():
oJsonAux = oJsonArray:getJSONObject(iCount).
IF cInsc <> "" THEN
cInsc = cInsc + ",".
cInsc = cInsc + oJsonAux:getString("Número") + "," + oJsonAux:getString("Número").
END.
RUN utp/ut-mashup-tela.w(INPUT lcImg, INPUT cInsc, OUTPUT cCaptcha, OUTPUT cValor). |
Com o segundo código de verificação e o código da inscrição selecionado, deve ser executada a procedure SuframaGetDados com os seguintes parâmetros:
TIPO DE PARÂMETRO | TIPO DE DADO | DESCRIÇÃO |
---|---|---|
INPUT | CHARACTER | Texto exibido no CAPTCHA |
INPUT | CHARACTER | Código de inscrição SUFRAMA selecionada |
INPUT-OUTPUT | JSON | Objeto JSON com informações do CNPJ informado |
Bloco de código |
---|
RUN SuframaGetDados IN hMashup(INPUT cCaptcha, INPUT cValor, INPUT-OUTPUT oJson). |
Um exemplo completo poder ser baixado aqui.
Retorno de dados
Os dados retornados pelo serviço de consulta de CNPJ são:
...
CNPJ;
...
Inscrição Suframa;
...
Razão Social;
...
Endereço;
...
Complemento;
...
Bairro;
...
Cidade;
...
Estado;
...
CEP;
...
E-Mail;
...
Telefone;
...
Atividade Principal;
...
Atividade Secundária;
...
Atividade Estadual;
...
Tipo de Incentivos;
String | |
Nome Fantasia | String |
Logradouro | String |
Número | String |
Complemento | String |
Bairro | String |
CEP | String |
Cidade | String |
Estado | String |
Telefone | String |
Atividade Econômica | String |
Atividade Econômica Secundária | String |
Atividade Econômica Estadual | String |
Tipo de Incentivo | String |
Situação Cadastral | String |
Data da Situação | String |
Observação | String |
URL Comprovante | String |
...