Форум: "Базы";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];
ВнизПодскажите в чем ошибка Найти похожие ветки
← →
kn (2002-11-12 11:29) [0]Уважаемые мастера подскажите пожалуйста в чем ошибка. Надо чтобы программа проверяла все ли поля, и если одно не заполнено не заносила эту запись в базу, а выдавала сообщение и отправляла на страницу этого поля. Используюю следующий код:
if radiobut1.Checked then ADOTable1["b2"]:="муж"
else if radiobut2.Checked then ADOTable1["b2"]:="жен"
else showMessage("Не заполнено поле "пол" "); PageC.ActivePage:=TabSheet1;
Заранее спасибо!
← →
Андрей Прокофьев (2002-11-12 11:31) [1]if radiobut1.Checked then ADOTable1["b2"]:="муж"
else if radiobut2.Checked then ADOTable1["b2"]:="жен"
else begin
showMessage("Не заполнено "пол" ");
PageC.ActivePage:=TabSheet1;
end;
← →
Reindeer Moss Eater (2002-11-12 11:37) [2]Обрабатывай все в BeforePost
← →
kn (2002-11-12 11:47) [3]Может меня неправильно поняли но я имел ввиду что перед полем "пол" идут и другие поля. с похожим кодом. Я пробовал писать так на все. Он выдает сообщения, и все равно сохраняет.
← →
kn (2002-11-12 11:53) [4]Пардон а по точнее насчет BeforePost можно.
← →
Jeer (2002-11-12 11:56) [5]Это событие наступающее перед Post.
Навесь там свою обработку
Что-то еще ?
← →
stone (2002-11-12 12:01) [6]А ты TDBRadioGroup использовать не пытался? Даже код писать не придется...
← →
kn (2002-11-12 12:05) [7]господа форм много чтото переделывать нет времени. Но если вы подскажите чайнику как написать код с BeforePost просто не знаю как это сделать. Всетаки 2 месяц сижу за DELPhi
← →
Jeer (2002-11-12 12:10) [8]DEL Phi
← →
Андрей Прокофьев (2002-11-12 12:15) [9]А что, так не работает
procedure OnSaveClick(Sender : TObject);
begin
ADOTable1.Edit;
if radiobut1.Checked then ADOTable1["b2"]:="муж"
else if radiobut2.Checked then ADOTable1["b2"]:="жен"
else begin
showMessage("Не заполнено "пол" ");
ADOTable1.Cancel;
PageC.ActivePage:=TabSheet1;
Exit;
end;
...
if Edit1.Text = "" then
begin
showMessage("Не заполнено "имя" ");
ADOTable1.Cancel;
PageC.ActivePage:=TabSheet1;
Exit;
end;
ADOTable1.Post;
← →
Reindeer Moss Eater (2002-11-12 12:22) [10]>Андрей Прокофьев ©
Это конечно сработает, но!
Пользователь полчаса вводил данные в поля, пропустив одно. Нажимаем кнопку сохранить и все уже введенные (и правильные!) значения улетают в космос.
← →
Андрей Прокофьев (2002-11-12 12:29) [11]2 Reindeer Moss Eater (12.11.02 12:22)
Ну, у меня не TDBEdit, а TEdit в примере :))
← →
ЮЮ (2002-11-12 13:01) [12]>Он выдает сообщения, и все равно сохраняет.
if radiobut1.Checked then ADOTable1["b2"]:="муж"
else if radiobut2.Checked then ADOTable1["b2"]:="жен"
else begin
showMessage("Не заполнено "пол" ");
PageC.ActivePage:=TabSheet1;
Exit; //прервать обработку и выйти из процедуры
end;
← →
kn (2002-11-12 13:12) [13]ЮЮ спасибо сейчас попробою.(долго не отвечал-был на обеде)
← →
kn (2002-11-12 13:27) [14]Еще раз всем спасибо.
← →
kn (2002-11-12 14:06) [15]Господа а после exit даже при всех заполненных полях ничего не идет.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.11.28;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c