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 os seguintes parâmetros:
TIPO DE PARÂMETRO | TIPO DE DADO | DESCRIÇÃO |
---|---|---|
INPUT | CHARACTER | CNPJ para consulta |
OUTPUT | JSON | Objeto JSON com informações do CNPJ informado |
Bloco de código |
---|
RUN SuframaConsultaSituacao IN hMashup(INPUT "12345678901234", OUTPUT oJson). |
Durante a consulta, serão exibidas duas telas:
- primeira tela: deve ser digitado o texto exibido na imagem de verificação;
- segunda tela: deve ser digitado o texto exibido em uma segunda imagem de verificação e selecionada a inscrição SUFRAMA.
Portanto, este procedimento apresentará uma interface para exibir o CAPTCHA e solicitar ao usuário o respectivo valor e outra para exibição de CAPTCHA e seleção de inscrição. O uso deste procedimento é recomendado para aplicações Progress GUI por encapsular todas as etapas necessárias para a consulta do serviço em questão.
Um exemplo completo pode ser baixado aqui.
...
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 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 |
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".
...
JSON com informações do CNPJ informado |
|
...
|
...
|
...
|
Um exemplo completo pode
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). |
Este procedimento é recomendado quando o processo de negócio estiver sendo executado via Appserver e a camada de apresentação for desenvolvida em tecnologias como HTML ou Flex.
Um exemplo completo poder ser baixado aqui.
Retorno de dados
...
Âncora | ||||
---|---|---|---|---|
|
Os dados retornados pelo serviço de consulta de CNPJ do SUFRAMA são:
NOME | TIPO DE DADO |
---|---|
CNPJ | String |
Inscrição |
String | |
Razão |
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 |