Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

A consulta do SUFRAMA funciona em duas etapas:

  1. verificação de imagem;
  2. 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  SuframaConsultaSituacao com os seguintes parâmetros:

TIPO DE PARÂMETRO

TIPO DE DADO

DESCRIÇÃO

INPUTCHARACTERCNPJ para consulta
INPUTCHARACTERSigla do estado
OUTPUTJSONObjeto JSON com informações do CNPJ informado

...

RUN

...

SuframaConsultaSituacao

...

IN

...

hTasRest(INPUT

...

"12345678901234

...

Durante a consulta, serão exibidas duas telas:

  1. primeira tela: deve ser digitado o texto exibido na imagem de verificação;
  2. 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:

...

"

...

,

...

INPUT

...

"SP",

...

OUTPUT poJson).


Um exemplo completo pode

Com o código de verificação da imagem, deve ser executada a procedure SuframaGetInscricoes com os seguintes parâmetros:

...

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 SuframaGetInscricoes 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:

...

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
dados
dados

Os dados retornados pelo serviço de consulta de CNPJ do SUFRAMA são:


NOMETIPO DE DADO
CNPJString
Inscrição SuframaString
Razão SocialStringEndereço
Nome FantasiaString
ComplementoLogradouroString
BairroNúmeroString
CidadeComplementoString
EstadoBairroString
CEPString
CidadeString
EstadoE-mailString
TelefoneString
Atividade PrincipalEconômicaString
Atividade Econômica SecundáriaString
Atividade Econômica EstadualString
Tipos Tipo de IncentivosIncentivoString
Situação CadastralString
Data da SituaçãoString
ObservaçãoString
URL ComprovanteString