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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2013, 20:11   #1
ch_dark
Пользователь
 
Регистрация: 28.03.2013
Сообщений: 11
По умолчанию Ошибка программе

ошибка происходит по нажатию кнопки. появляется окно с сообщением
Ошибка Project project1.exe raiced exception class EDatabase wiht message 'Table1: Dataset not in edit or insert mode'. Process stopped. Use Step or Run to continue помогите (
Код:
1.procedure TForm3.Button2Click(Sender: TObject);
2.var x,y:integer;
3.begin
4.Form2.Table1.First;
5.while not Form2.Table1.Eof do
6.begin
7.Form2.Table1.edit;
8.if Form2.Table1.FieldByName('Name').text=Form3.Table.FieldByName'Name').text
9.then begin
10.Form2.Table1.edit;
11.x:=Form2.Table1.FieldByName('Kol').AsInteger;
12.y:=Form3.Table1.FieldByName('Kol').AsInteger;
13.Form2.Table1.FieldByName('Kol').AsString:=IntToStr(x-y) ;
14.Form2.Table1.Next; end;
15.Form2.table1.Post;end;
16.ShowMessage('Данные изменяны!');
17.end;

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

Код:
1.procedure TForm3.Button2Click(Sender: TObject);
var x,y:integer;
begin
Form2.Table1.First;
while not Form2.Table1.Eof do
begin
if Form2.Table1.FieldByName('Name').text=Form3.Table.FieldByName'Name').text
then begin
 x:=Form2.Table1.FieldByName('Kol').AsInteger;
 y:=Form3.Table1.FieldByName('Kol').AsInteger;
 Form2.Table1.edit;
 Form2.Table1.FieldByName('Kol').AsString:=IntToStr(x-y) ;
 Form2.table1.Post; 
end;
Form2.Table1.Next;
end;
ShowMessage('Данные изменяны!');
end;
Только ИМХО эта пилюля не поможет. Код бессмысленен.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.12.2013, 20:39   #3
ch_dark
Пользователь
 
Регистрация: 28.03.2013
Сообщений: 11
По умолчанию

Только ИМХО эта пилюля не поможет. Код бессмысленен.[/QUOTE]

Да ошибка ушла, спасибо, но ничего не помогло работает не правильно. Подскажите как написать код со смыслом
ch_dark вне форума Ответить с цитированием
Старый 05.12.2013, 20:48   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если бы еще знать, что сделать нужно Или сделай то не знаю что?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.12.2013, 21:01   #5
ch_dark
Пользователь
 
Регистрация: 28.03.2013
Сообщений: 11
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Если бы еще знать, что сделать нужно Или сделай то не знаю что?
Существует 2 таблицы(таблицы наход на разных формах), в первой хранятся данные о количестве . Во второй вводишь сам изменение, при совпадении наименований, количество должно вычитываться по нажатию кнопки из одной таблицы в др. например первая таблица имеет 2 столбцa name и Kol. вторая тоже. во вторую ввожу наименование и кол- во по нажатию кнопки выполняется условие если имена совпадают то кол-во вычитается из первой таблицы и сохраняется.
ch_dark вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка в программе julia9311 Общие вопросы C/C++ 8 26.12.2012 00:57
Ошибка в программе Silva_de_souza Паскаль, Turbo Pascal, PascalABC.NET 8 03.05.2012 17:14
ошибка в программе arthur_king Общие вопросы C/C++ 1 05.12.2011 16:32
Ошибка в программе C Renat21 Общие вопросы C/C++ 6 02.04.2011 18:00
Ошибка в программе AncientHero Паскаль, Turbo Pascal, PascalABC.NET 1 15.03.2011 21:21