Search the Community
Showing results for tags 'imprimirdanfepdf'.
-
Boa tarde! Estou implementando um recurso em meu sistema que consiste na visualização em PDF da nota fiscal de entrada (Emitida pelo fornecedor), afim de facilitar o usuário no momento de vincular os produtos no cadastro de estoque, pois bem, estou utilizando o ACBRMonitor e uso o comando ImprimirDANFEPDF para realizar esta ação, porém alguns PDF`s são gerados "faltando pedaços", friso que eu não encontrei erros nos XMLS citados. Alguém já deparou com algo parecido ou pode sugerir algo? Segue XMLs e respectivos PDFs gerados (1 gerado corretamente e o outro com falha). Agradeço a atenção desde já, 31210223393267000191550020003014981010386294-nfe.xml 31210143214055000107550000167729661546823964-nfe.xml 31210223393267000191550020003014981010386294-nfe.pdf 31210143214055000107550000167729661546823964-nfe.pdf
-
Bom dia, notei que ao exportar para PDF do DANFE em Fastreport através do Preview do componente a qualidade da imagem da logo fica melhor que usando a procedure ImprimirDANFEPDF para fazer a geração do PDF direto. Em pesquisa no fórum, encontrei um tópico no qual é apresentado o mesmo problema que o meu, porém ainda sem solução. Segundo a resposta de @Juliomar Marchetti, deveria ser verificado a partir de qual versão possui esta propriedade ou se existe algum IF DEF... Em pesquisa direto no site do Fast Report, encontrei um tópico no qual informa que esta propriedade existe a partir da versão 3.08 (https://www.fast-report.com/en/news/201/). Com esta informação, gostaria de analisar a possibilidade de fazer esta alteração no componente. Desde já Obrigado.
- 1 reply
-
- imprimirdanfepdf
- printoptimized
-
(and 1 more)
Tagged with:
-
Prezados, Estou com o seguinte problema. Estou usando o seguinte método para imprimir em PDF o danfe NFe.ImprimirDANFEPDF(cArqXML,[cProtocolo],[cMarcaDaqgua],[bViaConsumidor],[bSimplificado]) Quando quero imprimir uma nfe que não foi autorizada, eu passo em cProtocolo a situação da nfe, pois gostaria que aparece a situação em algum lugar do danfe. NFE.ImprimirDANFEPDF("C:\NFe\26XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-nfe.xml", "NÃO ENVIADA") Já quando quero imprimir uma nfe autorizada, não passo nenhum dos parâmetros opcionais, e mesmo assim, ele mostra o ultimo parâmetro passado. NFE.ImprimirDANFEPDF("C:\NFe\26XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-nfe.xml") Ex: Imprimo uma nfe não autorizada, e passo Não Enviada em cProtocolo, depois autorizo a nfe e imprimo novamente a mesma nfe (agora sem o parâmetro cProtocolo), mesmo assim, ele mostra Não Enviada (No caso, meu ultimo parâmetro para aquela nfe) no campo do protocolo. OBS: Se eu fechar o ACBrMonitor e abrir novamente, a impressão sai certa. Estou usando a versão 1.1.0.61.
- 1 reply
-
- 1
-
- acbrmonitorplus
- imprimirdanfepdf
-
(and 3 more)
Tagged with:
-
Olá boa tarde. Na verdade já encontrei a "minha" correção para o problema, gostaria de postar aqui para que os programadores da classe ACBrNFeDANFERave possam verificar se é possível aplicar isso ao fonte original para que próximas atualizações já venham corretas, o que acontece é que criamos um preview do rave personalizado para todo nosso sistema e também aplicamos esse preview para visualização de DANFE, para isso fizemos: NFeDanfe.dmDanfe.RvSystem1 := rvSystemPersonalizado; Tem funcionado perfeitamente, conseguimos visualizar o DANFE em nosso preview personalizado e imprimir normalmente, o único problema que encontramos é quando usamos a função EnviarEmail, após chamar essa função e em seguida chamar algum relatório que é enviado diretamente para impressora (DefaultDest := rdPrinter) o relatório não é impresso. Para correção do problema fiz alteração na unit ACBrNFeDANFERave na função ImprimirDANFEPdf de forma a voltar os valores padrões ao componente, como segue: procedure TACBrNFeDANFERave.ImprimirDANFEPDF(NFE : TNFe = nil); var i : Integer; NomeArq : String; wProjectStream: TStringStream; begin {$IFDEF RAVE50VCL} RPDefine.DataID := IntToStr(Application.Handle); // Evita msg de erro;... {$ENDIF} if FRaveFile = '' then raise EACBrNFeException.Create(' Arquivo de Relatório nao informado.') ; if not (uppercase(copy(FRaveFile,length(FRaveFile)-3,4))='.RAV') then begin wProjectStream:=TStringStream.Create(FRaveFile); dmDanfe.RvProject.ProjectFile := ''; dmDanfe.RvProject.LoadRaveBlob(wProjectStream); wProjectStream.Free; end else begin if not FilesExists(FRaveFile) then raise EACBrNFeException.Create('Arquivo '+FRaveFile+' Nao encontrado'); dmDanfe.RvProject.ClearRaveBlob; dmDanfe.RvProject.ProjectFile := FRaveFile; //ExtractFileDir(application.ExeName)+'\Report\NotaFiscalEletronica.rav'; end; /// ATRIBUINDO CONFIGURACOES ESPECIFICAS PARA PDF. dmDanfe.RvSystem1.DefaultDest := rdFile; dmDanfe.RvSystem1.DoNativeOutput := false; //dmDanfe.RvSystem1.SystemPrinter.Collate := true; dmDanfe.RvSystem1.RenderObject := dmDanfe.RvRenderPDF1; if not MostrarStatus then dmDanfe.RvSystem1.SystemOptions := dmDanfe.RvSystem1.SystemOptions - [soShowStatus]; dmDanfe.RvSystem1.SystemSetups := dmDanfe.RvSystem1.SystemSetups - [ssAllowSetup]; dmDanfe.RvProject.Engine := dmDanfe.RvSystem1; /// TERMINO ----- ATRIBUINDO CONFIGURACOES ESPECIFICAS PARA PDF. dmDanfe.RvRenderPDF1.EmbedFonts:=False; dmDanfe.RvRenderPDF1.ImageQuality:=90; dmDanfe.RvRenderPDF1.MetafileDPI:=300; dmDanfe.RvRenderPDF1.UseCompression:=False; dmDanfe.RvRenderPDF1.Active:=True; if NFE = nil then begin for i:= 0 to TACBrNFe(ACBrNFe).NotasFiscais.Count-1 do begin dmDanfe.NFe := TACBrNFe(ACBrNFe).NotasFiscais.Items.NFe; NomeArq := StringReplace(TACBrNFe(ACBrNFe).NotasFiscais.Items.NFe.infNFe.ID,'NFe', '', [rfIgnoreCase]); NomeArq := PathWithDelim(Self.PathPDF)+NomeArq+'.pdf'; dmDanfe.RvSystem1.OutputFileName := NomeArq; ExecutaReport; end; end else begin dmDanfe.NFe := NFE; NomeArq := StringReplace(NFe.infNFe.ID,'NFe', '', [rfIgnoreCase]); NomeArq := PathWithDelim(Self.PathPDF)+NomeArq+'.pdf'; dmDanfe.RvSystem1.OutputFileName := NomeArq; ExecutaReport; end; /// REMOVENDO CONFIGURACOES ESPECIFICAS PARA PDF. dmDanfe.RvRenderPDF1.Active := False; dmDanfe.RvSystem1.DefaultDest := rdPreview; dmDanfe.RvSystem1.DoNativeOutput := True; //dmDanfe.RvSystem1.SystemPrinter.Collate := true; dmDanfe.RvSystem1.RenderObject := nil; if not MostrarStatus then dmDanfe.RvSystem1.SystemOptions := dmDanfe.RvSystem1.SystemOptions + [soShowStatus]; dmDanfe.RvSystem1.SystemSetups := dmDanfe.RvSystem1.SystemSetups + [ssAllowSetup]; dmDanfe.RvProject.Engine := nil; /// TERMINO ----- REMOVENDO CONFIGURACOES ESPECIFICAS PARA PDF. Bom, é isso ai, espero ter conseguido explicar o problema, qualquer dúvida estou a disposição Grande Abraço a todos Ricardo