IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

 
 Ответить  Открыть новую тему 
> Обновление данных, C++ Builder 6
сообщение
Сообщение #1


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


В базе данных есть таблица (база в IBExpert): Specialists [code_spec, surname_spec, name_spec, patronymic_spec, specialization, main_work_seat, dismissal, data_begin_work, data_dism, work_off, dismissal_spec]
В приложении по кнопке "Уволить" нужно обновить данные в базе следующим образом:
dismissal=0 (было 1 при занятии должности)
dismissal_spec="уволен"
data_dism=а здесь дата увольнения
Для реализации этого у меня есть IBQDism, где в поле SQL:

select code_spec,dismissal, dismissal_spec, data_dism from specialists
where surname_spec=:A
and name_spec=:B
and patronymic_spec=:C



Так же есть компонент IBUSQLSpec (TIBUpdateSQL), где в поле ModifySQL прописано:

update specialists
set
dismissal=:dismissal,
dismissal_spec=:dismissal_spec,
data_dism=:data_dism
where
code_spec=:OLD_code_spec



для IBQDism в поле UpdateObject прописала свой компонент IBUSQLSpec..

Обработчик по нажатию кнопки:

IBQDism->Params->ParamByName("A")->AsString=LabEdSurnSpec->Text;
IBQDism->Params->ParamByName("B")->AsString=LabEdName_Sp->Text;
IBQDism->Params->ParamByName("C")->AsString=LabEdPatrSpec->Text;
IBQDism->Active=true;
IBQDism->Edit();
IBQDism->Fields->FieldByName("DISMISSAL")->AsInteger=0;
IBQDism->Fields->FieldByName("DISMISSAL_SPEC")->AsString="уволен";
IBQDism->Fields->FieldByName("DATA_DISM")->AsString="16.12.2008";
IBUSQLSpec->SetParams(ukModify);
IBUSQLSpec->ExecSQL(ukModify);


И всё это дело заканчивается ошибкой (рисунок)..
Подскажите пожалуйста, что я не так делаю? В чём может быть причина?


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Профи
****

Группа: Пользователи
Сообщений: 920
Пол: Женский
Реальное имя: Марина

Репутация: -  2  +


Выяснила, что вылет происходит после строки

IBQDism->Edit();


....
Может, кто-нибудь знает, в чём дело...?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 20.04.2024 18:31
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name