yakup Posted April 12, 2021 Share Posted April 12, 2021 Merhabalar, **\Demos\Desktop\GridGroupingSummaryGrandTotal daki örneği baz alarak aynısını yapmaya çalışıyorum ancak problemlerim var. 1. Sorun, Grid Grup toplamını almıyor. 2.sorun Kategorilendirmeler hatalı olşuyor aynı kategoriye ait kayıtlar farklı gruplarda gösteriliyor. procedure TYeniMusteriForm.PriceDbGridColumnSummary(Column: TUniDBGridColumn; GroupFieldValue: Variant); var F: Real; begin if SameText(Column.FieldName, 'Adet') then begin if Column.AuxValue = NULL then Column.AuxValue := 0; if Column.AuxValues[1] = NULL then Column.AuxValues[1] := 0; Column.AuxValue := Column.AuxValue + Column.Field.AsInteger; Column.AuxValues[1] := Column.AuxValues[1] + Column.Field.AsInteger; end else if SameText(Column.FieldName, 'ToplamTutar') then begin if Column.AuxValue = NULL then Column.AuxValue := 0.0; if Column.AuxValues[1] = NULL then Column.AuxValues[1] := 0; F := Column.Field.AsFloat; // * Urunler.FieldByName('Adet').AsInteger; Column.AuxValue := Column.AuxValue + F; Column.AuxValues[1] := Column.AuxValues[1] + F; end; end; procedure TYeniMusteriForm.PriceDbGridColumnSummaryResult (Column: TUniDBGridColumn; GroupFieldValue: Variant; Attribs: TUniCellAttribs; var Result: string); var I: Integer; F: Real; begin if SameText(Column.FieldName, 'Adet') then begin I := Column.AuxValue; Result := Format('Toplam Adet: %d', [I]); Attribs.Font.Style := [fsBold]; Attribs.Font.Color := clGreen; end else if SameText(Column.FieldName, 'ToplamTutar') then begin F := Column.AuxValue; Result := 'Net Toplam: ' + FormatCurr('0,0.00 ', F, FmtSettings) + FmtSettings.CurrencyString; Attribs.Font.Style := [fsBold]; Attribs.Font.Color := clNavy; end; Column.AuxValue := NULL; end; procedure TYeniMusteriForm.PriceDbGridColumnSummaryTotal (Column: TUniDBGridColumn; Attribs: TUniCellAttribs; var Result: string); var I: Integer; F: Real; begin if SameText(Column.FieldName, 'Adet') then begin I := Column.AuxValues[1]; Result := Format('Net Toplam: %d', [I]); Attribs.Font.Style := [fsBold, fsItalic]; Attribs.Font.Color := clGray; end else if SameText(Column.FieldName, 'ToplamTutar') then begin F := Column.AuxValues[1]; Result := 'Net Toplam: ' + FormatCurr('0,0.00', F) + FmtSettings.CurrencyString; Attribs.Font.Style := [fsBold, fsItalic]; Attribs.Font.Color := clGray; ToplamNetTutar := F; ToplamNetTutarEdit.Text := FormatCurr('0,0.00', F); ToplamNetTutarEditChange(nil); end; end; Formdaki Grid parametreleri, object PriceDbGrid: TUniDBGrid Left = 0 Top = 0 Width = 1172 Height = 658 Hint = '' ClicksToEdit = 1 DataSource = UrunlerDS WebOptions.Paged = False Grouping.FieldName = 'Category' Grouping.FieldCaption = 'Kategori' Grouping.Enabled = True LoadMask.Message = #220'r'#252'nler Y'#252'kleniyor...' ForceFit = True Align = alClient TabOrder = 0 Summary.Enabled = True Summary.GrandTotal = True Summary.GrandTotalAlign = taBottom OnColumnSort = PriceDbGridColumnSort OnColumnSummary = PriceDbGridColumnSummary OnColumnSummaryResult = PriceDbGridColumnSummaryResult OnColumnSummaryTotal = PriceDbGridColumnSummaryTotal Columns = < item FieldName = 'Urun' Title.Caption = 'Urun' Width = 368 ReadOnly = True end item FieldName = 'Adet' Title.Caption = #220'r'#252'n Adet' Width = 73 Editor = AdetSpin ShowSummary = True end item FieldName = 'KullaniciAdet' Title.Caption = 'Kullan'#305'c'#305' Adeti' Width = 92 ReadOnly = True end item FieldName = 'BirimFiyat' Title.Caption = 'Birim Fiyat' Width = 115 ReadOnly = True end item FieldName = 'ToplamTutar' Title.Caption = 'Toplam Tutar' Width = 141 ReadOnly = True ShowSummary = True end item FieldName = 'Category' Title.Caption = 'Category' Width = 65 ReadOnly = True end> end cevaplar için şimdiden teşekkürler. Quote Link to comment Share on other sites More sharing options...
Hayri ASLAN Posted April 12, 2021 Share Posted April 12, 2021 Merhaba Ornek bir uygulama yapmaniz mumkun mu? Quote Link to comment Share on other sites More sharing options...
yakup Posted April 13, 2021 Author Share Posted April 13, 2021 6 hours ago, Hayri ASLAN said: Merhaba Ornek bir uygulama yapmaniz mumkun mu? Çok zor, database bağlantılı. Quote Link to comment Share on other sites More sharing options...
yakup Posted April 13, 2021 Author Share Posted April 13, 2021 14 hours ago, Hayri ASLAN said: Merhaba Ornek bir uygulama yapmaniz mumkun mu? Bir örnek hazırladım kategorilendirme ile ilgili öncelikle buna çözüm bulabilir miyiz SummaryTest.zip Quote Link to comment Share on other sites More sharing options...
Hayri ASLAN Posted April 14, 2021 Share Posted April 14, 2021 20 hours ago, yakup said: Bir örnek hazırladım kategorilendirme ile ilgili öncelikle buna çözüm bulabilir miyiz SummaryTest.zip 57.9 kB · 0 downloads Merhaba UniDBGrid1ColumnSort eventini bos birakmissiniz. Ornek uygulamaya bakarak onu mutlaka tanimlamaniz lazim. Ben asagidaki kodu ekleyince hemen calisti. procedure TMainForm.UniDBGrid1ColumnSort(Column: TUniDBGridColumn; Direction: Boolean); begin if SameText(Column.FieldName, 'kullanici') then dxMemData1.SortedField := 'kullanici'; end; Quote Link to comment Share on other sites More sharing options...
yakup Posted April 14, 2021 Author Share Posted April 14, 2021 Teşekkür ederim Sql kullanırken ORDER BY kullandığım için gerek yoktur diye düşündüm, peki ara toplamları nasıl çözebilirim ona örnekte hazırlayamadım Quote Link to comment Share on other sites More sharing options...
yakup Posted April 14, 2021 Author Share Posted April 14, 2021 Pardon ara toplam sorunu da bununla ilgili imiş, sıralamayı ekleyince o da düzeldi sıralamayı illaki kategoriye göre mi ayarlamamaz gerekiyor peki. Sıralamayı kategoriden başka bir şey seçince yine bozuluyor , kategorilere göre gruplasın ancak kategorinin sırasını ve kategori içerisindeki ürünlerin sırasını ben belirleyim bunu yapabilir miyim. yukarıdaki örnekte cansel kategorisi en üstte, ama ben gurkan kategorisinin en üstte olmasını istiyorum mesela Quote Link to comment Share on other sites More sharing options...
Hayri ASLAN Posted April 14, 2021 Share Posted April 14, 2021 2 hours ago, yakup said: Pardon ara toplam sorunu da bununla ilgili imiş, sıralamayı ekleyince o da düzeldi sıralamayı illaki kategoriye göre mi ayarlamamaz gerekiyor peki. Sıralamayı kategoriden başka bir şey seçince yine bozuluyor , kategorilere göre gruplasın ancak kategorinin sırasını ve kategori içerisindeki ürünlerin sırasını ben belirleyim bunu yapabilir miyim. yukarıdaki örnekte cansel kategorisi en üstte, ama ben gurkan kategorisinin en üstte olmasını istiyorum mesela Merhaba Maalesef dediginiz sey mumkun degil. Bi gruplama yapildiginda gruba gore siralanir. Quote Link to comment Share on other sites More sharing options...
yakup Posted April 14, 2021 Author Share Posted April 14, 2021 4 minutes ago, Hayri ASLAN said: Merhaba Maalesef dediginiz sey mumkun degil. Bi gruplama yapildiginda gruba gore siralanir. Anladım teşekkürler, olsa güzel olurmuş Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.