FIBL
Модератор: Модераторы
- Сергей Смирнов
- энтузиаст
- Сообщения: 595
- Зарегистрирован: 28.04.2005 13:23:25
- Откуда: Москва
- Контактная информация:
Что-то не получается у меня с сортировкой..
procedure Sort(DataSet: TFIBCustomDataSet; Fields: array of Integer;
Ordering: array of Boolean);
2-ой параметр - это Fields is a list of the fields to sort on.
3-ий - * Ordering is a list of booleans specifying DESC or ASC (False, True)
procedure TForm1.dbGrid1TitleClick(Column: TColumn);
begin
Sort(FIBDataSet1, [Column. Field.FieldNo], [True]);
end;
Правильно ли указан второй параметр?
Если да, то см.ниже
У меня простейшая таблица с двумя колонками ID и Name. Соотвественно создал в гриде две колонки. При щелчке на ID (1-ая колонка в списке) получаю сообщение что дебаггер не может определить ошибку. Для второй
колонки гордо выдает репорт о выходе за границы списка.
procedure Sort(DataSet: TFIBCustomDataSet; Fields: array of Integer;
Ordering: array of Boolean);
2-ой параметр - это Fields is a list of the fields to sort on.
3-ий - * Ordering is a list of booleans specifying DESC or ASC (False, True)
procedure TForm1.dbGrid1TitleClick(Column: TColumn);
begin
Sort(FIBDataSet1, [Column. Field.FieldNo], [True]);
end;
Правильно ли указан второй параметр?
Если да, то см.ниже
У меня простейшая таблица с двумя колонками ID и Name. Соотвественно создал в гриде две колонки. При щелчке на ID (1-ая колонка в списке) получаю сообщение что дебаггер не может определить ошибку. Для второй
колонки гордо выдает репорт о выходе за границы списка.
- Сергей Смирнов
- энтузиаст
- Сообщения: 595
- Зарегистрирован: 28.04.2005 13:23:25
- Откуда: Москва
- Контактная информация:
Мда... Процедура Sort реализована местами как-то странно. Вот, например, не очень понятно, к чему вот это:
v[i - Low(Fields)] :=
{VarCoalesce(}DataSet.<span style='color:red'>Fields[Fields[i]]</span>.Value{, '')};
Также я не уверен, что поддержка Variants (в частности массивов) уже полностью реализована.
Так что, как-нибудь потом я вернусь к этой процедуре, а пока используйте серверную сортировку.
v[i - Low(Fields)] :=
{VarCoalesce(}DataSet.<span style='color:red'>Fields[Fields[i]]</span>.Value{, '')};
Также я не уверен, что поддержка Variants (в частности массивов) уже полностью реализована.
Так что, как-нибудь потом я вернусь к этой процедуре, а пока используйте серверную сортировку.
