- 1С 8.2 УП : Кнопка
- Похожие FAQ
- Еще в этой же категории
- Заметки из Зазеркалья
- Кнопка гиперссылка
- Положение картинки справа
- Компактная группа кнопок
- Овальная кнопка
- Отображение кнопки при активности
- Цвет рамки, фона, заголовка и шрифт заголовка
- Изменение стандартного отображения команд
- Дружелюбный интерфейс пометки и отмены пометки в диалоге табличных полей, для управляемых форм.
- Специальные предложения
- Недоступны кнопки командной панели в обычных формах, управление видимостью кнопок
- Недоступны кнопки командной панели в обычных формах, управление видимостью кнопок
- 3 причины недоступности кнопки
- Другие стандартные действия приведены на фрагменте интерфейса:
- Управление видимостью кнопок
- Пример добавления кнопки
- Переопределение кнопки «Провести и закрыть»
1С 8.2 УП : Кнопка
Программное добавление кнопок на командную панель формы
Следующий пример показывает как выгрузить из табличной части Подразделения, удалить повторяющиеся и в «КоманднаяПанельЗарплата» — меню «ФормированиеВедомостей» — подменю «СформироватьПоПодразделению» добавить для каждого подразделения кнопку формирования ведомости
Код 1C v 8.х
Похожие FAQ
Еще в этой же категории
Как на управляемой форме разместить список регистра сведений с отбором? 18
Решение рассмотрено для элемента справочника (Контрагент и регистр КонтактнаяИнформация) 1. Создание реквизита: Добавляем новый реквизит формы (. не путать с реквизитом справочника . ) с типом » ДинамическийСписок» В поле » Основная табли Как обновить динамический список или реквизит на форме клиента? 18
Если вы, открыв форму справочника или документа, выполнили некоторое действие, код который должен изменить состояние данных в динамических списках или значение реквизита. Данные изменены, но в открытой форме осталось все как было, можно конечно закр Как установить параметр динамического списка? 14
Когда используете для вывода данных динамический список и произвольный запрос, то бывают ситуации когда надо указать параметр используемый в этом запросе. Ниже пример вывода данных регистра сведений в карточке клиента Для вывода используется исп Форма
Программное создание таблицы значений с условным оформлением 12
Как создать на форме таблицу и сделать для нее подсветку содержимого колонки в строке по условию? Итак для начала нам надо добавить реквизиты в форму. Для этого у нас есть метод: ИзменитьРеквизиты(). Перед тем как его использовать мы сформируем ма Поле выбора
Заполнение списка значений в элементе поле выбора на форме 10
//Заполнение списка перебором данных // Элемент формы МетаданныеВыбор имеет тип — Произвольный, Использование — Режим выбора из Списка, кнопка списка Для Каждого Метаданное из Метаданные.РегламентныеЗадания Цикл ЭлементыФормы.МетаданныеВыбор.Спи Посмотреть все в категории Работа с Формой (Диалог) и её элементами
Источник
Заметки из Зазеркалья
Реализовано в версии 8.3.8.1652.
Мы улучшили дизайн кнопок формы, и добавили новые изобразительные возможности кнопкам командных панелей. Кнопки стали более выпуклыми, и у них появилась небольшая тень.
Кнопка гиперссылка
Появился новый вид кнопки – Гиперссылка командной панели.
Положение картинки справа
Стало возможным задавать расположение картинки справа или слева от заголовка. Для этого у кнопки мы сделали новое свойство ПоложениеКартинки.
Компактная группа кнопок
Группу кнопок теперь можно отображать компактно, без зазоров между ними. Для этого группе кнопок мы добавили новое свойство Отображение.
Овальная кнопка
Появилась возможность создавать овальные кнопки. Форма кнопки управляется новым свойством расширения группы подменю — Фигура.
Отображение кнопки при активности
Теперь вы можете создавать кнопки, реагирующие на перемещение курсора. В обычном состоянии они отображаются как надписи, а при наведении курсора превращаются в кнопку. Для этого кнопке и расширению группы подменю мы добавили свойство ОтображениеФигуры.
Цвет рамки, фона, заголовка и шрифт заголовка
При желании вы можете теперь раскрашивать рамку, фон и заголовок кнопки, и даже менять шрифт заголовка. Для этого предназначены новые свойства кнопки ЦветРамки, ЦветФона, ЦветТекстЗаголока и ШрифтЗаголовка.
Изменение стандартного отображения команд
Для некоторых команд мы изменили правила стандартного отображения. Например, команда Скопировать теперь отображается картинкой в командной панели.
Команды ПереместитьВверх и ПереместитьВниз тоже отображаются в командной панели, а не в группе Ещё. Кроме этого при отображении этих команд, а также команд форматированного документа, используются компактные группы.
Мы надеемся, что эти возможности позволят сделать ваши решения более привлекательными и приятными в использовании.
Источник
Дружелюбный интерфейс пометки и отмены пометки в диалоге табличных полей, для управляемых форм.
Это всего лишь небольшой пример, как можно реализовать дружелюбный интерфейс пометки.
На форме надо разместить:
- Команды: «Таблица_Отмена» и «Таблица_Пометить», соответственно командам надо назначить действие: «Таблица_Отмена» и «Таблица_Пометить».
- Разместить кнопки на форме.
*Описывать этот процесс не стал, это вы и сами должны уметь делать.
Код протестирован на версии платформы: 1С:Предприятие 8.3 (8.3.15.1830)
Специальные предложения
(1) Спасибо. Незнакомец, мне так лестно читать такой чудесный отзыв.
А так, код не оригинален, просто когда надо такое добавить в обработку, лениво вспоминать, хочется просто заглянуть на Инфорстарт и взять это.
.
Ну и для людей полезно, вдруг что углядят себе полезное. Люди, пользуйтесь.
Докатились. Уже такое в тренде. Вообще ниже плинтуса.
Не говоря уж о совершенно уродливом подходе — тащить всё на сервер с контекстом ради пометки в табличном поле. Всё это спокойно решается на клиенте. Да и вообще это из серии «как вывести сообщение пользователю», прямо удивительные высоты продемонстрированы.
Кстати, правила хорошего тона обычно подразумевают объединение флажка и «ведущей» колонки в группу с типом объединения «в ячейке», а не вывод разными колонками.
А если подобные азы «лениво вспоминать», то просто, видимо, практики маловато. Это пишется за пару минут на полном автоматизме.
Автор, вы б для разнообразия хоть чуток посложней задачку бы взяли. Например, отметку в дереве с включением и выключением флажков во вложенных ветках. Хотя б приличнее смотрелось бы, чем эта детская песочница.
(7) А вы, мил-человек, вообще представляете, какая будет нагрузка на сеть, кэш и сервер приложения, если ради такой ерунды неслабые объёмы гонять туда-сюда? Вы считаете нормальным такое выкладывать и рекомендовать к использованию? Ну-ну) На уровне автоматизации ларька оно прокатит, на промышленном — ни разу.
И, чисто так к вашему сведению, в таблице значений «ЗаполнитьЗначения» реализована по сути тем же самым циклом.
(9) Успокоиться не можешь.
Никакой нагрузки не будет.
Люди не работают с миллонном строк.
Вашему боту ненужны мои галочки.
П.с. и сударь поймите сперва для чего этот код размещен ..
(11) да автор сей публикации видимо не в курсе как даже мелкие объемы данных могут сожрать производительноть системы, тем более если это будет типа универсальный алгоритм и будет он везде юзаться по всей конфигурации, а это значит это будут и 10 строк и тысячи, а еще это помножить на две сотни+ юзеров.
Помнится приходилось фирму 1С учить уму разуму, при расчете автоматических скидок в тех же заказах клиентов 1С ERP, где для того чтобы получить пустую таблицу значений с колонками 1С делали «Выгрузить» всей табличной части и потом делали вызов «СкопироватьКолонки», ну посоветовал им хотя бы так делать «Выгрузить(Новый Массив)» (то есть получить таблицу без строк, так как массив строк пуст), а уже потом «СкопироватьКолонки»))) деталей не помню, но суть была такова, что в документах реализации тоже идет расчет скидок, а заказов в одной реализации была туча, и просадка была по производительности ой как значительна)))
ну про косяк с теми же автоскидками, где в документе реализации получалось свыше 99999 строк в таблице скидок я помолчу))) там супер сложная зависимость была, тоже ловил причину ошибки, описывал её, отписывался в суппорт, исправили
Источник
Недоступны кнопки командной панели в обычных формах, управление видимостью кнопок
Недоступны кнопки командной панели в обычных формах, управление видимостью кнопок
3 причины недоступности кнопки
У каждой кнопки типа «Действие» командной панели существует свойство «Доступность», которое позволяет ограничить возможность нажатия пользователем в неподходящий момент, оно доступно на чтение и на запись.
Платформа также автоматически управляет доступностью кнопок, когда не действие не применимо для данной ситуации. Это справедливо для кнопок со стандартным действием, например «Отмена проведения» будет недоступно для не проведенного документа.
Другие стандартные действия приведены на фрагменте интерфейса:
Третий случай, когда кнопка недоступна для нажатия — отсутствие назначенного обработчика в коде модуля формы. Никаких ошибок при этом не возникает, поэтому это одна из неявных ошибок в процессе конфигурирования системы.
Чтобы убедится в причине, открываете свойства кнопки панели и в поле «Действие» нажимаете кнопку открытия («Лупу»). При наличии обработчика, конфигуратор откроет форму, при отсутствии выведет ошибку «Процедура не обнаружена»
Чтобы добавить обработчик очищаете поле, и повторно нажимаете «лупу», система создаст новый обработчик, код которого можно будет задать.
Управление видимостью кнопок
В обычных формах явно управлять видимостью кнопками невозможно.
Поэтому, если все-таки хотите скрывать «ненужные» кнопки, придется использовать метод «Удалить» кнопок панели, для отображения — «Добавить«.
Удалять кнопки, добавленные системой по флажку «Автозаполнение» формы невозможно.
Пример добавления кнопки
Если вам требуется сохранять положение кнопки в нужной позиции, после добавления воспользуйтесь методом «Сдвинуть«.
«Куда» — это командная панель, в которой требуется внести изменения
«ОбработчикДопКнопокДействийФормы» — в примере выше, это название процедуры обработчика события, должна быть в форме, может отличаться для каждой из кнопок.
Источник
Переопределение кнопки «Провести и закрыть»
Уверен, что для многих эта задача не представляет никакой сложности. Очень даже возможно, что эта задача решается и другими способами.
Имеется: Документ с реквизитами НомерВх и ДатаВх, а также основная форма документа
Зачада: Перед записью необходимо задать вопрос пользователю и по результату ответа продолжить запись, либо не продолжать.
В свойствах формы редактируем список команд: снимаем галки с команд «Провести и закрыть», «Записать», «Провести».
Для командной панели убираем признак «Автозаполнение». Добавляем на форму свои команды, а также добавляем группу с типовыми командами. Далее описываем код для созданных команд:
Далее описываем код команд и проверку на дубли
Для каждой команды определяем ПараметрыЗаписи, а также добавляем признак «Закрыть», чтобы после того, как будет задан вопрос, можно было определить надо ли закрывать форму или оставить форму открытой.
Собственно, процедура самой проверки
Далее процедура обработки оповещения, в которой происходит запись и закрытие документа (если он должен закрыться)
Остается ещё один момент: документ может быть записан при закрытии на крестик, тогда будут отрабатывать только типовые механизмы записи документа. Для себя решил это следующим образом (возможно, не очень правильно):
Добавлен реквизит формыВ процедуре ПередЗаписью следующий код
В процедуре ПриСозданииНаСервере устанавливаем флаг в положение ИСТИНА
Вот и всё, типовые команды заменены на наши и можно задавать вопросы пользователю до записи документа. Надеюсь статья будет кому-то полезна. Самого на написание статьи подтолкнула ситуация, когда при нажатии на кнопку «Провести и закрыть» выводится вопрос, подтверждаю запись, но документ не закрывается, закрыть документ можно только по крестику.
Источник