powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
16 сообщений из 41, страница 2 из 2
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36920387
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

на всякий случай, даю свой запрос:
ТекущаяТаблица ИЗ Хозрасчетный КАК ТекущаяТаблица
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ТекущаяТаблица.Ссылка КАК Счет,
ЗапрещенныеСчета.ГруппаПользователей КАК ГруппаПользователей
ИЗ
ПланСчетов.Хозрасчетный КАК ТекущаяТаблица
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ЗапрещенныеСчета.Счет, ЗапрещенныеСчета.ГруппаПользователей
ИЗ РегистрСведений.ЗапрещенныеСчета КАК ЗапрещенныеСчетаВрем

ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ГруппыПользователей КАК ГруппыПользователей
ПО (ГруппыПользователей.ссылка = ЗапрещенныеСчетаВрем.ГруппаПользователей)
И (ГруппыПользователей.ПользователиГруппы.Пользователь = &ТекущийПользователь)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗапрещенныеСчета КАК ЗапрещенныеСчета
ПО ЗапрещенныеСчета.Счет = ЗапрещенныеСчетаВрем.Счет
И ЗапрещенныеСчета.ГруппаПользователей = ГруппыПользователей.ссылка

) ЗапрещенныеСчета ПО ТекущаяТаблица.Ссылка = ЗапрещенныеСчета.Счет) КАК ТаблицаОтбора
ПО (ТаблицаОтбора.Счет = ТекущаяТаблица.Ссылка)
И (ТаблицаОтбора.ГруппаПользователей ЕСТЬ NULL )
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36920501
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditoch,
Код: plaintext
ГруппыПользователей.ПользователиГруппы.Пользователь

Я таким образом запросы не пишу. Как 1С разименует эту конструкцию, не могу быть уверен.
Попробуйте в явном виде развернуть, а не через точку. Тогда мне хотя бы запрос будет понятен .
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36920698
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

не могу понять, что я не так написал.
ГруппыПользователей - справочник; ПользователиГруппы - табличная часть его; Пользователь - поле этой табличной части (тип - СправочникСсылка.Пользователи).
Я этот запрос вводил в консольЗапросо, изменив/добавив имена таблиц источников - в консоли все работает. А через рлс - не хочет
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36920731
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

Все, понял, в этом и была ошибка. Оплошал...
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36920755
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

Теперь при попытке посмотреть Дт/Кт документа :

Ошибка выполнения запроса "У пользователя недостаточно прав на исполнение операции над базой данных."
Это из-за того, что в запросе нет "РАЗРЕШЕННЫЕ"?

Если так, то это не то, что я хотел... Все запросы переписывать?
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36920950
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditochvitkhv,

Теперь при попытке посмотреть Дт/Кт документа :

Ошибка выполнения запроса "У пользователя недостаточно прав на исполнение операции над базой данных."
Это из-за того, что в запросе нет "РАЗРЕШЕННЫЕ"?

Если так, то это не то, что я хотел... Все запросы переписывать?

Вы откройте Регистр Бухгалтерии и посмотрите, что там. В типовых конфах по нажатию на кнопку Дт\Кт документа открывается Регистр бухгалтерии с отбором по документу, никаких доп. запросов там нет.
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36921041
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

А чтобы снизить "тормоза" может переделать запрос - чтобы результат запроса был не разрешенные счета, а запрещенные, их-то меньше
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36921073
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditochvitkhv,

А чтобы снизить "тормоза" может переделать запрос - чтобы результат запроса был не разрешенные счета, а запрещенные, их-то меньше
Это вряд ли. RLS запрос должен вернуть полную таблицу разрешенных счетов.
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36921080
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ditoch,

так быстрее:

Хозрасчетный ИЗ Хозрасчетный КАК Хозрасчетный

ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗапрещенныеСчета КАК ЗапрещенныеСчета
ПО Хозрасчетный.Ссылка=ЗапрещенныеСчета.Счет
И (ЗапрещенныеСчета.ГруппаПользователей В (&ГруппыТекущегоПользователя))

ГДЕ ЗапрещенныеСчета.Счет ЕСТЬ NULL
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36921117
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditochditoch,

так быстрее:

Хозрасчетный ИЗ Хозрасчетный КАК Хозрасчетный

ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗапрещенныеСчета КАК ЗапрещенныеСчета
ПО Хозрасчетный.Ссылка=ЗапрещенныеСчета.Счет
И (ЗапрещенныеСчета.ГруппаПользователей В (&ГруппыТекущегоПользователя))

ГДЕ ЗапрещенныеСчета.Счет ЕСТЬ NULL

Быстрее чем что?
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36922428
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

