Kod: Tümünü seç
Procedure ViewOlustur(AView:TcxGridDBTableView;Tablo:TDataSet);
procedure FormatAyarla(AColumn : TcxGridColumn; format :string; NbDecimales : integer);
begin
TcxCustomCurrencyEditProperties(AColumn.Properties).DisplayFormat:= format;
TcxCustomCurrencyEditProperties(AColumn.Properties).DecimalPlaces:= NbDecimales;
end;
Const
CurClass = 'TcxCurrencyEditProperties' ;
Var
i: Integer;
Fld : TField ;
Sutun:TcxGridDBColumn;
begin
Ondalikli := ',0.00;-,0.00';
Sabit := ',0;-,0';
AView.ClearItems;
for i := 0 to Tablo.FieldCount - 1 do
begin
Sutun:=AView.CreateColumn;
Fld := Tablo.Fields.Fields[i];
Sutun.DataBinding.FieldName:=Fld.FieldName;
Sutun.Caption:=Fld.FieldName;
if Fld.DataSize>0 then Sutun.Width:=Fld.DataSize;
case Fld.DataType of
ftFloat,ftBCD:
begin
if (Sutun.PropertiesClassName = '')
then
begin
Sutun.PropertiesClassName := CurClass ;
FormatAyarla(Sutun,Ondalikli,4);
Sutun.Summary.FooterFormat:=Sabit;
TNumericField(Fld).DisplayFormat := Ondalikli ;
end;
end;
ftSmallint, ftInteger, ftWord,ftAutoInc:
begin
if (Sutun.PropertiesClassName = '')
then
begin
Sutun.PropertiesClassName := CurClass;
FormatAyarla(Sutun,Sabit, 0);
Sutun.Summary.FooterFormat:=Sabit;
TNumericField(Fld).DisplayFormat := Sabit;
end;
end;
ftCurrency:
begin
if (Sutun.PropertiesClassName = '')
then
begin
Sutun.PropertiesClassName := CurClass;
TNumericField(Fld).DisplayFormat := Ondalikli ;
End;
end;
ftDate,ftDateTime:
begin
if (Sutun.PropertiesClassName = '')
then
begin
Sutun.PropertiesClassName :='TcxDateEditProperties';
Sutun.DateTimeGrouping:=dtgByMonth;
end;
end;
end;
end;
AView.ApplyBestFit;
end;