Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.12.2009, 15:45   #1
ANT35
Пользователь
 
Регистрация: 14.10.2008
Сообщений: 33
По умолчанию DBGrtid Условие

Подскажите пожалуйста, как исправить этот код, чтобы опрограмм проверяла можно ли производить вычитание! если цыфра которую ввели больше той которая находится в ячейке, то выводилась ошибка.

procedure TForm1.Button1Click(Sender: TObject);
begin
ADOQuery1.Active:=false;
ADOQuery1.SQL.Clear;
Form1.Edit1.Text=kol;
ADOQuery1.SQL.Text:=('UPDATE sklad SET kolicestvo = kolichestvo - kol WHERE Naimenovanie='+ DBGrid1.DataSource.dataset.fieldbyn ame('Catter').asstring);
ADOQuery1.ExecSQL;
ADOQuery1.SQL.Text:='SELECT * FROM Tovary';
ADOQuery1.Active:=true;
ADOQuery2.Active:=false;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('SELECT Naimenovanie, cater, Cena1, kolichestvo');
ADOQuery2.SQL.Add('INSERT INTO TOVARY (Naimenovanie, cater, Cena1, kolichestvo');
ANT35 вне форума Ответить с цитированием
Старый 24.12.2009, 16:54   #2
soleil@mmc
SQL-коддинг
Участник клуба
 
Регистрация: 16.01.2009
Сообщений: 1,192
По умолчанию

лучше всего писать ХП под это дело, в которой и реализовать всю логику
но если ваша субд не позволяет этого, то добавьте тогда еще один селект
Код:
ADOQuery1.SQL.Text:= 'select kolicestvo from sklad where Naimenovanie = :p0';
ADOQuery1.Parameters.ParambyName('p0').AsString := DBGrid1.DataSource.dataset.fieldbyn ame('Catter').asstring;
ADOQuery1.Open;
if ADOQuery1.FieldByName('qty').AsInteger > l_kol then 
begin
 // здесь остальной код
end;
и эттаа...
нипанятна откуда в запрос попадет кол-во, которое вычитается? или это кол-во само уже есть в таблице sklad ?
soleil@mmc вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
условие Maka111 Microsoft Office Excel 5 17.05.2009 18:25
условие Neymexa Общие вопросы .NET 3 19.04.2009 15:39
условие Neymexa Общие вопросы по Java, Java SE, Kotlin 2 07.02.2009 11:37
Условие(If then) Andreyka Общие вопросы Delphi 3 12.01.2009 15:30
Условие [Smarik] Паскаль, Turbo Pascal, PascalABC.NET 3 03.02.2008 08:08