чем запрос, приведенный мной высше
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36922699
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditochvitkhv,

чем запрос, приведенный мной высше

Наверное быстрее, только про необходимую кастомизацию типовой конфигурации можно скромно промолчать , для меня такая костомизация была бы не приемлема, потом при обновлениях от 1С, прийдется отсеживать еще один лишний параметр.

А разница в производительности (в моем случае при использовании профилей) между этим:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
ТекущаяТаблица ИЗ Хозрасчетный КАК ТекущаяТаблица
	ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
		ТекущаяТаблица.Ссылка КАК Счет,
		ЗапрещенныеСчета.ПрофильПолномочийПользователя КАК ПрофильПолномочийПользователя
	ИЗ
		ПланСчетов.Хозрасчетный КАК ТекущаяТаблица
			ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ ЗапрещенныеСчета.Счет, ЗапрещенныеСчета.ПрофильПолномочийПользователя 
			ИЗ РегистрСведений.ВР_ЗапрещенныеСчета КАК ЗапрещенныеСчетаВрем
			
			ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Пользователи КАК Пользователи
			ПО (Пользователи.ПрофильПолномочийПользователя = ЗапрещенныеСчетаВрем.ПрофильПолномочийПользователя)
				И (Пользователи.Ссылка = &ТекущийПользователь)
			ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ВР_ЗапрещенныеСчета КАК ЗапрещенныеСчета
			ПО ЗапрещенныеСчета.Счет = ЗапрещенныеСчетаВрем.Счет
				И ЗапрещенныеСчета.ПрофильПолномочийПользователя = Пользователи.ПрофильПолномочийПользователя

			) ЗапрещенныеСчета ПО ТекущаяТаблица.Ссылка = ЗапрещенныеСчета.Счет) КАК ТаблицаОтбора
	ПО (ТаблицаОтбора.Счет = ТекущаяТаблица.Ссылка)
		И (ТаблицаОтбора.ПрофильПолномочийПользователя ЕСТЬ NULL )

и этим:
Код: plaintext
1.
2.
3.
4.
5.
6.
ТекущаяТаблица ИЗ Хозрасчетный КАК ТекущаяТаблица

ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ВР_ЗапрещенныеСчета КАК ЗапрещенныеСчета
ПО ТекущаяТаблица.Ссылка=ЗапрещенныеСчета.Счет
И ЗапрещенныеСчета.ГруппаПользователей = &ВР_ПрофильПолномочийПользователя

ГДЕ ЗапрещенныеСчета.Счет ЕСТЬ NULL

слишком мала и то эту разницу можно увидеть если сравнивать чистую производительность двух вариантов запроса, в отрыве от этого:
Код: plaintext
ВЫБРАТЬ РАЗРЕШЕННЫЕ * ИЗ ПланСчетов.Хозрасчетный

Если же сравновать не в отрыве от ее основного предназначения то производительность обоих решений абсолютно одинакова, только приведенный мною пример не потребует корежить типовые функции в отличии от вашего решения.
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36924843
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

При вводе первого запроса открываю ПоступлениетоваровИУслуг - система задумалась на 5-7 сек. потом только вывела две строчки в своей ТЧ. Интересно, как это обрадует пользователя...?
То же самое, если открыть проводки документа.

Со вторым запросом такой задержки нет.
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36924897
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditochvitkhv,

При вводе первого запроса открываю ПоступлениетоваровИУслуг - система задумалась на 5-7 сек. потом только вывела две строчки в своей ТЧ. Интересно, как это обрадует пользователя...?
То же самое, если открыть проводки документа.

Со вторым запросом такой задержки нет.


При таком стиле написания запроса:
Код: plaintext
И (ГруппыПользователей.ПользователиГруппы.Пользователь = &ТекущийПользователь)
хорошо, что у вас она не на пол часа задумалась, а всего на 5-7 секунд. Я вам кстати указывал на то, что эту строчку необходимо развернуть правильно.
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36925221
ditoch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv,

так, я ведь писал высше, что ошибку исправил.
...
Рейтинг: 0 / 0
КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
    #36925265
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditochvitkhv,

так, я ведь писал высше, что ошибку исправил.


Тогда покажите, что вы написали.

У меня в приведенные в этом примере оба запроса завернутые в
Код: plaintext
ВЫБРАТЬ РАЗРЕШЕННЫЕ * ИЗ ПланСчетов.Хозрасчетный
выполняются одинаково быстро по времени, да и не завернутые тоже.
...
Рейтинг: 0 / 0
16 сообщений из 41, страница 2 из 2
Форумы / [игнор отключен] [закрыт для гостей] / КЧто сделать что б запретить "смотреть всё" по 70 счёту в УПП 1.2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]