ИмяКоманды стандартного действия

1. 7OH 69 25.04.16 13:32 Сейчас в теме
Добрый день.
Управляемая форма, динамически создаётся несколько таблиц (количество и состав заранее неизвестны).
КоманднаяПанель без автозаполнения (ну вот так надо).
Как создать кнопку со стандартным действием для нужной таблицы ?
Если создавать такую кнопку в конфиге - то "ИмяКоманды" у таких кнопок всегда пустое, а на форме видно только имя.
Возможно, если кнопку так создать нельзя, имеется метод выполнения стандартного действия для элемента ?

Пример:
Есть 2 таблицы: ТЗ1, ТЗ2. На форме у таблиц в командной панели создано по кнопке "ВывестиСписок" для каждой таблицы.
В свойствах видно только "Вывести список", хотя при выборе он запоминает для какой таблицы эта команда.
В коде в отладке потом "имякоманды" у обоих кнопок пустые.

Никак не пойму - как программно такие кнопки добавлять.
adhocprog; +1 Ответить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. config 191 25.04.16 14:08 Сейчас в теме
(1) 7OH, думаю избавит от вопроса кусок типового кода из БП 3.0
Процедура ДобавитьКомандуДругиеМестаРаботы(Форма, ИмяГруппы, ВыводитьПодробнуюИнформацию = Ложь)
	Команда = Форма.Команды.Добавить("ДругиеМестаРаботы");
	Команда.Действие  = "Подключаемый_ДругиеМестаРаботы";
	Команда.Заголовок = НСтр("ru = 'Другие места работы'");
	Команда.Отображение  =  ОтображениеКнопки.Авто;	
	
	Если ВыводитьПодробнуюИнформацию Тогда 
		Кнопка = Форма.Элементы.Вставить("ДругиеМестаРаботыКнопка", Тип("КнопкаФормы"), Форма.Элементы[ИмяГруппы], Форма.Элементы.НовоеМестоРаботы);
	Иначе	
		Кнопка = Форма.Элементы.Вставить("ДругиеМестаРаботыКнопка", Тип("КнопкаФормы"), Форма.Элементы[ИмяГруппы]);
	КонецЕсли;	
	
	Кнопка.Вид = ВидКнопкиФормы.Гиперссылка;
	Кнопка.ИмяКоманды  = Команда.Имя;
КонецПроцедуры	
Показать
3. 7OH 69 19.12.16 11:42 Сейчас в теме
(2) и где тут пример вызова ТИПОВОЙ функции ?
4. Petrony 13.03.17 18:53 Сейчас в теме
(1) Добрый день.
Удалось найти решение? Я уже все просторы обрыл в поисках решения
adhocprog; +1 Ответить
5. 7OH 69 13.03.17 18:58 Сейчас в теме
Нет.
Пока это не видится возможным. Увы...
adhocprog; +1 Ответить
6. adhocprog 1140 18.01.23 01:59 Сейчас в теме
Есть новости по данному вопросу? )
7. Serg2000mr 319 12.06.23 02:26 Сейчас в теме
(6) Создаете 10 таблиц без подчиненных, размещаете на форме, определяете состав командных панелей.
Программно формируете только колонки-реквизиты и колонки-элементы формы. Таблицы без колонок отображаться не будут.
8. 7OH 69 12.06.23 09:35 Сейчас в теме
(7) и чем это поможет с динамикой ? Не уловил связи
15. adhocprog 1140 12.06.23 12:42 Сейчас в теме
(7) Ок

А если таблиц 20? ) Наперед не знаю, сколько будет таблиц.

Функционал нужен был для обработки:
https://infostart.ru/1c/tools/1859223/

Сделал использование автозаполнение панелей. По умолчанию панель таблицы скрыта. Если пользователю нужно "Вывести список", делает отображение панелей и пользуется стандартной кнопкой.
17. Serg2000mr 319 12.06.23 18:20 Сейчас в теме
9. Serg2000mr 319 12.06.23 10:53 Сейчас в теме
(8)
динамически создаётся несколько таблиц (количество и состав заранее неизвестны)

Исхожу из того, что у вас будет максимум десять таблиц на форме. Состав колонок создаете динамически.
10. 7OH 69 12.06.23 11:07 Сейчас в теме
(9) и на каждый возможный сценарий доступности каждой типовой команды - делаем по одной таблице на форме ?
Такое действо выльется в довольно неприличную по количеству таблиц форму )
11. Serg2000mr 319 12.06.23 11:10 Сейчас в теме
(10) Выводите все нужные типовые команды в конструкторе и делайте их невидимыми программно в зависимости от сценария.
12. 7OH 69 12.06.23 11:30 Сейчас в теме
(11) ну с первыми таблицами ОК - если добавится ещё несколько - делать то что ?
"64кб всем хватит" - сейчас предлагаемое "решение" звучит именно так.
13. Serg2000mr 319 12.06.23 11:33 Сейчас в теме
(12) С первыми десятью таблицами? А сколько вам максимально нужно? Если у вас есть другое решение - предложите.
14. 7OH 69 12.06.23 11:36 Сейчас в теме
(13) таблиц может быть и 100 - задачи бывают разные.
Собственно решения пока нет - и не будет скорее всего.
Для мелких задач костыли придумать можно - да.
16. Serg2000mr 319 12.06.23 16:51 Сейчас в теме
(15) Для великих задач такое решение не подойдет ;)
18. Serg2000mr 319 12.06.23 18:46 Сейчас в теме
(14) Вот решение для великих задач

	Группа0 = Элементы.Вставить("Таблица0КомПанель", Тип("ГруппаФормы"), ЭтотОбъект, Элементы.Таблица0);
	Группа0.Вид = ВидГруппыФормы.КоманднаяПанель;
	
	Элементы.Переместить(Элементы.Таблица0ВывестиСписок, Элементы.Таблица0КомПанель);
	Элементы.Таблица0ВывестиСписок.ПоложениеВКоманднойПанели = ПоложениеКнопкиВКоманднойПанели.ВКоманднойПанели;
	Элементы.Таблица0ВывестиСписок.Отображение = ОтображениеКнопки.Картинка;
	
	Элементы.Таблица0КоманднаяПанель.Видимость = Ложь;
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот