Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Получить остатки на список дат

Получить остатки на список дат
Я
   Zupbp
 
10.10.19 - 10:03
Вот пример получения остатков на кажду дату периода:

ВЫБРАТЬ РАЗЛИЧНЫЕ
    КурсыВалют.Период КАК Период
ПОМЕСТИТЬ Дни
ИЗ
    РегистрСведений.КурсыВалют КАК КурсыВалют
ГДЕ
    КурсыВалют.Период МЕЖДУ &НачалоПериода И &КонецПериода
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Движения.Номенклатура КАК Номенклатура,
    Дни.Период КАК Период,
    СУММА(ВЫБОР
            КОГДА Движения.Период = &НачалоПериода
                ТОГДА Движения.КоличествоКонечныйОстаток
            ИНАЧЕ ВЫБОР
                    КОГДА Движения.Период <= Дни.Период
                        ТОГДА Движения.КоличествоОборот
                    ИНАЧЕ 0
                КОНЕЦ
        КОНЕЦ) КАК КоличествоКонечныйОстаток
ИЗ
    Дни КАК Дни,
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, , ) КАК Движения

СГРУППИРОВАТЬ ПО
    Движения.Номенклатура,
    Дни.Период


Мне нужно получить остатки на каждую дату записи из временной таблицы:

ВЫБРАТЬ
    РегистрЗаписиИзменений.ДатаЗаписи КАК ДатаЗаписи
ПОМЕСТИТЬ Дни
ИЗ
    РегистрСведений.РегистрЗаписиИзменений КАК РегистрЗаписиИзменений
ГДЕ
    РегистрЗаписиИзменений.Объект = &Объект
 
 
   hhhh
 
1 - 10.10.19 - 10:19
(0) вот это

ИЗ
    Дни КАК Дни,
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, День, , ) КАК Движения

хрень какая-то. Напиши соединение, хотя бы левое.
   Deon
 
2 - 10.10.19 - 10:20
(1) Не, тут всё нормально. Это полное соединение без условий
   Deon
 
3 - 10.10.19 - 10:20
(0) А в чём затык-то?
   ptiz
 
4 - 10.10.19 - 10:21
(0) А вопрос в чем? Что не работает?
   Deon
 
5 - 10.10.19 - 10:22
(1) Хотя, конечно, условие Движения.Период <= Дни.Период лучше бы засунуть в левое соединение, а не в выбор
   Deon
 
6 - 10.10.19 - 10:23
(4) Подозреваю, что нет параметров &НачалоПериода и &КонецПериода
   Zupbp
 
7 - 10.10.19 - 10:31
(6) Именно. У меня в первой виртуальной таблице отбирается список дат по условию. И надо получить остатки на каждую из этих дат. Параметров периода нет.
   Zupbp
 
8 - 10.10.19 - 10:31
(1) Это рабочий вариант.
   Deon
 
9 - 10.10.19 - 10:40
(7) Как вариант, первым запросом вытащить максимум и мунимум ДатаЗаписи из регистра, которые и засунуть во 2й запрос по остаткам
   Консультант Баранов
 
10 - 10.10.19 - 10:45
Условие не верное

Надо так

КОГДА Движения.Период = &НачалоПериода
                ТОГДА Движения.КоличествоКонечныйОстаток
КОГДА Движения.Период <= Дни.Период

ИНАЧЕ 0

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.