Ir para conteúdo
  • Cadastre-se

sgeinformatica

Membros Pro
  • Total de ítens

    184
  • Registro em

  • Última visita

Tudo que sgeinformatica postou

  1. Obrigado pela resposta hasa e qualidade. O NT mais nova que achei foi essa NT2013.005_v1.22.pdf Mas mesmo essa que o Qualidade enviou eu vi somente como referenciar : NFe NF mod 1/1A NF Produtor Rural Cupom Fiscal Me desculpe se nao estou enxergando direito
  2. Para informar que é cupom fiscal já existe a tag no XML, e para quem já utiliza o SAT? Eu procurei e não encontrei nenhuma norma tecnica incluindo essa tag no XML da NFe.
  3. no meu caso o erro foi depois do comando ACBrSAT1.EnviarDadosVenda(ArquivoXml) mas o arquivo XML autorizado estava na pasta VENDAS porque apos esse comando o componente do ACBrSAT já gravou o xml na pasta
  4. voce esta usando o ACBrMonitorPlus ou vc desenvolveu um autorizador proprio?
  5. Ola Siscomp Na realidade o problema era na nossa aplicacao. Nos temos uma tabela com a lista dos cupom a serem impressos. Temos tambem uma aplicacao autonoma que serve apenas para ler essa tabela e autorizar o cupom. O erro aconteceu logo apos o comando ACBrSAT1.EnviarDadosVenda(ArquivoXml) Nesse ponto o cupom ja havia sido autorizado, mas nao gravamos o XML no banco de dados, entao nosso programa autorizou a venda novamente. Para resolver esse problema criamos um campo para controlar as requisicoes que ja foram feitas ao SAT. Entao quando isso acontece, ao inves de autorizar o cupom uma segunda vez, o programa vasculha a pasta dos XML e grava no banco de dados.
  6. vou verificar obrigado
  7. Daniel, bom dia Gostaria de saber a possibilidade de desenvolver um comando no ACBrMonitorPLUS para limpar o conteudo da pasta C:\ACBrMonitorPLUS\Arqs Se der certo, nao precisarei mais compartilhar a pasta do monitor. No meu sistema apaga somente arquivos com mais de 30 dias e fiz mais ou menos assim : var DataArq: TDateTime; PastaXml: String; A: Integer; TS: TStrings; begin PastaXml := 'C:\ACBrMonitorPLUS\Arqs' TS := TStringList.Create; TS.Clear; ArquivosSubDiretorio(PastaXML, TS); // funcao que retorna todos os arquivos dentro da pasta for A := 0 to TS.Count-1 do begin DataArq := TFile.GetCreationTime(TS[a]); if (Now - DataArq) > 30 then DeleteFile(TS[a]); end; TS.Free; end; O comando no monitor poderia passar como parametro a pasta e a qtde de dias o proprio monitor poderia executar ou minha aplicacao passaria um comando para executar, Obrigado Carlo
  8. Daniel, obrigado pela solução da acentuação. No começo do post, perguntei tambem sobre a possibilidade de desenvolver um comando no ACBrMonitorPLUS para limpar o conteudo da pasta C:\ACBrMonitorPLUS\Arqs Se der certo, nao precisarei mais compartilhar a pasta do monitor. No meu sistema apaga somente arquivos com mais de 30 dias e fiz mais ou menos assim : var DataArq: TDateTime; PastaXml: String; A: Integer; TS: TStrings; begin PastaXml := 'C:\ACBrMonitorPLUS\Arqs' TS := TStringList.Create; TS.Clear; ArquivosSubDiretorio(PastaXML, TS); // funcao que retorna todos os arquivos dentro da pasta for A := 0 to TS.Count-1 do begin DataArq := TFile.GetCreationTime(TS[a]); if (Now - DataArq) > 30 then DeleteFile(TS[a]); end; TS.Free; end; O comando no monitor poderia passar como parametro a pasta e a qtde de dias
  9. Valeu Daniel, obrigado
  10. Estamos utilizando o ACBrMonitorPLUS para fazer o download do arquivo XML de Fornecedores O comando que utilizamos foi NFE.DownLoadNFe(Cnpj, ChaveAcesso) O arquivo XML que o ACBrMonitorPLUS grava nao consigo abrir no internet explorer, parece estar corrompido O que sera que estou fazendo de errado? Segue os arquivos gerado pelo monitor e o arquivo que foi feito download pelo site do governo ArquivosXML.rar
  11. O comando é esse : NFE.InutilizarNFe( cCNPJ, cJustificativa, nAno, nModelo, nSerie, nNumInicial, nNumFinal) Da uma olhada no arquivo 35160942750700010955002000001401000001401-ped-inu.xml que a justificativa esta sem acento 35160942750700010955002000001401000001401-procInutNFe.xml 35160942750700010955002000001401000001401-ped-inu.xml
  12. Delphi XE 10 Professional Nós fizemos uma modificação em nosso TcpClient e conseguimos resolver o problema assim : Client := TIdTCPClient.Create(Application); UTF8Encoding := IndyTextEncoding_UTF8(); Client.IOHandler.DefStringEncoding := UTF8Encoding; A resposta do webservice esta vindo com acento e ja conseguimos salvar o XML no banco de dados com acento. Agora ficou somente um problema, que o ACBrMonitorPLUS está removendo o acento da justificativa NFE.InutilizarNFe( cCNPJ, cJustificativa, nAno, nModelo, nSerie, nNumInicial, nNumFinal) Até o ponto que enviamos para o ACBrMonitorPLUS está com acento, a resposta já esta sem acento. <xJust> PROBLEMA TECNICO OU OPERACIONAL/Nao/Tem/Acentuacao/ </xJust> Essa frase colocamos acento Tenta fazer uma NFe de Inutilização com acentuação na justificativa que você já vai ver o problema.
  13. Daniel, me desculpe a demora. Nós estamos usando o ACBrMonitorPLUS para assinar o XML e enviar. Quando ele autoriza, o XML é salvo na pasta C:\ACBrMonitorPLUS\Arqs Nós recuperamos esse XML autorizado pelo comando NFe.LoadFromFile e gravamos no banco de dados (SQL SERVER) A partir daí nós usamos o componente TAcbrNFe para imprimir o XML autorizado. O XML que o ACBrMonitorPLUS salva na pasta C:\ACBrMonitorPLUS\Arqs está com acentuação correta. O método NFe.LoadFromFile que está perdendo a acentuação. Mas estamos desconfiados que o nosso cliente soket que comunica com o ACBrMonitorPLUS que não esta configurado para UTF8. Você tem algum exemplo de comunicação por soket com o ACBrMonitorPLUS ?
  14. ACBrMonitorPLUS dá uma olhada na justificativa, nesse ponto ja esta ficando errado eu teria que usar o comando AnsiToUTF8 para a justificativa ficar correta? eu usei mas nao deu certo 35160942750700010955002000001363000001363-ped-inu.xml
  15. Daniel, pelo jeito meu projeto inteiro ta com problema de acentuação. O retorno do XML esta correto a acentuação, mas ai eu fui ver o pedido de inutilização, na justificativa já está ficando errado. Na hora de enviar o comando NFE.InutilizarNFe( cCNPJ, cJustificativa, nAno, nModelo, nSerie, nNumInicial, nNumFinal) a justificativa tem que fazer alguma conversão?
  16. function NFeImprimeInutilizacao(Filial, Sequencia: String): Boolean; var XMLInu, S: String; NFe: TACBrNFe; NFeDANFEFR: TACBrNFeDANFEFR; begin Result := True; try // Arquivo XML Initulização S := 'SELECT ARQUIVO_XML FROM NFE_INUT' + ' WHERE FILIAL = ' + Filial + ' AND SEQUENCIA = ' + Sequencia; XMLInu := CodigoExiste(S, 'ARQUIVO_XML'); NFe := TACBrNFe.Create(nil); NFeDANFEFR := TACBrNFeDANFEFR.Create(nil); NFe.DANFE := NFeDANFEFR; NFe.DANFE.Sistema := SH; NFeDANFEFR.FastFileInutilizacao := LeParametros('RelatoriosSistema', PCodigoFilial) + 'INUTILIZACAO.fr3'; NFeDANFEFR.MostrarPreview := True; NFeDANFEFR.MostrarStatus := True; NFeDANFEFR.ShowDialog := True; NFe.InutNFe.LerXMLFromString(XMLInu); NFe.ImprimirInutilizacao; FreeAndNil(NFe); FreeAndNil(NFeDANFEFR); except Result := False; end; end; estamos usando o AcbrMonitorPlus
  17. usamos socket, e esse relatorio é do fast report FR3
  18. o xml esta correto, o problema é somente na impressao mesmo 35160942750700010955002000001355000001355-procInutNFe.xml
  19. Estou com um probleminha de acentuação na inutilização da NFe, esta saindo ponto de interrogação ao inves da letra acentuada. Sera que é um bug ou estou fazendo alguma coisa errada Gostaria de saber também se no AcbrMonitorPlus tem algum comando que eu possa enviar para ele limpar a pasta C:\ACBrMonitorPLUS\Arqs Se não tiver, existe a possibilidade de desenvolver ? Seria bom que tivesse um parâmetro para pode excluir somente arquivos xml com mais de 30 dias por exemplo. Obrigado
  20. dá uma olhada no meio de pagamento e verifica se esta como cartao de credito
  21. Eu imagino que os programas que os contadores usam, tipo contmatic vão gerar essa arquivo. Antes de desenvolver vou esperar pra ver a real necessidade de fazer esse layout.
  22. Provavelmente o erro em nossa aplicação deve estar apos usar o método ACBrSAT1.EnviarDadosVenda(ArquivoXml) Depois do método nós extraímos do XML o nro. do cupom, data e hora de emissão e mais algumas coisas, alem de gravar o XML no banco. Para evitar esses erros no futuro, logo apos o ACBrSAT1.EnviarDadosVenda(ArquivoXml) vamos gravar um arquivo de log onde vai ter o caminho e nome completo do arquivo XML que o ACBrSAT acabou de salvar. Se acontecer algum erro e a aplicação fechar, quando abrir novamente temos condição e buscar o XML na pasta e subir para o banco. Mas você comentou sobre a tag cNF, e nós não estávamos utilizando ela. Olhei no manual e encontrei a seguinte descrição : Código numérico que compõe a Chave de Acesso. Número aleatório gerado pelo emitente para cada CF-e para evitar acessos indevidos do CF-e. Você sabe me dizer se eu mandar 2 cupom com o mesmo cNF, o SAT vai recusar o segundo?
  23. Os 3 arquivos XML estavam na pasta que o ACBrSAT gravou automaticamente. Deve ter dado algum erro que eu nao sei qual é, o usuario deve ter fechado a aplicacao que faz a autorizacao, e como estava na fila a ser autorizado, então pediu autorizacao novamente. Mas se minha aplicação for fechada, quando abre novamente e consulta pelo numero da sessao, ela nao existe mais. Eu poderia dar carga do XML para dentro do meu sistema a partir do XML que fica na pasta que o ACBrSAT gerou. O arquivo gerado fica com esse nome mais ou menos assim : AD35160160633369000244590000273170243907756934.xml Antes de eu usar o metodo ACBrSAT1.EnviarDadosVenda(ArquivoXml) tem como eu saber esse nome?
  24. Como eu poderia resolver isso? No caso o ACBrSAT gera um numero de sessão automático quando utiliza o metodo ACBrSAT1.EnviarDadosVenda(ArquivoXml); Eu posso gravar o numero da sessão na minha tabela utilizando o evento OnGetNumeroSessao Se houvesse uma falha na aplicação e eu não obtivesse a resposta com o xml autorizado, como eu ainda tenho o numero da sessão, seria possível eu obter esse XML autorizado passando como parâmetro o numero da sessão ?
  25. Daniel, no log do ACBrSAT apareceu as 3 requisições de venda Na primeira venda me parece que esta normal. - 10:04:37:096 - -- 10:04:37:088 - numeroSessao: 283532 - Comando: EnviarDadosVenda( <?xml version="1.0" encoding="UTF-8"?> Ja na segunda venda, apareceu a seguinte mensagem : - 10:09:10:840 - ACBrSAT.Inicializado - 10:09:14:053 - -- 10:09:14:004 - numeroSessao: 470985 - Comando: EnviarDadosVenda( <?xml version="1.0" encoding="UTF-8"?> Sera que isso pode ter sido uma oscilação na energia e o aparelho de SAT desligou e ligou novamente? Constatei que e o computador esta ligado apenas no estabilizador. Mas o nosso frente de caixa fez apenas uma requisição. To meio perdido, não consigo imaginar a causa do problema LOG_ABCrSAT.txt
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.