• 24-12-2013, 08:32:55
    #1
    Merhaba arkadaşlar delphi ile küçük çaplı bir programcık yazıyorum. Hemen hemen herşeyi bitirdim yalnızca bir olayım kaldı. O da;

    dbgrid de listelediğim kişinin hareketleri var. Bu hareketler listesinde "durum" sütunundaki "ödenmedi" yazılı kayıtların "tutar" sütunundaki ücretleri toplayıp label1.caption a yazdırmak istiyorum.

    Yardımcı olabilecek arkadaşlara şimdiden teşekkür ederim.
  • 24-12-2013, 09:17:06
    #2
    yani delphi de nasıl olur bilmiyorum ama mantık olarak dbgid e dataları listelemek için bir methodun vardır oradan kayıtları çektiğin zaman elinde bir list, datasource tarzında birşeyler olur oradan istediğin toplamları alabilirsin diye tahmin ediyorum. kodu gönderirsen burada gridi doldurduğun methodu daha güzel yardımcı olurum
  • 24-12-2013, 10:55:40
    #3
    Bütün kaynak kodunu ekliyorum. Projemde adoquery ile bağlantımı sağladım bu arada. Eğer kod tek başına yardımcı olmazsa projenin dosyalarınıda iletebilirim.

    unit Unit2;
    
    interface
    
    uses
      Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
      Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Data.Win.ADODB, Vcl.ExtCtrls,
      Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids, Vcl.StdCtrls, Vcl.Menus, Vcl.ComCtrls,
      frxClass, frxDBSet, frxExportPDF;
    
    type
      TForm2 = class(TForm)
        DBGrid1: TDBGrid;
        DBGrid2: TDBGrid;
        DBNavigator1: TDBNavigator;
        DBNavigator2: TDBNavigator;
        baglanti: TADOConnection;
        musteri_srg: TADOQuery;
        servis_srg: TADOQuery;
        musteri_kyn: TDataSource;
        servis_kyn: TDataSource;
        ALAN: TComboBox;
        SORGU: TEdit;
        JOKERKARAKTER: TComboBox;
        ControlBar1: TControlBar;
        StaticText1: TStaticText;
        menu: TMainMenu;
        Dosya1: TMenuItem;
        Yardm1: TMenuItem;
        Hakknda1: TMenuItem;
        k1: TMenuItem;
        RaporAl1: TMenuItem;
        StaticText2: TStaticText;
        StaticText3: TStaticText;
        frxReport1: TfrxReport;
        frxDBDataset1: TfrxDBDataset;
        Button1: TButton;
        frxPDFExport1: TfrxPDFExport;
        StaticText4: TStaticText;
        procedure FormShow(Sender: TObject);
        procedure SORGUChange(Sender: TObject);
        procedure k1Click(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure RaporAl1Click(Sender: TObject);
        procedure Hakknda1Click(Sender: TObject);
        procedure FormClose(Sender: TObject; var Action: TCloseAction);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    
    var
      Form2: TForm2;
    
    implementation
    
    {$R *.dfm}
    
    uses Unit1;
    
    procedure TForm2.Button1Click(Sender: TObject);
    begin
    frxreport1.ShowReport();
    end;
    
    procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
    var
    a:integer;
    begin
    a:=application.MessageBox('Çıkmak istediğinizden emin misiniz?','Çıkış',mb_iconquestion+mb_yesno);
    if a=idyes then
    else
    action:=canone;
    end;
    
    procedure TForm2.FormShow(Sender: TObject);
    begin
    musteri_srg.Open;
    end;
    
    procedure TForm2.Hakknda1Click(Sender: TObject);
    begin
    form1.Show;
    end;
    
    procedure TForm2.k1Click(Sender: TObject);
    begin
    form2.Close;
    end;
    
    procedure TForm2.RaporAl1Click(Sender: TObject);
    begin
    frxreport1.ShowReport();
    end;
    
    procedure TForm2.SORGUChange(Sender: TObject);
    
    VAR
    JOKER:String;
    begin
    
     WITH musteri_srg.SQL DO
     BEGIN
       musteri_srg.Close;
       Clear;
    
       case JOKERKARAKTER.ItemIndex of
       0: JOKER:='LIKE "'+SORGU.Text+'%"'; // ile başlayanlar
       1: JOKER:='LIKE "%'+SORGU.Text+'"'; // ile bitenler
       2: JOKER:='LIKE "%'+SORGU.Text+'%"'; // içinde geçenler
       end;
    
       case ALAN.ItemIndex of
       0: Text:='SELECT * FROM musteriler WHERE ADI_SOYADI '+JOKER;
       end;
    
       musteri_srg.Open;
    
     END;
    
    end;
    
    end.
  • 24-12-2013, 11:07:50
    #4
    case ALAN.ItemIndex of
    0: Text:='SELECT * FROM musteriler WHERE ADI_SOYADI '+JOKER;
    end;

    gözüme şuan takılan şey ADI_SOYADI =' olacak. = unutmuşsun hocam. önemli mi bilmiyorum ancak inceleyemedim.

    //pardon like kullanmışsın birleştirmişsin şimdi farkettim