simplecs
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, cxGraphics, cxControls, cxLookAndFeels, cxLookAndFeelPainters, cxStyles, dxSkinsCore, dxSkinsDefaultPainters, dxSkinscxPCPainter, cxCustomData, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB, cxGridLevel, cxClasses, cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid, StdCtrls; type TForm1 = class(TForm) cxGrid1DBTableView1: TcxGridDBTableView; cxGrid1Level1: TcxGridLevel; cxGrid1: TcxGrid; ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; DataSource1: TDataSource; cxGrid1DBTableView1DBColumn: TcxGridDBColumn; cxGrid1DBTableView1Col1: TcxGridDBColumn; cxGrid1DBTableView1Col2: TcxGridDBColumn; cxGrid1DBTableView1Col3: TcxGridDBColumn; cxGrid1DBTableView1Col4: TcxGridDBColumn; cxGrid1DBTableView1Col5: TcxGridDBColumn; cxGrid1DBTableView1Col6: TcxGridDBColumn; cxGrid1DBTableView1Col7: TcxGridDBColumn; cxGrid1DBTableView1Col8: TcxGridDBColumn; cxGrid1DBTableView1Col9: TcxGridDBColumn; cxGrid1DBTableView1Col10: TcxGridDBColumn; cxGrid1DBTableView1Col11: TcxGridDBColumn; cxGrid1DBTableView1Col12: TcxGridDBColumn; cxGrid1DBTableView1Col13: TcxGridDBColumn; cxGrid1DBTableView1Col14: TcxGridDBColumn; cxGrid1DBTableView1Col15: TcxGridDBColumn; cxGrid1DBTableView1Col16: TcxGridDBColumn; cxGrid1DBTableView1Col17: TcxGridDBColumn; cxGrid1DBTableView1Col18: TcxGridDBColumn; cxGrid1DBTableView1Col19: TcxGridDBColumn; cxGrid1DBTableView1Col20: TcxGridDBColumn; cxGrid1DBTableView1Col21: TcxGridDBColumn; cxGrid1DBTableView1Col22: TcxGridDBColumn; cxGrid1DBTableView1Col23: TcxGridDBColumn; cxGrid1DBTableView1Col24: TcxGridDBColumn; cxGrid1DBTableView1Col25: TcxGridDBColumn; cxGrid1DBTableView1Col26: TcxGridDBColumn; cxGrid1DBTableView1Col27: TcxGridDBColumn; cxGrid1DBTableView1Col28: TcxGridDBColumn; cxGrid1DBTableView1Col29: TcxGridDBColumn; cxGrid1DBTableView1Col30: TcxGridDBColumn; Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var a:string; Form1: TForm1; function CalculateGroupAverage(ADataGroupIndex: TcxDataGroupIndex):Single ; procedure MyAfterSummary; implementation {$R *.dfm} procedure MyAfterSummary; var AChildDataGroupsCount: Integer; AChildDataGroupIndex, AParentDataGroupIndex: TcxDataGroupIndex; AChildPosition: Integer; begin AParentDataGroupIndex := -1; with form1.cxGrid1DBTableView1.DataController.Groups do begin AChildDataGroupsCount := ChildCount[AParentDataGroupIndex]; for AChildPosition := 0 to AChildDataGroupsCount - 1 do begin AChildDataGroupIndex := ChildDataGroupIndex[AParentDataGroupIndex, AChildPosition]; form1.cxGrid1DBTableView1.DataController.Summary.GroupSummaryValues[AChildPosition,0]:='Считаем среднее и умножаем его на 100: '+floattostr (CalculateGroupAverage(AChildDataGroupIndex)); end; end; end; function CalculateGroupAverage(ADataGroupIndex: TcxDataGroupIndex):Single ; var AList: TList; AGroupIndex, I,K, AIndex: Integer; S: integer ; begin AList := TList.Create; AGroupIndex:=ADataGroupIndex; form1.cxGrid1DBTableView1.DataController.Groups.LoadRecordIndexes(AList, AGroupIndex); for I := 0 to AList.Count - 1 do begin S := strtoint(form1.cxGrid1DBTableView1.DataController.Values[integer(AList[i]),1]); k:=K+S; end; Result:=100*K/(AList.Count) end; procedure TForm1.Button1Click(Sender: TObject); begin MyAfterSummary; end; end. | Всего записей: 27 | Зарегистр. 20-10-2010 | Отправлено: 21:57 20-03-2012 | Исправлено: simplecs, 22:06 20-03-2012 |
|