All pastes #207959 Raw Edit

Unnamed

public text v1 · immutable
#207959 ·published 2006-10-18 10:14 UTC
rendered paste body
unit import_thread_rtf;

interface

uses
  Classes,SysUtils,Graphics;

type
  Import_RTF = class(TThread)
  private
    { Private declarations }
  protected
    procedure Execute; override;
  end;

implementation
  uses main,dialog_open;

{ Important: Methods and properties of objects in visual components can only be
  used in a method called using Synchronize, for example,

      Synchronize(UpdateCaption);

  and UpdateCaption could look like,

    procedure Import_RTF.UpdateCaption;
    begin
      Form1.Caption := 'Updated in a thread';
    end; }

{ Import_RTF }

procedure Import_RTF.Execute;
var temp : string;
    temp2: string;
     i,j : integer;
begin
  { Place thread code here }
  j:=0;
  if Form2.OpenDialog1.Execute then
    begin
      bolt_valaszt:=form2.combobox1.text;
      if Form1.ADOQuery1.Active then Form1.AdoQuery1.Close;
      Form1.AdoQuery1.SQL.Clear;
      Form1.AdoQuery1.SQL.Add('SELECT * FROM '+bolt_valaszt);


      Form2.Close;

      Form2.RichEdit1.Lines.LoadFromFile(form2.OpenDialog1.FileName);

      Form1.JvXPProgressBar1.Position:=0;
      Form1.JvXPProgressBar1.Max:=form2.RichEdit1.Lines.Count-3;

      Form1.Status.Color:=clRed;
      Form1.Status.Text:='BUSY';
      if Form1.ADOQuery1.Filtered then Form1.ADOQuery1.Filtered:=false;
      Form1.AdoQuery1.Open;
      for i:= 8 to form2.RichEdit1.Lines.Count-3 do
        begin
          temp:=form2.RichEdit1.Lines[i];
          Form1.AdoQuery1.Append;
          Form1.AdoQuery1.FieldByName('Esemeny').AsString:=trim(copy(temp,1,7)); // Column 1 !! masodik szam nem az END hanem az hogy HANGY KARAKTERT OLVASSON BE
          temp2:=trim(copy(temp,10,4)+'.'+copy(temp,17,2)+'.'+copy(temp,22,2)); //hogy jo legyen a datum
          Form1.AdoQuery1.FieldByName('Datum').AsString:=temp2 {copy(s,8,16)}; // Column 2
          Form1.AdoQuery1.FieldByName('Ido').AsString:=trim(copy(temp,27,5)); // Column 3
          Form1.AdoQuery1.FieldByName('Particio').AsString:=trim(copy(temp,37,1)); // Column 4
          Form1.AdoQuery1.FieldByName('Leiras').AsString:=trim(copy(temp,48,50)); // Column 5
          Form1.AdoQuery1.FieldByName('Zona').AsString:=trim(copy(temp,100,2)); // Column 6
          Form1.AdoQuery1.FieldByName('Zona_Osztaly').AsString:=trim(copy(temp,115,20)); // Column 7
          Form1.AdoQuery1.FieldByName('Felhasznalo').AsString:=trim(copy(temp,140,2)); // Column 8
          Form1.AdoQuery1.FieldByName('Felhasznalo_Osztaly').AsString:=trim(copy(temp,155,7)); // Column 9
          Form1.AdoQuery1.Post;
          j:=j+1;
          Form1.JvXPProgressBar1.Position:=Form1.JvXPProgressBar1.Position+1;
          Form1.INFO_Lines.Text:=inttostr(j);
          Form1.Repaint;
        end;
      if Form1.AdoQuery1.Active then  Form1.AdoQuery1.Close;
      Form1.AdoQuery1.SQL.Clear;
      Form1.AdoQuery1.SQL.Add('SELECT * FROM '+bolt_valaszt+' ORDER BY Esemeny');
      Form1.AdoQuery1.Open;

      Form1.ComboBox1.Text:=bolt_valaszt;

      Form1.Status.Color:=clGreen;
      Form1.Status.Text:='READY';
    end;

end;

end.