Init
This commit is contained in:
commit
5e9ac89dcd
191 changed files with 4167 additions and 0 deletions
179
__history/Unit1.pas.~92~
Normal file
179
__history/Unit1.pas.~92~
Normal file
|
|
@ -0,0 +1,179 @@
|
|||
UNIT Unit1;
|
||||
|
||||
INTERFACE
|
||||
|
||||
USES
|
||||
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
|
||||
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons, Data.DB,
|
||||
Bde.DBTables, Vcl.Grids, Vcl.DBGrids, JvExDBGrids, JvDBGrid,
|
||||
ZAbstractRODataset, ZAbstractDataset, ZAbstractTable, ZDataset,
|
||||
ZAbstractConnection, ZConnection, Vcl.ComCtrls, Vcl.ExtCtrls, Vcl.DBCtrls,
|
||||
JvDBControls, IniFiles, AppPath, JvExControls, JvLabel, STR_Tool_UTF;
|
||||
|
||||
TYPE
|
||||
Tmain = CLASS(TForm)
|
||||
BitBtn1: TBitBtn;
|
||||
OD: TOpenDialog;
|
||||
sfl: TLabel;
|
||||
T1: TTable;
|
||||
DS: TDataSource;
|
||||
JvDBGrid1: TJvDBGrid;
|
||||
ZDB: TZConnection;
|
||||
ZT1: TZTable;
|
||||
BitBtn2: TBitBtn;
|
||||
ZQ1: TZQuery;
|
||||
ST: TStatusBar;
|
||||
JvDBNavigator1: TJvDBNavigator;
|
||||
AP: TAppPath;
|
||||
PROCEDURE BitBtn1Click(Sender: TObject);
|
||||
PROCEDURE BitBtn2Click(Sender: TObject);
|
||||
PROCEDURE FormCreate(Sender: TObject);
|
||||
PRIVATE
|
||||
{ Private-Deklarationen }
|
||||
PUBLIC
|
||||
{ Public-Deklarationen }
|
||||
END;
|
||||
|
||||
VAR
|
||||
main: Tmain;
|
||||
sfile: STRING;
|
||||
Server, User, Password, Catalog: STRING;
|
||||
|
||||
IMPLEMENTATION
|
||||
|
||||
{$R *.dfm}
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
PROCEDURE Tmain.BitBtn1Click(Sender: TObject);
|
||||
|
||||
BEGIN
|
||||
IF OD.Execute THEN
|
||||
BEGIN
|
||||
sfile := OD.FileName;
|
||||
sfl.Caption := OD.FileName;
|
||||
T1.Active := False;
|
||||
T1.DatabaseName := ExtractFileDir(OD.FileName);
|
||||
T1.TableName := ExtractFilename(OD.FileName);
|
||||
T1.Active := TRUE;
|
||||
ST.Panels[0].Text := IntToStr(T1.RecordCount) + ' Datensätze';
|
||||
ST.Refresh;
|
||||
BitBtn2.Enabled := TRUE;
|
||||
END;
|
||||
END;
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
PROCEDURE Tmain.BitBtn2Click(Sender: TObject);
|
||||
|
||||
VAR
|
||||
i, rc: Integer;
|
||||
fn: STRING;
|
||||
createSQL: TStringList;
|
||||
|
||||
BEGIN
|
||||
fn := ExtractFilename(OD.FileName);
|
||||
fn := Copy(fn, 1, POS('.', fn) - 1);
|
||||
ZQ1.SQL.Clear;
|
||||
ZDB.Connect;
|
||||
ZQ1.SQL.Add('USE ' + UPPERCASE(Catalog) + ';');
|
||||
ZQ1.SQL.Add('DROP TABLE IF EXISTS ' + lowercase(fn) + ';');
|
||||
ZQ1.SQL.Add('CREATE TABLE ' + lowercase(fn) + ' (');
|
||||
FOR i := 0 TO T1.Fielddefs.Count - 1 DO
|
||||
BEGIN
|
||||
IF T1.Fielddefs[i].Datatype = ftString THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' varchar(max) NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftMemo THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' varchar(max) NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftBoolean THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' bit NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftFloat THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' float NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftCurrency THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' varchar(max) NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftDate THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' date NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftTime THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' time(5) NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftSmallint THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' int NULL,')
|
||||
ELSE IF T1.Fielddefs[i].Datatype = ftInteger THEN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' int NULL,')
|
||||
ELSE
|
||||
BEGIN
|
||||
ZQ1.SQL.Add(T1.Fielddefs[i].Name + ' varchar(max) NULL,')
|
||||
END;
|
||||
END;
|
||||
ZQ1.SQL[ZQ1.SQL.Count - 1] := FilterChar(ZQ1.SQL[ZQ1.SQL.Count - 1], ',');
|
||||
ZQ1.SQL.Add(');');
|
||||
ZQ1.ExecSQL;
|
||||
ZT1.Active := False;
|
||||
ZT1.TableName := UPPERCASE(Catalog) + '.dbo.' + lowercase(fn);
|
||||
ZT1.Active := TRUE;
|
||||
T1.First;
|
||||
rc := 0;
|
||||
REPEAT
|
||||
inc(rc);
|
||||
ST.Panels[0].Text := 'Verarbeite Datensatz ' + IntToStr(rc) + ' von ' + IntToStr(T1.RecordCount);
|
||||
ST.Refresh;
|
||||
ZT1.Append;
|
||||
FOR i := 0 TO T1.Fields.Count - 1 DO
|
||||
BEGIN
|
||||
IF T1.Fields[i].value <> NULL THEN
|
||||
BEGIN
|
||||
TRY
|
||||
IF T1.Fielddefs[i].Datatype = ftString THEN
|
||||
ZT1.Fields[i].Text := T1.Fields[i].Text
|
||||
ELSE
|
||||
ZT1.Fields[i].value := T1.Fields[i].value
|
||||
EXCEPT
|
||||
ON e: Exception DO
|
||||
BEGIN
|
||||
ShowMessage(T1.Fielddefs[i].Name);
|
||||
END;
|
||||
END;
|
||||
END;
|
||||
END;
|
||||
TRY
|
||||
ZT1.Post;
|
||||
EXCEPT
|
||||
ON e: Exception DO
|
||||
BEGIN
|
||||
ShowMessage(e.Message);
|
||||
END;
|
||||
END;
|
||||
T1.Next;
|
||||
application.ProcessMessages;
|
||||
UNTIL T1.Eof;;
|
||||
MessageDlg('Vorgang beendet', mtInformation, [mbOK], 0);
|
||||
END;
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
PROCEDURE Tmain.FormCreate(Sender: TObject);
|
||||
|
||||
VAR
|
||||
ini: TIniFile;
|
||||
|
||||
BEGIN
|
||||
ZDB.Connected := False;
|
||||
ini := TIniFile.Create(AP.AppPath + 'config.ini');
|
||||
Server := ini.ReadString('SETTINGS', 'SERVER', '');
|
||||
User := ini.ReadString('SETTINGS', 'USER', '');
|
||||
Password := ini.ReadString('SETTINGS', 'PASSWORD', '');
|
||||
Catalog := ini.ReadString('SETTINGS', 'CATALOG', '');
|
||||
ini.Free;
|
||||
ZDB.Database := 'Provider=SQLNCLI11.1;Persist Security Info=False;User ID=sa;Initial Catalog="";Data Source=' + Server + ';Initial File Name="";Server SPN=""';
|
||||
ZDB.HostName := Server;
|
||||
ZDB.User := User;
|
||||
ZDB.Password := Password;
|
||||
ZDB.Catalog := Catalog;
|
||||
ZDB.Connected := TRUE;
|
||||
ST.Panels[1].Text := 'Server: ' + Server;
|
||||
ST.Panels[2].Text := 'Datenbank: ' + Catalog;
|
||||
ST.Panels[3].Text := 'DB-User: ' + User;
|
||||
ST.Refresh;
|
||||
END;
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
END.
|
||||
Loading…
Add table
Add a link
Reference in a new issue