Ir para conteúdo
  • Cadastre-se

timanagement

Membros
  • Total de ítens

    3
  • Registro em

  • Última visita

Tudo que timanagement postou

  1. Resolvido conforme orientações da TCNoSpeed recebidas da Embarcadero como segue: Para resolver o problema basta apagar o arquivo midas.dll do system32/syswow64 (versao 10.0.2151.25345) e adicionar novamente o arquivo que se encontra na pasta do Delphi (C:\Arquivos de programas\Embarcadero\RAD Studio\11.0\bin\midas.dll) (versão 18.0.4905.60485) Fonte: http://tsdn.tecnospeed.com.br/comunicao-tecnospeed/activity/15058 Apliquei a solução proposta e estou abrindo o danfe no preview normalmente. Agradeço aos que se dedicaram em buscar uma solução. parecer-delphi-xe4-1.pdf
  2. Descupem o post poluído. Os fontes já estão em anexo. Da próxima vez terei cuidado em não poluir o tópico. Agradeço a sugestão para um visual menos poluído.
  3. Boa tarde a todos. Fiz umas alterações no RecuperarXML e inclui a possibilidade de abrir um xml para consulta dos itens e se o usuário quiser imprimir o danfe para conferir ou outras finalidades internas. O problema é que só consigo mostrar o danfe na tela quando executo no meu notebook. Quando rodo o executável em outro pc tenho um erro do tipo "violation access..." bla, bla, bla.... Pesquisei muito no forum para saber se outros usuários do ACBR/FASTREPORT tinham algum problema e vi que os resultados de minha pesquisa apontavam para erros no patch referente ao "FastFile" o que não me ajudou, pois usando patch declarado em variável ou em string para o caminho ocorria o erro do mesmo modo. Vou colocar meu código inteiro para ver se algum amigo pode me auxiliar.... Usando o Delphi XE4 e o projeto foi alterado para rodar a partir de: "C:\XML\". unit principal; interface uses GifImage ,UrlMon, MSHtml, ACBrUtil, pcnAuxiliar, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, SHDocVw, ExtCtrls, ComCtrls, WinInet, Menus, ACBrNFe, Vcl.Grids, Vcl.Buttons, frxClass, ACBrNFeDANFEClass, ACBrNFeDANFEFR, frxExportPDF,ShellAPI,Types; type TfrmPrincipal = class(TForm) WebBrowser1: TWebBrowser; ProgressBar1: TProgressBar; lblStatus: TLabel; Panel2: TPanel; Panel3: TPanel; Panel4: TPanel; Image1: TImage; btnPegarHTML: TButton; btnNovaConsulta: TButton; btnGerarXML: TButton; Label1: TLabel; edtChaveNFe: TEdit; Label2: TLabel; edtCaptcha: TEdit; PageControl1: TPageControl; TabSheet1: TTabSheet; TabSheet2: TTabSheet; Memo2: TMemo; Panel1: TPanel; WBXML: TWebBrowser; Button1: TButton; Label3: TLabel; TabSheet3: TTabSheet; Label4: TLabel; Label5: TLabel; TabSheet4: TTabSheet; ACBrNFe1: TACBrNFe; Edit1: TEdit; StringGridProdutos: TStringGrid; BtImprimir: TBitBtn; Label6: TLabel; DANFEFR: TACBrNFeDANFEFR; BtAbrirXml: TBitBtn; OpenDialog1: TOpenDialog; frxPDFExport: TfrxPDFExport; EdChave: TEdit; Label7: TLabel; Button2: TButton; procedure btnPegarHTMLClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); procedure WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); procedure btnNovaConsultaClick(Sender: TObject); procedure btnGerarXMLClick(Sender: TObject); procedure FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Button1Click(Sender: TObject); procedure Label3Click(Sender: TObject); procedure BtImprimirClick(Sender: TObject); procedure BtAbrirXmlClick(Sender: TObject); procedure edtChaveNFeKeyPress(Sender: TObject; var Key: Char); procedure Button2Click(Sender: TObject); private { Private declarations } function DownloadFile(SourceFile, DestFile: string): Boolean; function StripHTML(S: string): string; procedure DeleteIECache; procedure PegarHTML; procedure GeraXml; procedure NovaConsulta; procedure carregaItens; public { Public declarations } FPath,caminho,DanfeRetrato,Dirxml,Dirpdf,Dirxmlfor: string; end; var frmPrincipal: TfrmPrincipal; TpcnCSTIcms: string; implementation uses ACBrNFeUtil, ACBrHTMLtoXML, pcnConversao; {$R *.dfm} procedure TfrmPrincipal.DeleteIECache; var lpEntryInfo: PInternetCacheEntryInfo; hCacheDir: LongWord; dwEntrySize: LongWord; begin { DeleteIECache } dwEntrySize := 0; FindFirstUrlCacheEntry(nil, TInternetCacheEntryInfo(nil^), dwEntrySize); GetMem(lpEntryInfo, dwEntrySize); if dwEntrySize>0 then lpEntryInfo^.dwStructSize := dwEntrySize; hCacheDir := FindFirstUrlCacheEntry(nil, lpEntryInfo^, dwEntrySize); if hCacheDir<>0 then begin repeat DeleteUrlCacheEntry(lpEntryInfo^.lpszSourceUrlName); FreeMem(lpEntryInfo, dwEntrySize); dwEntrySize := 0; FindNextUrlCacheEntry(hCacheDir, TInternetCacheEntryInfo(nil^), dwEntrySize); GetMem(lpEntryInfo, dwEntrySize); if dwEntrySize>0 then lpEntryInfo^.dwStructSize := dwEntrySize; until not FindNextUrlCacheEntry(hCacheDir, lpEntryInfo^, dwEntrySize) end; { hCacheDir<>0 } FreeMem(lpEntryInfo, dwEntrySize); FindCloseUrlCache(hCacheDir) end; { DeleteIECache } function TfrmPrincipal.DownloadFile(SourceFile, DestFile: string): Boolean; const BufferSize = 1024; var hSession, hURL: HInternet; Buffer: array[1..BufferSize] of Byte; BufferLen: DWORD; f: File; sAppName: string; begin sAppName := ExtractFileName(Application.ExeName); hSession := InternetOpen(PChar(sAppName),INTERNET_OPEN_TYPE_PRECONFIG,nil, nil, 0); try hURL := InternetOpenURL(hSession,PChar(SourceFile),nil,0,0,0); try AssignFile(f, DestFile); Rewrite(f,1); repeat InternetReadFile(hURL, @Buffer,SizeOf(Buffer), BufferLen); BlockWrite(f, Buffer, BufferLen) until BufferLen = 0; CloseFile(f); Result := True; finally InternetCloseHandle(hURL) end finally InternetCloseHandle(hSession) end; end; procedure TfrmPrincipal.edtChaveNFeKeyPress(Sender: TObject; var Key: Char); begin //Acbrnfe1.NotasFiscais.LoadFromFile := (ACBrNFe1.NotasFiscais.Items[0].NFe.procNFe.chNFe); BtImprimir.Enabled:= True; end; {begin try Result := UrlDownloadToFile(nil, PChar(SourceFile), PChar(DestFile), 0, nil) = 0; except Result := False; end; end; } function TfrmPrincipal.StripHTML(S: string): string; var TagBegin, TagEnd, TagLength: integer; begin TagBegin := Pos( '<', S); // search position of first < while (TagBegin > 0) do begin // while there is a < in S TagEnd := Pos('>', S); // find the matching > TagLength := TagEnd - TagBegin + 1; Delete(S, TagBegin, TagLength); // delete the tag TagBegin := Pos( '<', S); // search for next < end; Result := S; // give the result end; procedure TfrmPrincipal.btnPegarHTMLClick(Sender: TObject); begin PegarHTML; end; procedure TfrmPrincipal.PegarHTML; begin //edtChaveNFe.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); // EdChave.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); if not ValidarChave('NFe'+edtChaveNFe.Text) then begin MessageDlg('Chave Inválida.',mtError,[mbok],0); edtChaveNFe.SetFocus; exit; end; if trim(edtCaptcha.Text) = '' then begin MessageDlg('Digite o valor da imagem.',mtError,[mbok],0); edtCaptcha.SetFocus; exit; end; Memo2.Lines.Clear; Button1.Enabled := False; btnPegarHTML.Enabled := False; btnNovaConsulta.Enabled := False; btnGerarXML.Enabled := False; try WebBrowser1.OleObject.Document.all.Item('ctl00$ContentPlaceHolder1$txtChaveAcessoCompleta', 0).value := edtChaveNFe.Text; WebBrowser1.OleObject.Document.all.Item('ctl00$ContentPlaceHolder1$txtCaptcha', 0).value := edtCaptcha.Text; WebBrowser1.OleObject.Document.all.Item('ctl00$ContentPlaceHolder1$btnConsultar', 0).click; except btnNovaConsulta.Enabled := True; raise; end; PageControl1.ActivePageIndex := 0; end; procedure TfrmPrincipal.FormCreate(Sender: TObject); begin Dirxml := 'C:\XML\'; Dirpdf := 'C:\XML\\PDF\'; Dirxmlfor := 'C:\XML\XML_FORNECEDOR\'; DANFEFR.PathPDF := 'C:\XML\PDF\'; if not DirectoryExists(Dirpdf) then ForceDirectories(Dirpdf); if not DirectoryExists(Dirxmlfor) then ForceDirectories(Dirxmlfor); StringGridProdutos.ColWidths[0] := 20; // vazio StringGridProdutos.ColWidths[1] := 80; // código StringGridProdutos.ColWidths[2] := 100; // barras StringGridProdutos.ColWidths[3] := 260; // produto StringGridProdutos.ColWidths[4] := 30; // unidade StringGridProdutos.ColWidths[5] := 30; // cst StringGridProdutos.ColWidths[6] := 38; // Qtd StringGridProdutos.ColWidths[7] := 80; // valor unitario StringGridProdutos.ColWidths[8] := 80; // valor total StringGridProdutos.ColWidths[9] := 70; // % icms StringGridProdutos.ColWidths[10] := 100; // valor icms StringGridProdutos.ColWidths[11] := 50; // %IPI StringGridProdutos.ColWidths[12] := 70; // valor IPI //inicio do titulo das colunas StringGridProdutos.Cells[1,0] := 'Código'; StringGridProdutos.Cells[2,0] := 'Cód. Barras'; StringGridProdutos.Cells[3,0] := 'Descrição'; StringGridProdutos.Cells[4,0] := 'Und.'; StringGridProdutos.Cells[5,0] := 'CST'; StringGridProdutos.Cells[6,0] := 'Qtd.'; StringGridProdutos.Cells[7,0] := 'Valor Unit.'; StringGridProdutos.Cells[8,0] := 'Valor Total'; StringGridProdutos.Cells[9,0] := '% ICMS ST'; StringGridProdutos.Cells[10,0] := 'Valor ICMS ST'; StringGridProdutos.Cells[11,0] := '% IPI'; StringGridProdutos.Cells[12,0] := 'Valor IPI'; NovaConsulta; //DANFEFR.PathPDF.Empty; //DANFEFR.PathPDF := 'C:\XML\PDF\'; //DANFEFR.FastFile := 'C:\XML\DANFeRetrato_ti.fr3'; end; procedure TfrmPrincipal.WebBrowser1DocumentComplete(Sender: TObject; const pDisp: IDispatch; var URL: OleVariant); var k, i: Integer; Source, dest: string; textoNFe : IHTMLDocument2; begin Application.ProcessMessages; if WebBrowser1.LocationURL = 'http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8=' then begin for k := 0 to WebBrowser1.OleObject.Document.Images.Length - 1 do begin Source := WebBrowser1.OleObject.Document.Images.Item(k).Src; if (Source = 'http://www.nfe.fazenda.gov.br/scripts/srf/intercepta/captcha.aspx?opt=image') then begin dest := ExtractFilePath(ParamStr(0)) + 'captcha.gif'; DownloadFile(Source, dest); end; end; Image1.Picture.LoadFromFile(dest); btnPegarHTML.Enabled := True; end else if WebBrowser1.LocationURL = 'https://www.nfe.fazenda.gov.br/portal/visualizacaoNFe/completa/Default.aspx' then begin WebBrowser1.Navigate('https://www.nfe.fazenda.gov.br/PORTAL/visualizacaoNFe/completa/impressao.aspx'); end else if WebBrowser1.LocationURL = 'http://www.nfe.fazenda.gov.br/portal/consultaCompleta.aspx?tipoConteudo=XbSeqxE8pl8=' then begin textoNFe := WebBrowser1.Document as IHTMLDocument2; repeat Application.ProcessMessages; until Assigned(textoNFe.body); Memo2.Lines.Text := StripHTML(textoNFe.body.innerHTML); Memo2.Lines.Text := StringReplace(Memo2.Lines.Text,'&nbsp;','',[rfReplaceAll, rfIgnoreCase]); i := 0; while i < memo2.Lines.Count-1 do begin if trim(Memo2.Lines[i]) = '' then begin Memo2.Lines.Delete(i); i := i - 1; end; if pos('function',Memo2.lines[i])>0 then begin Memo2.Lines.Delete(i); i := i - 1; end; if pos('document',Memo2.lines[i])>0 then begin Memo2.Lines.Delete(i); i := i - 1; end; if pos('{',Memo2.lines[i])>0 then begin Memo2.Lines.Delete(i); i := i - 1; end; if pos('}',Memo2.lines[i])>0 then begin Memo2.Lines.Delete(i); i := i - 1; end; i := i + 1; end; Image1.Picture := nil; btnGerarXML.Enabled := True; GeraXml; end else if WebBrowser1.LocationURL = 'https://www.nfe.fazenda.gov.br/portal/inexistente_completa.aspx' then begin MessageDlg('NF-e INEXISTENTE na base nacional, favor consultar esta NF-e no site da SEFAZ de origem.',mtError,[mbok],0); Image1.Picture := nil; btnGerarXML.Enabled := True; btnNovaConsulta.Enabled := True; end else begin MessageDlg('Erro carregando URL: '+WebBrowser1.LocationURL,mtError,[mbok],0); Image1.Picture := nil; btnGerarXML.Enabled := True; btnNovaConsulta.Enabled := True; end; end; procedure TfrmPrincipal.WebBrowser1ProgressChange(Sender: TObject; Progress, ProgressMax: Integer); begin if ProgressMax = 0 then begin ProgressBar1.Visible := False; lblStatus.Visible := False; exit; end else begin ProgressBar1.Visible := True; lblStatus.Visible := True; try ProgressBar1.Max := ProgressMax; if (Progress <> -1) and (Progress <= ProgressMax) then ProgressBar1.Position := Progress else begin ProgressBar1.Visible := False; lblStatus.Visible := False; end; except on EDivByZero do exit; end; end; end; procedure TfrmPrincipal.btnNovaConsultaClick(Sender: TObject); begin NovaConsulta; end; procedure TfrmPrincipal.NovaConsulta; begin btnNovaConsulta.Enabled := False; btnGerarXML.Enabled := False; edtcaptcha.Text:=''; Button1.Enabled := True; // DeleteIECache; Memo2.Lines.Clear; WebBrowser1.Navigate('http://www.nfe.fazenda.gov.br/portal/consulta.aspx?tipoConsulta=completa&tipoConteudo=XbSeqxE8pl8='); end; procedure TfrmPrincipal.BtImprimirClick(Sender: TObject); begin //if FilesExists Acbrnfe1.NotasFiscais('C:\XML\XML_FORNECEDOR\'+(edtChaveNFe.Text)+'-nfe.xml') then //DANFEFR.FastFile := ''; //DANFEFR.PathPDF := ''; DANFEFR.FastFile := ExtractFileDir(application.ExeName) + '\DANFeRetrato_ti.fr3'; DANFEFR.PathPDF := 'C:\XML\PDF\'; ACBrNFe1.NotasFiscais.ImprimirPDF; //frxReport1.PrepareReport; //frxReport1.ShowPreparedReport; ACBrNFe1.NotasFiscais.Imprimir; ACBrNFe1.DANFE.MostrarPreview:= True; //carregaItens; //Acbrnfe1.NotasFiscais.LoadFromFile(''); //DANFEFR.PathPDF := EmptyStr; end; procedure TfrmPrincipal.BtAbrirXmlClick(Sender: TObject); var I: Integer; begin if OpenDialog1.Execute then begin caminho := ExtractFilePath(ParamStr(0)); ACBrNFe1.NotasFiscais.Clear; Acbrnfe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName); Acbrnfe1.NotasFiscais.SaveToFile('C:\XML\XML_FORNECEDOR\'); BtImprimir.Enabled := True; Edit1.Text := ACBrNFe1.NotasFiscais.Items[0].NFe.Emit.xNome; edtChaveNFe.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); EdChave.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); //edtChaveNFe.Text := caminho+'PDF\'; DANFEFR.PathPDF := 'C:\XML\PDF\'; //DANFEFR.dmDanfe.frxPDFExport.Start; //frxPDFExport.Start; DANFEFR.FastFile := ExtractFileDir(application.ExeName) + '\DANFeRetrato_ti.fr3'; //DANFEFR.FastFile := 'C:\XML\DANFeRetrato_ti.fr3'; //ACBrNFe1.NotasFiscais.Imprimir; carregaItens; end; end; procedure TfrmPrincipal.btnGerarXMLClick(Sender: TObject); var L: Integer; begin ACBrNFe1.NotasFiscais.Clear; GeraXML; ACBrNFe1.NotasFiscais.LoadFromFile(FPath); Acbrnfe1.NotasFiscais.SaveToFile(Dirxmlfor); Edit1.Text := ACBrNFe1.NotasFiscais.Items[0].NFe.Emit.xNome; edtChaveNFe.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); EdChave.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); carregaItens; end; procedure TfrmPrincipal.GeraXml; var i: integer; begin FPath:=GerarXML(Memo2.Lines.Text); WBXML.Navigate(FPath); MessageBox(0,PChar('XML '+FPath+' gerado com sucesso!'),'Informação', MB_ICONINFORMATION+MB_TASKMODAL); btnNovaConsulta.Enabled := True; btnPegarHTML.Enabled := True; ACBrNFe1.NotasFiscais.LoadFromFile(FPath); Edit1.Text := ACBrNFe1.NotasFiscais.Items[0].NFe.Emit.xNome; edtChaveNFe.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); EdChave.Text := Copy(ACBrNFe1.NotasFiscais.Items[0].NFe.infNFe.ID, 4, 44); carregaItens; PageControl1.ActivePageIndex := 3; end; procedure TfrmPrincipal.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key=vk_escape then Close; end; procedure TfrmPrincipal.FormClose(Sender: TObject; var Action: TCloseAction); begin Action := caFree; end; procedure TfrmPrincipal.Button1Click(Sender: TObject); begin PegarHTML; BtImprimir.Enabled := True; DANFEFR.PathPDF := 'C:\XML\PDF\'; DANFEFR.FastFile := ExtractFileDir(application.ExeName) + '\DANFeRetrato_ti.fr3'; ACBrNFe1.DANFE.MostrarPreview:= True; { frxPDFExport.Creator := 'Ti Management'; frxPDFExport.Producer := 'Ti Management'; frxPDFExport.Title := 'DANFE PDF'; frxPDFExport.Subject := 'DANFE PDF'; frxPDFExport.Keywords := 'DANFE PDF'; frxPDFExport.ShowDialog := False; } end; procedure TfrmPrincipal.Button2Click(Sender: TObject); var lerpdf: string; ler: WideChar; begin //lerpdf:= ExtractFileDir(application.ExeName) + '\PDF\'+(EdChave.Text)+'.pdf'; //ReadState('\PDF\'+(EdChave.Text)+'.pdf'); {ler:= StringToWideChar('C:\XML\PDF\'+(EdChave.Text)+'.pdf'); lerpdf:= (ler); ShellExecute(Handle, nil, (lerpdf), nil, nil, SW_SHOWNORMAL);} end; procedure TfrmPrincipal.carregaItens; var i: integer; orig,cst,x: string; peripi,valipi,valpro,vcem,a,b,c: Double; begin //s := IntToStr(n); StringGridProdutos.RowCount := ACBrNFe1.NotasFiscais.Items[0].NFe.Det.Count+1; for i := 0 to ACBrNFe1.NotasFiscais.Items[0].NFe.Det.Count - 1 do begin orig := OrigToStr(ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.ICMS.orig); cst := CSTICMSToStr(ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.ICMS.CST); peripi:= (ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.pIPI); valipi:= (ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.vIPI); valpro:= (ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.vProd); vcem:=100; StringGridProdutos.Cells[1,i+1] := ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.cProd; StringGridProdutos.Cells[2,i+1] := ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.cEANTrib; StringGridProdutos.Cells[3,i+1] := ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.xProd; StringGridProdutos.Cells[4,i+1] := ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.uCom; StringGridProdutos.Cells[5,i+1] := (orig+cst); StringGridProdutos.Cells[6,i+1] := FormatFloat('###,###,###0', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.qCom); StringGridProdutos.Cells[7,i+1] := FormatFloat('R$ ###,###,###0.00', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.vUnCom); StringGridProdutos.Cells[8,i+1] := FormatFloat('R$ ###,###,###0.00', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Prod.vProd); StringGridProdutos.Cells[9,i+1] := FormatFloat('###,###,###0.00 %', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.ICMS.pICMSST); StringGridProdutos.Cells[10,i+1] := FormatFloat('R$ ###,###,###0.00', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.ICMS.vICMSST); //StringGridProdutos.Cells[10,i+1] := FormatFloat('###,###,###0.00', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.pIPI); StringGridProdutos.Cells[12,i+1] := FormatFloat('R$ ###,###,###0.00', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.vIPI); if ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.vIPI > 0 then a:= (valipi / valpro); b:= (a * vcem); x:= (FloatToString( ); if ( > Trunc(b ) then x:= FloatToStr(Trunc(b )) else x:= FloatToStr(Trunc(b )); //c:= (a / ; //peripi:= b; StringGridProdutos.Cells[11,i+1] := x+' %'; //if not ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.vIPI > 0 then //StringGridProdutos.Cells[10,i+1] := FormatFloat('###,###,###0.00', ACBrNFe1.NotasFiscais.Items[0].NFe.Det[i].Imposto.IPI.pIPI); BtImprimir.Enabled := True; end; end; procedure TfrmPrincipal.Label3Click(Sender: TObject); begin NovaConsulta; end; end. Desde já agradeço e peço desculpas, caso tenha infringido alguma das regras do forum. RecuperarXML.rar
×
×
  • 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.

The popup will be closed in 10 segundos...
The popup will be closed in 10 segundos...