Имя: Пароль:
1C
 
Запретить кнопку на форме
0 zelenyj_ogurec
 
30.11.16
12:46
Конфигурация УНФ.
На форму документа в верхней панели добавили новую команду и сделали для нее кнопку.
Эта кнопка появляется рядом с кнопкой "Провести".

Но она должна быть доступна по определенным условиям.
Какой командой ее можно запретить при открытии документа?
1 Asmody
 
30.11.16
12:49
(0) Смотря какое условие. Возможностей много: от условного оформления до функциональных опций.
2 zelenyj_ogurec
 
30.11.16
13:06
(1) условие срабатывает,

Какая команда в 1С делает кнопку недоступной?
3 Asmody
 
30.11.16
13:08
Свойство Доступность.
Но этот путь не всегда верный.
4 Asmody
 
30.11.16
13:09
В идеологии управляемого приложения декларативное описание первично.
5 zelenyj_ogurec
 
30.11.16
13:17
Получается такая команда будет не совсем правильно:

Элементы.Кнопка1.Доступность = Ложь;


А как правильно?
Запретить выполнение команды, связанной с этой кнопкой?
А как это сделать?
6 Asmody
 
30.11.16
13:42
Потому что идти надо от бизнес-логики, а не от интерфейса: зачем эта кнопка, какую операцию она выполняет, в каких случаях эта операция должна выполняться и т.п.
7 zelenyj_ogurec
 
30.11.16
13:59
(6) Бизнес-логика продумана.
У меня вопрос чисто в знании языка 1С.
Я просто не знаю как запретить выполнение команды.
8 FIXXXL
 
30.11.16
14:04
(7) ну напиши в процедуре кнопки

Если НЕ ТвоеУсловие Тогда
Возврат;
Конецесли;

перед выполнением кода по кнопке
9 zelenyj_ogurec
 
30.11.16
14:57
(8) Это да, понятно.
А есть ли какое-нибудь свойство у команды, которое показывает что команда "разрешена"?
Чтобы автоматически все связанные с командой элементы интерфейса становились недоступными, если команда запрещена.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший