Ir para conteúdo
  • Cadastre-se

EMBarbosa

Consultores
  • Total de ítens

    9.337
  • Registro em

  • Última visita

  • Days Won

    117

Tudo que EMBarbosa postou

  1. Por favor, reformule seu post. Ele não dá informações necessárias sobre o problema. Você até se contradisse: Título do post:Bloco P Não está imprimindo no txt Primeira frase do post:Bloco p está imprimindo no arquivo TXT
  2. Por favor. Dúvida nova, tópico novo. Tópico dividido.
  3. Pelo seu post, acredito que sim. Mas passei por uma certificação TEF a pouco e estamos nos preparando para homologação PAF-ECF. Por isso e outras coisas não tive o tempo necessário para averiguar suas alterações ainda. Devo analisar ainda essa semana e deixo uma resposta aqui mesmo. E mesmo que não eu, outro desenvolvedor ACBr pode fazê-lo. Obrigado pelas sugestões.
  4. Não tenho certeza do funcionamento ou não do parâmetro NumCOOInicial. Me desculpe não poder confirmar isso agora. Sugiro entrar em contato com a Bematech e ver o que eles dizem fazer. Daí nós podemos ter certeza do que devemos fazer. Se fizer do jeito que mencionou, a primeira Redução Z você vai ter que configurar "na mão".
  5. Olá, Pode explicar qual o objetivo das alterações?
  6. Então, quando você for preencher os dados, não adicione registro 75 de um produto que não foi movimentado no período do arquivo Sintegra, ou, se isso não for possível, remova os registros 75 dos produtos que não foram movimentados no período do arquivo. Não utilizo o WinMFD2 para esse tipo de trabalho, então não posso lhe dar mais detalhes sobre como fazer. Talvez algum outro usuário, ou o fórum da Bematech. Mais uma coisa: Esse subfórum é para dúvidas relacionadas com os componentes ACBrSintegra/ACBrPAF. Estou movendo seu post para área de Dúvidas Gerais.
  7. Não vai dar para postar os testes todos hoje, então abaixo eu deixei um teste simples. Também anexei o programa (em Delphi) que estou usando para fazer o teste dos tempos juntamente com o arquivo AAC alterado, com a opção para tanto o comportamento atual (efetuar flush do Drive) como para efetuar o flush apenas do arquivo. Assim todos podem testar nas suas próprias máquinas. Poderão perceber que ele permite atualmente 2 métodos de medição e impressão dos itens e 1 sem nenhum método, para ser usado com um profiler externo. TesteVelocidade.rar
  8. Como ou que código você está usando para gerar os registros 50?
  9. Quando chamamos a função Apenas para o arquivo, o retorno é praticamente instantâneo. Vou colocar abaixo a função, mas antes de alterar o componente, vou postar amanhã pela manhã resultados dos testes. Daí se todos tiverem de acordo posso fazer a alteração. procedure EfetuaFlushArquivo(const nomearquivo: String); var hFile: THandle; bResult: boolean; lastErr: Cardinal; filenome: string; begin bResult := False; filenome := '\\.\' + nomearquivo; //Para usar a versão Wide da função CreateFile e aceitar o caminho completo do arquivo hFile := Windows.CreateFile( PWideChar(filenome), GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL or FILE_FLAG_WRITE_THROUGH or FILE_FLAG_NO_BUFFERING, 0); bResult := FlushFileBuffers(hFile); CloseHandle(hFile);[/code] Só chamando a atenção, que todos os componentes que no momento usam o ACBrUtil.FlushToDisk, na verdade estão fazendo o Flush do Drive inteiro e não do o arquivo passado por parâmetro.
  10. Seu erro não tem relação com o erro relatado pelo FTGK!. Favor criar um tópico novo para dúvidas diferentes.
  11. Daniel. eu percebi algo aqui que me passou despercebido esse tempo todo. O AAC está fazendo Flush no Drive inteiro ao invés de apenas no arquivo AAC . Estou refazendo o código apenas alterando essa parte, para testar de quanto seria o ganho de desempenho, se há mesmo algum. Por enquanto, parece que só essa correção já resolveria os problemas.
  12. Verifique o seu modo de uso da função pesquisar do fórum então: http://www.djsystem.com.br/acbr/forum/search.php Procurando por "NumCOOInicial" e "Bematech" eu achei dois tópicos. Um aqui e outro no SAC. Veja se não é o seu caso: http://www.djsystem.com.br/acbr/forum/viewtopic.php?f=10&t=926&p=3863&hilit=NumCOOInicial+bematech#p3863 Mas percebi que está usando o comando de DadosDaUltimaReducaoZ. Se não estou enganado, nessa função, ECFs Bematech não retornam o valor do "COO Inicial". Confira no manual.
  13. A questão é: Por que o form frm_Principal está procurando componentes na pasta "Windows\system32"? Quando descobrir a resposta você vai conseguir resolver o erro. Provavelmente uma má instalação mesmo. Algumas sugestões: Verifique: os caminhos das units no seu projeto; onde estão as bpls que o delphi está procurando; a variável de ambiente Path do windows; os caminhos "library path, search path, browsing path" nas opções do projeto e do Delphi;
  14. Vou reverter a pergunta pra você: Como você gera o arquivo sintegra hoje? Quem cria os registros?
  15. Você pesquisou no fórum?
  16. Ficou bem confuso mesmo. Tópico Relacionado Você poderia fazer essa alteração proposta nos arquivos e anexar aqui no fórum os arquivos corrigidos? Ficaria mais fácil de analisar.
  17. Acho que não entendi o erro. Mas tente da seguinte forma. with ACBrSPEDFiscal1.Bloco_1.Registro1001New do begin IND_MOV := imComDados; with Registro1010New do begin IND_EXP := 'N'; IND_CCRF := 'N'; IND_COMB := 'N'; IND_USINA := 'N'; IND_VA := 'N'; IND_EE := 'N'; IND_CART := 'N'; IND_FORM := 'N'; IND_AER := 'N'; end; end; [/code] Se não funcionar. Favor dar mais detalhes sobre o erro e, se possível, o que poderia ser feito para corrigir.
  18. Obrigado por dar o retorno.
  19. Vou tentar de novo: Não lance o tipo 75 para um produto se aquele produto não saiu em nenhuma nota, cupom, venda ao consumidor e etc... Os produtos que saíram em notas, cupons, vendas ao consumidor e etc devem ter um registro 75. Mas os produtos que não saíram não devem ter um registro 75.
  20. São dois erros totalmente diferentes. veja:http://www.fazenda.mg.gov.br/empresas/ped/duvidas_frequentes/
  21. Crie uma instância de TFormatSettings, configure da maneira que quiser e use a mesma como parâmetro no DateTimeToStr.
  22. Você não precisa excluir. Você precisa não lançá-lo...
  23. Não tem motivos pra isso não. O teste não diz que seu programa deve fechar o GP. E visto que você está fazendo a tarefa do GP manualmente (inserindo o arquivo intpos.001), não é de se esperar que o GP feche sozinho. Se quiser confirmar, dê uma ligada na SevenPDV ou na SoftwareExpress.
  24. Até onde me lembro, depois de realizar o teste e imprimir o cupom você pode cancelar a tela do GP.
  25. Estou trabalhando nesse tópico. Montei com base no DEMO do ACBrECF (ECFTeste) um aplicativo para teste de velocidade. Testei até o momento apenas com base nas três opções possíveis no código até agora. A partir de hoje vou tentar fazer as modificações no ACBrAAC e verificar se o ganho de desempenho é considerável. O arquivo anexo tem a diferença de velocidades para Venda de 53 itens "com o AAC fazendo o FlushtoDisk", "com o AAC sem fazer o FlushtoDisk" e Sem o AAC. O método usado para medir o tempo não é muito confiável, foi baseado apenas nas funções now e secondSpam. A medida que implementar o resto vou usar métodos mais confiáveis. Em resumo, o resultado foi, usando o emulador da Bematech: com AAC com Flush Diferença: 43,11 segundos com AAC sem Flush Diferença: 36,86 segundos sem AAC Diferença: 20,55 segundos O ganho de performance ao desabilitar o FlushtoDisk aqui foi menor do que eu havia previsto nas medições diretas no meu PAF (apenas aproximadamente 15%). Pensando em longo prazo, mesmo que esses números se confirmem, acho que compensa verificar uma possível otimização. Mas vou verificar mais a fundo o assunto. Fiquem à vontade para participar. performance.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.