gifts2017

Методика добавления нового интерфейса для типовой конфигурации 1С:Бухгалтерия предприятия ред. 2.0

Опубликовал Владислав Томашевич (tomvlad) в раздел Программирование - Работа с интерфейсом

Целью данной инструкции является описать методику действий разработчика при добавлении нового интерфейса пользователя для типовой конфигурации 1С:Бухгалтерия предприятия 2.0.

 

Методику разберем на следующем примере:

Необходимо создать новый интерфейс для менеджера, который не должен иметь возможность воспользоваться другими интерфейсами. Настройку прав доступа при этом менять не нужно. Он не должен иметь возможность изменить свои пользовательские настройки

  1. Включаем возможность изменения конфигурации (Конфигурация — Поддержка — Настройка поддержки — Включить возможность изменения)

  2. Создаем интерфейс «Менеджер». Можно создать с «нуля», можно скопировать и отредактировать один из существующих интерфейсов.

  3. Создание роли «Менеджер» и даем ей права на интерфейсы «Менеджер» и «Общий». В принципе можно было бы обойтись и без создания роли, но на ее наличие мы завяжем доступность интерфейса «Менеджер».

  4. Свойство «Переключаемый» интерфейса «Общий» устанавливаем в значение Истина.

  5. Добавляем нового пользователя, назначаем ему доступные роли «Бухгалтер» и «Менеджер». Основной интерфейс определим как «Менеджер».

  6. Дописываем кусочек программного кода в модуле обычного приложения, процедура «ПриНачалеРаботыСистемы»

//Заменим интерфейс УСН8

 

#Если Клиент Тогда

 

Если РольДоступна("Менеджер") Тогда

 

ГлавныйИнтерфейс.Общий.Видимость = Ложь;

ГлавныйИнтерфейс.Менеджер.Видимость = Истина;

 

Иначе

 

ГлавныйИнтерфейс.Общий.Видимость = Истина;


Если Константы.ПрименяемыеСистемыНалогообложения.Получить() = Перечисления.ПрименяемыеСистемыНалогообложения.УпрощеннаяСистемаНалогообложения Тогда


ГлавныйИнтерфейс.ДемонстрационнаяБаза.Видимость = ОбщегоНазначения.ЭтоДемонстрационнаяБаза();

 

КонецЕсли;

 

#КонецЕсли

7. Так как с интерфейса «Общий» был снят флаг «Переключаемый», то при переключении интерфейса других пользователей (кроме менеджера) он будет пропадать. Исправим это следующим образом — в процедуры переключения интерфейса ПереключитьИнтерфейсУСН(), ПереключитьИнтерфейсНДФЛИП(), ПереключитьИнтерфейсБухгалтерский(), ПереключитьИнтерфейсАдминистративный(), ПереключитьИнтерфейсПолный() добавим фрагмент кода:

...

ГлавныйИнтерфейс.Общий.Видимость = Истина;

8. Отключим в пользовательских настройках использование панели функций. 

 


В принципе на этом поставленная задача решена. На ее выполнение должно уйти не более 20 минут.

При необходимости и некотором упорстве можно выполнить настройку пользовательских ролей, написать шаблоны ограничения доступа, однако, в большинстве случаев внедрения "через коленку" этого будет достаточно.

 


 

Скачать файлы

Наименование Файл Версия Размер
Добавление нового интерфейса.odt 143
.odt 20,92Kb
21.02.13
143
.odt 20,92Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. red 80 (red80) 30.12.10 17:55
А как добавить интерфейс так, чтобы не дописывать кусочек программного кода в модуле обычного приложения?
2. Владислав Томашевич (tomvlad) 30.12.10 18:26
(1) А никак. Будет управляемый интерфейс - будет проще.
3. Геннадий Пиганов (Totoro) 05.08.12 09:27
(0) Я обычно делаю так:
1) Если пользователю нужно оставить роль "Полные права" с ограничениями (т.к. проверка на имя роли зашита в нескольких местах), то в роли полные права убираются интерфейсы и создаются доп. роли, в которых прописывается доступ к нужным доп. интерфейсам. Они и назначаются пользователям дополнительно к роли "полные права". Изменения - изменение роли полные права, новые доп. интерфейсы, доп. роли. Ну, и панель функций для начала можно настраиваемую подключить.
2) Аналогично можно поступить с ролью "Бухгалтер", если у вас нет доп. роли "только просмотр" или т.п., т.к. запуск БП возможен только для двух ролей "Полные права" и "Бухгалтер". Изменения - изменение роли бухгалтер, новые доп. интерфейсы, доп. роли.
3) Если роли "Полные права" или "Бухгалтер" не подходят по правам, то добавляю базовую роль "Просмотр" (без доступности интерфейсов) и нужные роли с доступностью интерфейсов и нужными правами. Но, тогда придется дописывать проверку роли в "УправлениеПользователями.ПроверитьВозможностьРаботыПользователя". Изменения - изменение модуля, доп. роли, доп. интерфейсы. Учитывая, что роль на только просмотр почти всегда нужна, то обычно использую в основном 3 ).
rainstars; +1 Ответить
4. Dima Dr. (Scukosan) 04.09.12 10:21
спасибо)
просто и доходчиво