Jump to content

everson.turossi

Membros
  • Content Count

    154
  • Joined

  • Last visited

Community Reputation

67 Excellent

1 Follower

About everson.turossi

  • Rank
    Membro
  • Birthday 02/03/1984

Profile Information

  • Sexo
    Masculino
  • Localização
    Chapecó

Recent Profile Visitors

903 profile views
  1. Aqui faço da seguinte forma, deixo livre para digitação todos os campos e valido na gravação se a tag e grupo digitados permitem correção. Quanto as tags que podem ser corrigidas, ai eu tenho um menu de acesso rápido onde o usuário seleciona uma das opções a ser corrigidas e então é completado o grupo e a tag. Não vi a necessidade de criar uma rotina com todas as tags existentes pois as correções a serem feitas na maioria dos casos ficam limitadas a 4 ou 5 tags como por exemplo a CFOP.
  2. ACBrCTe.Conhecimentos.Clear; ACBrCTe.Conhecimentos.LoadFromString(VariavelStringComXML); ACBrCTe.Conhecimentos.Imprimir;
  3. Já tive a mesma necessidade para NF-e onde precisava que várias DANFEs fossem anexadas a um único PDF. Acabei utilizando a dll gsdll32.dll do GhostScript que é capaz de manipular PDFs e inclusive mesclar vários arquivos em um único arquivo. Se não conseguir de outra forma, da um toque que anexo aqui as units.
  4. O modelo da impressora está configurado corretamente? ACBrNFeDANFeESCPOS1.PosPrinter.Modelo := ppEscPosEpson;
  5. Até seria uma possibilidade, mas pra ter acesso a método/propriedade privados só é possível caso o objeto pai e filho estejam na mesma Unit (privados da cláusula private, usando strict private ai só o próprio objeto tem acesso). Neste caso o método teria que estar declarado na cláusula protected onde um método não tem acesso publico mas os objetos que herdarem deste objeto conseguem ter acesso. Porém ClassHelpers trazem uma enorme facilidade de uso, uma vez que é possível adicionar métodos a qualquer classe existente sem a necessidade de criar uma classe herdando de outra. Vou exemplificar: no componente TACBrNFe existe a property NotasFiscais do tipo TNotasFiscais no qual eu necessito a implementação de um novo método e não posso alterar a classe original (poderia ser uma classe nativa do Delphi para facilitar o entendimento). Até poderia estender este objeto e utilizar utilizando Cast ter acesso ao método, mas achei mais interessante criar um ClassHelper para isso uma vez que o próprio Delphi tem utilizado ClassHelpers nas versões mais recentes para fazer aquelas conversões de tipos (MinhaVariavelString := MinhaVariavelInteira.toString;). Vou anexar aqui meus Helpers para ter uma ideia do que estou implementando. UACBr.ProntaEntrega.Boleto.Helper.pas UACBr.ProntaEntrega.NFe.Helper.pas
  6. Utilizo ACBr para a impressão de Danfes e Boletos e tenho a necessidade de Gerar em outros formatos os quais não estão disponíveis. A algum tempo atrás até criei um post com as alterações necessárias o qual não foi aceito pois os recursos que necessito estão disponíveis apenas para Fast. Então para que seja possível exportar os relatórios em outros formatos, toda vez que atualizo os fontes tenho que alterar o código fonte do ACBr com as implementações necessárias o que é um pouco trabalhoso. Através de ClassHelpers consegui fazer a implementação para exportar Boleto e Danfe em outros formatos, porém para que isso seja possível, necessito que alguns métodos e propertys estejam públicos. No Boleto em Fast a function PreparaRelatorio está privada, já no Danfe em Fast a function que faz esse trabalho já está definida como pública. Na unit ACBrNFeNotasFiscais necessito acesso a procedure VerificarDANFE. No Danfe em Fast o dmDanfe está definido apenas como variável, sem uma propriedade para acesso público a ela, já no Boleto esse mesmo datamodule possui uma property para acesso público. Estou anexando aqui as units alteradas condizentes com o componente em questão para análise, mas vou criar um post em cada um dos fóruns, pois sei que os responsáveis por esses dois componentes são pessoas diferentes. ACBrNFeNotasFiscais.pas ACBrNFeDANFEFR.pas
  7. Utilizo ACBr para a impressão de Danfes e Boletos e tenho a necessidade de Gerar em outros formatos os quais não estão disponíveis. A algum tempo atrás até criei um post com as alterações necessárias o qual não foi aceito pois os recursos que necessito estão disponíveis apenas para Fast. Então para que seja possível exportar os relatórios em outros formatos, toda vez que atualizo os fontes tenho que alterar o código fonte do ACBr com as implementações necessárias o que é um pouco trabalhoso. Através de ClassHelpers consegui fazer a implementação para exportar Boleto e Danfe em outros formatos, porém para que isso seja possível, necessito que alguns métodos e propertys estejam públicos. No Boleto em Fast a function PreparaRelatorio está privada, já no Danfe em Fast a function que faz esse trabalho já está definida como pública. Na unit ACBrNFeNotasFiscais necessito acesso a procedure VerificarDANFE. No Danfe em Fast o dmDanfe está definido apenas como variável, sem uma propriedade para acesso público a ela, já no Boleto esse mesmo datamodule possui uma property para acesso público. Estou anexando aqui as units alteradas condizentes com o componente em questão para análise, mas vou criar um post em cada um dos fóruns, pois sei que os responsáveis por esses dois componentes são pessoas diferentes. ACBrBoletoFCFR.pas
  8. Bom, a maneira mais fácil e tranquila de fazer isso é você criar um método ai no seu servidor Datasnap no qual retorne a Danfe no formato PDF e enviar direto para a impressora. Faço referencia apenas ao PDF porque este está ok tanto para Fast quanto para Fortes. Até pode ser feito de outras maneiras, mas dai vai te consumir muito mais tempo e tempo eu sei que é algo que nenhum programador tem.
  9. Que tipo de impressora será utilizado?
  10. Seu certificado pode ter perdido a Chave de criptografia a qual é usada para fazer a assinatura. A consulta de Status e consulta de Documento funcionam porque não é necessário fazer assinatura do XML. Um caso semelhante acontecia com alguns certificados A3 que continuavam aparecendo na lista de certificados mesmo com o cartão fora da Leitora. Se possui o backup original do certificado tenta usar ele, pois se tentar exportar este ai o problema vai persistir.
  11. Antes de qualquer coisa tem que se atentar a um detalhe do manual na página 23 (ACBr\tools\DFe\NFeNFCe\Manuais\MOC versao 7.01 Anexo III Manual DANFE.pdf) 3.11. DANFE Simplificado Nas operações realizadas fora do estabelecimento o DANFE poderá ser impresso em formato simplificado, não sendo admitida a emissão em contingência utilizando EPEC ou a impressão de DANFE em formulário de segurança. Se o objetivo é venda de pronta entrega, pode ser feito sem problemas. Nas páginas 23 e 24 do manual encontrará os requisitos para impressão do Danfe Simplificado para NF-e. Não sei te dizer se o Danfe em Fortes possui implementado o modelo Simplificado, mas para Fast pode ser encontrado em ACBr\trunk2\Exemplos\ACBrDFe\ACBrNFe\Delphi\Report\Obsoletos\DANFeSimplificado.fr3
  12. Existem alguns tópicos que já foram tratados sobre esse assunto. Em resumo, a forma mais fácil seria transformar o Danfe Resumido em uma imagem e enviar essa imagem para impressão. Aqui temos implementado com Fast e mais algumas modificações no fonte original do ACBr. Havendo interesse posso anexar os fontes alterados para te dar uma luz do que pode ser feito.
  13. Uma solução é gerar uma Imagem do Danfe simplificado e imprimir esta imagem. Já existem outros tópicos sobre o assunto onde eu mesmo tive participação. Verifica se impressora em questão consegue imprimir imagens JPG ou apenas PNG.
  14. Só um detalhe, a única pessoa que precisa fazer a manifestação pra ter acesso completo ao XML é o Destinatário. Outras entidades envolvidas como Transportadoras (quando já informado na emissão) ou Contadores (e demais autorizados a baixar o xml no grupo <AutXML>) não precisam fazer manifestação, o XML já vem completo.
  15. Outro teste que pode ser feito, pegar o xml da guia que foi gerado e fazer a importação dele no Portal da GNRE.
×
×
  • Create New...