Клиентское приложение написано на Delphi с использованием библиотек DevExpress vcl, подключаюсь к MS SQl серверу.
Подключаюсь к Бд в связке DataSourse ADoQuery.
Столкнулся с таково рода проблемой:
Изменяю значение поля :
procedure TForm24.cxButton2Click(Sender: TObject);
begin
DM.tviezdi.edit;
Dm.Tviezdi.FieldByName('Выезд').AsString := 'Да';
DM.Tviezdi.post;
showmessage ('Аварком '+cxDBLookupComboBox3.Text+' назначен')
end;
Оно вроде изменяется и отображается в cxGrid (Изменен аварком на Яковлева)
![f339b23059f41f98c80da59c9b074a45.png](http://i57.fastpic.ru/big/2013/1121/45/f339b23059f41f98c80da59c9b074a45.png)
Запускаю фильтр :
procedure TForm13.cxButton5Click(Sender: TObject);
begin
dm.Tviezdi.Active := false;
dm.Tviezdi.SQL.clear;
Dm.Tviezdi.SQL.Add('set language Russian set dateformat dmy ');
// Dm.Tviezdi.SQL.Add('select *');
Dm.Tviezdi.SQL.Add('select ');
Dm.Tviezdi.SQL.Add('[dbo].[Дата последнего изменения состояния дела]([dbo].[БД].[№ Заявки]) [Дата последнего изменения состояния дела],');
Dm.Tviezdi.SQL.Add('[dbo].[Просрочка состояния дела]([dbo].[БД].[№ Заявки])[Просрочено],');
Dm.Tviezdi.SQL.Add('[dbo].[БД].[№ Заявки] idLoss,');
Dm.Tviezdi.SQL.Add('*');
Dm.Tviezdi.SQL.Add('FROM [dbo].[БД]');
Dm.Tviezdi.SQL.Add('LEFT JOIN [dbo].[Фото инфо]');
Dm.Tviezdi.SQL.Add('ON [dbo].[Фото инфо].[№ заявки] = [dbo].[БД].[№ Заявки]');
DM.Tviezdi.SQL.Add('WHERE 1=1');
DM.Tviezdi.SQL.Add('-- find');
Dm.Tviezdi.SQL.Add('AND([Дата осмотра] >= '+#39+cxDateEdit1.Text+#39')');
Dm.Tviezdi.SQL.Add('and ([Дата осмотра] <= '+#39+cxDateEdit2.Text+#39')');
Dm.Tviezdi.SQL.Add('Order By [№ Заявки] Desc');
Dm.Tviezdi.ExecSQL;
dm.Tviezdi.Active := true;
end;
![37e02a058616d2f36b8eec7e46c74b0b.png](http://i59.fastpic.ru/big/2013/1121/0b/37e02a058616d2f36b8eec7e46c74b0b.png)
И вижу старые данные (аварком стал Уваров как и был), то есть поле записалось в грид, а в бд нет.Не могу понять в чем проблема.Однако если фильтр не запускать, то данные почему-то сохраняются, а после применения фильтра поменять уже ничего не получается.