database text dosyasına gonderme

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

database text dosyasına gonderme

Mesaj gönderen rapsodim »

tüm database dekı bılgılerı nasıl text metıne aktarabılrıım
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Database olarak düşünmek bence yanlış olur olaya Table olarak bakalım.

Ve soruyu şu şekilde düşünelim bir table daki verileri TXT dosyası olarak nasıl kaytedebilirim?

Cevap.

Öncelikle Formuna 1 adet listbox koy ve bir adet Table bir adette button koy.
Butonun OnClick evetine

Kod: Tümünü seç

procedure TCariHesapAcilisIslemFrm.Button5Click(Sender: TObject);
var
     Sayac : Integer;
     Satir : String;
begin
     Sayac := 0;
     Satir := '';
     ListBox1.clear;
     IbDataSet1.First;
     While not IbDataSet1.Eof do
     begin
          Satir := '';
          For Sayac := 0 to IbDataSet1.Fields.Count -1 do
          begin
                Satir := Satir + IbDataSet1.Fields[Sayac].Text + ' ';
          End;
          IbDataSet1.Next;
          ListBox1.Items.Add(Satir);
     End;
     ListBox1.Items.SaveToFile('c:\Husonet.Txt');
end;
Bunu RichEdit veya memo gibi objelerdede kullanabilirsin.

Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Düşündümde 1 alternatifinde Dosya oluşturarak bu işi halledebilirsin. Bununda kodlamasını ve testini yaptım yapman gereken IBDataset'leri kendi dataset ine göre değiştirmen :wink:

Kod: Tümünü seç

procedure TCariHesapAcilisIslemFrm.Button5Click(Sender: TObject);
var
     TextDosya:TextFile;
     Sayac : Integer;
     Satir : String;
begin
     Sayac := 0;
     Satir := '';
     AssignFile(TextDosya,'C:\HUSONET.TXT');
     ReWrite(TextDosya);
     IbDataSet1.First;
     While not IbDataSet1.Eof do
     begin
          Satir := '';
          For Sayac := 0 to IbDataSet1.Fields.Count -1 do
          begin
                Satir := Satir + IbDataSet1.Fields[Sayac].Text + ' ';
          End;
          IbDataSet1.Next;
          WriteLn(TextDosya, Satir);
     End;
     CloseFile(TextDosya);
end;
Vermiş olduğum iki yöntemide test ettim çalışıyor :lol:

Kolay Gelsin....

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

delphi 4.0 var ve IbDataSet1 bileşeni bulunmuyor.delphi 4.0 kullanıyorum.konu ilgili ne yapabilirim.teşekkür ediyorum.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

:)
IbDataset benim FireBird Tablolarıma bağlantı kurduğum bileşen sen tablolarına bağlanırken hangi objeyi kullanıyorsan onu yaz. :wink: Table1 ve Query1 vb...


Kolay Gelsin...

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

[Hint] dfgh.pas(36): Value assigned to 'Sayac' never used şeklinde hata veriyor.
Kullanıcı avatarı
husonet
Admin
Mesajlar: 2962
Kayıt: 25 Haz 2003 02:14
Konum: İstanbul
İletişim:

Mesaj gönderen husonet »

Yazdığınız kodu yazabilirmisiniz?

Gazete manşetleri
* DİKKAT :Lütfen forum kurallarını okuyalım ve uyalım...!
* Warez,crack vs. paylaşımı kesinlikle yasaktır.
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

calıstırıyorum ve butona bastıgımda table kayıtları uzerınde bastan sona kadar dolasıyor ama kayıt yapılacak txt dosyası acılmıyor ve az once yazdıgım hata arka planda gorunuyor.

procedure TForm1.Button1Click(Sender: TObject);
var
TextDosya:TextFile;
Sayac : Integer;
Satir : String;
begin
Sayac := 0;
Satir := '';
AssignFile(TextDosya,'C:\HUSONET.TXT');
ReWrite(TextDosya);
table1.First;
While not table1.Eof do
begin
Satir := '';
For Sayac := 0 to table1.Fields.Count -1 do
begin
Satir := Satir + table1.Fields[Sayac].Text + ' ';
End;
table1.Next;
WriteLn(TextDosya, Satir);
End;
CloseFile(TextDosya);
end;
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

Sayac hic bir yerde icindeki deger kullanılmadıgı icin boyle bir ipucu veriyor
hint ler hata degil ipucu demektir
koda baktım programın calıstıgı yere doyayı olusturması lazım
butona bastıktan sonra notepad ile dosyasyı acıp bakın kayıtları yazması laım
yoksa tablonuzun ici bos demektir
ÜŞENME,ERTELEME,VAZGEÇME
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

form bozukluğu

Mesaj gönderen rapsodim »

bılgılerı tabledan aldıgı ıcın her alan arası acık bunu nasıl bırlestırebılırım.
13dk 9951 20040430 042131 şeklinde geliyor
13dk995120040430042131 olmasını nasıl yapabılırım?
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

Satir := Satir + table1.Fields[Sayac].AsString;
seklinde yaparsan olur
ÜŞENME,ERTELEME,VAZGEÇME
rapsodim
Üye
Mesajlar: 147
Kayıt: 15 Eki 2003 03:52

Mesaj gönderen rapsodim »

yardımlarınız ıcın teşekkür ederim.
koko134
Üye
Mesajlar: 16
Kayıt: 17 Ağu 2004 04:15
Konum: ist

Mesaj gönderen koko134 »

peki assign ( ,'directory') yazmak yerine ben mesela commandline da projemi yazıp istediğim bi dosya giricem ve program o dosyaya otomatik olarak atıcak tabloyu. Bunun için assign a hangi parametreyi girmeliyim??

bu arada button kullanmadım formun onshow ozelligini kullandım application da kendini otomatik kapatıo run yapınca istedigim dosyada gorucem datayı ..
tskrlr...
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

:ara ParamCount ve ParamStr

sonuç
ÜŞENME,ERTELEME,VAZGEÇME
koko134
Üye
Mesajlar: 16
Kayıt: 17 Ağu 2004 04:15
Konum: ist

Mesaj gönderen koko134 »

assisn(F,Paramstr(1)) sekliyle kullandım tesekkurler
Cevapla