1с доступность элемента формы
Код расширения открытый и достаточно "топороный", но, работает и не замедляет открытие форм (зависит, конечно, от того, что выполняется в произвольном коде).
Описаний как подключить расширение конфигураций много, после подключения - надо отключить у этого расширения безопасный режим.
Расширение подключает Регистр Сведений "ВДЭФ_Настройки", все остальные дописки в расширении Общего модуля "МодификацияКонфигурацииПереопределяемый".
В разделе "Администрирование" добавляется пункт "ВДЭФ настройки".
В список форм добавлены формы Справочников, Документов, Регистров сведений, Обработок и бизнеспроцессов с задачами.
В список ролей все возможные роли из основной конфигурации и расширений(если такие есть).
1. Выбираем форму, далее подгружаются все элементы формы.
2. Выбираем необходимый элемент.
3. Из списка ролей выбираем роль, по доступности которой правило не работает (допустим, ПолныеПрава, чтобы у всех кроме администраторов.
4. Устанавливаем флажок, Видимость, Доступность, ТолькоПросмотр.
Также есть вариант, чтобы форма вообще не открывалась (стандартная обработка = ложь; отказ = истина;) - для этого ставится только "Не открывать форму", так же выбирается нужная роль, чтобы правило не срабатывало, элемент формы можно не выбирать.
И еще вариант, когда выбрана форма, не выбран элемент, выбрана или нет роль для срабатывания и стоит галка "ТолькоПросмотр" - форма откроется целиком со свойством "ТолькоПросмотр" = Истина;
Также, если будет заполнено поле Произвольный код, то он выполнится после всех выбранных действий.
На каждый элемент формы создаётся отдельная строка регистра.
Есть небольшие баги(допустим, правило которое создаётся, применяется так же и на форму записи ВДЭФ_Настройки, т.к. форма на которую "вешаются" ограничения получается через "ПолучитьФорму()". Следовательно, может получиться так, что правило, которое вы создали не откроется на редактирование, его достаточно будет удалить и создать заново), которые, возможно, исправлю, но они мало влияют на суть.
Делал для себя, но, вдруг кому пригодится:) Месяц в боевом режиме - полёт нормальный.
Если будут вопросы или ошибки - пишите, постараюсь ответить.
UPD: Если какая-то форма не работает, значит в модуле этой формы, в обработчике ПриСозданииНаСервере не добавлено:
Соответственно, чтобы форма работала, можно добавить её в это же расширение через конфигуратор, и создать ПриСозданииНаСервере, выбрать "После" и дописывать код который написан выше.
Хоть механизм и типовой, но не на всех формах добавлен.
Проверено на конфигурации Комплексная Автоматизация 2 (2.4.9.70), Технологическая Платформа 8.3.14.1854 и 8.3.15.1565. Должно работать на любой конфигурации где применяется типовой функционал модификации конфигурации(УТ 11, КА 2 и ERP 2).
Добрый день! Подскажите почему доступность элемента формы не меняется с условием. При выборе определенного элемента из перечисления доступность устанавливается в Ложь, как и требуется, но когда мы выбираем перечисление другое, то доступность не становится Истина, почему? Мне что теперь для каждого перечисления нужно установить свою доступность?
Если Объект.ВидДвиженияДокумента = ПредопределенноеЗначение("Перечисление.ВидДвиженийВесовой.Ус лугаВзвешивания") Тогда
Элементы.МестоВыбытия.Доступность = Ложь;
КонецЕсли;
Помощь в написании контрольных, курсовых и дипломных работ здесь
Доступность элементов формы справочника
Здравствуйте, подскажите, я только начинаю и вот столкнулся с такой ситуацией, создаю списки ,и при.
Доступность формы документа в зависимости от Даты запрета редактирования
Дата запрета должна работать следующим образом, документ могут открыть, но не могут.
Права доступа по ролям. Доступность элементов формы документа при создании.
Здравствуйте, суть проблемы: в конфигурации есть документ договор, и 2 роли(Администратор и.
Доступность и не доступность флажка на форме
На форме установлен флажок. При определенных условиях необходимо, что бы он, оставаясь ВИДИМЫМ.
Одной строчкой не получается пишет ошибку: : Преобразование значения к типу Булево не может быть выполнено
ПредопределенноеЗначение("Перечисление.ВидДвиженийВесовой.Ус лугаВзвешивания");
И еще мне туда нужно будет запихнуть еще несколько элементов на доступность.
Доступность крестика (закрытие формы)
Всем доброго времени суток. Есть код, который скрывает крестик (закрытие формы) Protected.
Доступность кнопки после проверки формы js
Подскажите скрипт, который будет блокировать кнопку отправки если поля заполнены не верно.
Доступность горячей комбинации со всех элементов формы
В общем есть форма, на которой есть кучу элементов управления: edit'ы, button'ы и и т.д., можно ли.
Установление ширины элемента разделённой формы по ширине основной формы
Здравствуйте! Подскажите пожалуйста, как в разделённой форме ширину элемента формы автоматически.
Упр формы.список выбора для элемента формы
суть дела: имеется таблицаформы, в ней реквизит СуммаНДС - тип число. и есть скрытый реквизит.
Получение и изменение свойств элемента формы из другой формы
Существует MDI-форма Form1. Форма имеет элемент MainMenu1. Один из пунктов MainMenu1 вызывает.
Оптимальное изменение видимости элементов на управляемой форме
В предыдущей статье была описана причина, по которой изменение видимости элементов на управляемой форме не является хорошим способом перестроения интерфейса, управлением доступности элементов формы для пользователей.
Сегодня мы рассмотрим альтернативный способ изменения видимости элементов управляемой формы, который не инициирует обращение к серверу. Тем самым мы сможем сэкономить трафик и увличить быстродействие программы.
Все на клиенте
Вся суть описанного ниже способа заключается в изменении видимости / доступности элемента формы только на клиентской стороне, без обращений к серверу. Флаг "Видимость" нам не подойдет. Обратимся к другим возможностям.
Есть два варианта. Первый - использовать свойство элемента формы "Доступность". Но тогда, хоть польлзователь и не сможет работать с элементов формы для котрого доступность установлена в ЛОЖЬ, видеть он его все же будет. Вот так выглядит обработчик изменения доступности элемента формы:
Недоступны элемент принимает следующий вид:
При изменении доступности элемента обращений к серверу для перерисовки формы, как это было с флагом "Видимость", не происходит.
На пустую страницу, где нет динамического списка, добавим декорацию вида "Надпись", чтобы страница была не пустой и на нее можно было переключаться. У группы страниц свойство "Отображение страниц" установим в ЛОЖЬ, чтобы закладки были не видны.
Теперь в команде "Скрыть динамический список" напишем следующий обработчик:
Таким образом, мы скрыли элемент управляемой формы оптимальным образом без обращений к серверу, контекстных вызовов сервера. Следовательно, сэкономили объем передаваемого трафика и ускорили работу программы.
Проектируя интерфейс на управляемых формах, особенно если решение будет работать в режиме тонкого клиента, всегда необходимо учитывать поведение платформы при тех или иных действия. Так, например, выше уже было сказано, что при изменении видимости элементов выполняется полная перерисовка формы на сервере, а при изменении свойства "Доступность" или переключении страниц - все действия выполняются на клиентской стороне.
Читайте также: