Имя: Пароль:
1C
1С v8
БП 3.0 как скрыть закрытые организации?
,
0 evorle145
 
19.04.22
13:59
В базе более 60 юр лиц. Из них порядка 15 закрытые.
Более 100 пользователей. Из них 60 ограниченные права и отрабатывает RLS.
Для остальных 40 пользователей добавил расширение на справочник Организаций:

&Вместо("ОбработкаПолученияДанныхВыбора")
Процедура Р_ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)
    
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    Организации.Ссылка КАК Ссылка,
    |    Организации.Наименование КАК Наименование
    |ИЗ
    |    Справочник.Организации КАК Организации
    |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.Р_ОрганизацииСкрытыеИзСписка КАК Р_ОрганизацииСкрытыеИзСписка
    |        ПО Организации.Ссылка = Р_ОрганизацииСкрытыеИзСписка.Организация
    |ГДЕ
    |    Р_ОрганизацииСкрытыеИзСписка.Организация ЕСТЬ NULL
    |
    |УПОРЯДОЧИТЬ ПО
    |    Наименование";
    
    Выборка = Запрос.Выполнить().Выбрать();
    ОрганизацииСкрытыеИзСписка = Новый СписокЗначений;
    Пока Выборка.Следующий() Цикл
        ОрганизацииСкрытыеИзСписка.Добавить(Выборка.Ссылка, Выборка.Наименование);
    КонецЦикла;
    СтандартнаяОбработка = Ложь;
    ДанныеВыбора = ОрганизацииСкрытыеИзСписка;

КонецПроцедуры


И в любом документе или журнале отбор по организации стал как нужно: закрытые организации не мешают...

Но вот если открыть ОСВ или любой другой отчет, то там ничего не поменялось.. Как думаете, существует какая-то техническая возможность и для отчетов проделать такой трюк?
1 Фрэнки
 
19.04.22
14:09
Если общий размер базы не слишком гигантский, то можно сделать новый узел РИБ с отбором по организации и отгрузить в него только тех, кто остался жив
2 evorle145
 
19.04.22
14:32
(1) да, это в планах.. делать свертку, затем выгрузку РИБ... Но база 150 ГБ.
3 Фрэнки
 
19.04.22
14:40
(2) Я бы не делал свертку. Толку от свертки не будет.
4 Фрэнки
 
19.04.22
14:44
И да, я для отчетов примерно похожий трюк проделывал

чтоб закрыть от любобытных расчеты по сотрудникам на 70-ом счете
5 evorle145
 
19.04.22
14:54
(3) почему не будет? все ссылки на счет-фактуры  , поступления и прочее - подменяю на Документ расчетов, а доки удаляю. (4) а как? я вот как ни крутил, никак не пойму, как это сделать..
6 trooba
 
19.04.22
15:10
Если разделение по организациям RLS включено, то это не решает данную задачу?
7 Фрэнки
 
19.04.22
15:22
(6) вероятно, что тормозит настолько заметно, что оставшимся 40 нельзя предлагать RLS
8 Aswed
 
19.04.22
16:02
(0) Пометь их на удаление. А у пользователей тупо поставь отбор в формах справочника "Организации" что бы показывал только не помеченные.

ЗЫ Настройки форм раскидай всем пользователям через копирование настроек.
9 Aswed
 
19.04.22
16:03
+(8) сорян, ни дочитал САБЖ
10 evorle145
 
19.04.22
16:33
(7) (6) Проблема в том, что оставшиеся 40 обладают полными правами, поэтому на них RLS не действует.. убрать им полные права тоже не представляется возможным..
11 johnnik
 
19.04.22
17:12
А контроль прав на уровне записей не вариант? Все прекрасно работает по одному из двух правил:
1. Все организации разрешены, кроме (список запрещенных)
2. Все организации запрещены, кроме (список разрешенных)

Если оставить одну разрешенную организацию группе доступа, то доступна для выбора только она, включая любые виды отчетов. Конечно, если человек админ, он может себе отключить контроль прав, но тут уж либо шашечки, либо ехать
12 Фрэнки
 
19.04.22
17:36
(11) :-)
те же яйца - вид в профиль

"контроль прав на уровне записей" является переводом на русский язык расшифровки в слова магической аббревиатуры RLS
13 evorle145
 
19.04.22
18:34
(11) не работает он если есть полные права..
14 Garykom
 
гуру
19.04.22
18:41
15 Garykom
 
гуру
19.04.22
18:43
(14)+ Грубо говоря вынеси все ненужное в отдельную область (по сути это поле в таблицах поэтому запросы шустрей чем RLS)
И пользователи не будут видеть ненужное
16 Garykom
 
гуру
19.04.22
18:45
(15)+ В старых конфах (которые не поддерживаются 1С Фреш) это не очень, но в новых вполне работает на том же фреше
17 Garykom
 
гуру
19.04.22
18:50
(16)+ Это все эксперименты строго на копии!
И придется прямыми запросами делать, для вашего случая когда надо "скрыть ненужное" вполне пойдет.
Если правильно это делать.
Вот оставить общие НСИ но скрыть часть документов и справочников проблематично слегка.

Хотя я бы тупо оставил полный бэкап и почистил базу от ненужных организаций штатно, с удалением доков и данных в РС
18 _Дайвер_
 
19.04.22
19:53
Я хз, на практике не применял но слышал что есть механизм разделения данных, почухай , может сгодится)
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.