8.х Запрос по двум регистрам

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем МихаилПлешаков, 12 фев 2018 в 11:25.

  1. TopicStarter Overlay
    МихаилПлешаков
    Offline

    МихаилПлешаков

    Регистрация:
    Понедельник
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Добрый день,задача стоит следующая: Нужно выбрать всю номенклатуру по которой не было движений за определенный период,чтобы не учитывался документ Перемещение товара и остатком равным 0.

    Код:
    Запрос.УстановитьПараметр("НачалоПериода", НачПериода);
        Запрос.УстановитьПараметр("КонецПериода", КонПериода);
        Запрос.Текст =
            "ВЫБРАТЬ
            |    ПартииТоваровНаСкладахОстаткиИОбороты.Номенклатура,
            |    ПартииТоваровНаСкладахОстаткиИОбороты.Склад КАК Склад
            |ПОМЕСТИТЬ втДвижения
            |ИЗ
            |    РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , ) КАК ПартииТоваровНаСкладахОстаткиИОбороты
            |ГДЕ
            |ТИПЗНАЧЕНИЯ(ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор) <> ТИП(Документ.ПеремещениеТоваров)
            |    И ПартииТоваровНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток = 0
            |
            |ОБЪЕДИНИТЬ ВСЕ
            |
            |ВЫБРАТЬ
            |    ТоварыНаСкладахОстаткиИОбороты.Номенклатура,
            |    ТоварыНаСкладахОстаткиИОбороты.Склад
            |ИЗ
            |    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, Авто, , ) КАК ТоварыНаСкладахОстаткиИОбороты
            |ГДЕ
            |ТИПЗНАЧЕНИЯ(ТоварыНаСкладахОстаткиИОбороты.Регистратор) <> ТИП(Документ.ПеремещениеТоваров)
            |    И ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток = 0
            |;
            |
            |////////////////////////////////////////////////////////////////////////////////
            |ВЫБРАТЬ
            |    Номенклатура.Ссылка
            |ИЗ
            |    Справочник.Номенклатура КАК Номенклатура
            |ГДЕ
            |    НЕ Номенклатура.Ссылка В
            |                (ВЫБРАТЬ
            |                    втДвижения.Номенклатура
            |                ИЗ
            |                    втДвижения КАК втДвижения)
            |    И Номенклатура.ПометкаУдаления = ЛОЖЬ
            |    И Номенклатура.ЭтоГруппа = ЛОЖЬ";
    В данном запросе выводит все что без движения по этим двум регистрам, как добиться чтобы выводил с нулевым остатком?
  2. Андрей Федотов
    Offline

    Андрей Федотов Новичок в 1С

    Регистрация:
    12 июн 2013
    Сообщения:
    41
    Симпатии:
    1
    Баллы:
    4
    Какой то странный запрос получается.
    В соответствии с условием выше - нужно выбрать те номенклатуры по которым нет движения за период.
    Соответственно вот это условие сомнительно:

    И ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток = 0

    Здесь нужно именно обороты проверять, а не остаток как мне кажется.

Поделиться этой страницей