Einzelnen Beitrag anzeigen

Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 

Paradox-Dateien mit BatchMove nach TXT oder CSV übertragen

  Alt 28. Okt 2003, 09:17
Hallo Leute,

immer wieder gibt es einen Hinweis auf BatchMove im Zusammenhang mit Daten-Transfers. Leider gibt es nur wenige nachvollziehbare Beispiele.

Ich möchte also meine vorhandene funktionsfähige Fassung des Exports meiner DB-Daten (paradox-daten als csv speichern von Specialwork übernommen) in eine von Excel einlesbare CSV-Datei mit Hilfe von BatchMove realisieren.

Den Hinweisen MrSpock's folgend habe ich mir alle Ergebnisse von "Suche nach BatchMove" angesehen und damit angefangen:

Code:
procedure TFBrowser.ExportAlsExcelCSVDatei1Click(Sender: TObject);
var
  i : byte;
begin
  //Tab1 ist eine geöffnete *.DB-Datei und wird in einem DBGrid angezeigt
  if not Tab1.Active then begin
    ShowMessage('Welche Datei?');
    exit;
  end;
  Tab2.DatabaseName := Tab1.DatabaseName;
  Tab2.TableName := ChangeFileExt(Tab1.TableName, '.TXT'); //CSV auch probiert
  Tab2.TableType := ttASCII;
  // Tab2 muss noch nicht existieren
  BatchMove1.Source := Tab1;
  BatchMove1.Destination := Tab2;
  BatchMove1.Mode := batCopy;
  BatchMove1.Execute;
end;
Das Ergebnis ist nicht befriedigend. Umlaute werden nicht korrekt gewandelt. Bei Ausgabe auf CSV stehen alle DB-Felder hintereinander durch Leerzeichen entsprechnd der Feldgröße getrennt in Spalte A. Bei Ausgabe auf TXT muß ich noch mühsehlig in Excel die korrekte Trennung der Spalten eingeben.

Diese Aussage der online-Hilfe:
"ttASCII Die Tabelle ist eine Comma-Delimited-Textdatei mit Strings in Anführungszeichen für jedes Feld."
kann ich bisher nicht bestätigen. Ich habe weder Kommata als Trennzeichen noch Anführungsstriche in der erzeugten *.TXT-Datei gefunden.

Kann jemand bei der Lösung der Probleme helfen?

mfg
eddy
  Mit Zitat antworten Zitat