A
AlenkaInt
Здравствуйте. Я сейчас обучаюсь в одной фирме франчайзи. Есть запрос в УТ 11, мне поставили задачу - надо выводить данные с периодичностью 1 день используя ТОЛЬКО физические таблицы. Подскажите, это надо как поработать с полем Период?
Вот, собственно, запрос:
ВЫБРАТЬ
КОЛИЧЕСТВО(ТоварыНаСкладах.Период) КАК Период,
ТоварыНаСкладах.Номенклатура КАК Товар,
СУММА(ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ) КАК Приход,
СУММА(ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ) КАК Расход
ПОМЕСТИТЬ Обороты
ИЗ
РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
СГРУППИРОВАТЬ ПО
ТоварыНаСкладах.Номенклатура
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ТоварыНаСкладах.Номенклатура КАК Товар,
СУММА(ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ - ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ) КАК Остаток
ПОМЕСТИТЬ НачальныеОстатки
ИЗ
РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
СГРУППИРОВАТЬ ПО
ТоварыНаСкладах.Номенклатура
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
ЕСТЬNULL(НачальныеОстатки.Остаток, 0) КАК НачОстаток,
ЕСТЬNULL(Обороты.Приход, 0) КАК Приход,
ЕСТЬNULL(НачальныеОстатки.Остаток, 0) + ЕСТЬNULL(Обороты.Приход, 0) - ЕСТЬNULL(Обороты.Расход, 0) КАК КонОстаток,
ЕСТЬNULL(Обороты.Расход, 0) КАК Расход
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ НачальныеОстатки КАК НачальныеОстатки
ПО Номенклатура.Ссылка = НачальныеОстатки.Товар
ЛЕВОЕ СОЕДИНЕНИЕ Обороты КАК Обороты
ПО Номенклатура.Ссылка = Обороты.Товар
УПОРЯДОЧИТЬ ПО
Наименование
Вот, собственно, запрос:
ВЫБРАТЬ
КОЛИЧЕСТВО(ТоварыНаСкладах.Период) КАК Период,
ТоварыНаСкладах.Номенклатура КАК Товар,
СУММА(ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ) КАК Приход,
СУММА(ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ) КАК Расход
ПОМЕСТИТЬ Обороты
ИЗ
РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
СГРУППИРОВАТЬ ПО
ТоварыНаСкладах.Номенклатура
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ТоварыНаСкладах.Номенклатура КАК Товар,
СУММА(ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Приход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ - ВЫБОР
КОГДА ТоварыНаСкладах.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
ТОГДА ТоварыНаСкладах.ВНаличии
ИНАЧЕ 0
КОНЕЦ) КАК Остаток
ПОМЕСТИТЬ НачальныеОстатки
ИЗ
РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
СГРУППИРОВАТЬ ПО
ТоварыНаСкладах.Номенклатура
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
Номенклатура.Наименование КАК Наименование,
ЕСТЬNULL(НачальныеОстатки.Остаток, 0) КАК НачОстаток,
ЕСТЬNULL(Обороты.Приход, 0) КАК Приход,
ЕСТЬNULL(НачальныеОстатки.Остаток, 0) + ЕСТЬNULL(Обороты.Приход, 0) - ЕСТЬNULL(Обороты.Расход, 0) КАК КонОстаток,
ЕСТЬNULL(Обороты.Расход, 0) КАК Расход
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ НачальныеОстатки КАК НачальныеОстатки
ПО Номенклатура.Ссылка = НачальныеОстатки.Товар
ЛЕВОЕ СОЕДИНЕНИЕ Обороты КАК Обороты
ПО Номенклатура.Ссылка = Обороты.Товар
УПОРЯДОЧИТЬ ПО
Наименование