Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
ВнизГде ошибка? Найти похожие ветки
← →
SveTTT (2007-11-04 01:24) [0]Использую EHlib для BDE.
Сортирую по заголовкуs := "";
if DMFrm.NalichieQuery.Active then begin
s := DMFrm.NalichieQuery.SQL.Text;
delete(s,pos("ORDER BY",s),length(s));
s := s+ "ORDER BY " +Column.FieldName;
DMFrm.NalichieQuery.Close;
DMFrm.NalichieQuery.SQL.Clear;
DMFrm.NalichieQuery.SQL.Add(s);
// DMFrm.NalichieQuery.SQL.Add("Order by "+Column.FieldName);
DMFrm.NalichieQuery.Open;
Ругается Invalid use of ... ORDER
И переходит в EhlibBDE.pas
наprocedure TSQLDatasetFeaturesEh.ApplySorting(Sender: TObject; DataSet: TDataSet; IsReopen: Boolean);
begin
if Sender is TCustomDBGridEh then
ApplySortingForSQLBasedDataSet(TCustomDBGridEh(Sender), DataSet, SortUsingFieldName, IsReopen);
end;
Подскажите, где моя ошибка!
← →
ASoft (2007-11-04 08:25) [1]>SveTTT (04.11.07 01:24)
чему = ..SQL.Text;
и чему = s после манипуляций с delete и конкатенацией?
чему = ..NalichieQuery.SQL.Text в случае ..add(s), ведь в начале s=NalichieQuery.SQL.Text, короче, просмотрите внимательно структуру и синтаксис запроса, может, в нем ошибка.
← →
SveTTT (2007-11-04 10:01) [2]to Asoft
Сейчас поясню. Синтаксис рабочий, структура такова - что после выполнения сложного объеденительного запроса c подсчетами результатов, пользователь может сортировать колонки с итоговыми результатми.s := "";
if DMFrm.NalichieQuery.Active then begin
s := DMFrm.NalichieQuery.SQL.Text;
delete(s,pos("ORDER BY",s),length(s));
s := s+ "ORDER BY " +Column.FieldName;
DMFrm.NalichieQuery.Close;
DMFrm.NalichieQuery.SQL.Clear;
DMFrm.NalichieQuery.SQL.Add(s);
DMFrm.NalichieQuery.Open;
- это позволяет сортировать по заголовку от A-Я.
Я подсоеденила EhlibBDE.pas и в свойствах OptionsEh включила dghAutoSortMarking и dghMultiSortMarking- чтобы сортировка была А-я / Я-а. Это было сделано строго по help Ehlib.
Результат - процесс сортировки запускается, в при перестроении Grid"а ругается на ORDER. Если отключить dghAutoSortMarking и dghMultiSortMarking то сортировка работает, но только А-я.
Надеюсь, что пояснения блондинки - логичны :).
← →
ASoft (2007-11-04 12:27) [3]вы так и не сказали, чему равно s после присвоения s := s+ "ORDER BY " +Column.FieldName;
Поставьте точку останова после этой строки и посмотрите (наведите мышью на s)
PS: я исхожу из ..Ругается Invalid use of ... ORDER может s, все же, не корректна
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.11.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.042 c