|
Реализация создания на основании в расширении | ☑ | ||
|---|---|---|---|---|
|
0
SORTULV_1C
16.03.26
✎
00:09
|
Доброго времени суток, господа!
Подскажите, хочу в расширении взять типовой функционал создания на основании документа, сделать на его основании функционал. Документ ОтчетКомитенту, нужно создать на основании расход из кассы/со счета 50% суммы, пните в направлении, куда смотреть. Создание на основании не записывает документ, нужно сделать так же. По идее же просто передать структуру с параметрами, а на стороне документа при открытии использовать параметры уже, разве нет? |
|||
|
1
2S
16.03.26
✎
06:04
|
||||
|
2
DrZombi
гуру
16.03.26
✎
06:56
|
(0) Боюсь вас ждёт разочарования в расширениях. Не всё они позволяют :)
|
|||
|
3
DrZombi
гуру
16.03.26
✎
07:01
|
(1) В статье есть добавление роли в расширении.
В БСП есть маленькой казус, оно плохо дружит с ролями из расширения :) |
|||
|
4
2S
16.03.26
✎
07:07
|
(3) Добавить права на команду в типовую роль "БазовыеПраваБП". Если я правильно понял посыл )
|
|||
|
5
denk32
16.03.26
✎
07:32
|
||||
|
6
DrZombi
гуру
16.03.26
✎
08:22
|
(4) Да. Это сработает в данном варианте.
А вот когда объект из Расширения. И надо дать права только "избранным", то тут будет казус :) |
|||
|
7
ZloyBrawler
16.03.26
✎
09:51
|
(3) БСП прекрасно дружит с расширениями и ролями в нем.
У нас 92 роли добавлено и не меньше типовых изменено. В БСП есть только пара неудобств. Первое, создавать роль с именем ххх_ПолныеПрава не стоит, а то тока админам и будет доступна роль, а назвать можно ххх_ПраваПочтиПолные (с некого релиза приходится так делать). Другое неудобство, это то, что админу нельзя дать права накидывая еще ролей. Ну это ограничение мы прекрасно сломали этим же расширением. (И это с некого релиза приходится делать) |
|||
|
8
unenu
16.03.26
✎
11:10
|
(7)
Другое неудобство, это то, что админу нельзя дать права накидывая еще ролей.
Разве? А так? Общий модуль: УправлениеДоступомСлужебный Процедура ОбновитьРолиПользователей Добавить код: ДополнительныеРолиАдминистратора.Вставить("ххх_ПолныеПрава", Истина); |
|||
|
9
ZloyBrawler
16.03.26
✎
21:34
|
(8) Этот путь вынуждает допилы каждый раз делать и эти роли как понимаю будут всегда, а нужно на уровне юзера все же убирать добавлять интерактивно, поэтому приходится ломать
|
|||
|
10
Бертыш
16.03.26
✎
21:39
|
Раз пошла такая пьянка приведу свой кейс из практики. Заказчик у меня есть один привередливый и кейс был не про ввод на основание а про вывод на печать, но принцип схожий. Им было в тз прописанно между какими пунктами вывода на печать должна вставиться добавляемая команда и я всю плешь себе проел пока не сообразил как корректно вмешаться в механизм БСП формирующий меню и уже в этом механизме поменять последовательность элементов меню. Команду то саму добавить тьфу. Добавил и система подцепит, а вот добавить команду чтобы была определённая последовательность команд затача не вполне тривиальная
|
|||
|
11
Бертыш
16.03.26
✎
21:40
|
Может кому сгодится
|
|||
|
12
ZloyBrawler
16.03.26
✎
22:07
|
наш костыль
ноги не сломайте! я ничего не показывал никому модуль УправлениеДоступомСлужебный &ИзменениеИКонтроль("ОбновитьРолиПользователей") Процедура Затычки_ОбновитьРолиПользователей(Знач ОписаниеПользователей, Знач ПарольПользователяСервиса, ЕстьИзменения) чЁта #Удаление Если Администраторы[ТекущийПользователь] <> Неопределено Тогда ТекущиеНовыеРоли = НовыеРоли; НовыеРоли = ТекущиеНовыеРоли.Скопировать(Новый Массив); Для Каждого КлючИЗначение Из ОбязательныеРолиАдминистратора Цикл НовыеРоли.Добавить().РольСсылка = КлючИЗначение.Значение; КонецЦикла; Для Каждого КлючИЗначение Из ДополнительныеРолиАдминистратора Цикл Если ТекущиеНовыеРоли.Найти(КлючИЗначение.Значение, "РольСсылка") = Неопределено Тогда Продолжить; КонецЕсли; НовыеРоли.Добавить().РольСсылка = КлючИЗначение.Значение; КонецЦикла; КонецЕсли; #КонецУдаления #Вставка // с какого-та фига 1С решила, что у админов должны быть только админские роли и все, // а нам та нужно чтобы были у него еще и специфические роли, например программные что-то разрешающие или запрещающие // поэтому чисто убедимся чтобы среди отмеченных ролей были все обязательные роли админа Если Администраторы[ТекущийПользователь] <> Неопределено Тогда Для Каждого КлючИЗначение Из ОбязательныеРолиАдминистратора Цикл Если НовыеРоли.Найти(КлючИЗначение.Значение, "РольСсылка") <> Неопределено Тогда Продолжить; КонецЕсли; НовыеРоли.Добавить().РольСсылка = КлючИЗначение.Значение; КонецЦикла; КонецЕсли; #КонецВставки чЁта КонецПроцедуры >специфические роли, например программные имеется ввиду такие роли, которые не дают никаких прав на объекты, а только в коде используется проверка на их наличие или отсутствие, типа если нет такой роли, то запрещать провести документ, если в нем такого-та рода косяки... |
|||
|
13
banco
16.03.26
✎
23:04
|
(10) У команды печати есть поле Порядок
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |