Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
FastReport detail tablo gösterim sorunu
#1
Merhaba üstatlar,

SqLite  veritabanı ve Firedac bileşenleri kullanarak basit bir Cv programı kodluyorum. Alttaki ekran görüntüsündeki çerçeveli alan fastreport DetailData alanında gösterilen detail tablo verileri. Bu alanı okla gösterilen sol sütunda band kullanmadan bir Memo içinde gösterebilmem mümkün mü? Bir Memo alan kullandığımda son kayıt geliyor sadece.

cvekran.png
Cevapla
#2
Selamlar,
Standart bir memo kullanacaksanız, preview işeminden önce, ilgili memoya, kayıtı pas edebilirsiniz.
Yazılımcı, kahveyi koda çeviren bir organizmadır.
Cevapla
#3
(11-07-2023, Saat: 17:22)shooterman Adlı Kullanıcıdan Alıntı: Selamlar,
Standart bir memo kullanacaksanız, preview işeminden önce, ilgili memoya, kayıtı pas edebilirsiniz.

DetailData kullanmadığınızda Memo içinde tek bir kayıt görünüyor hocam. 4 adet kayıt var hepsini göstermem gerekiyor.
Cevapla
#4
(11-07-2023, Saat: 13:58)Frrst Adlı Kullanıcıdan Alıntı: Merhaba üstatlar,

SqLite  veritabanı ve Firedac bileşenleri kullanarak basit bir Cv programı kodluyorum. Alttaki ekran görüntüsündeki çerçeveli alan fastreport DetailData alanında gösterilen detail tablo verileri. Bu alanı okla gösterilen sol sütunda band kullanmadan bir Memo içinde gösterebilmem mümkün mü? Bir Memo alan kullandığımda son kayıt geliyor sadece.

cvekran.png

Merhabalar,

- SubReport kullanabilirsiniz.
- SQL ile verilerinizi birleştirip yazdırabilirsiniz.
- Memo içerisine 1. alanı, alt satıra geçip 2. alanı, alt satıra geçip 3. alanı ekleyebilirsiniz.


Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#5
(13-07-2023, Saat: 00:15)hi_selamlar Adlı Kullanıcıdan Alıntı: - SubReport kullanabilirsiniz.
- SQL ile verilerinizi birleştirip yazdırabilirsiniz.
- Memo içerisine 1. alanı, alt satıra geçip 2. alanı, alt satıra geçip 3. alanı ekleyebilirsiniz.
Cevap için teşekkürler sayın hocam.
Mevcut bilgimle tek tek uğraştım ama yapamadım :-(
Sql ile kayıt sayısını bulup ona göre detay tablodaki verileri Memo için nasıl yazdırabileceğim konusunda yardımcı olabilir misiniz? Sanırım en kestirme yol bu gibi ama emin değilim.


Şöyle yapmaya çalıştım ama "Object [ID] is not found." hatası aldım.

var
 sorgu: string;
begin
   sorgu := 'SELECT seviye FROM yetenek';
   FDQuery1.SQL.Clear;
   FDQuery1.SQL.Add(sorgu);
   FDQuery1.Open;
   while not FDQuery1.Eof do
   begin
     TfrxMemoView(frxReport1.FindObject('Memo1')).Lines.Add(FDQuery1.FieldByName('seviye').AsString);
     FDQuery1.Next;
   end;
Cevapla
#6
(13-07-2023, Saat: 01:25)Frrst Adlı Kullanıcıdan Alıntı:
(13-07-2023, Saat: 00:15)hi_selamlar Adlı Kullanıcıdan Alıntı: - SubReport kullanabilirsiniz.
- SQL ile verilerinizi birleştirip yazdırabilirsiniz.
- Memo içerisine 1. alanı, alt satıra geçip 2. alanı, alt satıra geçip 3. alanı ekleyebilirsiniz.
Cevap için teşekkürler sayın hocam.
Mevcut bilgimle tek tek uğraştım ama yapamadım :-(
Sql ile kayıt sayısını bulup ona göre detay tablodaki verileri Memo için nasıl yazdırabileceğim konusunda yardımcı olabilir misiniz? Sanırım en kestirme yol bu gibi ama emin değilim.


Şöyle yapmaya çalıştım ama "Object [ID] is not found." hatası aldım.

var
 sorgu: string;
begin
   sorgu := 'SELECT seviye FROM yetenek';
   FDQuery1.SQL.Clear;
   FDQuery1.SQL.Add(sorgu);
   FDQuery1.Open;
   while not FDQuery1.Eof do
   begin
     TfrxMemoView(frxReport1.FindObject('Memo1')).Lines.Add(FDQuery1.FieldByName('seviye').AsString);
     FDQuery1.Next;
   end;

Merhabalar,

Öncelikle sorgunuzun döngüsünü bitirip en son aşamada sonucu göndermeniz gerekli.


procedure TForm1.Button1Click(Sender: TObject);
var
 sorgu: string;
begin
    sorgu:='• Delphi 7'+#13+#10+
           '• Delphi XE'+#13+#10+
           '• Delphi XE3'+#13+#10+
           '• Delphi XE5'+#13+#10+
           '• Delphi XE7'+#13+#10+
           '• Delphi XE11'+#13+#10+
           '* DelphiCan.com';

    TfrxMemoView(frxReport1.FindObject('Memo1')).Memo.Text:=sorgu;

    frxReport1.ShowReport(True);
end;

   

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#7
Aslında tam olarak yapmak istediğim de bu idi. cv lerde olduğu şekilde madde imleri şeklinde.

Dediğiniz gibi Memo1 içinde kayıtlar harika şekilde gösteriliyor. Ama ben veritabanındaki verileri buna uyarlayamadım hocam. Tablo adı "yetenek" alan adı "seviye". Bahsettiğiniz şekilde veritabanındaki verileri bu şekilde çekmeyi başarırsam harika olacak. Eğer yapamazsam sağ taraftaki alanda DetadilData içinde göstereceğim.
Cevapla
#8
(13-07-2023, Saat: 09:48)Frrst Adlı Kullanıcıdan Alıntı: Aslında tam olarak yapmak istediğim de bu idi.  cv lerde olduğu şekilde madde imleri şeklinde.

Dediğiniz gibi Memo1 içinde kayıtlar harika şekilde gösteriliyor. Ama ben veritabanındaki verileri buna uyarlayamadım hocam. Tablo adı "yetenek" alan adı "seviye". Bahsettiğiniz şekilde veritabanındaki verileri bu şekilde çekmeyi başarırsam harika olacak. Eğer yapamazsam sağ taraftaki alanda DetadilData içinde göstereceğim.

Merhabalar,

Hangi DB kullandığınızı belirtmemişsiniz.

SQL komutlarını araştırabilirsiniz.

LIST
STRING_AGG
CONCAT

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla
#9
İlk mesajda belirttiğim için gerek olmaz diye düşünmüştüm hocam. Sqlite ile birlikte firedac bileşenlerini kullanıyorum. Tablo adı yetenek ve alan adı seviye şeklinde.

Söylediğimiz yöntemleri araştıracağım ama benim düzeyimle üstesinden gelmek zor olacak.

------ Ekleme ----

Hocam şurada bulduğum kod ile ilk sütunu gösterebildim. Kodlarda hata var mı değerlendirirseniz sevinirim.

var
 names: TStringList;
 i: Integer;
 currentField: TField;
 currentLine: string;
begin
 With DataM do
 begin
   if not FDQuery1.IsEmpty then
   begin
     FDQuery1.First;
     names := TStringList.Create;
     try
       FDQuery1.GetFieldNames(names);
       while not FDQuery1.Eof do
       begin
         currentLine := '';
         // for i := 0 to names.Count - 1 do
         for i := 1 to names.Count - 3 do
         begin
           currentField := FDQuery1.FieldByName(names[i]);
           currentLine := '• ' + currentLine + ' ' + currentField.AsString;
         end;
         TfrxMemoView(frxReport1.FindObject('Memo1')).Lines.Add(currentLine).MaxValue;
         FDQuery1.Next;
       end;
     finally
       names.Free;
     end;
     frxReport1.ShowReport();
   end;
 end;
end;

Başarı ile ilgili sütunu da aynı şekilde kodları tekrar değiştirerek başlangıç ise: * ... uzman ise: ***** gibi bir görünümle göstermek istiyorum.
Cevapla
#10
(13-07-2023, Saat: 14:54)Frrst Adlı Kullanıcıdan Alıntı: İlk mesajda belirttiğim için gerek olmaz diye düşünmüştüm hocam. Sqlite ile birlikte firedac bileşenlerini kullanıyorum. Tablo adı yetenek ve alan adı seviye şeklinde.

Söylediğimiz yöntemleri araştıracağım ama benim düzeyimle üstesinden gelmek zor olacak.

------ Ekleme ----

Hocam şurada bulduğum kod ile ilk sütunu gösterebildim. Kodlarda hata var mı değerlendirirseniz sevinirim.

var
 names: TStringList;
 i: Integer;
 currentField: TField;
 currentLine: string;
begin
 With DataM do
 begin
   if not FDQuery1.IsEmpty then
   begin
     FDQuery1.First;
     names := TStringList.Create;
     try
       FDQuery1.GetFieldNames(names);
       while not FDQuery1.Eof do
       begin
         currentLine := '';
         // for i := 0 to names.Count - 1 do
         for i := 1 to names.Count - 3 do
         begin
           currentField := FDQuery1.FieldByName(names[i]);
           currentLine := '• ' + currentLine + ' ' + currentField.AsString;
         end;
         TfrxMemoView(frxReport1.FindObject('Memo1')).Lines.Add(currentLine).MaxValue;
         FDQuery1.Next;
       end;
     finally
       names.Free;
     end;
     frxReport1.ShowReport();
   end;
 end;
end;

Başarı ile ilgili sütunu da aynı şekilde kodları tekrar değiştirerek başlangıç ise: * ... uzman ise: ***** gibi bir görünümle göstermek istiyorum.

Merhabalar,

Dosyayı inceleyin lüfen.

.zip   delphican.zip (Dosya Boyutu: 8,59 KB / İndirme Sayısı: 5)

Kolay gelsin.
Amaç, bilginin de/aklın da zekat'ını vermek.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Fastreport İçindekiler Sayfası Oluşturma [ÇÖZÜLDÜ] bydelphi 1 255 18-03-2024, Saat: 12:11
Son Yorum: bydelphi
  Fastreport Masterdata Column mukoly 7 611 23-02-2024, Saat: 19:54
Son Yorum: hi_selamlar
Bug SQL e Bağlantıda Tablo Adını bir değişkene atamak barissagir 3 468 10-02-2024, Saat: 16:11
Son Yorum: barissagir
  Fastreport Barkod Tasarımı delphiX14 7 493 31-01-2024, Saat: 20:10
Son Yorum: mcuyan
  FastReport etiketi yan yana yazdırma ( Kapandı ) cinarbil 5 452 12-01-2024, Saat: 17:03
Son Yorum: cinarbil



Konuyu Okuyanlar: 1 Ziyaretçi