sub Init_Components
self.Add "OpenD","TOpenDialog"
OpenD.Filter=" (*.gdb)|*.gdb"
Self.Add "Database","TIBDatabase"
 with Database
   .Params.Add CStr("lc_ctype=WIN1251")
   .Params.Add CStr("user_name=sysdba")
   .Params.Add CStr("password=masterkey")
   .LoginPrompt=false
 end with
 Self.Add "Trans","TIBTransaction"
 Trans.DefaultDatabase=Database
 Self.Add "Query", "TIBQuery"
  With Query
    .Database=DataBase
    .SQL.Clear
    .SQL.Add "select  f.*,a.* from account a,firm f where f.idfirm=a.idfirm and idcontr=0"
  End With
with self
 .Left = 177
 .Top = 128
 .BorderStyle = "bsDialog"
 .Caption = " "
 .ClientHeight = 90
 .ClientWidth = 403
 .Color = "clBtnFace"
 .Font.Charset = "DEFAULT_CHARSET"
 .Font.Color = "clWindowText"
 .Font.Height = -11
 .Font.Name = "MS Sans Serif"
 .Font.Style = ""
 .OldCreateOrder = False
 .PixelsPerInch = 96
 self.add "Label1", "TLabel"
 with Label1
  .Left = 37
  .Top = 8
  .Width = 329
  .Height = 13
  .Caption = "      "
  end with
 self.add "Export", "TDBEditEh", TRUE
 with Export
  .Left = 8
  .Top = 27
  .Width = 369
  .Height = 19
  .Flat = True
  .TabOrder = 0
  .Visible = True
  .alwaysshowborder=true
  end with
 self.add "Button1", "TButton",TRUE
 with Button1
  .Left = 377
  .Top = 23
  .Width = 25
  .Height = 25
  .Caption = "..."
  .Font.Charset = "RUSSIAN_CHARSET"
  .Font.Color = "clWindowText"
  .Font.Height = -12
  .Font.Name = "Arial"
  .Font.Style = "fsBold"
  .ParentFont = False
  .TabOrder = 1
  end with
 self.add "BitBtn1", "TBitBtn",TRUE
 with BitBtn1
  .Left = 301
  .Top = 62
  .Width = 99
  .Height = 25
  .Caption = ""
  .TabOrder = 2
  .Kind = "bkCancel"
  end with
 self.add "BitBtn2", "TBitBtn",TRUE
 with BitBtn2
  .Left = 157
  .Top = 62
  .Width = 134
  .Height = 25
  .Kind = "bkOK"
  .Caption = ""
  .TabOrder = 3
  .Enabled=false
  end with
 end with

end sub

sub Button1_OnClick
OpenD.Execute
if OpenD.Tag=1 then
 Export.Text=OpenD.FileName
end if
end sub

sub Export_OnChange
if Export.Text="" then  
 BitBtn2.Enabled=false
else
 BitBtn2.Enabled=true
end if
end sub


sub BitBtn1_OnClick
Self.Close
end sub

sub BitBtn2_OnClick
  Dim FS
  Dim ts

 Database.Databasename=OpenD.FileName
 Database.Connected=true
 Query.Active=true
 
  set FS=CreateObject("Scripting.FileSystemObject")
  SET ts=FS.OpenTextFile ("c:\1.txt",2,True,0)
  Query.DisableControls
  Dim l
  Dim idfirm
   idfirm=-20
   do while not Query.Eof
      if (idfirm<>Query.FieldByName ("IDFIRM")) then
       l="insert into Firm (idfirm,IDCONTR,FIRMSHORTNAME,FIRMFULLNAME,FIRMINN,FIRMZIP,FIRMCITY,FIRMADDRESS, "
       l=l &  " FIRMPHONE,FIRMOKPO,FIRMOKONH,FIRMSOATO,FIRMKOPF,EMAIL,SAIT,FIRMENGNAME,FIRMENGADDR,VERS,ACT,FIRMCOUNTRY) values (GEN_ID(GEN_FIRM_ID,1),"
       l= l & Query.FieldByName("idcontr") & ", '" & Query.FieldByName("FIRMSHORTNAME") & "','"
       l= l & Query.FieldByName("FIRMFULLNAME") & "', '" & Query.FieldByName("FIRMINN") & "','"
       l= l & Query.FieldByName("FIRMZIP") & "', '" & Query.FieldByName("FIRMCITY") & "','"
       l= l & Query.FieldByName("FIRMADDRESS") & "', '" & Query.FieldByName("FIRMPHONE") & "','"
       l= l & Query.FieldByName("FIRMOKPO") & "', '" & Query.FieldByName("FIRMOKONH") & "','"
       l= l & Query.FieldByName("FIRMSOATO") & "', '" & Query.FieldByName("FIRMKOPF") & "','"
       l= l & Query.FieldByName("EMAIL") & "', '" & Query.FieldByName("SAIT") & "','','',"
       l= l & "'0','I','7')"
       ts.WriteLine l
     end if
    idfirm=Query.FieldByName ("IDFIRM")
    l="insert into account (idfirm,BANKID,IDTYPEACC,VALCODE,ACCNAME,ACCNUMBER,STATUS,STATE) VALUES (GEN_ID(GEN_FIRM_ID,0),'"
    l= l & Query.FieldByName("BANKID") & "','" & Query.FieldByName("IDTYPEACC")& "','"
    l= l & Query.FieldByName("VALCODE") & "','" & Query.FieldByName("ACCNAME")& "','" & Query.FieldByName("ACCNUMBER")& "','"
    l= l & Query.FieldByName("STATUS") & "','" & Query.FieldByName("STATE")& "')"
    ts.WriteLine l
    Query.Next
  loop
 Query.EnableControls
 ts.Close
 SET FS=nothing

'   

 Dim line
 line=""
 set FS=CreateObject("Scripting.FileSystemObject")
 SET ts=FS.OpenTextFile ("c:\1.txt",1,True,0)
 if(not myTrans.Intransaction) then MyTrans.StartTransaction
 while not ts.AtEndOfStream
	 MyQuery.Active=false
	 MyQuery.SQL.Clear
	 line=ts.ReadLine
	 with MyQuery.SQL
	  .Add " " & line
	 end with
	 MyQuery.Active=true
 wend
 MyTrans.Commit
 MsgBox ""
 ts.Close
 SET FS=nothing
end sub


sub main
 
 '    
 Dim MyDatabase
 set  MyDatabase=MainForm.Controls("Database")
 Self.Add "MyTrans","TIBTransaction"
 MyTrans.DefaultDatabase=MyDatabase
 Self.Add "MyQuery", "TIBQuery"
  With MyQuery
    .Database=MyDataBase
    .Transaction=MyTrans
    .SQL.Clear
  End With

' 
call Init_Components


end sub
