ADVPL - Transmissão de nota fiscal. AutoNfe, sem job
Nas últimas atualizações do sistema protheus, houve bloqueio das funçoes de transmissão via fonte.
Antes do bloqueio era utilizado:
AutoNfeEnv(cEmpAnt,SF2->F2_FILIAL,"0","1",SF2->F2_SERIE,SF2->F2_DOC,SF2->F2_DOC)
Vou compartilhar alguns métodos, validar antes.
#INCLUDE "TOTVS.CH"
User Function autoNfe()
//01
validaAutoNfe("1", cEmpAnt, cFilAnt, cSerNF )
Return( Nil )
#INCLUDE "TOTVS.CH"
User Function autoNfe()
//02
LjEnviaNFe(cSerie, cNota, cCliente, cLoja)
Return( Nil )
#INCLUDE "TOTVS.CH"
User Function autoNfe()
//03
Local cIdEnt := RetIdEnti()
Local cError := ''
Local cModalidade := ''
Local cVersao := ''
Local cRetorno := ''
Local lEnd := .F.
Local aRet := {.T.,""}
Local lAuto := .T.
Local aF2SERIE := TamSX3('F2_SERIE')
Default cModelo := '55' //55-NF-e, 57-CT-e, 65-NFC-e, 66-NF3-e, 67-CT-e OS
Default lCte := .F.
Begin Sequence
If Empty( cIdEnt )
aRet := {.F.,"Ident inválido: " + cIdEnt }
Break
Endif
cAmbiente := getCfgAmbiente(@cError, cIdEnt, cModelo)
If Empty(cAmbiente)
aRet := {.F.,"Ambiente inválido: " + cError }
Break
Endif
cModalidade := getCfgModalidade(@cError, cIdEnt, cModelo)
If Empty(cModalidade)
aRet := {.F.,"Modalidade inválido: " + cError }
Break
Endif
cVersao := getCfgVersao(@cError, cIdEnt, cModelo)
If Empty(cVersao)
aRet := {.F.,"Versão inválida: " + cError }
Break
Endif
cSerie := Padr(cSerie,aF2SERIE[01])
cRetorno := SpedNFeTrf("SF2",cSerie,cNotaIni,cNotaFim,cIdEnt,cAmbiente,cModalidade,cVersao,@lEnd,lCte,lAuto)
aRet := {.T.,cRetorno }
End Sequence
Return( Nil )