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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.05.2013, 02:44   #1
II_Dimit_II
Пользователь
 
Регистрация: 29.05.2012
Сообщений: 32
По умолчанию Редактирование данных в DBGrid

почему когда у меня при подсчете количества, сумма записывается не в тужу строку от куда брался kol1, а в новую?

Код:
if ADOQuery2.FieldByName('Наименование_изделия').Value = form1.DBLookupComboBox1.Text then
begin
Form1.ADOQuery2.Edit;
kol1:=ADOQuery2.FieldByName('Количество').AsInteger;
kol2:=strtoint(DBEdit2.Text);
rez:=kol1+kol2;
ADOQuery2.FieldByName('Количество').AsInteger:=rez;
Form1.ADOQuery2.Post;
end

Последний раз редактировалось Stilet; 28.05.2013 в 09:28.
II_Dimit_II вне форума Ответить с цитированием
Старый 28.05.2013, 09:29   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Господи, что этот код делает?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 28.05.2013, 09:43   #3
II_Dimit_II
Пользователь
 
Регистрация: 29.05.2012
Сообщений: 32
По умолчанию

Объясняю. У меня есть комбобокс по нажатию кнопки идет проверка в таблице. если такая запись уже существует то у этой записи должно измениться количество, считываемое из едит, если же наименование не совпало, то создается новая запись, но у меня почему то количество записывает в одну строчку, а наименование и вид изделия в другую.


if form1.DBLookupComboBox1.Text = ADOQuery2.FieldByName('Наименование _изделия').Value then
begin
Form1.ADOQuery2.Edit;
kol1:=ADOQuery2.FieldByName('Количе ство').AsInteger;
kol2:=strtoint(sEdit4.Text);
rez:=kol1+kol2;
ADOQuery2.FieldByName('Вид_изделия' ).AsString:=form1.DBLookupComboBox2 .Text;
ADOQuery2.FieldByName('Наименование _изделия').AsString:=form1.DBLookup ComboBox1.Text;
ADOQuery2.FieldByName('Количество') .AsInteger:=rez;
Form1.ADOQuery1.Post;
ADOQuery1.Append;
end

else
begin
ADOQuery1.FieldByName('Количество') .Value:=strtoint(sEdit4.Text);
Form1.ADOQuery2.Edit;
ADOQuery2.FieldByName('Вид_изделия' ).Value:=form1.DBLookupComboBox2.Te xt;
ADOQuery2.FieldByName('Наименование _изделия').Value:=form1.DBLookupCom boBox1.Text;
ADOQuery2.FieldByName('Количество') .Value:=strtoint(sEdit4.Text);
Form1.ADOQuery2.Post;
end;
ADOQuery2.Append;
ADOQuery1.Append;
II_Dimit_II вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Редактирование текущей записи Dbgrid -=pasha=- Общие вопросы Delphi 9 19.02.2013 03:16
Редактирование поля в DBGrid. Ol'K@ БД в Delphi 8 03.02.2013 15:18
Редактирование и сохранение excel из dbgrid Q012 БД в Delphi 5 22.08.2012 21:24
Как программно запретить редактирование ячейки в DBGrid kraw2 Компоненты Delphi 8 25.11.2010 21:16
Запретить редактирование в DBGrid MixanMM БД в Delphi 12 10.05.2010 20:28