Announcement

Collapse
No announcement yet.

Daten exportieren in....?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Daten exportieren in....?

    Hallo !

    Ich möchte dem Benutzer die Möglichkeit geben seine Daten (oder einen Ausschnitt von den Daten oder eine Zusammenfassung davon) in ein anderes Format zu konvertieren.

    1) welche Formate sind möglich??

    2) wie geht das??

    (ich muß (chef!) folgende Formate ausgeben können) <pre>
    1) Excel
    2) DOS-Text mit Trennzeichen
    3) dBase 3 Tabelle </pre>

    *verzweifel* HILFE!!

    BINE

  • #2
    Hallo,

    wenn eine ACCESS-Datenbank verwendet wird und das eigene Programm auf ADO zugreift, könnten alle 3 genannten Formate direkt von ADO aus exportiert werden, ohne das im Programm besondere Vorkehrungen zu treffen sind. Die folgenden Aufrufe demonstrieren dies:
    <pre>
    procedure TForm1.ButtonXLSClick(Sender: TObject);
    begin
    FExportSQL := 'SELECT * INTO Tabelle1 IN "C:\Temp\Export.xls" "Excel 8.0;" FROM Customer';
    DoExport;
    end;

    procedure TForm1.ButtonHTMLClick(Sender: TObject);
    begin
    FExportSQL := 'SELECT * INTO [Export.htm] IN "C:\Temp" "HTML Export;" FROM Customer';
    DoExport;
    end;

    procedure TForm1.ButtonXMLClick(Sender: TObject);
    begin
    FExportSQL := 'SELECT * INTO [Export.Txt] IN "C:\Temp" "Text;" FROM Customer';
    DoExport;
    end;

    procedure TForm1.ButtonParadoxClick(Sender: TObject);
    begin
    FExportSQL := 'SELECT * INTO [Export.db] IN "C:\Temp" "Paradox 5.x;" FROM Customer';
    DoExport;
    end;

    procedure TForm1.ButtondBASEClick(Sender: TObject);
    begin
    FExportSQL := 'SELECT * INTO [Export.dbf] IN "C:\Temp" "dBASE 5.0;" FROM Customer';
    DoExport;
    end;

    procedure TForm1.DoExport;
    var
    iRows : Integer;
    begin
    MemoSQL.Lines.Clear;
    MemoSQL.Lines.Add(FExportSQL);
    ADOConnection1.Connected := True;
    ADOConnection1.Execute(FExportSQL, iRows);
    ADOConnection1.Connected := False;
    ShowMessage(Format('Es wurden %d Datensätze exportiert.', [iRows]));
    end;
    </pre>
    Im MDAC-SDK ist die Tabelle mit allen unterstützten Format-Anweisungen (ca. 20) enthalten

    Comment


    • #3
      Hi Andreas!

      Das MDAC-SDK habe ich installiert, doch ich kenn mich damit nicht aus!! Leider gibt es kein Hauptmenü oder sowas und wenn doch hab ich es nicht gefunden (weißt e meine Englischkenntnisse!)

      Danke trotzdem
      BINE :

      Comment


      • #4
        Hat alles prächtig geklappt!!!

        <b>Aber 2 Fragen hab ich noch !!</b>

        1) Wie kann ich die DS in eine ASCII Datei speichern (DOS-Text mit Trennzeichen!)

        2) Wie kann ich die DS in eine DBase 3 datei speichern? Bei mir schreibt er <b>"installiertes ISAM nicht gefunden"</b>

        Wie muß der Code dann aussehen?

        Ich hab leider die MDAC-SDK nicht und kann daher nicht daraufzurückgreifen

        BINE :

        Comment


        • #5
          <b> ähm hallo ? </b&gt

          Comment


          • #6
            Hallo,

            äh - vor lauter Weihnachtseinkäufen findet man einfach keine Zeit, im MDAC-SDK zu blättern ;-)

            zur Frage 1: <br>
            ADO unterstützt beim Export/Import über eine Text-Datei sehr umfangreiche Optionen, die über die Konfigurationsdatei <b>Schema.ini</b> eingestellt werden. Dies ist ein sehr umfangreicher Bereich, so dass es ohne Lesen im MDAC-SDK nicht gehen wird.

            zur Frage 2; <br>
            Wenn die Fehlermeldung "installiertes ISAM nicht gefunden" kommt, bedeutet dies nichts anderes, als das die vor Ort installierte Microsoft JET Engine 4.x auf keine Treiber für das gewünschte Datenbankformat zugreifen kann. Wenn nur eine MDAC-Standardinstallation vorliegt, darf man nur die Formate anfordern, die im MDAC-SDK dokumentiert werden

            Comment


            • #7
              Okey die MDAC-SDK hab ich mir jetzt besorgt! Aber wo stehen die Informationen?????? Ich kenn mich da überhaupt nicht aus, nachwas ist das geordnet? Kann man die nicht wie in einer Hilfe suchen lassen?

              BINE :

              Comment


              • #8
                Hallo,

                das Setup sollte einen Eintrag im Start-Menü angelegt haben, bei mir (vollständiges Platform SDK) finde ich das unter <i>Microsoft Platform SDK | Platform SDK Documentation</i>. Notfalls kann man selbst nach den <b>CHM</b>-Dateien (HTML Help-Format) suchen.

                In der Hilfedatei geht es dann mit der Seite <b>Microsoft® Data Access Components (MDAC) SDK Start Page</b> los (Zweig <b>Data Services</b>)

                Comment


                • #9
                  Hallo Herr Kosch,<br>so zu Spaß habe ich versucht (siehe Ihr Beispiel oben) eine Access 2000 Tabelle in eine Excel-Tabelle zu schieben. Klappt auch ganz gut mit ADO 2.6 SP1. Aber eins wundert mich. Im SQL-Ausdruck muß ich aber Excel 8.0 (Office 97) angeben. Wenn ich Excel 9.0 (Excel 2000) verwende kommt der Fehler mit dem ISAM. Jetzt weiß ich, dass ADO die Excel-Tabelle erstellen kann, auch wenn kein Excel (ich habe Excel 2000) auf dem Rechner vorhanden ist. D.h. ADO muß das irgendwie in eigner Regie machen. Ist es korrekt, das die aktuellen MDAC nicht Excel 9.0 unterstützen, oder mache etwas falsch? <br>Jens Schuman

                  Comment


                  • #10
                    Hallo,

                    gibt es einen binären Unterschied im Aufbau der XLS-Datei zwischen Excel 8 und 9? Wenn nicht, gibt es für MDAC auch keinen Grund, eine neue Format-Anweisung vorzusehen. Ein Blick in die Dokumentation der aktuellen MDAC-Version schafft Klarheit, es werden nur die Format-Anweisungen unterstützt, die dort in der Tabelle aufgeführt werden.

                    P.S: Auch in Excel 2000 gibt es im <b>Speichern unter</b>-Dialog keine zusätzliche Option für das Speichern im Excel 97-Format (da das 97er und 2000er-Format identisch ist). Man muss nur dann das Format speziell angegeben, wenn Excel 95-Dateien (Version 7) gespeichert werden sollen.
                    &#10

                    Comment

                    Working...
                    X