0
slavawashere
21.01.21
✎
12:18
|
Всего мнений: 8
Во всех статьях про запросы 1С пишут про "смертный грех" - обращение к данным через точку, которое порождает вложенный запрос и влечет замедление запроса.
Но я не совсем понимаю до конца про что это: Вот есть у нас регистр "ФактическоеРабочееВремяСотрудников", а там есть измерение "Сотрудник" с типом "Справочник.ФизическиеЛица", а у этого справочника есть реквизит "Магазин" - чтобы понимать где работает этот сотрудник.
И вот я пишу запрос к этому регистру, пытаясь выяснить всех работающих сотрудников определенного магазина (ну такая задача - надо именно через этот регистр, с учетом еще некоторых сведений из этого регистра, которые я опустил в запросе для простоты)
ВЫБРАТЬ
ФактическоеРабочееВремяСотрудников.Сотрудник КАК Сотрудник
ИЗ
РегистрНакопления.ФактическоеРабочееВремяСотрудников КАК ФактическоеРабочееВремяСотрудников
ГДЕ
ФактическоеРабочееВремяСотрудников.Сотрудник.Магазин = &Магазин
Я тут совершил этот грех или нет? И если да, то как это исправить? Как наложить такое условие не обращаясь через две точки? Делать сначала запрос к справочнику Физ-лица, выбирать оттуда сотрудников определенного магазина и потом в запросе к регистру выбирать сотрудников только из полученного ранее списка? А не будет ли это дольше в конечном итоге?
|
|