dbgrid titleclick de önceki seçilmiş columun index ini bulma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
conari
Üye
Mesajlar: 2102
Kayıt: 27 Nis 2006 03:10
Konum: İstanbul & Gebze Karışık

dbgrid titleclick de önceki seçilmiş columun index ini bulma

Mesaj gönderen conari »

Önceki İndex numarasına göre ASC veya DESC ekleyeceğim yalnız bir türlü cıkamadım.yardım alamabilirmiyim arkadaşlar..

Kod: Tümünü seç

procedure TSform.ALLsipDBGridTitleClick(Column: TColumn);
var siralani:string;
{$J+}
const PreviousColumnIndex : integer = 1 ;
{$J-}
begin
ALLsipDBGrid.Columns[0].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[1].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[2].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[3].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[4].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[5].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[6].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[7].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[8].Title.Color:=$00DFFFFD;
ALLsipDBGrid.Columns[9].Title.Color:=$00DFFFFD;
if (ALLsipdbgrid.DataSource.DataSet is Tquery) and ( not
column.Field.IsBlob) then
with Tquery(ALLsipdbgrid.DataSource.DataSet) do
begin
try
Column.Title.Color:=clgreen;
except
end;
end;
begin
siralani:=Column.FieldName;
if KulCmb.Text<>'Tüm Kullanıcılar' then
SiralaQuery.SQL.text:='SELECT FISNO,STHAR_TARIH,STHAR_TESTAR,TBLSTSABIT.STOK_ADI,EKALAN,STHAR_GCMIK,STHAR_NF,Toplam_Tutar=(STHAR_GCMIK * STHAR_NF),TBLKULLANP.ISIM_SOYAD,TBLCASABIT.CARI_ISIM FROM TBLSIPATRA '+
'INNER JOIN TBLCASABIT ON (TBLSIPATRA.STHAR_CARIKOD = TBLCASABIT.CARI_KOD)'+
'RIGHT JOIN TBLSIPAmas ON (TBLSIPAMAS.FATIRS_NO = TBLSIPATRA.FISNO)'+
'INNER JOIN TBLSTSABIT ON (TBLSIPATRA.STOK_KODU=TBLSTSABIT.STOK_KODU)'+
'LEFT JOIN TBLTEKLIFMAS ON (TBLSIPATRA.AMBAR_KABULNO=TBLTEKLIFMAS.FATIRS_NO)'+
'LEFT JOIN TBLKULLANP ON (TBLTEKLIFMAS.I_YEDEK8=TBLKULLANP.KULLANICI_NO)'+
'WHERE sthar_tarih >''2005-12-31'' AND TBLSIPAMAS.TIPI<>3 and fisno like''%'+SipEdit.Text+'%'' AND  STHAR_FTIRSIP=7 ' +
'and ISIM_SOYAD='''+KulCmb.Text+''' and sthar_tarih between '''+MaskEdit1.Text+''' and '''+MaskEdit2.Text+''''+
' order by '
else
SiralaQuery.SQL.text:='SELECT FISNO,STHAR_TARIH,STHAR_TESTAR,TBLSTSABIT.STOK_ADI,EKALAN,STHAR_GCMIK,STHAR_NF,Toplam_Tutar=(STHAR_GCMIK * STHAR_NF),TBLKULLANP.ISIM_SOYAD,TBLCASABIT.CARI_ISIM FROM TBLSIPATRA '+
'INNER JOIN TBLCASABIT ON (TBLSIPATRA.STHAR_CARIKOD = TBLCASABIT.CARI_KOD)'+
'RIGHT JOIN TBLSIPAmas ON (TBLSIPAMAS.FATIRS_NO = TBLSIPATRA.FISNO)'+
'INNER JOIN TBLSTSABIT ON (TBLSIPATRA.STOK_KODU=TBLSTSABIT.STOK_KODU)'+
'LEFT JOIN TBLTEKLIFMAS ON (TBLSIPATRA.AMBAR_KABULNO=TBLTEKLIFMAS.FATIRS_NO)'+
'LEFT JOIN TBLKULLANP ON (TBLTEKLIFMAS.I_YEDEK8=TBLKULLANP.KULLANICI_NO)'+
'WHERE sthar_tarih >''2005-12-31'' AND TBLSIPAMAS.TIPI<>3 and fisno like''%'+SipEdit.Text+'%'' AND  STHAR_FTIRSIP=7 ' +
'and sthar_tarih between '''+MaskEdit1.Text+''' and '''+MaskEdit2.Text+''''+
' order by ';

SiralaQuery.SQL.add( siralani);
If ALLsipDBGrid.Columns[Column.Index]=ALLsipDBGrid.Columns[PreviousColumnIndex] then
SiralaQuery.sql.Add('ASC')
else
SiralaQuery.sql.Add('DESC');
ALLsipQuery.Active:=False;
ALLsipQuery.SQL.Text:=SiralaQuery.SQL.Text;
ALLsipQuery.Active:=True;

end;
end;
Cevapla