Jump to content
Fivewin Brasil

Consulta de Nota EMitidas pelo CNPJ


edutraini

Recommended Posts

Bom dia, Luiz e Kapiaba realmente é isso que o Dorneles colocou 

Primeiro vc verifica as notas emitidas contra o seu CNPJ para depois dar o aceite de recebimento tudo através da Nfeutil

Agora é tentar colocar na pratica

Eu ja estou tentando usar a ConsultaNfdest mas nao entendi como volta o retorno alguem poderia me dar uma dica.

Abraco a  todos

Link to comment
Share on other sites

Bom dia,

Estes são os campos de retorno da função:

         //--------------------
         //  tratar txtNFe
         [resNFe]|NSU|chNFe|CNPJ|CPF|xNome|IE|dEmi|tpNF|vNF|digVal|dhRecibo|cSitNFe|cSitConf
         [resCanc]|NSU|chNFe|CNPJ|CPF|xNome|IE|dEmi|tpNF|vNF|digVal|dhRecibo|cSitNFe|cSitConf
         [resCCe]|NSU|chNFe|dhEvento|tpEvento|nSeqEvento|descEvento|xCorrecao|tpNF|dhRecibo
         //--------------------

que voce pode tratar e copiar para um dbf e depois mostrar na tela com um browse; retorna também um xml, mas é mais simples trabalhar no txt que a função monta.

 

Link to comment
Share on other sites

Pessoal sera que alguém consegue visualizar o que estou fazendo de errado.

cmsgResultado := {}    // aqui tb tentei cmsgresultado := ""

cUltNsu := "0"

oNfeUtil:ConsultaNFDest("SP","01452073000100","0","0",cUltNsu,,@cmsgResultado)

 

da erro la na funcao CONSULTANFDEST

nesta linha

    If !Empty(cRetTxt)
        ::lAutorizada:=.t.
        If lRetArray      //  exatamente aqui
            uRetorno:={}
 

mensagem do erro

Argument error: conditional

 

Luiz Fernando

 

 

 

Link to comment
Share on other sites

 

Esse erro, é porque lRetArray não foi definido em algum lugar na classe do Gilmer, tente assim:

 

 


	DATA lRetArray := .F.   // ou STATIC lRetArray := .F.
	

 

Kapiaba observe que esta variavel é passada como parametro, acredito que o erro deve estar na forma que declarei a mesma, tentei com := "" e tb com := {}

Method ConsultaNFDest(cSiglaUFDestinado,cCNPJDestinatario,nIndicadorNFe,nIndicadorEmissor,cUltNsu,uRetorno,lRetArray) Class TVoNFeUtil2G

 

Obs: coloquei a variavel  cmsgResultado := .f. agora não da mais o erro, vou continuar aqui , vlw Kapiaba

 

 

Obrigado
 

Link to comment
Share on other sites

 

Se o erro é CONDITIONAL..., é porquê o retorno tem que ser : .T. ou .F. de onde vem,  ,lRetArray,lRetArray  se entendi, é um retorno lógico de um ARRAY anterior ou não?

Kapiaba perfeito deu certo aqui deixei com .f., embora o retorno esta sempre vindo como .f., mais esta me trazendo os dados de todas as NFE, agora é trabalhar com este arquivo

 

  cmsgResultado := .f. //{} //cDataRecebimento := "" 
  cUltNsu := "0"  //""
  cRetorno := ''
  oNfeUtil:ConsultaNFDest("SP","01456052000200","0","0",cUltNsu,@cRetorno,@cmsgResultado)
  ? cmsgresultado  // aqui esta sempre vindo .f.
  ? cRetorno    // aqui já tem todos dados das nfe conforme mencionado acima pelo GUNAFE
 

 

Luiz Fernando

Link to comment
Share on other sites

 

Depois podrias postar um exemplo simples, que até um BURRO(Né Valdir Brando? kkkkkkkkkkk), que nem eu, possa entender? Desde já agradeço a gentileza do amigo. Forte abraço.

Kapiaba ficou assim

  cmsgResultado := .f.
  cUltNsu := "0"  
  cRetorno := ''
  oNfeUtil:ConsultaNFDest("SP","01356052000100","0","0",cUltNsu,@cRetorno,@cmsgResultado)

  oFile1 = TTxtFile():New( cPath1+"XML.TXT" )
  wlin := cRetorno
  oFile1:PutStr( wlin )

  oFile:= TTxtFile():New("XML.TXT")
  oFile:GoTop()
  while !oFile:eof()
    cLine:=oFile:ReadLine()
    aTemp:=HB_aTokens(cLine,"|")
	 aadd( aNotas, { space(15),space(44),space(14),space(60),space(20),0,ctod(""),space(8) } )
	 x++
	 aNotas[x,1]:=aTemp[1]  // tipo de operação NFE, cancelamento, carta de correção
	 aNotas[x,2]:=aTemp[3]  // chave
	 aNotas[x,3]:=aTemp[4]  // cnpj
	 aNotas[x,4]:=aTemp[6]  // nome do emitente
	 aNotas[x,5]:=aTemp[7]  // inscrição estadual do emitente
	 aNotas[x,6]:=val(aTemp[10])  // valor da NFE
	 aNotas[x,7]:=substr(aTemp[12],9,2)+"/"+substr(aTemp[12],6,2)+"/"+substr(aTemp[12],1,4) // data
	 aNotas[x,8]:=substr(aTemp[12],12,8)  // hora
    oFile:skip()
  enddo
  xbrowse(aNotas)

Observe que esta é primeira etapa, pegar os dados das NFE, agora é criar a rotina para baixar estes XML, e depois fazer o manifesto

 

Abs

Luiz Fernando

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...