-
Total de ítens
3 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por igor8831
-
-
Boa tarde galera.
é a primeira vez que crio um tópico, e, toda ajuda e puxão de orelha será bem-vindo.
Estou precisando fazer o seguinte...
Tenho um cliente potencial que está com o operacional em uma cidade e o galpão em outra e o operacional emite os ctes (média de 125/dia) e envia o PDF para o galpão por e-mail para imprimir.
Para facilitar, na minha aplicação, eu carrego o ACBrCTe varias vezes usando o LoadFromFile sem limpar, aponto MostraPreview para True e dou o comando imprimir.
Feito isso, ele exibe no FortesReport uma única vez todos os DACTes, um por página.... é aí que o cliente clica em salvar, escolhe PDF e ele gera um único PDF com todos os CTes, óbvio, facilitando o envio de arquivo único para impressão.
O que gostaria de fazer, é manipular este salvamento, indicando: local e nome_específico deste PDF único para que minha aplicação facilite mais ainda abrindo o outlook já com o arquivo em anexo...
Mas não estou conseguindo.
Lembrando que já tentei usar o ImprimirPDF, mas ele só gera o PDF com um CTe e normalmente o último, já tentei o ImprimirPDF seguido do Imprimir e acontece a mesma coisa.
Acho que no ACBrCTe, estes comandos de Imprimir e ImprimirPDF limpam ou vão para o ultimo registro, não sei... mas para não perder, será que pode-se criar um ImprimirPDF2?? risos...
Segue comando que uso e agradeço a ajuda ou sugestões....
LerCTe2;
DM.ImprimirCtes.SQL.Clear;
DM.ImprimirCtes.SQL.Add('SELECT * FROM conhecimentos WHERE ');
DM.ImprimirCtes.SQL.Add('marca_cte = "X" AND beneficiario = "' + DM.Global.FieldByName('nome').AsString + '"');
DM.ImprimirCtes.Open;
DM.ImprimirCtes.First;
Form102.ACBrCTe1.Conhecimentos.Clear;
while not DM.ImprimirCtes.Eof do
begin
DM.XMLCte.SQL.Clear;
DM.XMLCte.SQL.Add('SELECT * FROM xml_cte WHERE ');
DM.XMLCte.SQL.Add('cte = "' + DM.ImprimirCtes.FieldByName('cte').AsString + '" AND beneficiario = "' + DM.Global.FieldByName('nome').AsString + '"');
DM.XMLCte.SQL.Add('AND sts = "OK"');
DM.XMLCte.Open;If DM.XMLCte.RecordCount = 1 Then
begin
TBlobField(DM.XMLCte.FieldByName('arquivo')).SaveToFile(DM.Global.FieldByName('unidade_sistema').AsString + '\' + DM.Global.FieldByName('pasta_cte').AsString + '\' + DM.ImprimirCtes.FieldByName('cte_chave').AsString + '-cte.xml');
Form102.ACBrCTe1.Conhecimentos.LoadFromFile(DM.Global.FieldByName('unidade_sistema').AsString + '\' + DM.Global.FieldByName('pasta_cte').AsString + '\' + DM.ImprimirCtes.FieldByName('cte_chave').AsString + '-cte.xml');
end;
DM.ImprimirCtes.Next;
end;
Form102.ACBrCTeDACTeRL1.MostraPreview := True;
Form102.ACBrCTe1.Conhecimentos.Imprimir;
// Form102.ACBrCTe1.Conhecimentos.ImprimirPDF;
Form102.ACBrCTeDACTeRL1.MostraPreview := False; -
Precisei fazer umas modificações no DACT-e (Fortes Report), apenas fontes.
Então, fui na pasta FONTES do acbr e abri os "ACBrDACTeRL" e fiz as devidas alterações.
Sendo que salvei, fechei e abri o meu projeto, este desenvolvido em Delphi XE7 e ao testar a visualização do DACT-e, não apareceu nenhuma das mudanças que fiz.
Então, pergunto: o que devo fazer para que as minhas modificações sejam atualizadas? Não sei "recompilar", "recompilar o acbr todo". Alguém pode me ajudar?
Manipular PDF do FortesReport CT-e
em ACBrCTe
Postado
Oi Italo, boa tarde.
Então, entendi, mas pelo que vejo ele está fazendo um laço.... então ele não estaria (no meu caso) respeitando que eu carreguei varias vezes o ACBrCTe com varios xmls, pegando, acho eu, sempre o último e só gera do último, mas isso somente quando eu carrego varios xmls sem usar o clear e ao usar o ImprimirPDF.
Já com o Imprimir com a propriedade MostrarPreview como True é que eu consigo na tela, ver que estão todos ali e aí é que está, sou obrigado a salvar como pdf manualmente...
Veja quando carrego varias vezes o xml na ferramenta e mando imprimir com o mostrarpreview como true aparece como na imagem, porém, manualmente clico em salvar e etc.... escolho local e nome... ai sim da certo, mas a ideia é eu passar um nome por uma variavel e gerar o pdf...
Oi Everson, obrigado pela pronta resposta.
Vamos ver o que consigo, mas se der BIGODE aí a gente parte pra DLL.