Ir para conteúdo


Foto

Consulta SINTEGRA pelo CNPJ


  • Por favor, faça o login para responder
76 respostas neste tópico

#1 HERGON

HERGON

    Novato

  • Membros
  • Pip
  • 220 posts

Postado 22 novembro 2013 - 07:16

Boa tarde

 

Sei que não é um assunto novo, mas os post's anteriores ficaram confusos e acabei me perdendo nas respostas.

 

Gostaria de saber se é possível buscar informações pelo site do SINTEGRA passando por parâmetro o CNPJ da empresa. Sei que tem um captcha na página e isso pode dificultar.  

 

Se algum dos amigos conseguiu e puder disponibilizar, seria de grande ajuda, já que agora aqui em MG tem NFe sendo DENEGADA uma atrás da outra por conta do IE não habilitado. Seria legal consultar a situação cadastral do cliente antes de gerar uma NFe e ela ser denegada. :)

 

Att.

 

Herberson Gontijo

Ponteware Informática

 



#2 Theotokos

Theotokos

    Membro Avançado

  • Membros
  • PipPipPip
  • 1.060 posts

Postado 22 novembro 2013 - 11:08



#3 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 25 novembro 2013 - 11:51

Theotokos, foi justamente o que o Herberson disse... O post do link que voce postou ficou confuso, pois ele veio da base de dados do outro forum e as respostas lá ficaram fora de ordem e totalmente confuso.

 

Acredito que a pergunta adequada é: Alguem aqui do forum tem algum esquema que digitando o CNPJ se traz os dados da empresa, buscando as informações do SINTEGRA? Se tem funciona legal isso? Tem custo? Tem o exemplo de codigo de como implementar?

 

Também estou interessado nisso.

 

abraços

 

 

 


Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#4 SAOliveira

SAOliveira

    Sergio A Oliveira

  • Membros
  • PipPipPip
  • 1.024 posts
  • LocationLins-SP

Postado 25 novembro 2013 - 04:17

Limitação: Só consulta a UF do certificado.

Arquivo(s) anexado(s)

  • Arquivo anexado  s1.jpg   28,42K   57 Downloads

Sergio A. Oliveira
FHW, XH, xMate, Pelles, MySql, SqlLib.
Windows 8.1/64

oho-pcs.blogspot.com

Blog

 

 

 


#5 fladimir

fladimir

    Novato

  • Membros
  • Pip
  • 80 posts

Postado 26 novembro 2013 - 04:12

Eu tb tenho interesse alguma solução?



#6 kapiaba

kapiaba

    Timão

  • Membros
  • PipPipPip
  • 18.553 posts
  • LocationSão Paulo

Postado 27 novembro 2013 - 11:52

Veja se conseguem melhorar... 
/*********************************************************  
 * Função      : Classe para abrir uma página da net e pegar os dados
 * Data        : Por : Alain/Rancharia
 * Revisado em : 25/07/2011 - 08:50:27 Por : Vagner Wirts
 * Como Usar :
 
    oSintegra := Sintegra():New(cUF) - Onde cUF = estado de consulta ex.: "SP"
 
    aRetorno := oSintegra:Consulta()
 
    If Len(aRetorno) > 0
        MsgInfo("Consulta Executada com sucesso !","AVISO DE ALERTA")
 
        MsgArray(aRetorno)
 
    EndIf
    Return Nil
 
 * Comentário :
 
    //"GO" - não consegui abrir na mesma dialog
    //"MA" - Pega somente pela inscrição, ver como tratar
    //"MG" - Pega Exige um terceiro link, ver como tratar
    //"PA" - Pega somente pela inscrição, ver como tratar
    //"RN" - Pega somente pela inscrição, ver como tratar
    Ainda estão faltando alguns estados, pois não possuo informações para poder pegar o código fonte das páginas.
    Quanto aos estados acima, estarei pesquisando para ver como pegar, mas os estados de MA,PA e RN, parecem fácil de recuperar, apesar de possuir um 3º ítem.
 
**********************************************************/  
//----------------------------------------------------------------------------------------------------------------------//
#Include "Fivewin.ch"
#Include "\Trabalho\VLib\Chs\VLib.Ch"
//----------------------------------------------------------------------------------------------------------------------//
 
Function GetSintegra(cUF); Retu( Sintegra():New(cUF))
 
/*********************************************************  
 * Função      : PegaSintegra() - Função para pegar os dados através de um html em disco
 * Data        : 26/07/2011 - 09:19:59 Por : Vagner
 * Revisado em : 26/07/2011 - 09:20:02 Por : Vagner
 * Parâmetros  :
 * cHtml - Arquivo Html
 * Comentários :
 * Entrar na página e copiar o código fonte da página
**********************************************************/  
Function PegaSintegra(cHtml) ; Retu (MontaSintegra(cHtml))
 
//----------------------------------------------------------------------------------------------------------------------//
Class Sintegra
    Data nTimeOut  Init 240 // 4 minutos
    Data lDownload, lError, cError
    Data cRetorno
    Data aGru1,aGru2
    Data cUrl,cPost,cView
 
    Method New(cUF) Constructor
    Method Consulta( cCGCorIE )
    Method DownloadComplete( oAct )
    Method Clear() INLINE DelUrlCache({::cPost,::cView})
EndClass
//----------------------------------------------------------------------------------------------------------------------//
 
Method New(cUF) Class Sintegra
Local aUrls
 
Default cUF := "SP"
 
aUrls := PegaUrls(cUF)
 
If Len(aUrls) == 0
    MsgStop("Não pude inicializar o Sintegra.","Estado "+cUF+" Inválido.")
    Retu(.T.)
Endif
 
::cUrl  := aUrls[1]
::cPost := ::cUrl+aUrls[2]
::cView := ::cUrl+aUrls[3]
::aGru1 := AClone(aUrls[4])
::aGru2 := AClone(aUrls[5])
 
Return Self
 
//----------------------------------------------------------------------------------------------------------------------//
Method Consulta() Class Sintegra 
Local oDlg, oAct
Local nTimer
If IsInternet() == .F.
    MsgStop("Sem conexão com a internet !")
    Return {}  
Else
    ::Clear()     
EndIf
::cRetorno  := ""
::lDownload := .F.
::lError    := .F.
 
Define Dialog oDlg From 0,0 To 600,664 Pixel Title "[ SiNtEgRa - Fazendo Consulta ]" //Style WS_CAPTION
oDlg:lHelpIcon:=.F.
Activate Dialog oDlg NoWait Centered
 
oAct:=TActivex():New(oDlg,"Shell.Explorer",00,0,664,600)
oAct:bOnEvent := {|cEv|If(cEv=="DownloadComplete",::DownloadComplete( oAct ),Nil)}
oAct:Silent   := .T.  
oAct:Navigate( ::cPost )
oAct:SetFocus()
nTimer:=Seconds()
 
While !::lDownload
    If !IsWindowVisible( oDlg:hWnd )
        ::lDownload := .T.
        ::lError    := .T.
        ::cError    :=  "Consulta Cancelada !"
    ElseIf !IsInternet()
        ::lDownload := .T.
        ::lError    := .T.
        ::cError    := "Perda de conexao com a internet !"
    ElseIf( Seconds()-nTimer ) >= ::nTimeOut
        ::lDownload := .T.
        ::lError    := .T.
        ::cError    := "Tempo limit esgotado !"
    EndIf
    SysRefresh()
End
Try
    ::cRetorno := oAct:Document:Body:InnerHtml
Catch oE
    ::lError := .T.
    ::cError := "Falha no recebimento dos dados!"
End
oDlg:End()
SysRefresh()
If ::lDownload .and. !::lError
    Return MontaSintegra( ::cRetorno, ::aGru1,::aGru2)
Else
    MsgStop(::cError,"Atenção")
EndIf
Return {}
 
//----------------------------------------------------------------------------------------------------------------------//
Method DownloadComplete( oAct ) Class Sintegra
Local cHTTP := oAct:LocationURL
 
LoGFile('Sintegra.Txt',{cHttp})
 
If ( ::cView == cHTTP )
    If At("IDENTIFICA",oAct:Document:Body:InnerHtml) != 0
        oAct:oWnd:Hide()
        ::lDownload := .T.
    Endif
ElseIf At( "não+foi+encontrado", cHTTP ) > 0
    ::cError    := "O CNPJ não foi encontrado na base do Sintegra."
    ::lError    := .T.
    ::lDownload := .T.
ElseIf At( "incorreto", cHTTP ) > 0        
    ::cError    := "O CNPJ não é valido !"
    ::lError    := .T.
    ::lDownload := .T.
EndIf    
Return Nil
 
//----------------------------------------------------------------------------------------------------------------------//
EXIT PROCEDURE SAIR
    PostQuitMessage( 0 )
    __Quit()
Return Nil
 
//----------------------------------------------------------------------------------------------------------------------//
 
/*********************************************************  
 * Função      : MontaSintegra() - Função para pegar as informações do html
 * Data        : Por : Alain/Rancharia
 * Revisado em : 26/07/2011 - 07:50:27 Por : Vagner Wirts
 * Parâmetros  :
 * cSintegra - Texto do html
 * aGru1 - Array com início e fim do texto
 * aGru2 - Array com as variáveis para retirar do texto
**********************************************************/  
Static Function MontaSintegra( cSintegra ,aGru1,aGru2)
Local cLine, nLine, nTotal
Local aReto := {}
Local cTexto
Local nPos,nPo1
 
//Retira Comentários do html
Do Whil (nPos := At("<!--",cSintegra)) > 0
    nPo1 := At("-->",cSintegra)
    cTexto := SubStr(cSintegra,nPos,(nPo1-nPos)+3)
    cSintegra := StrTran(cSintegra,cTexto,"")
Enddo
 
cSintegra := StrTran(cSintegra,"INFORMAÇÕES COMPLEMENTARES")
cSintegra := StrTran(cSintegra,"ENDEREÇO DA EMPRESA")
 
cSintegra := StripHTML( cSintegra )
cSintegra := GroupBy(aGru1[1],aGru1[2],cSintegra,.F.,.F.)
cSintegra := RemoveBlankLineNfe( cSintegra )
 
nTotal := MLCount( cSintegra)
 
MemoWrit("Teste.Txt",cSintegra)
 
For  nLine := 1 To nTotal
    cLine := Alltrim(MemoLine(cSintegra,,nLine))
    If AsCan(aGru2,cLine) != 0
        cTexto := Alltrim(MemoLine(cSintegra,,++nLine))
        If AsCan(aGru2,cTexto) != 0
            //Caso não haja a informação
            cTexto := " "
            --nLine
        Endif
        If cTexto == "Data da Concessão da Inscrição:"
            //para o Caso do RJ
            cTexto := " "
            --nLine
        Endif
        If Left(cLine,10) == "Logradouro"
            //No Logradouro separa o tipo do endereco
            nPos := At(" ",cTexto)
            cNew := AllTrim(Left(cTexto,nPos))
            AaDd(aReto,cNew)
            cTexto := AlLTrim(Right(cTexto,Len(cTexto)-nPos))
        Endif
        AaDd(aReto,RemoveChar(cTexto,{[.],[-],[/],[:]}))
    Endif
Next nLine 
 
Retu(aReto)
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function StripHTML( cHtml )
Local cString:= RemoveChar( cHTML, {"&","amp;","nbsp;",'<!-- ',' -->','<--','-->','||','\/','<!--%','%-->',[/\]} )
Local aMatch := HB_RegExAll("\<[^\>]*\>", cString)
 
Aeval(aMatch,{|a|cString:=StrTran(cString,a[1])} )
 
Return cString
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function DelUrlCache( aUrl )
Return AEval( aUrl, {|nX,nNum| DeleteUrlCacheEntry( aUrl[nNum] )} )
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function DelFile( cFile )
If File(cFile); FErase(cFile); EndIf
Return Nil
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function RemoveChar(cString,aChar)
Aeval(aChar,{|cChar|cString:=StrTran(cString,cChar)})
Return(cString)
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function GroupBy( cStart, cEnd, cString, lTags, lBreak )
Local nBegin, nEnd
Local cFound, nAT
Default lTags:=.F., lBreak:=.F.
 
nBegin := At( cStart, cString )
If(nBegin == 0 ) ; Return "" ; EndIf
 
If(lTags == .F.) ; nBegin += Len(cStart) ; EndIf
 
If( cEnd != Nil )
    nEnd := At( cEnd, cString, nBegin )
    If nEnd == 0
        Return ""
    Else
        nEnd := nEnd - nBegin
    EndIf
    If( lTags )
        nEnd += Len( cEnd )
    EndIf
Else
    If lBreak
        nAt := At(CRLF,Substr(cString,nBegin,Len(cString)))
        If nAt > 0
            nEnd := nAt - 1
            If nEnd < Len(cString) ; nEnd := Len(cString)+1 ; Endif
        Else
            nEnd := Len( cString )
        EndIf
    Else        
        nEnd := Len( cString )
    EndIf
EndIf
 
cFound := Substr( cString, nBegin, nEnd )
If lBreak
    If lTags
        cFound:=StrTran(cFound,CRLF)
    Else
        If cEnd != Nil
            nAt := At(CRLF,cFound)
            If nAt > 0
                cFound := Left(cFound,nAT)
            EndIf
        Endif
    EndIf
EndIf
Return cFound
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function RemoveBlankLineNfe( cTexto )
Local cTextoNew:=""
Local nLines, cLine, nNum
 
nLines   := MLCount( cTexto, 400)
 
For  nNum := 0 To nLines
    cLine := Alltrim(MemoLine( cTexto, 400, nNum ))
    If !Empty(cLine)
        If cLine == "function ocultarExibir(idDaTabela)"
            nNum+=14
            Loop
        EndIf
        if cLine<>"Ativo".and.cLine<>"Baixado".and.cLine<>"Inativo"
            cTextoNew += cLine + If (nNum<nLines,CRLF,"")
        endif
    EndIf
    Next nNum
Return cTextoNew
 
//----------------------------------------------------------------------------------------------------------------------//
 
/*********************************************************  
 * Função      : PegaUrls() - Função para pegar as urls dos estados e também a configuração do itens para para localizar
 * Data        : 25/07/2011 - 11:42:49 Por : Vagner
 * Revisado em : 25/07/2011 - 11:42:51 Por : Vagner
 * Parâmetros  :
 * cUF - Unidade da Federação
 * Comentários :
 * Nem todos os campos do html são iguais então foi colocado em forma de array para melhor identificar
**********************************************************/  
Static Func PegaUrls(cUF)
Local aRet := {}
 
If     cUF == "AC"
ElseIf cUF == "AL"
ElseIf cUF == "AM"
ElseIf cUF == "AP"
ElseIf cUF == "BA"
    aRet := {"http://www.sefaz.ba.gov.br/Sintegra/",;
         "sintegra.asp?estado=BA",;
         "Result.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "CE"
    aRet := {"http://www.sefaz.ce.gov.br/content/aplicacao/internet/servicos_online/sintegra/",;
         "sintegra.asp?estado=ce",;
         "result.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "CNAE Fiscal Primário:",;
         "Situação Cadastral Vigente:",;
         "Data da Situação Cadastral:",;
         "Regime de Recolhimento:" ;
         } ;
        }
 
ElseIf cUF == "DF"
ElseIf cUF == "ES"
    aRet := {"http://www.sintegra.es.gov.br/",;
         "",;
         "resultado.php",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social :",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data da Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
ElseIf cUF == "FN"
ElseIf cUF == "GO"
    aRet := {"http://www.sefaz.go.gov.br/sintegra/ConsultaCadastro/",;
         "",;
         "consulta.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CGC/CNPJ:",;
         "Inscrição Estadual - CCE :",;
         "Nome / Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data da Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
//http://www.sefaz.go.gov.br/sintegra/ConsultaCadastro/
//http://www.sefaz.go.gov.br/sintegra/ConsultaCadastro/consulta.asp
ElseIf cUF == "MA"
    aRet := {"http://www.sefaz.ma.gov.br/sintegra/",;
         "sintegra.asp",;
         "result.asp",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados em"},;
         {"CGC/CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "CNAE Principal:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
//25/07/2011 16:47:39: http://www.sefaz.ma.gov.br/sintegra/sintegra.asp    
//25/07/2011 16:48:16: http://www.sefaz.ma.gov.br/sintegra/result_lista_ruc.asp    
//25/07/2011 16:49:36: http://www.sefaz.ma.gov.br/sintegra/result.asp?IE=12147386    
 
ElseIf cUF == "MG"
    aRet := {"http://www.sintegra.fazenda.mg.gov.br/",;
         "consulta_empresa_pesquisa.asp",;
         "consulta_empresa_principal.asp",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
//http://www.sintegra.fazenda.mg.gov.br/consulta_empresa_pesquisa.asp
//http://www.sintegra.fazenda.mg.gov.br/consulta_empresa_inscricoes.asp
//http://www.sintegra.fazenda.mg.gov.br/consulta_empresa_principal.asp
 
ElseIf cUF == "MS"
    aRet := {"http://www1.sefaz.ms.gov.br/Cadastro/sintegra/",;
         "cadastromsCCI.asp",;
         "ResultadoCCI.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial/Nome:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "AtividadeEconômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
ElseIf cUF == "MT"
ElseIf cUF == "PA"
    aRet := {"http://www1.sefaz.ms.gov.br/Cadastro/sintegra/",;
         "cadastromsCCI.asp",;
         "ResultadoCCI.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
//https://app.sefa.pa.gov.br/Sintegra/detalharEstabelecimento.do?id=152077090    //152077090=Inscrição estadual
//https://app.sefa.pa.gov.br/Sintegra/
//https://app.sefa.pa.gov.br/Sintegra/detalharEstabelecimento.do;jsessionid=fb69c7d0116ba787401876810876ed709ff929358f4cc50c9928e182e83f36c2.e3uKbhyPbhf0bhyNe0?id=152914692
 
ElseIf cUF == "PB"
ElseIf cUF == "PE"
ElseIf cUF == "PI"
ElseIf cUF == "PR"
    aRet := {"http://www.sintegra.fazenda.pr.gov.br/",;
         "sintegra/",;
         "sintegra/",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Nome Empresarial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica Principal:",;
         "Situação Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "RJ"
    aRet := {"http://www.fazenda.rj.gov.br/projetoCPS/",;
         "consulta.jsp;jsessionid=RqRCTtJRZc6Tt0LhXgZnKh1jt8JQLx1Lk2J8HJ7xKqJpGvhQ0W4q!-1007206184",;
         "cpsServlet",;
         {"IDENTIFICAÇÃO","Data da Consulta:"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "AtividadeEconômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
ElseIf cUF == "RN"
    aRet := {"http://www.sintegra.fazenda.pr.gov.br/",;
         "sintegra/",;
         "sintegra/",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "CNAE Fiscal Primário:",;
         "Situação Cadastral Atual:",;
         "Data da Situação Cadastral:",;
         "Regime de Pagamento:" ;
         } ;
        }
//http://www.set.rn.gov.br/sintegra/default.asp
//http://www.set.rn.gov.br/sintegra/cnpj.asp?cnpj=03766900000132
//<td bgcolor="#FAFAE4" align="center" ><div align="left"><a href="result.asp?ie=085197"> Encontrar o IE
//http://www.set.rn.gov.br/sintegra/result.asp?ie=085197
 
ElseIf cUF == "RO"
    aRet := {"http://portal.intranet.sefin.ro.gov.br/PortalContribuinte/",;
         "parametropublica.jsp",;
         "consultapublica.jsp",;
         {"IDENTIFICA",Nil},;
         {"C.P.F/C.N.P.J:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Endereço:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Regime de Pagamento:",;
         "Situação Cadastral Vigente:",;
         "Data:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "RR"
ElseIf cUF == "RS"
ElseIf cUF == "SC"
    aRet := {"http://sistemas3.sef.sc.gov.br/sintegra/",;
         "consulta_empresa_pesquisa.aspx",;
         "consulta_empresa_pesquisa.aspx",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados em informações"},;
         {"CPF/CNPJ:",;
         "Inscrição Estadual:",;
         "Nome/Razão Estadual:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "CNAE-Fiscal Principal:",;
         "Situação Cadastral Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "SE"
ElseIf cUF == "SP"
    aRet := {"http://pfeserv1.fazenda.sp.gov.br/sintegrapfe/",;
         "consultaSintegraServlet",;
         "sintegra",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
ElseIf cUF == "TO"
Endif
Retu(aRet)
 
//----------------------------------------------------------------------------------------------------------------------//
DLL Static Function DeleteUrlCacheEntry(lpszUrlName AS STRING) AS LONG PASCAL FROM "DeleteUrlCacheEntryA" LIB "wininet.dll"
//----------------------------------------------------------------------------------------------------------------------//

kmt_karinha@pop.com.br  

skype: Joao@pleno.com.br

FWH13.06 FOR XHARBOUR - WORKSHOP.EXE

TIM: (11) 95150-7341


#7 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 27 novembro 2013 - 12:07

Kapiaba, da pra postar um exemplo de uso dela?


Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#8 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 27 novembro 2013 - 12:36

consegui, muito boa.... já vamos implementar em nosso sistema administrativo interno... isso vai facilitar nossa vida para cadastrar clientes...

 

obrigado !


Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#9 kapiaba

kapiaba

    Timão

  • Membros
  • PipPipPip
  • 18.553 posts
  • LocationSão Paulo

Postado 27 novembro 2013 - 12:57

consegui, muito boa.... já vamos implementar em nosso sistema administrativo interno... isso vai facilitar nossa vida para cadastrar clientes...

 

obrigado !

Maravilha, agora eu que peço para voce postar um exemplo de uso dela, pois não consegui fazer funcionar, mas acho que era porque a minha versão do five era muito velha, da época do Vagner Wirts.... kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

 

Obg. Abs.


kmt_karinha@pop.com.br  

skype: Joao@pleno.com.br

FWH13.06 FOR XHARBOUR - WORKSHOP.EXE

TIM: (11) 95150-7341


#10 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 27 novembro 2013 - 01:00

#Include "Fivewin.ch"

Function Teste()
Local oSintegra := GetSintegra("SP")
aRet := oSintegra:Consulta( )
msgstop(sr_showvector(aRet))

Return

Function GetSintegra(cUF); Retu( Sintegra():New(cUF))

/*********************************************************
* Função : PegaSintegra() - Função para pegar os dados através de um html em disco
* Data : 26/07/2011 - 09:19:59 Por : Vagner
* Revisado em : 26/07/2011 - 09:20:02 Por : Vagner
* Parâmetros :
* cHtml - Arquivo Html
* Comentários :
* Entrar na página e copiar o código fonte da página
**********************************************************/
Function PegaSintegra(cHtml) ; Retu (MontaSintegra(cHtml))

//----------------------------------------------------------------------------------------------------------------------//
Class Sintegra
Data nTimeOut Init 240 // 4 minutos
Data lDownload, lError, cError
Data cRetorno
Data aGru1,aGru2
Data cUrl,cPost,cView

Method New(cUF) Constructor
Method Consulta( cCGCorIE )
Method DownloadComplete( oAct )
Method Clear() INLINE DelUrlCache({::cPost,::cView})
EndClass
//----------------------------------------------------------------------------------------------------------------------//

Method New(cUF) Class Sintegra
Local aUrls

Default cUF := "SP"

aUrls := PegaUrls(cUF)

If Len(aUrls) == 0
MsgStop("Não pude inicializar o Sintegra.","Estado "+cUF+" Inválido.")
Retu(.T.)
Endif

::cUrl := aUrls[1]
::cPost := ::cUrl+aUrls[2]
::cView := ::cUrl+aUrls[3]
::aGru1 := AClone(aUrls[4])
::aGru2 := AClone(aUrls[5])

Return Self

//----------------------------------------------------------------------------------------------------------------------//
Method Consulta() Class Sintegra
Local oDlg, oAct
Local nTimer
If IsInternet() == .F.
MsgStop("Sem conexão com a internet !")
Return {}
Else
::Clear()
EndIf
::cRetorno := ""
::lDownload := .F.
::lError := .F.

Define Dialog oDlg From 0,0 To 600,664 Pixel Title "[ SiNtEgRa - Fazendo Consulta ]" //Style WS_CAPTION
oDlg:lHelpIcon:=.F.
Activate Dialog oDlg NoWait Centered

oAct:=TActivex():New(oDlg,"Shell.Explorer",00,0,664,600)
oAct:bOnEvent := {|cEv|If(cEv=="DownloadComplete",::DownloadComplete( oAct ),Nil)}
oAct:Silent := .T.
oAct:Navigate( ::cPost )
oAct:SetFocus()
nTimer:=Seconds()

While !::lDownload
If !IsWindowVisible( oDlg:hWnd )
::lDownload := .T.
::lError := .T.
::cError := "Consulta Cancelada !"
ElseIf !IsInternet()
::lDownload := .T.
::lError := .T.
::cError := "Perda de conexao com a internet !"
ElseIf( Seconds()-nTimer ) >= ::nTimeOut
::lDownload := .T.
::lError := .T.
::cError := "Tempo limit esgotado !"
EndIf
SysRefresh()
End
Try
::cRetorno := oAct:Document:Body:InnerHtml
Catch oE
::lError := .T.
::cError := "Falha no recebimento dos dados!"
End
oDlg:End()
SysRefresh()
If ::lDownload .and. !::lError
Return MontaSintegra( ::cRetorno, ::aGru1,::aGru2)
Else
MsgStop(::cError,"Atenção")
EndIf
Return {}

//----------------------------------------------------------------------------------------------------------------------//
Method DownloadComplete( oAct ) Class Sintegra
Local cHTTP := oAct:LocationURL

LoGFile('Sintegra.Txt',{cHttp})

If ( ::cView == cHTTP )
If At("IDENTIFICA",oAct:Document:Body:InnerHtml) != 0
oAct:oWnd:Hide()
::lDownload := .T.
Endif
ElseIf At( "não+foi+encontrado", cHTTP ) > 0
::cError := "O CNPJ não foi encontrado na base do Sintegra."
::lError := .T.
::lDownload := .T.
ElseIf At( "incorreto", cHTTP ) > 0
::cError := "O CNPJ não é valido !"
::lError := .T.
::lDownload := .T.
EndIf
Return Nil

//----------------------------------------------------------------------------------------------------------------------//
EXIT PROCEDURE SAIR
PostQuitMessage( 0 )
__Quit()
Return Nil

//----------------------------------------------------------------------------------------------------------------------//

/*********************************************************
* Função : MontaSintegra() - Função para pegar as informações do html
* Data : Por : Alain/Rancharia
* Revisado em : 26/07/2011 - 07:50:27 Por : Vagner Wirts
* Parâmetros :
* cSintegra - Texto do html
* aGru1 - Array com início e fim do texto
* aGru2 - Array com as variáveis para retirar do texto
**********************************************************/
Static Function MontaSintegra( cSintegra ,aGru1,aGru2)
Local cLine, nLine, nTotal
Local aReto := {}
Local cTexto
Local nPos,nPo1

//Retira Comentários do html
Do Whil (nPos := At("<!--",cSintegra)) > 0
nPo1 := At("-->",cSintegra)
cTexto := SubStr(cSintegra,nPos,(nPo1-nPos)+3)
cSintegra := StrTran(cSintegra,cTexto,"")
Enddo

cSintegra := StrTran(cSintegra,"INFORMAÇÕES COMPLEMENTARES")
cSintegra := StrTran(cSintegra,"ENDEREÇO DA EMPRESA")

cSintegra := StripHTML( cSintegra )
cSintegra := GroupBy(aGru1[1],aGru1[2],cSintegra,.F.,.F.)
cSintegra := RemoveBlankLineNfe( cSintegra )

nTotal := MLCount( cSintegra)

MemoWrit("Teste.Txt",cSintegra)

For nLine := 1 To nTotal
cLine := Alltrim(MemoLine(cSintegra,,nLine))
If AsCan(aGru2,cLine) != 0
cTexto := Alltrim(MemoLine(cSintegra,,++nLine))
If AsCan(aGru2,cTexto) != 0
//Caso não haja a informação
cTexto := " "
--nLine
Endif
If cTexto == "Data da Concessão da Inscrição:"
//para o Caso do RJ
cTexto := " "
--nLine
Endif
If Left(cLine,10) == "Logradouro"
//No Logradouro separa o tipo do endereco
nPos := At(" ",cTexto)
cNew := AllTrim(Left(cTexto,nPos))
AaDd(aReto,cNew)
cTexto := AlLTrim(Right(cTexto,Len(cTexto)-nPos))
Endif
AaDd(aReto,RemoveChar(cTexto,{[.],[-],[/],[:]}))
Endif
Next nLine

Retu(aReto)

//----------------------------------------------------------------------------------------------------------------------//
Static Function StripHTML( cHtml )
Local cString:= RemoveChar( cHTML, {"&","amp;","nbsp;",'<!-- ',' -->','<--','-->','||','\/','<!--%','%-->',[/\]} )
Local aMatch := HB_RegExAll("\<[^\>]*\>", cString)

Aeval(aMatch,{|a|cString:=StrTran(cString,a[1])} )

Return cString

//----------------------------------------------------------------------------------------------------------------------//
Static Function DelUrlCache( aUrl )
Return AEval( aUrl, {|nX,nNum| DeleteUrlCacheEntry( aUrl[nNum] )} )

//----------------------------------------------------------------------------------------------------------------------//
Static Function DelFile( cFile )
If File(cFile); FErase(cFile); EndIf
Return Nil

//----------------------------------------------------------------------------------------------------------------------//
Static Function RemoveChar(cString,aChar)
Aeval(aChar,{|cChar|cString:=StrTran(cString,cChar)})
Return(cString)

//----------------------------------------------------------------------------------------------------------------------//
Static Function GroupBy( cStart, cEnd, cString, lTags, lBreak )
Local nBegin, nEnd
Local cFound, nAT
Default lTags:=.F., lBreak:=.F.

nBegin := At( cStart, cString )
If(nBegin == 0 ) ; Return "" ; EndIf

If(lTags == .F.) ; nBegin += Len(cStart) ; EndIf

If( cEnd != Nil )
nEnd := At( cEnd, cString, nBegin )
If nEnd == 0
Return ""
Else
nEnd := nEnd - nBegin
EndIf
If( lTags )
nEnd += Len( cEnd )
EndIf
Else
If lBreak
nAt := At(CRLF,Substr(cString,nBegin,Len(cString)))
If nAt > 0
nEnd := nAt - 1
If nEnd < Len(cString) ; nEnd := Len(cString)+1 ; Endif
Else
nEnd := Len( cString )
EndIf
Else
nEnd := Len( cString )
EndIf
EndIf

cFound := Substr( cString, nBegin, nEnd )
If lBreak
If lTags
cFound:=StrTran(cFound,CRLF)
Else
If cEnd != Nil
nAt := At(CRLF,cFound)
If nAt > 0
cFound := Left(cFound,nAT)
EndIf
Endif
EndIf
EndIf
Return cFound

//----------------------------------------------------------------------------------------------------------------------//
Static Function RemoveBlankLineNfe( cTexto )
Local cTextoNew:=""
Local nLines, cLine, nNum

nLines := MLCount( cTexto, 400)

For nNum := 0 To nLines
cLine := Alltrim(MemoLine( cTexto, 400, nNum ))
If !Empty(cLine)
If cLine == "function ocultarExibir(idDaTabela)"
nNum+=14
Loop
EndIf
if cLine<>"Ativo".and.cLine<>"Baixado".and.cLine<>"Inativo"
cTextoNew += cLine + If (nNum<nLines,CRLF,"")
endif
EndIf
Next nNum
Return cTextoNew

//----------------------------------------------------------------------------------------------------------------------//

/*********************************************************
* Função : PegaUrls() - Função para pegar as urls dos estados e também a configuração do itens para para localizar
* Data : 25/07/2011 - 11:42:49 Por : Vagner
* Revisado em : 25/07/2011 - 11:42:51 Por : Vagner
* Parâmetros :
* cUF - Unidade da Federação
* Comentários :
* Nem todos os campos do html são iguais então foi colocado em forma de array para melhor identificar
**********************************************************/
Static Func PegaUrls(cUF)
Local aRet := {}

If cUF == "AC"
ElseIf cUF == "AL"
ElseIf cUF == "AM"
ElseIf cUF == "AP"
ElseIf cUF == "BA"
aRet := {"http://www.sefaz.ba.gov.br/Sintegra/",;
"sintegra.asp?estado=BA",;
"Result.asp",;
{"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Razão Social:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"UF:",;
"Município:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica:",;
"Situação Cadastral Atual:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração de ICMS:" ;
} ;
}

ElseIf cUF == "CE"
aRet := {"http://www.sefaz.ce....nline/sintegra/",;
"sintegra.asp?estado=ce",;
"result.asp",;
{"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"RazãoSocial:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"UF:",;
"Município:",;
"CEP:",;
"Telefone:",;
"CNAE Fiscal Primário:",;
"Situação Cadastral Vigente:",;
"Data da Situação Cadastral:",;
"Regime de Recolhimento:" ;
} ;
}

ElseIf cUF == "DF"
ElseIf cUF == "ES"
aRet := {"http://www.sintegra.es.gov.br/",;
"",;
"resultado.php",;
{"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Razão Social :",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"UF:",;
"Município:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica:",;
"Situação Cadastral Vigente:",;
"Data da Situação Cadastral:",;
"Regime de Apuração:" ;
} ;
}

ElseIf cUF == "FN"
ElseIf cUF == "GO"
aRet := {"http://www.sefaz.go....nsultaCadastro/",;
"",;
"consulta.asp",;
{"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
{"CGC/CNPJ:",;
"Inscrição Estadual - CCE :",;
"Nome / Razão Social:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"UF:",;
"Município:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica:",;
"Situação Cadastral Vigente:",;
"Data da Situação Cadastral:",;
"Regime de Apuração:" ;
} ;
}

//http://www.sefaz.go....nsultaCadastro/
//http://www.sefaz.go....ro/consulta.asp
ElseIf cUF == "MA"
aRet := {"http://www.sefaz.ma.gov.br/sintegra/",;
"sintegra.asp",;
"result.asp",;
{"IDENTIFICAÇÃO","Os dados acima estão baseados em"},;
{"CGC/CNPJ:",;
"Inscrição Estadual:",;
"RazãoSocial:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"UF:",;
"Município:",;
"CEP:",;
"Telefone:",;
"CNAE Principal:",;
"Situação Cadastral Vigente:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração:" ;
} ;
}
//25/07/2011 16:47:39: http://www.sefaz.ma....ra/sintegra.asp
//25/07/2011 16:48:16: http://www.sefaz.ma....t_lista_ruc.asp
//25/07/2011 16:49:36: http://www.sefaz.ma....asp?IE=12147386

ElseIf cUF == "MG"
aRet := {"http://www.sintegra.fazenda.mg.gov.br/",;
"consulta_empresa_pesquisa.asp",;
"consulta_empresa_principal.asp",;
{"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Razão Social:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica:",;
"Situação Cadastral Vigente:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração:" ;
} ;
}

//http://www.sintegra....sa_pesquisa.asp
//http://www.sintegra...._inscricoes.asp
//http://www.sintegra....a_principal.asp

ElseIf cUF == "MS"
aRet := {"http://www1.sefaz.ms...astro/sintegra/",;
"cadastromsCCI.asp",;
"ResultadoCCI.asp",;
{"IDENTIFICAÇÃO","Os dados acima são baseados"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"RazãoSocial/Nome:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"AtividadeEconômica:",;
"Situação Cadastral Vigente:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração:" ;
} ;
}

ElseIf cUF == "MT"
ElseIf cUF == "PA"
aRet := {"http://www1.sefaz.ms...astro/sintegra/",;
"cadastromsCCI.asp",;
"ResultadoCCI.asp",;
{"IDENTIFICAÇÃO","Os dados acima são baseados"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Razão Social:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica:",;
"Situação Cadastral Atual:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração de ICMS:" ;
} ;
}
//https://app.sefa.pa....do?id=152077090 //152077090=Inscrição estadual
//https://app.sefa.pa.gov.br/Sintegra/
//https://app.sefa.pa....e0?id=152914692

ElseIf cUF == "PB"
ElseIf cUF == "PE"
ElseIf cUF == "PI"
ElseIf cUF == "PR"
aRet := {"http://www.sintegra.fazenda.pr.gov.br/",;
"sintegra/",;
"sintegra/",;
{"IDENTIFICAÇÃO","Os dados acima são baseados"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Nome Empresarial:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica Principal:",;
"Situação Atual:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração de ICMS:" ;
} ;
}

ElseIf cUF == "RJ"
aRet := {"http://www.fazenda.r....br/projetoCPS/",;
"consulta.jsp;jsessionid=RqRCTtJRZc6Tt0LhXgZnKh1jt8JQLx1Lk2J8HJ7xKqJpGvhQ0W4q!-1007206184",;
"cpsServlet",;
{"IDENTIFICAÇÃO","Data da Consulta:"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"RazãoSocial:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"AtividadeEconômica:",;
"Situação Cadastral Vigente:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração de ICMS:" ;
} ;
}
ElseIf cUF == "RN"
aRet := {"http://www.sintegra.fazenda.pr.gov.br/",;
"sintegra/",;
"sintegra/",;
{"IDENTIFICAÇÃO","Os dados acima são baseados"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Razão Social:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"CNAE Fiscal Primário:",;
"Situação Cadastral Atual:",;
"Data da Situação Cadastral:",;
"Regime de Pagamento:" ;
} ;
}
//http://www.set.rn.go...gra/default.asp
//http://www.set.rn.go...=03766900000132
//<td bgcolor="#FAFAE4" align="center" ><div align="left"><a href="result.asp?ie=085197"> Encontrar o IE
//http://www.set.rn.go...t.asp?ie=085197

ElseIf cUF == "RO"
aRet := {"http://portal.intran...alContribuinte/",;
"parametropublica.jsp",;
"consultapublica.jsp",;
{"IDENTIFICA",Nil},;
{"C.P.F/C.N.P.J:",;
"Inscrição Estadual:",;
"Razão Social:",;
"Endereço:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"Regime de Pagamento:",;
"Situação Cadastral Vigente:",;
"Data:",;
"Regime de Apuração de ICMS:" ;
} ;
}

ElseIf cUF == "RR"
ElseIf cUF == "RS"
ElseIf cUF == "SC"
aRet := {"http://sistemas3.sef...ov.br/sintegra/",;
"consulta_empresa_pesquisa.aspx",;
"consulta_empresa_pesquisa.aspx",;
{"IDENTIFICAÇÃO","Os dados acima estão baseados em informações"},;
{"CPF/CNPJ:",;
"Inscrição Estadual:",;
"Nome/Razão Estadual:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"UF:",;
"Município:",;
"CEP:",;
"Telefone:",;
"CNAE-Fiscal Principal:",;
"Situação Cadastral Atual:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração de ICMS:" ;
} ;
}

ElseIf cUF == "SE"
ElseIf cUF == "SP"
aRet := {"http://pfeserv1.faze...br/sintegrapfe/",;
"consultaSintegraServlet",;
"sintegra",;
{"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
{"CNPJ:",;
"Inscrição Estadual:",;
"Razão Social:",;
"Logradouro:",;
"Número:",;
"Complemento:",;
"Bairro:",;
"Município:",;
"UF:",;
"CEP:",;
"Telefone:",;
"Atividade Econômica:",;
"Situação Cadastral Vigente:",;
"Data desta Situação Cadastral:",;
"Regime de Apuração:" ;
} ;
}
ElseIf cUF == "TO"
Endif
Retu(aRet)

STATIC Function DeleteUrlCacheEntry()
Return nil

//----------------------------------------------------------------------------------------------------------------------//
//DLL Static Function DeleteUrlCacheEntry(lpszUrlName AS STRING) AS LONG PASCAL FROM "DeleteUrlCacheEntryA" LIB "wininet.dll"

Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#11 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 27 novembro 2013 - 01:02

Kapiaba, como faz pra postar codigo aqui do jeito que voce postou, pra ficar tudo identado?


Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#12 kapiaba

kapiaba

    Timão

  • Membros
  • PipPipPip
  • 18.553 posts
  • LocationSão Paulo

Postado 27 novembro 2013 - 01:30

Mandei mensagem em private, pois se posto aqui identa.

 

Tens skype?

 

abs,


kmt_karinha@pop.com.br  

skype: Joao@pleno.com.br

FWH13.06 FOR XHARBOUR - WORKSHOP.EXE

TIM: (11) 95150-7341


#13 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 27 novembro 2013 - 01:56

kapiaba, nao precisava, pq o que voce postou eu copiei certinho.... mas veja que o que voce postou ficou certinho, ja meu codigo qdo postei ficou tudo fora......................

abraços


Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#14 kapiaba

kapiaba

    Timão

  • Membros
  • PipPipPip
  • 18.553 posts
  • LocationSão Paulo

Postado 27 novembro 2013 - 02:10

as tags estão incorretas, ponha code...   /code entre [...]  [/...]   o code é minusculo no inicio e no fim do modulo.


kmt_karinha@pop.com.br  

skype: Joao@pleno.com.br

FWH13.06 FOR XHARBOUR - WORKSHOP.EXE

TIM: (11) 95150-7341


#15 emotta

emotta

    Member

  • Membros
  • PipPip
  • 960 posts
  • LocationNova Odessa/SP

Postado 27 novembro 2013 - 03:06

[/code]

#Include "Fivewin.ch"

Function Teste()
Local oSintegra := GetSintegra("SP")
aRet := oSintegra:Consulta(  )
msgstop(sr_showvector(aRet))

Return
 
Function GetSintegra(cUF); Retu( Sintegra():New(cUF))
 
/*********************************************************  
 * Função      : PegaSintegra() - Função para pegar os dados através de um html em disco
 * Data        : 26/07/2011 - 09:19:59 Por : Vagner
 * Revisado em : 26/07/2011 - 09:20:02 Por : Vagner
 * Parâmetros  :
 * cHtml - Arquivo Html
 * Comentários :
 * Entrar na página e copiar o código fonte da página
**********************************************************/  
Function PegaSintegra(cHtml) ; Retu (MontaSintegra(cHtml))
 
//----------------------------------------------------------------------------------------------------------------------//
Class Sintegra
    Data nTimeOut  Init 240 // 4 minutos
    Data lDownload, lError, cError
    Data cRetorno
    Data aGru1,aGru2
    Data cUrl,cPost,cView
 
    Method New(cUF) Constructor
    Method Consulta( cCGCorIE )
    Method DownloadComplete( oAct )
    Method Clear() INLINE DelUrlCache({::cPost,::cView})
EndClass
//----------------------------------------------------------------------------------------------------------------------//
 
Method New(cUF) Class Sintegra
Local aUrls
 
Default cUF := "SP"
 
aUrls := PegaUrls(cUF)
 
If Len(aUrls) == 0
    MsgStop("Não pude inicializar o Sintegra.","Estado "+cUF+" Inválido.")
    Retu(.T.)
Endif
 
::cUrl  := aUrls[1]
::cPost := ::cUrl+aUrls[2]
::cView := ::cUrl+aUrls[3]
::aGru1 := AClone(aUrls[4])
::aGru2 := AClone(aUrls[5])
 
Return Self
 
//----------------------------------------------------------------------------------------------------------------------//
Method Consulta() Class Sintegra
Local oDlg, oAct
Local nTimer
If IsInternet() == .F.
    MsgStop("Sem conexão com a internet !")
    Return {}  
Else
    ::Clear()     
EndIf
::cRetorno  := ""
::lDownload := .F.
::lError    := .F.
 
Define Dialog oDlg From 0,0 To 600,664 Pixel Title "[ SiNtEgRa - Fazendo Consulta ]" //Style WS_CAPTION
oDlg:lHelpIcon:=.F.
Activate Dialog oDlg NoWait Centered
 
oAct:=TActivex():New(oDlg,"Shell.Explorer",00,0,664,600)
oAct:bOnEvent := {|cEv|If(cEv=="DownloadComplete",::DownloadComplete( oAct ),Nil)}
oAct:Silent   := .T.  
oAct:Navigate( ::cPost )
oAct:SetFocus()
nTimer:=Seconds()
 
While !::lDownload
    If !IsWindowVisible( oDlg:hWnd )
        ::lDownload := .T.
        ::lError    := .T.
        ::cError    :=  "Consulta Cancelada !"
    ElseIf !IsInternet()
        ::lDownload := .T.
        ::lError    := .T.
        ::cError    := "Perda de conexao com a internet !"
    ElseIf( Seconds()-nTimer ) >= ::nTimeOut
        ::lDownload := .T.
        ::lError    := .T.
        ::cError    := "Tempo limit esgotado !"
    EndIf
    SysRefresh()
End
Try
    ::cRetorno := oAct:Document:Body:InnerHtml
Catch oE
    ::lError := .T.
    ::cError := "Falha no recebimento dos dados!"
End
oDlg:End()
SysRefresh()
If ::lDownload .and. !::lError
    Return MontaSintegra( ::cRetorno, ::aGru1,::aGru2)
Else
    MsgStop(::cError,"Atenção")
EndIf
Return {}
 
//----------------------------------------------------------------------------------------------------------------------//
Method DownloadComplete( oAct ) Class Sintegra
Local cHTTP := oAct:LocationURL
 
LoGFile('Sintegra.Txt',{cHttp})
 
If ( ::cView == cHTTP )
    If At("IDENTIFICA",oAct:Document:Body:InnerHtml) != 0
        oAct:oWnd:Hide()
        ::lDownload := .T.
    Endif
ElseIf At( "não+foi+encontrado", cHTTP ) > 0
    ::cError    := "O CNPJ não foi encontrado na base do Sintegra."
    ::lError    := .T.
    ::lDownload := .T.
ElseIf At( "incorreto", cHTTP ) > 0        
    ::cError    := "O CNPJ não é valido !"
    ::lError    := .T.
    ::lDownload := .T.
EndIf    
Return Nil
 
//----------------------------------------------------------------------------------------------------------------------//
EXIT PROCEDURE SAIR
    PostQuitMessage( 0 )
    __Quit()
Return Nil
 
//----------------------------------------------------------------------------------------------------------------------//
 
/*********************************************************  
 * Função      : MontaSintegra() - Função para pegar as informações do html
 * Data        : Por : Alain/Rancharia
 * Revisado em : 26/07/2011 - 07:50:27 Por : Vagner Wirts
 * Parâmetros  :
 * cSintegra - Texto do html
 * aGru1 - Array com início e fim do texto
 * aGru2 - Array com as variáveis para retirar do texto
**********************************************************/  
Static Function MontaSintegra( cSintegra ,aGru1,aGru2)
Local cLine, nLine, nTotal
Local aReto := {}
Local cTexto
Local nPos,nPo1
 
//Retira Comentários do html
Do Whil (nPos := At("<!--",cSintegra)) > 0
    nPo1 := At("-->",cSintegra)
    cTexto := SubStr(cSintegra,nPos,(nPo1-nPos)+3)
    cSintegra := StrTran(cSintegra,cTexto,"")
Enddo
 
cSintegra := StrTran(cSintegra,"INFORMAÇÕES COMPLEMENTARES")
cSintegra := StrTran(cSintegra,"ENDEREÇO DA EMPRESA")
 
cSintegra := StripHTML( cSintegra )
cSintegra := GroupBy(aGru1[1],aGru1[2],cSintegra,.F.,.F.)
cSintegra := RemoveBlankLineNfe( cSintegra )
 
nTotal := MLCount( cSintegra)
 
MemoWrit("Teste.Txt",cSintegra)
 
For  nLine := 1 To nTotal
    cLine := Alltrim(MemoLine(cSintegra,,nLine))
    If AsCan(aGru2,cLine) != 0
        cTexto := Alltrim(MemoLine(cSintegra,,++nLine))
        If AsCan(aGru2,cTexto) != 0
            //Caso não haja a informação
            cTexto := " "
            --nLine
        Endif
        If cTexto == "Data da Concessão da Inscrição:"
            //para o Caso do RJ
            cTexto := " "
            --nLine
        Endif
        If Left(cLine,10) == "Logradouro"
            //No Logradouro separa o tipo do endereco
            nPos := At(" ",cTexto)
            cNew := AllTrim(Left(cTexto,nPos))
            AaDd(aReto,cNew)
            cTexto := AlLTrim(Right(cTexto,Len(cTexto)-nPos))
        Endif
        AaDd(aReto,RemoveChar(cTexto,{[.],[-],[/],[:]}))
    Endif
Next nLine
 
Retu(aReto)
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function StripHTML( cHtml )
Local cString:= RemoveChar( cHTML, {"&","amp;","nbsp;",'<!-- ',' -->','<--','-->','||','\/','<!--%','%-->',[/\]} )
Local aMatch := HB_RegExAll("\<[^\>]*\>", cString)
 
Aeval(aMatch,{|a|cString:=StrTran(cString,a[1])} )
 
Return cString
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function DelUrlCache( aUrl )
Return AEval( aUrl, {|nX,nNum| DeleteUrlCacheEntry( aUrl[nNum] )} )
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function DelFile( cFile )
If File(cFile); FErase(cFile); EndIf
Return Nil
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function RemoveChar(cString,aChar)
Aeval(aChar,{|cChar|cString:=StrTran(cString,cChar)})
Return(cString)
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function GroupBy( cStart, cEnd, cString, lTags, lBreak )
Local nBegin, nEnd
Local cFound, nAT
Default lTags:=.F., lBreak:=.F.
 
nBegin := At( cStart, cString )
If(nBegin == 0 ) ; Return "" ; EndIf
 
If(lTags == .F.) ; nBegin += Len(cStart) ; EndIf
 
If( cEnd != Nil )
    nEnd := At( cEnd, cString, nBegin )
    If nEnd == 0
        Return ""
    Else
        nEnd := nEnd - nBegin
    EndIf
    If( lTags )
        nEnd += Len( cEnd )
    EndIf
Else
    If lBreak
        nAt := At(CRLF,Substr(cString,nBegin,Len(cString)))
        If nAt > 0
            nEnd := nAt - 1
            If nEnd < Len(cString) ; nEnd := Len(cString)+1 ; Endif
        Else
            nEnd := Len( cString )
        EndIf
    Else        
        nEnd := Len( cString )
    EndIf
EndIf
 
cFound := Substr( cString, nBegin, nEnd )
If lBreak
    If lTags
        cFound:=StrTran(cFound,CRLF)
    Else
        If cEnd != Nil
            nAt := At(CRLF,cFound)
            If nAt > 0
                cFound := Left(cFound,nAT)
            EndIf
        Endif
    EndIf
EndIf
Return cFound
 
//----------------------------------------------------------------------------------------------------------------------//
Static Function RemoveBlankLineNfe( cTexto )
Local cTextoNew:=""
Local nLines, cLine, nNum
 
nLines   := MLCount( cTexto, 400)
 
For  nNum := 0 To nLines
    cLine := Alltrim(MemoLine( cTexto, 400, nNum ))
    If !Empty(cLine)
        If cLine == "function ocultarExibir(idDaTabela)"
            nNum+=14
            Loop
        EndIf
        if cLine<>"Ativo".and.cLine<>"Baixado".and.cLine<>"Inativo"
            cTextoNew += cLine + If (nNum<nLines,CRLF,"")
        endif
    EndIf
    Next nNum
Return cTextoNew
 
//----------------------------------------------------------------------------------------------------------------------//
 
/*********************************************************  
 * Função      : PegaUrls() - Função para pegar as urls dos estados e também a configuração do itens para para localizar
 * Data        : 25/07/2011 - 11:42:49 Por : Vagner
 * Revisado em : 25/07/2011 - 11:42:51 Por : Vagner
 * Parâmetros  :
 * cUF - Unidade da Federação
 * Comentários :
 * Nem todos os campos do html são iguais então foi colocado em forma de array para melhor identificar
**********************************************************/  
Static Func PegaUrls(cUF)
Local aRet := {}
 
If     cUF == "AC"
ElseIf cUF == "AL"
ElseIf cUF == "AM"
ElseIf cUF == "AP"
ElseIf cUF == "BA"
    aRet := {"http://www.sefaz.ba.gov.br/Sintegra/",;
         "sintegra.asp?estado=BA",;
         "Result.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "CE"
    aRet := {"http://www.sefaz.ce....nline/sintegra/",;
         "sintegra.asp?estado=ce",;
         "result.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "CNAE Fiscal Primário:",;
         "Situação Cadastral Vigente:",;
         "Data da Situação Cadastral:",;
         "Regime de Recolhimento:" ;
         } ;
        }
 
ElseIf cUF == "DF"
ElseIf cUF == "ES"
    aRet := {"http://www.sintegra.es.gov.br/",;
         "",;
         "resultado.php",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social :",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data da Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
ElseIf cUF == "FN"
ElseIf cUF == "GO"
    aRet := {"http://www.sefaz.go....nsultaCadastro/",;
         "",;
         "consulta.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados em"},;
         {"CGC/CNPJ:",;
         "Inscrição Estadual - CCE :",;
         "Nome / Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data da Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
//http://www.sefaz.go....nsultaCadastro/
//http://www.sefaz.go....ro/consulta.asp
ElseIf cUF == "MA"
    aRet := {"http://www.sefaz.ma.gov.br/sintegra/",;
         "sintegra.asp",;
         "result.asp",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados em"},;
         {"CGC/CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "CNAE Principal:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
//25/07/2011 16:47:39: http://www.sefaz.ma.gov.br/sintegra/sintegra.asp    
//25/07/2011 16:48:16: http://www.sefaz.ma.gov.br/sintegra/result_lista_ruc.asp    
//25/07/2011 16:49:36: http://www.sefaz.ma.gov.br/sintegra/result.asp?IE=12147386    
 
ElseIf cUF == "MG"
    aRet := {"http://www.sintegra.fazenda.mg.gov.br/",;
         "consulta_empresa_pesquisa.asp",;
         "consulta_empresa_principal.asp",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
//http://www.sintegra....sa_pesquisa.asp
//http://www.sintegra...._inscricoes.asp
//http://www.sintegra....a_principal.asp
 
ElseIf cUF == "MS"
    aRet := {"http://www1.sefaz.ms...astro/sintegra/",;
         "cadastromsCCI.asp",;
         "ResultadoCCI.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial/Nome:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "AtividadeEconômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
 
ElseIf cUF == "MT"
ElseIf cUF == "PA"
    aRet := {"http://www1.sefaz.ms...astro/sintegra/",;
         "cadastromsCCI.asp",;
         "ResultadoCCI.asp",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
//https://app.sefa.pa.gov.br/Sintegra/detalharEstabelecimento.do?id=152077090    //152077090=Inscrição estadual
//https://app.sefa.pa.gov.br/Sintegra/
//https://app.sefa.pa....e0?id=152914692
 
ElseIf cUF == "PB"
ElseIf cUF == "PE"
ElseIf cUF == "PI"
ElseIf cUF == "PR"
    aRet := {"http://www.sintegra.fazenda.pr.gov.br/",;
         "sintegra/",;
         "sintegra/",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Nome Empresarial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica Principal:",;
         "Situação Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "RJ"
    aRet := {"http://www.fazenda.r....br/projetoCPS/",;
         "consulta.jsp;jsessionid=RqRCTtJRZc6Tt0LhXgZnKh1jt8JQLx1Lk2J8HJ7xKqJpGvhQ0W4q!-1007206184",;
         "cpsServlet",;
         {"IDENTIFICAÇÃO","Data da Consulta:"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "RazãoSocial:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "AtividadeEconômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
ElseIf cUF == "RN"
    aRet := {"http://www.sintegra.fazenda.pr.gov.br/",;
         "sintegra/",;
         "sintegra/",;
         {"IDENTIFICAÇÃO","Os dados acima são baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "CNAE Fiscal Primário:",;
         "Situação Cadastral Atual:",;
         "Data da Situação Cadastral:",;
         "Regime de Pagamento:" ;
         } ;
        }
//http://www.set.rn.go...gra/default.asp
//http://www.set.rn.go...=03766900000132
//<td bgcolor="#FAFAE4" align="center" ><div align="left"><a href="result.asp?ie=085197"> Encontrar o IE
//http://www.set.rn.go...t.asp?ie=085197
 
ElseIf cUF == "RO"
    aRet := {"http://portal.intran...alContribuinte/",;
         "parametropublica.jsp",;
         "consultapublica.jsp",;
         {"IDENTIFICA",Nil},;
         {"C.P.F/C.N.P.J:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Endereço:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Regime de Pagamento:",;
         "Situação Cadastral Vigente:",;
         "Data:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "RR"
ElseIf cUF == "RS"
ElseIf cUF == "SC"
    aRet := {"http://sistemas3.sef...ov.br/sintegra/",;
         "consulta_empresa_pesquisa.aspx",;
         "consulta_empresa_pesquisa.aspx",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados em informações"},;
         {"CPF/CNPJ:",;
         "Inscrição Estadual:",;
         "Nome/Razão Estadual:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "UF:",;
         "Município:",;
         "CEP:",;
         "Telefone:",;
         "CNAE-Fiscal Principal:",;
         "Situação Cadastral Atual:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração de ICMS:" ;
         } ;
        }
 
ElseIf cUF == "SE"
ElseIf cUF == "SP"
    aRet := {"http://pfeserv1.faze...br/sintegrapfe/",;
         "consultaSintegraServlet",;
         "sintegra",;
         {"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
         {"CNPJ:",;
         "Inscrição Estadual:",;
         "Razão Social:",;
         "Logradouro:",;
         "Número:",;
         "Complemento:",;
         "Bairro:",;
         "Município:",;
         "UF:",;
         "CEP:",;
         "Telefone:",;
         "Atividade Econômica:",;
         "Situação Cadastral Vigente:",;
         "Data desta Situação Cadastral:",;
         "Regime de Apuração:" ;
         } ;
        }
ElseIf cUF == "TO"
Endif
Retu(aRet)

STATIC Function DeleteUrlCacheEntry()
Return nil
 
//----------------------------------------------------------------------------------------------------------------------//
//DLL Static Function DeleteUrlCacheEntry(lpszUrlName AS STRING) AS LONG PASCAL FROM "DeleteUrlCacheEntryA" LIB "wininet.dll"
 

[/code/]


Eduardo Motta

EMotta Sistemas - www.emotta.com.br

Fivewin 13.05 - xHarbour Comercial 1.2.2 (jan/2013)
logo.png


#16 kapiaba

kapiaba

    Timão

  • Membros
  • PipPipPip
  • 18.553 posts
  • LocationSão Paulo

Postado 27 novembro 2013 - 03:08

Eduardo: entre [ ] ponha assim:  [codigo] programa [/codigo]  // troque codigo por code em ingles.


kmt_karinha@pop.com.br  

skype: Joao@pleno.com.br

FWH13.06 FOR XHARBOUR - WORKSHOP.EXE

TIM: (11) 95150-7341


#17 HERGON

HERGON

    Novato

  • Membros
  • Pip
  • 220 posts

Postado 27 novembro 2013 - 06:18

Boa tarde Eduardo

 

Consegui consultar CNPJ de SP e pegar os dados, mas quando tento para MG (que é o que mais me interessa) não abre a página diretamente, mas tudo bem, na página que abre eu clico no link SINTEGRA, abre a página oficial do SINTEGRA, clico no estado MG, e na nova página que abre entro com o CNPJ e CAPTCHA e aparecem os dados. O problema é que estes dados não retornam para o sistema, teria como você testar se ai acontece da mesma forma?

 

PS: no comando abaixo não tenho sr_showvector() teria como postar a função?

 

msgstop(sr_showvector(aRet))

 

Herberson Gontijo

Ponteware Informática Ltda.



#18 Theotokos

Theotokos

    Membro Avançado

  • Membros
  • PipPipPip
  • 1.060 posts

Postado 27 novembro 2013 - 06:47

Boa tarde Eduardo

 

Consegui consultar CNPJ de SP e pegar os dados, mas quando tento para MG (que é o que mais me interessa) não abre a página diretamente, mas tudo bem, na página que abre eu clico no link SINTEGRA, abre a página oficial do SINTEGRA, clico no estado MG, e na nova página que abre entro com o CNPJ e CAPTCHA e aparecem os dados. O problema é que estes dados não retornam para o sistema, teria como você testar se ai acontece da mesma forma?

 

PS: no comando abaixo não tenho sr_showvector() teria como postar a função?

 

msgstop(sr_showvector(aRet))

 

Herberson Gontijo

Ponteware Informática Ltda.

eu também tentei para MG, no meu caso nem abre a página...



#19 vagner

vagner

    Moderador Avançado

  • Membros
  • PipPipPip
  • 4.866 posts

Postado 27 novembro 2013 - 07:28

Olá,

Houveram mudanças nos links, precisam ser atualizados, o de minas é :

http://consultasinte...ov.br/sintegra/

"http://sefaznet.ac.g...rvlet/hpfsincon"                 >Acre<
"http://www.sefaz.al....a.asp?estado=AL"          >Alagoas<
"http://www.sintegra.ap.gov.br/"                                          >Amapá<
"http://www.sefaz.am....a/sintegra0.asp"                       >Amazonas<
"http://www.sefaz.ba....a.asp?estado=BA"              >Bahia<
"http://www.sefaz.ce....a.Asp?estado=CE"              >Ceará<
"http://www.fazenda.d...cfm?id_area=110"                       >Distrito Federal<
"http://www.sintegra.es.gov.br/"                                          >Espírito Santo<
"http://www.sefaz.go....ra/sintegra.asp"                        >Goiás<
"http://www.sefaz.ma....ra/sintegra.asp"                        >Maranhão<
"http://www.sefaz.mt....nsultar/publica" >Mato Grosso<
"http://www1.sefaz.ms...dastromsCCI.asp"         >Mato Grosso do Sul<
"http://consultasinte...zenda.mg.gov.br"                               >Minas Gerais<
"http://app.sefa.pa.gov.br/Sintegra/"                                     >Pará<
"http://sintegra.rece...a.asp?estado=pb"       >Paraíba<
"http://www.sintegra....ov.br/sintegra/"                         >Paraná<
"http://www.sintegra.sefaz.pe.gov.br"                                     >Pernambuco<
"http://web.sintegra.sefaz.pi.gov.br"                                     >Piauí<
"http://www.fazenda.r...v.br/projetoCPS"                                 >Rio de Janeiro<
"http://www.set.rn.go...ntribuinte.aspx"                  >Rio Grande do Norte<
"http://sintegra.sefa...gra_Entrada.asp"       >Rio Grande do Sul<
"http://www.sefin.ro....sint_consul.asp" target="main"                >Rondônia<
"http://portalapp.sef...ervlet/hwsintco"              >Roraima<
"http://sistemas.sef.sc.gov.br/sintegra"                                  >Santa Catarina<
"http://pfeserv1.faze...SintegraServlet"   >São Paulo<
"http://www.sefaz.se.gov.br/sintegra" target="main"                       >Sergipe<
"http://sintegra.sefaz.to.gov.br"                                         >Tocantins<
"http://www.suframa.gov.br/sintegra"                                      >Suframa<


 


Abraços,
 
Vagner Wirts
Analista de Sistemas
 
Ele Não Sabendo que era Impossível, foi lá e Fez :)
 

#20 Theotokos

Theotokos

    Membro Avançado

  • Membros
  • PipPipPip
  • 1.060 posts

Postado 27 novembro 2013 - 09:20

mesmo assim não retorna informação...

 

 ElseIf cUF == "MG"
     aRet := {"http://consultasintegra.fazenda.mg.gov.br/sintegra/",;
          "",;  // "consulta_empresa_pesquisa.asp",;
          "",;  // "consulta_empresa_principal.asp",;
          {"IDENTIFICAÇÃO","Os dados acima estão baseados"},;
          {"CNPJ:",;
          "Inscrição Estadual:",;
          "Razão Social:",;
          "Logradouro:",;
          "Número:",;
          "Complemento:",;
          "Bairro:",;
          "Município:",;
          "UF:",;
          "CEP:",;
          "Telefone:",;
          "Atividade Econômica:",;
          "Situação Cadastral Vigente:",;
          "Data desta Situação Cadastral:",;
          "Regime de Apuração:" ;
          } ;
         }






1 usuário(s) está(ão) lendo este tópico

0 membros, 1 visitantes, 0 membros anônimos