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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.12.2016, 14:17   #1
Armageddets
Форумчанин
 
Регистрация: 30.06.2012
Сообщений: 145
По умолчанию Запретить выбирать дату ранее даты в другом столбце

Всем доброго времени суток, уважаемые эксперты. Есть БД в Access с одной таблицей. В этой таблице есть 2 столбца с датами. Нужно сделать так чтобы в первом столбце дата выбиралась любая - это я сделал. А в следующем нужно запретить выбирать дату ранее даты в предыдущем столбце.

Меня интересует вопрос где и как это нужно сделать? Это делается через компонент календаря или через события DbGrid какие-то? В общем мне любые вараинты подойдут. Кто знает как сделать - посоветуйте пожалуйста. Заранее всем спасибо.
Armageddets вне форума Ответить с цитированием
Старый 19.12.2016, 14:43   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Смотри события полей датасета. TField.OnSetText например
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 19.12.2016, 14:51   #3
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,532
По умолчанию

Цитата:
Меня интересует вопрос где и как это нужно сделать?
через события (Events) объектов, связанных с ДАННЫМИ.
1. модуля управления данными (TDataSource) OnDataChange и другие
2. собственно набора данных (TDataSet TADODataSet TADOQuery ...) BeforePost и другие
3. конкретного поля данных(TField) OnChange OnValidate и другие.

Цитата:
А в следующем нужно запретить выбирать дату ранее даты в предыдущем столбце.
А если пользователь сделает наоборот?
В ПЕРВОМ столбце введет дату > даты второго столбца.
ведь никто (и ничто) не мешает ввести такое.
программа — запись алгоритма на языке понятном транслятору
evg_m на форуме Ответить с цитированием
Старый 19.12.2016, 16:10   #4
Armageddets
Форумчанин
 
Регистрация: 30.06.2012
Сообщений: 145
По умолчанию

Спасибо за варианты - буду пробовать.

А на счет ввода дат наоборот - наверное нужно сделать будет значения по умолчанию, чтобы при добавлении новой строки сразу данные подставлялись в даты, а потом уже эти даты будут изменяться. Попробую тоже.
Armageddets вне форума Ответить с цитированием
Старый 19.12.2016, 16:23   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

При выходе из колонки трудней контролировать, но можно. Юзер то может после ввода второй даты вернуться в колонку с первой. Тогда и на колонку с первой датой нужно вешать обработчик изменения. Например после изменения в ней дата во второй стала меньше. Что делать? Изменить ее программно или не давать первую так поменять? Куча нюансов. В BeforePost проще - просто не давать записать, если логика порушена
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 20.12.2016, 11:29   #6
Heneken87
Форумчанин
 
Регистрация: 27.04.2012
Сообщений: 219
По умолчанию

А разве нельзя записать 1 даты в Combobox1(если их не тьма разумееться) и повесить заполнение Combobox2 c вторыми датами в Event.Combobox1.onSelect через условие ? Или я не до конца понял сути вопроса?
Пишу много и развернуто

Последний раз редактировалось Heneken87; 20.12.2016 в 11:32.
Heneken87 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Есть ли вертикальная группа цифр в другом столбце 692 Microsoft Office Excel 2 05.04.2015 12:39
Подстановка значения в столбце при соответствии в другом strannick Microsoft Office Excel 6 15.12.2011 23:48
Поиск элемента в одном столбце и замена в другом Volgar Microsoft Office Excel 13 05.01.2011 19:49
Макрос на сравнение и подсчет в первом столбце строк, и сумирование значений этих строк в другом столбце Shpr0T Microsoft Office Excel 8 30.08.2010 17:52
Как правильно запретить писать в комбо-боксе. А только выбирать? TwiX Общие вопросы Delphi 2 02.06.2010 01:34