Cancelar Nfc-e

Fórum sobre desenvolvimento de software para atender as exigências da legislação fiscal e tributária (NFe, NFCe, NFSe, SPEED, Projeto ACBr, TEF, ECD, EFD, etc.)

Moderador: Moderadores

malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Cancelar Nfc-e

Mensagem por malcarli »

Boa tarde estou usando sat da sweda para emissão de nfc-e. A emissão está correta, o problema está no cancelamento. Já enviei o xml para eles e retorna, que está tudo ok, mas não consigo cancelar o mesmo.

Estou usando minigui extended 2.5.2 com harbour. O problema no meu ponto de vista está no conteúdo do xml, pois retorna erro não identificado

Na chamada da função abaixo é enviado: CancelarSATSWEDA([CFe] + cChave)

Código: Selecionar todos

FUNCTION CancelarSATSWEDA(cChave)
   Local nCfe    := Random(999999)
   Local cXmlCanc:= [TesteCanc] + strzero(nCfe, 6) + [.xml], nHandle:= 0, aRetorno:= {}
   
   nHandle:= Fcreate(cXmlCanc, 0)
   Fwrite(nHandle, [<CFeCanc>] + CRLF)
   Fwrite(nHandle, [<infCFe chCanc="] + cChave + [">] + CRLF)
   Fwrite(nHandle, [<ide>] + CRLF)
   Fwrite(nHandle, [<CNPJ>10229311000180</CNPJ>] + CRLF)
   Fwrite(nHandle, [<signAC>] + alltrim(ParametrosCancelaSAT->CHCLI) + [</signAC>] + CRLF)
   Fwrite(nHandle, [<numeroCaixa>001</numeroCaixa>] + CRLF)
   Fwrite(nHandle, [</ide>] + CRLF)
   Fwrite(nHandle, [<emit>] + [</emit>] + CRLF)
   Fwrite(nHandle, [<dest>] + [</dest>] + CRLF)
   Fwrite(nHandle, [<total>] + [</total>] + CRLF)
   Fwrite(nHandle, [<infAdic>] + [</infAdic>] + CRLF)
   Fwrite(nHandle, [</infCFe>] + CRLF)
   Fwrite(nHandle, [</CFeCanc>] + CRLF)
   Fclose(cXmlCanc)
      
   aRetorno:= CancelarUltimaVenda(nCfe, alltrim(ParametrosCancelaSAT->CODATIV), cChave, cXmlCanc)
   If [SUCESSO] $ UPPER(aRetorno[4])
      MsgInfo([Cancelamento executado com sucesso.])
   Else
      MsgStop([Erro no Cancelamento.] + CRLF + aRetorno[1] + CRLF + aRetorno[2] + aRetorno[3] + CRLF + aRetorno[4], [Erro])
   Endif           
RETURN NIL

Function CancelarUltimaVenda(nNumeroSessao, cCodigoAtivacao, chaveAcesso, cDados)
   Local cString:= SATCANCELARULTIMAVENDA(nNumeroSessao, cCodigoAtivacao, chaveAcesso, cDados), aString:= HB_ATOKENS(cString, [|])
Return (Iif(Valtype(aString) # [A] .or. len(aString) < 1, {[0], [], [SAT-CFe: Sem Retorno], [], []}, aString))
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

Cancelar Nfc-e

Mensagem por fladimir »

SAT e NFC-e então são a mesma coisa?

Se sim vc pode usar o ACBrNFeMonitor q contempla o NFC-e pra simular o cancelamento e ver como esta sendo gerado o XML.

[]´s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Responder