Página 1 de 1

duvida com duas funcoes para o Acbr

Enviado: 04 Jul 2016 09:41
por porter
olá pessoal, estou usando exemplos aqui do forum para gerar arquivo para AcbrMonitoPlus, existe uma chamada para uma função assim:
NFe_Aux_StatusNota("ENVIADA")

Gostaria de saber se tem como me passar essas funções para eu ver o que elas fazem porque so tenho aqui no exemplo, a chamada da função, portanto nao tenho como saber qual a função delas.

essa também
cChaveNFe := NFe_Aux_PegaChave()

xHarbour
obrigado.

duvida com duas funcoes para o Acbr

Enviado: 04 Jul 2016 11:48
por Jairo Maia
Olá Porter,

Onde você encontrou essas funções? No manual distribuído junto com o ACBr (arquivo ACBrMonitor.chm que está na pasta do ACBr) elas não existem.

duvida com duas funcoes para o Acbr

Enviado: 04 Jul 2016 12:44
por porter
olá Jairo, a rotina abaixo, peguei em um exemplo que o fladimir postou aqui no forum, eu acho que a função dela é gravar "VALIDADA" no campo Status do Arquivo Notas.dbf, mas gostaria de confirmar.

Código: Selecionar todos

if "OK:" $ cNFeLog
         lErro:=.F.
         NFe_Aux_StatusNota("VALIDADA") [b]<-- o que faz essa função ?[/b]
         return
elseif "ERRO" $ cNFeLog
         lErro:=.T.
         vcr = 2
         Alert(Hb_UTF8ToStr('Atenção!!! Não foi possível Validar a NF-e;' + ' Verifique o Retorno da SEFAZ;' + ' Será necessário validar a NF-e!;;' , {' Pressione Enter '},vcr ) )
         Aux_NFe_MostraRetACBr()
endif

Código: Selecionar todos

if ("REJEICAO" $ cNFeLog) .or. ('DENEGADO' $ cNFeLog) .or. ('IRREGULARIDADE FISCAL DO DESTINATARIO' $ cNFeLog)
   	lErro:=.T.
	vcr := 2
   	if 'DUPLICIDADE' $ cNFeLog
   	    Alert( "Atencão!!! Foi verificado DUPLICIDADE no retorno do SEFAZ;"+ " Verifique o Retorno da SEFAZ;"+ " Será necessário Corrigir a NF-e ou Tentar novamente!;;" , {"Pressione Enter "},vcr)
   	    NFe_Aux_StatusNota("DUPLICIDADE")
   	else
   	    Alert( "Atenção!!! Não foi Autorizada a NF-e;"+ " Verifique o Retorno da SEFAZ;"+ " Será necessário Corrigir a NF-e ou Tentar novamente!;;" , {"Pressione Enter "},vcr)
   	    Aux_NFe_MostraRetACBr()
        endif
else
        lErro:=.F.
        Nota->STATUS  := "AUTORIZADA"
[b]        cChaveNFe := NFe_Aux_PegaChave()[/b] <-- o que faz essa função ?
        NFe_ImprimirDANFE() // Imprimir DANFE
        NFe_EnviarEmail( cChaveNFe+'-NFe.XML', cEmailx )
endif
obrigado.

duvida com duas funcoes para o Acbr

Enviado: 04 Jul 2016 16:11
por fladimir
A função NFe_Aux_PegaChave() pega a chave do nome do arquivo do ACBr vc pode bolar como achar melhor... inclusive tem uma função no ACBr q devolve a chave da NFe, mas como surgiu depois de eu ter implementado eu ainda uso assim

segue fonte dela...

Código: Selecionar todos

********************************************************************************
function NFe_Aux_PegaChave(cChaveNFe)
********************************************************************************
    default cChaveNFe To NFe->NomeArqXML

 *-- Devolve a ChaveNFe
 
	cChaveNFe:= StrTran(cChaveNFe, Alltrim(Path->CaminhACBr),"")
	cChaveNFe:= UPPER(Alltrim(cChaveNFe))
	cChaveNFe:= StrTran(cChaveNFe,"-","")
	cChaveNFe:= StrTran(cChaveNFe,"\","")
	cChaveNFe:= StrTran(cChaveNFe,"NFE","")
	cChaveNFe:= StrTran(cChaveNFe,"CTE","")
	cChaveNFe:= StrTran(cChaveNFe,"RESPOSTA","")
	cChaveNFe:= StrTran(cChaveNFe,"C:","")
	cChaveNFe:= StrTran(cChaveNFe,"ACBR","")
	cChaveNFe:= StrTran(cChaveNFe,".","")
	cChaveNFe:= StrTran(cChaveNFe,"XML","")
	cChaveNFe:= StrTran(cChaveNFe,'OK:','')

return cChaveNFe
E a NFe_Aux_StatusNota() muda o status da NFe na tabela minha q armazeno o ultimo status da NFe

Código: Selecionar todos

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

function NFe_Aux_StatusNota(cStatusNota)
   NFe->STATUS    := cStatusNota		
return nil

duvida com duas funcoes para o Acbr

Enviado: 05 Jul 2016 11:05
por porter
ola Fladimir, obrigado por responder, não estou conseguindo compilar o comando abaixo, o que ele faz, ele grava no NFe->NomeArqXML o valor de cChaveNFe ?

function NFe_Aux_PegaChave(cChaveNFe)
default cChaveNFe To NFe->NomeArqXML <-- esse comando

xHarbour.

obrigado.

duvida com duas funcoes para o Acbr

Enviado: 05 Jul 2016 15:10
por fladimir
acrescenta no inicio do teu código o seguinte:

Código: Selecionar todos

#xcommand DEFAULT <uVar1> To <uVal1>  [, <uVarN> To <uValN> ] ;
	          => ;
	            <uVar1> := IF( <uVar1> == NIL, <uVal1>, <uVar1> ) ;;
	          [ <uVarN> := IF( <uVarN> == NIL, <uValN>, <uVarN> ); ]