Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Программно выполнить команду управляемой формы

Программно выполнить команду управляемой формы
Я
   Новичок2
 
05.08.19 - 07:16
Здравствуйте. Вопрос такой: мне нужна процедура модуля управляемой формы типа
ВыполнитьКоманду(хКомандаФормы)
....
КонецПроцедуры,
где хКомандаФормы - команда управляемой формы.
Что написать в теле процедуры, чтобы эта команда выполнилась? Подбор процедуры в условном операторе по имени команды или ее действию не устраивает. Спасибо за помощь.
 
 
   МимохожийОднако
 
1 - 05.08.19 - 07:18
Информации мало. Поясняй цель задумки.
   Индиго
 
2 - 05.08.19 - 07:20
как вариант составь Структуру, где ключи- имена команд, а значения- имена процедур к ним привязанные. Потом просто по свойству вызовешь нужную
   Новичок2
 
3 - 05.08.19 - 07:25
(2) Какая разница, структура или условный оператор? Все это не гибкий код, который нужно менять как только изменится состав команд. А не хочется
   Новичок2
 
4 - 05.08.19 - 07:30
(1) Цель задумки: после выполнения некоторой команды, пользователь получает сообщение, что на форме задан неправильный параметр для этой команды. После исправления параметра в форме должна автоматически выполниться предыдущая команда.
   Индиго
 
5 - 05.08.19 - 07:32
(4)а снова выполнить команду пользователю религия не позволяет?
   Индиго
 
6 - 05.08.19 - 07:33
(4)+ подумай над вариантом, что пользователь поменяет параметр не выполняя никакой команды.
   Новичок2
 
7 - 05.08.19 - 07:34
(5) Я люблю и уважаю своих пользователей и стараюсь максимально облегчить им жизнь при работе с моими программами
   Новичок2
 
8 - 05.08.19 - 07:35
(6) См. (7)
   Индиго
 
9 - 05.08.19 - 07:37
(7)Имхо в данном случае это избыточная забота. Стандартное поведение кода  при неправильнных входящих данных - это выдать сообщение пользователю что именно не так и ждать его дальнейших действий. Не нарушай методологию.
   Новичок2
 
10 - 05.08.19 - 07:41
(9) Не будем спорить о методологиях. Если есть решение задачи, поделитесь , пожалуйста, а нет - "не засоряйте эфир"
   Индиго
 
11 - 05.08.19 - 07:44
(10)Как вариант.Сделай текстовый реквизит, куда складывай название процедуры при начале работы.Потом оттуда же бери ее для выполнения.
   Индиго
 
12 - 05.08.19 - 07:46
+Но все равно сама идея кривая:-)
   Новичок2
 
13 - 05.08.19 - 07:47
(11) Имя процедуры я могу взять из команды. Но как ее выполнить, так чтобы без структур и перебора в условном операторе?
   Новичок2
 
14 - 05.08.19 - 07:48
(12) Это смотря откуда посмотреть:-)
   Индиго
 
15 - 05.08.19 - 07:48
(13)Вызови ее да и все, в чем сложность?
   Индиго
 
16 - 05.08.19 - 07:49
Выполнить(ИмяПроцедуры+"(Неопределено)")
   Новичок2
 
17 - 05.08.19 - 07:53
(16) Огромное спасибо! Я Новичок и не ведал о существовании этой волшебной команды "Выполнить". Спасибо за помощь

Список тем форума
Рекламное место пустует  Рекламное место пустует
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.