AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DBGrid -> CSV

Ein Thema von Delphi3 · begonnen am 9. Feb 2010 · letzter Beitrag vom 28. Aug 2014
Antwort Antwort
Seite 1 von 3  1 23      
Delphi3

Registriert seit: 6. Feb 2010
14 Beiträge
 
Delphi 3 Professional
 
#1

DBGrid -> CSV

  Alt 9. Feb 2010, 19:51
Datenbank: belliebige • Zugriff über: ODBC
Moin Moin,


ich stehe malwieder total auf den schlauch
kann mir einer mal kurz sagen wie ich eine text datei erstelle und die beschreib

ich habe es mit FileWrite probiert
nur schon beim Fileopen habe ich immer -1 und die Datei wird nicht erstellt

ich will aus einer Query bzw DBGrid eine CSV datei erstellen

nun habe ich schon eine Funktion dafür erstellt

Delphi-Quellcode:
          i := 1;
          zeile := mQuery.Fields[0].asString;
          mQuery.First;
          while not mQuery.Eof do begin
            Zeile := zeile + '; ' + mQuery.Fields[i].asString;

            mQuery.Next;
            inc(i);
          end;
und selbs das läuft noch nicht
wie würdet ihr das machen?
sollte einfach nur eine super einfache lösung sein
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: DBGrid -> CSV

  Alt 9. Feb 2010, 19:54
Delphi-Quellcode:
Nicht eher so:
          mQuery.First;
          while not mQuery.Eof do begin
          begin
             zeile := '';
             for i := 0 to mQuery.Fields.Count -1 do
             begin
                 Zeile := zeile + '; ' + mQuery.Fields[i].asString;
             end;
             mQuery.Next;
             ...//Ausgabe Zeile
          end;
?
Markus Kinzler
  Mit Zitat antworten Zitat
Delphi3

Registriert seit: 6. Feb 2010
14 Beiträge
 
Delphi 3 Professional
 
#3

Re: DBGrid -> CSV

  Alt 9. Feb 2010, 20:44
sieht super aus

nun such ich noch ein kleines beispiel wie ich txt datein erstelle und und fülle
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: DBGrid -> CSV

  Alt 9. Feb 2010, 20:55
Z.B.

Code vor dem obigen Block:

Delphi-Quellcode:
var
  sl: TStrings;
...
begin
  try
    sl := TStringList.Create;
    ...
In der Schleife (Ausgabe):

Zitat:
sl.Add( zeile);
Nach der Schleife:

Delphi-Quellcode:
    sl.SaveToFile( <Dateiname>);
  finally
    sl.Free;
  end;
Markus Kinzler
  Mit Zitat antworten Zitat
Delphi3

Registriert seit: 6. Feb 2010
14 Beiträge
 
Delphi 3 Professional
 
#5

Re: DBGrid -> CSV

  Alt 10. Feb 2010, 17:21
hmm

nun weiss ich wo das problem ist

und zwar

                 Zeile := zeile + '; ' + mQuery.Fields[i].asString; die Komponente die ich einsetze kennt halt .Fields nicht
setze zur zeit die mODBC ein

ich weiss die tQuery kanns auch

gibs sonst eine alternative für mQuery.Fields[i] ?
  Mit Zitat antworten Zitat
Delphi3

Registriert seit: 6. Feb 2010
14 Beiträge
 
Delphi 3 Professional
 
#6

Re: DBGrid -> CSV

  Alt 10. Feb 2010, 17:33
hmm

wollte nun eine neue version von der mODBC installieren

naja und genau an der stelle harkt es
er erwartet immer hinter den Fields immer [] statt .

hmmm ist zum mäusemelken
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#7

Re: DBGrid -> CSV

  Alt 10. Feb 2010, 17:34
Entschuldige aber mODBC kennt FIELDS!

Meinen wir das gleiche?
Zitat:
Version: 1.09a last updated 09 Sep 2003
Platform: D3, D4, D5, D6, D7, CB3 & ODBC 3.0
Sources: available
Autor: Konstantin Savelyev
Edit:
klar
Delphi-Quellcode:
Fields[i].Fieldname
Fields[i].asstring
Du mußt ja das Feld aussuchen um das es geht.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Delphi3

Registriert seit: 6. Feb 2010
14 Beiträge
 
Delphi 3 Professional
 
#8

Re: DBGrid -> CSV

  Alt 10. Feb 2010, 17:43
naja

ja

ich nehme aber eine andere version

http://www.tedsoft.de/mOBDC/download...2002-09-19.zip
  Mit Zitat antworten Zitat
Delphi3

Registriert seit: 6. Feb 2010
14 Beiträge
 
Delphi 3 Professional
 
#9

Re: DBGrid -> CSV

  Alt 10. Feb 2010, 17:50
verdammt

quark
ich bin dumm
das ist garnicht das problem

und zwar das problem ist leider in einer anderen zeile

 mQuery.Fields.Count -1 naja da muss ich wissen wieviele spalten es gibt

hmm dumm
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#10

Re: DBGrid -> CSV

  Alt 10. Feb 2010, 17:56
Ich hab Dir was herauskopiert, ist zwar Futter für ein Stringgrid aber das Prinzip ist das gleiche:

Delphi-Quellcode:
var
  tl : tStringlist;
....
  tl:=tStringlist.Create;
  ....
  if not DM_1.mQuery1.eof then begin
    for i:=0 to DM_1.mQuery1.fieldcount-1 do
      dummy:=dummy+DM_1.mQuery1.fields[i].fieldname+#9;
    delete(dummy,length(dummy),1); {trailing TAB to delete}
    tl.add(dummy);

    repeat
      dummy:='';
      for i:=0 to DM_1.mQuery1.fieldcount-1 do
        dummy:=dummy+DM_1.mQuery1.fields[i].asstring+#9;
      delete(dummy,length(dummy),1); {trailing TAB to delete}
      tl.add(dummy);
      DM_1.mQuery1.next;
    until DM_1.mQuery1.eof;
  end
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz