Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.23;
Скачать: CL | DM;

Вниз

Отмена вставки строки.   Найти похожие ветки 

 
veronika   (2002-09-02 10:08) [0]

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


 
Lord Warlock ©   (2002-09-02 10:14) [1]

Если пользователь не заполнил ключевые поля, то лучше добавить проверки на OnValidate этих полей, или использовать ограничения и маски ввода/отображения полей(CustomConstrant), а не пытаться удалить. Если нужно все-таки отменять вставку, то можно использовать транзакции (Commit, Rollback)


 
wicked ©   (2002-09-02 10:19) [2]

в зависимости от условий в OnBeforePost вызывать Abort...


 
veronika   (2002-09-02 11:14) [3]

Написала процедурку
procedure TDM.quRazdBeforePost(DataSet: TDataSet);
begin
if DM.quRazd.FieldByName("n_razd").Value = " " then
abort;
end;
не работает.
А транзакции использовать не могу у меня не кэшированные изменения данных.


 
oss   (2002-09-02 11:27) [4]

ну перврое - если структура правельно составлена, то добавить забись без КЛЮЧЕВЫХ (тут как обязательных, если я правильно понял) у пользователя не получится, вылезет ошибка.
и второе - abort это выход (екстренный) из текущей процедуры,
т.е из quRazdBeforePost
а тебе надо что-то вроде DM.quRazd.Cancel, а не abort.
третье - для того чотбы пользователь не воодил что-либо ошибочно, то это лучше и проверять на вводе, а не при фиксирование


 
Desdechado ©   (2002-09-02 11:27) [5]

Cancel


 
veronika   (2002-09-02 12:55) [6]

Уважаемые мастера! А можно сделать так, чтобы ошибочно введенная строка исчезала. Если следовать всем вашим советам, то этого не происходит.


 
oss   (2002-09-02 14:42) [7]

а как ты определяешь что она ошибочная ?!



Страницы: 1 вся ветка

Текущий архив: 2002.09.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.016 c
1-73636
Sergey-ZZZ
2002-09-12 14:20
2002.09.23
ComboBox


3-73494
RDA
2002-08-30 11:52
2002.09.23
Динамический SQL


8-73762
adogg
2002-05-22 00:36
2002.09.23
Устранение


6-73780
Valentain
2002-07-17 11:27
2002.09.23
Как определить, какие сервера запущены?


1-73754
ASDFG
2002-09-11 15:32
2002.09.23
XML ???