Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как создать условие в форме?
 
 автор: kinski   (20.01.2011 в 02:25)   личное сообщение
 
 

В таблице есть 2 поля относительно документа ("действующий" и "на балансе"), оба поля логического типа. Я создала форму, где отображены оба этих поля. Но вся суть в том, что документ может быть либо "действующим", либо "на балансе". Как сделать в форме, чтобы если было бы выбрано одно поле, нельзя было выбрать другое?

  Ответить  
 
 автор: Дядя Федор   (20.01.2011 в 08:16)   личное сообщение
 
 

По умолчанию оба поля(например b1 и b2) false.
После выбора - одно из полей будет true
Потом поверка на событие "до обновления" - if (b1 or b2) then ничего не менять.

  Ответить  
 
 автор: kot_k_k   (20.01.2011 в 08:38)   личное сообщение
 
 

а может правильнее создать полесосписком где состояние документа выбирать из таблы
т.к. всегда появится "умная" голова которая скажет - а я хочу еще документ "Закрыт" и "За балансом", + никакой возни с запретом на изменение.
И еще а как произойдет перевод из одного состояния в другое в вашем случае, если действо заблокировано?

  Ответить  
 
 автор: snipe   (20.01.2011 в 09:19)   личное сообщение
 
 

у контрола есть свойство Enabled если оно true то контрол заблокирован от введения и изменения инфы а если false то разблокировано

нужно обработать 2 события
1. текущая запись это событие формы
повешать код
if me![контролируемый контрол]=true then
me![блокируемый контрол].enabled=true
else
me![блокируемый контрол].enabled=false
end if
2 тот же код повешать на событие
после обновления контролируемогго контрола

добавлено:

может стоит обратить свое внимание на контрол группа переключателей
и все проблеммы отпадут сами собой

  Ответить  
 
 автор: Дядя Федор   (20.01.2011 в 12:52)   личное сообщение
 
 

Я за вариант с полем со списком (на развитие)

  Ответить  
 
 автор: Explorer   (20.01.2011 в 13:18)   личное сообщение
 
 

я за вариант с одним логическим полем в таблице
и одной OptionGroup из двух RadioButton на форме

значение Option1 = -1 (на балансе)
значение Option2 = 0 (действующий)

но это вариант "четко по ТЗ" без возможности расширения/модификации
поскольку у логического поля в Таблице возможны только два состояния.

если в дальнейшем потребуется увеличить вариативность обозначений статуса документа
можно в таблице использовать не логическое а числовое поле
и, соответственно, увеличить количество Options в OptionGroup

или заменить OptionGroup на ComboBox и вынести справочник статусов в отдельную таблицу
- использовать ComboBox для выбора одного из всего двух значений это бесчеловечно ИМХО

  Ответить  
 
 автор: kot_k_k   (20.01.2011 в 13:49)   личное сообщение
 
 


это бесчеловечно ИМХО



а человечно требовать в один столбец вписать дату или текст в зависимости от желания юзера, но и дата и текст должны обрабатываться по своим алгоритмам - типа в одном поле и дата и послеСосписком.

яное дело что разрулить мона но где туту человечность

  Ответить  
 
 автор: kinski   (21.01.2011 в 03:22)   личное сообщение
 
 

Спасибо всем! Идея с полем со списком очень хорошая и для будущих изменений удобно, но решила все-таки создать"группу переключателей".

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList