Приветствую тебя All
имеется проблема с сабжом, а именно: при
tb_jour_23.Active:=true;
tb_jour_23.Open;
str:='Средний балл: '+srbl_lbl.Caption+'; кол.-во правил.ответов студента:
'+prot_lbl.Caption+'; кол.неправ.ответов студента: '+osh_lbl.Caption+';
прод.-сть чтения: '+ch_lbl.Caption+'; прод.-сть ответов на вопросы:
'+ot_lbl.Caption+'.';
tb_jour_23.insertRecord([testarr[1],'"Зрелый
возраст"',tpts_lbl.Caption,str,
true,strtodate(dtts_lbl.Caption),strtotime(nchts_lbl.Caption),prts_lbl.Caption,
true,ed_fam_21.Text,ed_gr_21.Text]);
if ed_fam_21.text<>'' then
tb_jour_23.FieldByName('Family').Value:=ed_fam_21.text;//else
if ed_gr_21.text<>'' then
tb_jour_23.FieldByName('Id_groupim').Value:=ed_gr_21.text;} {else
tb_jour_23.Post;
tb_jour_23.Close;
если запись происходит в чистую таблицу, то ошибок нет, при последующих новых
записях (повтор кода)
,имхо, на команде сохранения Post выдаётся ошибка (компилятора):
{заголовок сообщения} Debugger Exception Notification
{тело сообщения} Project Unita.exe raised exception class EDBEngineError with
message 'Key violation.'.
Process stopped. Use Step or Run to continue.
ошибка программы - "Key violation"
в чём моя ошибка?
Пиши All, пока.
... Дpyжбы наpодов надежный applet
... В ответ на письмо от 09 июня 2007 от Denis Sharipov к All сообщаем:
DS> EDBEngineError with message 'Key violation.'.
Очевидно, повторяется значение ключевого поля, которое должно быть уникальным.
DS> в чём моя ошибка?
Был случай, что даже пришлось писать свою версию "AppendRecord" по мотивам
борляндского кода.
До встречи, Denis!
Sergey (serge_bychkov[zzz]mail333.com) ICQ# 21014758
Суббота Июнь 09 2007 16:40, Denis Sharipov писал All:
DS> имеется проблема с сабжом, а именно: при
DS> tb_jour_23.Active:=true;
DS> tb_jour_23.Open;
DS> str:='Средний балл: '+srbl_lbl.Caption+'; кол.-во правил.ответов
DS> студента: '+prot_lbl.Caption+'; кол.неправ.ответов студента:
DS> '+osh_lbl.Caption+'; прод.-сть чтения: '+ch_lbl.Caption+'; прод.-сть
DS> ответов на вопросы:
DS> '+ot_lbl.Caption+'.';
DS> tb_jour_23.insertRecord([testarr[1],'"Зрелый
DS> возраст"',tpts_lbl.Caption,str,
DS> true,strtodate(dtts_lbl.Caption),strtotime(nchts_lbl.Caption),prts_lbl
DS> .Caption,
DS> true,ed_fam_21.Text,ed_gr_21.Text]);
DS> if ed_fam_21.text<>'' then
DS> tb_jour_23.FieldByName('Family').Value:=ed_fam_21.text;//else
DS> if ed_gr_21.text<>'' then
DS> tb_jour_23.FieldByName('Id_groupim').Value:=ed_gr_21.text;} {else
DS> tb_jour_23.Post;
DS> tb_jour_23.Close;
DS> если запись происходит в чистую таблицу, то ошибок нет, при
DS> последующих новых записях (повтор кода) ,имхо, на команде сохранения
DS> Post выдаётся ошибка (компилятора): {заголовок сообщения} Debugger
DS> Exception Notification {тело сообщения} Project Unita.exe raised
DS> exception class EDBEngineError with message 'Key violation.'. Process
DS> stopped. Use Step or Run to continue.
DS> ошибка программы - "Key violation"
DS> в чём моя ошибка?
tb_jour_23.Open;
tb_jour_23.Insert;
tb_jour_23.Append;
------------------
tb_jour_23.Post;
tb_jour_23.Next;
Лучшие пожелания, Nikolai Shevtsov.
07:46, 12 Июня 2007. Ты взглянул(а) на Denis Sharipov и сказал(а):
NS> tb_jour_23.Open;
NS> tb_jour_23.Insert;
NS> tb_jour_23.Append;
NS> ------------------
NS> tb_jour_23.Post;
NS> tb_jour_23.Next;
Можно поинтересоваться в чем смысл методом Insert вставить новую запись, а
потом вызвать метод Append который по сути делает тоже самое, и это точно не
решит проблемы автора письма.
Good bye Nikolai. [Posted by FBI pack]
Пятница Июнь 15 2007 20:18, Glebov Boris писал Nikolai Shevtsov:
GB> 07:46, 12 Июня 2007. Ты взглянул(а) на Denis Sharipov и сказал(а):
NS>> tb_jour_23.Open;
NS>> tb_jour_23.Insert;
NS>> tb_jour_23.Append;
NS>> -+--+--+--+--+--+-
NS>> tb_jour_23.Post;
NS>> tb_jour_23.Next;
GB> Можно поинтересоваться в чем смысл методом Insert вставить новую
GB> запись, а потом вызвать метод Append который по сути делает тоже
GB> самое, и это точно не решит проблемы автора письма.
не внимательно прочитал вопрос, сразу не обратил внимания на ошибку ключа.
по поводу insert and append у меня были как то глюки программе
когда надо было сначала вводить новые данные в пустую таблицу, а потом
добавлять.
Проблема решилась таким способом.
Лучшие пожелания, Nikolai Shevtsov.
Приветствую тебя Glebov
NS>> tb_jour_23.Open;
NS>> tb_jour_23.Insert;
NS>> tb_jour_23.Append;
NS>> ------------------
NS>> tb_jour_23.Post;
NS>> tb_jour_23.Next;
GB> Можно поинтересоваться в чем смысл методом Insert вставить новую
GB> запись, а потом вызвать метод Append который по сути делает тоже
GB> самое, и это точно не решит проблемы автора письма.
Благодарю всех отозвавшихся ена мои вопросы, работа с прогой закончена.....а
проблема действительно была в том, что значения должны быть уникальными для
ключевого поля или нужно просто убрать ключ....
Пиши Glebov, пока.
... Винда не пpиходит одна. (c) Microsoft Team