Histórico da Página
O serviço de consulta do SINTEGRA pode possuir de uma a três etapas:
- Verificação de CAPTCHA;
- Seleção de inscrição estadual;
- Retorno de dados.
...
Âncora | ||||
---|---|---|---|---|
|
Após a configuração, deve ser feita a chamado para a procedure ConsultaSintegra procedure ConsultaSintegra
com os seguintes parâmetros:
TIPO DE PARÂMETRO | TIPO DE DADO | DESCRIÇÃO |
---|---|---|
INPUT | CHARACTER | CNPJ para o qual será executada a consulta |
INPUT | CHARACTER | Sigla do estado para o qual a pesquisa será efetuada. Os estados podem ser obtidos através do método GetEstados |
OUTPUT | JSON | Objeto JSON com informações do CNPJ informado |
Bloco de código |
---|
RUN ConsultaSintegra IN hMashup(INPUT "12345678901234", INPUT "SC", OUTPUT oJson). |
...
Âncora | ||||
---|---|---|---|---|
|
Após a configuração, deve ser feita a chamada para a procedure SintegraParcial procedure SintegraParcial
com os seguintes parâmetros:
TIPO DE PRÂMETRO | TIPO DE DADO | DESCRIÇÃO |
---|---|---|
INPUT | CHARACTER | CNPJ para o qual será executada a consulta |
INPUT | CHARACTER | Sigla do estado para o qual a pesquisa será efetuada. Os estados podem ser obtidos através do método GetEstados |
OUTPUT | JSON | Objeto JSON com 3 retornos possíveis: |
Bloco de código |
---|
RUN SintegraParcial IN hMashup(INPUT "12345678901234", INPUT "SC", OUTPUT oJson). |
O objeto de retorno da procedure SintegraParcial procedure SintegraParcial
pode possuir uma imagem para validação de CAPTCHA sob o valor "Imagem" ou uma lista com inscrições estaduais do CNPJ selecionado sob o valor "Inscricoes
".
Âncora | ||||
---|---|---|---|---|
|
...
O texto digitado para a imagem deve ser adicionado o objeto JSON retornado sob o valor "Codigo
" através através do método putValue. Este objeto deverá ser passado para a procedure SintegraContinuacaoprocedure SintegraContinuacao
, já que contém dados necessários para a próxima etapa:
...
As tabelas de inscrições estaduais são diferente entre estados. Por este motivo, o os objetos do array "Inscricoes
" pode pode ter objetos com diferentes estruturas. Pode-se buscar a definição da tabela de inscrições através do valor "InscSchema
", um array com a definição da tabela retornada, formado por objetos com a seguinte estrutura:
...
Após selecionada a inscrição, o objeto JSON associado a ela deve ser adicionado ao objeto retornado pelo última execução no valor "InscEstadual" através do método putValue.
Bloco de código |
---|
/*verificação de existência de lista de inscrições*/ IF oJson:getLongchar("Inscricoes") <> ? THEN DO: oJsonArray = oJson:getJSONArray("Inscricoes"). DO iCount = 1 TO oJsonArray:count(): oJsonAux = oJsonArray:getJSONObject(iCount). IF cInsc <> "" THEN cInsc = cInsc + ",". /*exemplo utilizando estrutura de inscrições do estado de Alagoas*/ cInsc = cInsc + oJsonAux:getString("Razão") + "," + oJsonAux:getString("Inscrição"). END. RUN utp/ut-mashup-tela.w(INPUT "", INPUT cInsc, OUTPUT cCaptcha, OUTPUT cValor). bloco_do: /*busca de objeto com inscrição selecionada pelo usuário para adição ao objeto de retorno*/ DO iCount = 1 TO oJsonArray:count(): oJsonAux = oJsonArray:getJSONObject(iCount). IF oJsonAux:getString("Inscrição") = cValor THEN /*AL*/ DO: oJson:putValue("InscEstadual", oJsonAux). LEAVE bloco_do. END. END. RUN SintegraContinuacao IN hMashup(INPUT-OUTPUT oJson). END. |
Após o envio de inscrição estadual, o retorno será com os dados do CNPJ informado.
O procedimento em etapas é 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.
...
Para retorno de estados, deve ser utilizado o método GetEstadosmétodo GetEstados
, que retornará um objeto JSON contendo um array sob o valor "Estados
" contendo contendo objetos com a seguinte estrutura:
Code;
Description.
...
Bloco de código |
---|
RUN GetEstadosIN hMashup(OUTPUT oJson). |
Um exemplo com o retorno dos estados e leitura do array pode ser baixado aqui.
...
Os dados retornados pelo serviço de consulta do SINTEGRA são:
NOME | TIPO DE DADO |
---|---|
CNPJ | String |
Inscrição | String |
Razão | String |
Logradouro | String |
Número | String |
Complemento | String |
Bairro | String |
Cidade | String |
Estado | String |
CEP | String |
Telefone | String |
String | |
Data Inscrição | String |
Situação | String |
Data Situação | String |
Atividade | String |
Regime ICMS | String |
Observações | String |
Atividade Principal | String |