![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сортировка ADODataSet [MSSQL]
Ega23 © (2007-03-13 16:35:00)Есть ADODataSet с открытым набором данных.
Как его сортировать по разным столбцам на клиенте, не переоткрывая? IndexDefs добавлять?
Kostafey (2007-04-17 17:44:00) [1]Подскажите, пожалуйста, существует ли способ отобразить
изменения значений связанных полей до выполнения Post набора данных?
Если вызвать ADODataSet1.Resync([])
от изменения вообще не будут внесены.
Kostafey (2007-04-17 17:04:00) [2]
> Пишет: Undeclared identifier: 'adResyncAll'.
adoInt
Ура ! Все работает !
Kostafey (2007-04-17 16:57:00) [3]Гм.
ADODataSet1.Properties['Update Resync'].Value := adResyncAll;
Пишет: Undeclared identifier: 'adResyncAll'.
В справке adResyncAll вообще не находит.
sniknik (2007-04-17 16:49:00) [4]> А как 'Update Resync' использовать ?
также как и другие, это свойство которое нужно установить "по вкусу", как тебе надо.
статью читал?
sniknik (2007-04-17 16:48:00) [5]> Так правильно?
нет, должно само. и потом ты перезапрашиваешь весь рекордсет, а ресинк команда только одну запись.
Kostafey (2007-04-17 16:47:00) [6]
> это все? а где 'Update Resync'? по умолчанию только автоинкремент
> обновляется.
А как 'Update Resync' использовать ?
Kostafey (2007-04-17 16:42:00) [7]> [76] Kostafey © (17.04.07 16:33)
О! Получилось. Написал:
procedure TForm1.ADODataSet1AfterPost(DataSet: TDataSet);
begin
ADODataSet1.Refresh;
end;
И стало все хорошо изменяться. Так правильно?
sniknik (2007-04-17 16:40:00) [8]> ADODataSetMeropr.Properties['Unique Table'].Value := 'Meropr';
> ADODataSetMeropr.Properties['Resync Command'].Value :=...
это все? а где 'Update Resync'? по умолчанию только автоинкремент обновляется.
либо твоя ресинк команда с ошибкой
Kostafey (2007-04-17 16:33:00) [9]> [61] Kostafey © (17.04.07 15:57)
> > [35] Jan1 (17.04.07 12:28)
>
>
> > http://delphikingdom.ru/asp/viewitem.asp?catalogid=420
>
> Странно. Сделал все как в статье...
Повторил для "пустого проекта" - то же самое.
Значения своств
ADODataSetMeropr.Properties['Unique Table'].Value := 'Meropr';
ADODataSetMeropr.Properties['Resync Command'].Value :=...
задаются при Form1.Show
Kostafey (2007-04-17 16:21:00) [10]> пропускаешь и ничего не делаешь...
Тоже верно. :) Спасибо, это получилось.
sniknik (2007-04-17 16:12:00) [11]> А как же быть если этого поля не окажется в наборе данных?
пропускаешь и ничего не делаешь...
> но в данном случае я с Access работаю.
для него можно русские поля из дескрипторов брать, их у него через схемы несложно вытащить. в дескрипторы их естественно ктонибудь должен внести.
Kostafey (2007-04-17 16:10:00) [12]> у тебя в топике MS SQL написано
А :).
Тпик-то не мой. Я его поднял потому что там про LookUp-поля было написано.
С них-то все и началось.
Kostafey (2007-04-17 16:08:00) [13]> [69] Jan1 (17.04.07 16:06)
>
> > where Meropr.Mer_id=
>
> Mer_id- ПК Meropr?
Mer_id - уникальный ключ таблицы Meropr.
Jan1 (2007-04-17 16:08:00) [14]у тебя в топике MS SQL написано
Kostafey (2007-04-17 16:07:00) [15]> C:\Program Files\Microsoft SQL Server\80\Tools\Binn\profiler.exe
Эта штука у меня, конечно есть, но в данном случае я с Access работаю.
Jan1 (2007-04-17 16:06:00) [16]
> where Meropr.Mer_id=
Mer_id- ПК Meropr?
Jan1 (2007-04-17 16:05:00) [17]C:\Program Files\Microsoft SQL Server\80\Tools\Binn\profiler.exe
Kostafey (2007-04-17 16:04:00) [18]> а чего профайлер говорит?
Я не что-то не понял. Что такое профайлер?
Jan1 (2007-04-17 16:02:00) [19]а чего профайлер говорит?
Kostafey (2007-04-17 16:01:00) [20]> что там?
ADODataSetMeropr.Properties['Resync Command'].Value :=
'select * from '+
'( '+
' ( '+
' Meropr '+
' left join TipMeropr on TipMeropr.TMer_id = Meropr.Mer_TMer_id '+
' ) '+
' left join Valute on Valute.V_id = Meropr.Mer_V_id '+
') '+
'left join Location on Location.L_id = Meropr.Mer_L_id '+
'where Meropr.Mer_id=? ';