1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

[Resolvido] Validar Inscrição Estadual

Discussão em 'Progress 4GL' iniciado por LeandroSantos, Junho 9, 2011.

  1. LeandroSantos

    LeandroSantos Membro Participativo

    Precisa fazer a Validação de Inscrição Estadual, baixei uma DLL no site http://www.sintegra.gov.br/ na seção de downloads, mas não estou conceguindo usar.

    Alguem sabe como utilizar esta DLL?

    Segue codigo que estou utilizando:
    Código:
    def var retorno as int.
    run consisteinscricaoestadual ( input "111222333444", 
                                    input "SP", 
                                    output retorno ).
    procedure ConsisteInscricaoEstadual external "DLLs\DllInscE32.dll":
       def input  parameter iinsc as char.
       def input  parameter iuf   as char.
       def output parameter oret  as short.
    end.
    
    Link para download da DLL: http://www.sintegra.gov.br/DLL3.zip
  2. jonas

    jonas Membro Participativo

    Re: Validar Inscrição Estadual

    Eu já tive problemas no uso de uma DLL.
    Só consegui resolver informando o caminho completo da DLL, por exempo "c:\DLLs\DllInscE32.dll".

    Faça um teste informando todo o caminho da DLL para ver se funciona.
  3. LeandroSantos

    LeandroSantos Membro Participativo

    Re: Validar Inscrição Estadual

    Mesmo colocando o caminho completo da DLL o erro continua.
  4. eduardo.leite

    eduardo.leite Equipe de Suporte Moderador Equipe de Suporte

    Re: Validar Inscrição Estadual

    Caro colega,

    Identifiquei o que está ocorrendo, quando definido parametros para as procedures de DLL, a definição da variável de retorno não pode ser usada como OUTPUT e sim como RETURN, alterando a rotina (conforme abaixo) passou a funcionar. A mensagem que retorna é que os parâmetros não estavam sendo definidos corretamente.

    Outro detalhe, caso não for informar o caminho completo da DLL, coloque-a no diretório WINDOWS/SYSTEM32 da máquina, neste caso o melhor mesmo é informar o caminho completo.

    Código:
    def var retorno as int.
    
    run consisteinscricaoestadual ( input  "0670154910049", 
                                    input  "MG",
                                    output retorno).
    
    if retorno = 0 then 
        message "IE Válido"     view-as alert-box. 
    else 
        message "IE Inválido"   view-as alert-box.
    
    procedure ConsisteInscricaoEstadual external "DllInscE32.dll":
       def input  parameter iinsc as char.
       def input  parameter iuf   as char.
       def return parameter oRet  as short. 
    end.
    
  5. Giuliano

    Giuliano Sem Pontuação

    Re: Validar Inscrição Estadual

    Fala galera.
    Pra quem usa Datasul EMS tem um api que retorna se esta correto ou não.
    Segue abaixo um codigo que fiz para um cliente.
    Código:
    
     DEFINE VARIABLE c-cod-erro   AS CHARACTER   NO-UNDO.
        DEFINE VARIABLE c-cod-ie-sai AS CHARACTER   NO-UNDO.
    
        IF  int-emitente.NATUREZA     = 1 OR 
            int-emitente.ins-estadual = ? OR 
            int-emitente.ins-estadual = " "  THEN 
            RETURN "OK":U.
    
        run cdp/cd6667.p(Input  "BRA",
                         Input  int-emitente.estado,
                         Input  int-emitente.ins-estadual,
                         Output c-cod-erro,
                         Output c-cod-ie-sai).
    
        if  c-cod-erro <> "OK" then 
            RETURN "NOK":U.
        ELSE 
            RETURN "OK":U.
    
  6. LeandroSantos

    LeandroSantos Membro Participativo

    Re: Validar Inscrição Estadual

    Era isso mesmo, obrigado Eduardo.

Compartilhe esta Página