Hallo,</p>
<p>ich öffne mittels ADO eine DBF-Tabelle und konvertiere diese in Exel.
Nun gibt es dafür zwei ODBC Treiber, einmal in Deutsch und einmal in Englisch,
zumindest auf meinem System. Auf einem anderen System gab es keinen "Treiber"
dafür einen "driver". Kann man das irgendwie allgemein halten,
dass es sowohl für "driver" sowie auch für "Treiber
funktioniert?</p>
<p>Vielen Dank schon mal. Grüße, Mario Noack</p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"><b>var</b>
ConvertConnection : TAdoConnection;<br>
iRows : Integer;<br>
TableName, TablePath : String;<br>
<br>
</font><font face="Courier New, Courier, mono" size="2" color="#000066"><b>begin</b><br>
TableName := ExtractFileName(Edit1.Text);<br>
TablePath := ExtractFilePath(Edit1.Text);</font></p>
<p></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"><b>WITH</b>
TIniFile.Create(TablePath + TableName + '.dsn') <b>DO</b><br>
<b>BEGIN</b><br>
WriteString('ODBC','DRIVER' ,'Microsoft dBase Driver (*.dbf)');<b><font color="#FF0000">//Microsoft
dBase-Treiber (*.dbf)');</font></b><br>
WriteString('ODBC','UID' ,'admin');<br>
WriteString('ODBC','UserCommitSync' ,'Yes');<br>
WriteString('ODBC','Threads' ,'3');<br>
WriteString('ODBC','Statistics' ,'0');<br>
WriteString('ODBC','SafeTransactions' ,'0');<br>
WriteString('ODBC','PageTimeout' ,'5');<br>
WriteString('ODBC','MaxScanRows' ,'8');<br>
WriteString('ODBC','MaxBufferSize' ,'2048');<br>
WriteString('ODBC','FIL' ,'dBase 5.0');<br>
WriteString('ODBC','DriverId' ,'533');<br>
WriteString('ODBC','Deleted' ,'0');<br>
WriteString('ODBC','DefaultDir' ,TablePath);<br>
WriteString('ODBC','CollatingSequence','ASCII');<b r>
Free;<br>
<b>END</b>; // WITH IniFile </font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ConvertConnection
:= TADOConnection.Create(Self);<br>
ConvertConnection.LoginPrompt := False;</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ConvertConnection.ConnectionString
:= 'Provider=MSDASQL.1;Persist Security Info=False;' +<br>
'Extended Properties="CollatingSequence=ASCII;' +<br>
'DefaultDir=' + TablePath +<br>
';Deleted=0;' +<br>
'Driver={Microsoft dBase Driver (*.dbf)};' + <b><font color="#FF0000">//Microsoft
dBase-Treiber (*.dbf)};' +</font></b><br>
'DriverId=533;' +<br>
'FIL=dBase 5.0;' +<br>
'FILEDSN=' + TablePath + TableName + '.dsn' +<br>
';MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;' +<br>
'SafeTransactions=0;Statistics=0;Threads=3;' +<br>
'UID=admin;UserCommitSync=Yes;"';</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> <b>TRY</b><br>
ConvertConnection.Connected := True;</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> <b>TRY</b><br>
DeleteFile(ChangeFileExt(TablePath + TableName, '.xls'));<br>
ConvertConnection.Execute('SELECT * INTO Tabelle1 IN ' + ChangeFileExt(TableName,
'.xls') +<br>
' "Excel 8.0;" FROM ' + ChangeFileExt(TableName, ''),<br>
iRows);<br>
<b>FINALLY</b><br>
ConvertConnection.Connected := False;<br>
<b>END</b>; //TRY</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ShowMessage(Format('Es
wurden %d Datensätze exportiert.', [iRows]));<br>
<b>EXCEPT</b><br>
on E: Exception do MessageDlg(E.Message, mtError, [mbOK], E.HelpContext);<br>
<b>END</b>; //TRY</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ConvertConnection.Free;</font><br>
</p>
<p>ich öffne mittels ADO eine DBF-Tabelle und konvertiere diese in Exel.
Nun gibt es dafür zwei ODBC Treiber, einmal in Deutsch und einmal in Englisch,
zumindest auf meinem System. Auf einem anderen System gab es keinen "Treiber"
dafür einen "driver". Kann man das irgendwie allgemein halten,
dass es sowohl für "driver" sowie auch für "Treiber
funktioniert?</p>
<p>Vielen Dank schon mal. Grüße, Mario Noack</p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"><b>var</b>
ConvertConnection : TAdoConnection;<br>
iRows : Integer;<br>
TableName, TablePath : String;<br>
<br>
</font><font face="Courier New, Courier, mono" size="2" color="#000066"><b>begin</b><br>
TableName := ExtractFileName(Edit1.Text);<br>
TablePath := ExtractFilePath(Edit1.Text);</font></p>
<p></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"><b>WITH</b>
TIniFile.Create(TablePath + TableName + '.dsn') <b>DO</b><br>
<b>BEGIN</b><br>
WriteString('ODBC','DRIVER' ,'Microsoft dBase Driver (*.dbf)');<b><font color="#FF0000">//Microsoft
dBase-Treiber (*.dbf)');</font></b><br>
WriteString('ODBC','UID' ,'admin');<br>
WriteString('ODBC','UserCommitSync' ,'Yes');<br>
WriteString('ODBC','Threads' ,'3');<br>
WriteString('ODBC','Statistics' ,'0');<br>
WriteString('ODBC','SafeTransactions' ,'0');<br>
WriteString('ODBC','PageTimeout' ,'5');<br>
WriteString('ODBC','MaxScanRows' ,'8');<br>
WriteString('ODBC','MaxBufferSize' ,'2048');<br>
WriteString('ODBC','FIL' ,'dBase 5.0');<br>
WriteString('ODBC','DriverId' ,'533');<br>
WriteString('ODBC','Deleted' ,'0');<br>
WriteString('ODBC','DefaultDir' ,TablePath);<br>
WriteString('ODBC','CollatingSequence','ASCII');<b r>
Free;<br>
<b>END</b>; // WITH IniFile </font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ConvertConnection
:= TADOConnection.Create(Self);<br>
ConvertConnection.LoginPrompt := False;</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ConvertConnection.ConnectionString
:= 'Provider=MSDASQL.1;Persist Security Info=False;' +<br>
'Extended Properties="CollatingSequence=ASCII;' +<br>
'DefaultDir=' + TablePath +<br>
';Deleted=0;' +<br>
'Driver={Microsoft dBase Driver (*.dbf)};' + <b><font color="#FF0000">//Microsoft
dBase-Treiber (*.dbf)};' +</font></b><br>
'DriverId=533;' +<br>
'FIL=dBase 5.0;' +<br>
'FILEDSN=' + TablePath + TableName + '.dsn' +<br>
';MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;' +<br>
'SafeTransactions=0;Statistics=0;Threads=3;' +<br>
'UID=admin;UserCommitSync=Yes;"';</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> <b>TRY</b><br>
ConvertConnection.Connected := True;</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> <b>TRY</b><br>
DeleteFile(ChangeFileExt(TablePath + TableName, '.xls'));<br>
ConvertConnection.Execute('SELECT * INTO Tabelle1 IN ' + ChangeFileExt(TableName,
'.xls') +<br>
' "Excel 8.0;" FROM ' + ChangeFileExt(TableName, ''),<br>
iRows);<br>
<b>FINALLY</b><br>
ConvertConnection.Connected := False;<br>
<b>END</b>; //TRY</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ShowMessage(Format('Es
wurden %d Datensätze exportiert.', [iRows]));<br>
<b>EXCEPT</b><br>
on E: Exception do MessageDlg(E.Message, mtError, [mbOK], E.HelpContext);<br>
<b>END</b>; //TRY</font></p>
<p><font face="Courier New, Courier, mono" size="2" color="#000066"> ConvertConnection.Free;</font><br>
</p>
Comment