Árvore de páginas

Versões comparadas

Chave

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

...

O consumo do serviço pode ser feito de duas maneiras: chamada do serviço, que, caso necessário, abrirá uma tela com a imagem para verificação e seleção de inscrição, ou a execução em etapas, onde deve ser verificado se houve retorno de imagem ou lista de inscrições para reenvio e retorno dos dados.

Âncora
direta
direta
Execução direta

...

Após a configuração, deve ser feita a chamado para a procedure ConsultaSintegra com os seguintes parâmetros:

...

Um exemplo completo pode ser baixado aqui.

Âncora
etapas
etapas
Execução em etapas

...

Após a configuração, deve ser feita a chamada para a procedure SintegraParcial com os seguintes parâmetros:

...

O objeto de retorno da 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
imagem
imagem
Retorno de imagem

...

Caso o objeto retornado possua uma imagem para validação, esta deve ser validada para reenvio das informações e do texto digitado.

...

Âncora
inscricoes
inscricoes
Retorno de inscrições estaduais

...

Caso o objeto retornado possua a lista com inscrições estaduais, esta deve ser apresentada para seleção do usuário.

...

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

...

Exemplos com as duas verificações e retornos podem ser encontrados aqui.

Âncora
estados
estados
Busca de estado

...

Para retorno de estados, deve ser utilizado o método GetEstados, que retornará um objeto JSON contendo um array sob o valor Estados contendo objetos com a seguinte estrutura:

...