0
Max Street
22.02.14
✎
16:57
|
Запрос. Временная таблица выбирает все основные средства(ОС) и соответствующие СчетУчета.
Далее временная таблица соединяется с несколькими регистрами сведений по ОС. Я хочу в зависимости от значения СчетУчета выбирать из регистров сведений данные на разные периоды. К примеру, если СчетУчета = 01, то данные из регистра сведений за период = 31.01.14. Если СчетУчета = 02, то период = 01.01.14. Пока сделал так:
ВЫБРАТЬ
РегистрСведений1.ОсновноеСредство,
РегистрСведений2.СчетУчета
ПОМЕСТИТЬ ВремТаб
ИЗ
РегистрСведений.РегистрСведений1.СрезПоследних(&КонецМесяца, ) КАК РегистрСведений1
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений2.СрезПоследних(&КонецМесяца, ) КАК РегистрСведений2
ПО РегистрСведений1.ОсновноеСредство = РегистрСведений2.ОсновноеСредство
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ВремТаб.ОсновноеСредство,
ВремТаб.СчетУчета КАК СчетУчета
ИЗ
ВремТаб КАК ВремТаб
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РегистрСведений3 КАК РегистрСведений3
ПО ВремТаб.ОсновноеСредство = РегистрСведений3.ОсновноеСредство
ГДЕ
ВЫБОР
КОГДА ВремТаб.СчетУчета = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Счет01)
ТОГДА РегистрСведений3.Период = &ПериодНачалоМесяца
КОГДА ВремТаб.СчетУчета = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Счет02)
ТОГДА РегистрСведений3.Период = &ПериодКонецМесяца
КОНЕЦ
но вариант так себе, т.к. кроме РегистрСведений3 еще штук 5 регистров сведений, где нужно делать тоже самое
Подскажите, пожалуйста, как сделать запрос по-другому, более оптимально.
|
|