8.х Как получить правильные остатки по регистру накопления

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем Yury, 10 окт 2013.

  1. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Здравствуйте!

    Вероятно уже баян, про остатки регистра накопления, но все же хочется узнать кто и как сталкивался с проблемой правильности остатков и кто как ее решал.
    Делаю отчет в СКД, который должен отображать остатки на начало, приход, расход, остатки на конец. Что бы проще.
    Вот такой запрос:
    Код:
    ВЫБРАТЬ
    пр_ОстаткиМатериаловОстаткиИОбороты.ВидТМЦ КАК ВидТМЦ,
    пр_ОстаткиМатериаловОстаткиИОбороты.Склад КАК Склад,
    пр_ОстаткиМатериаловОстаткиИОбороты.Номенклатура КАК Номенклатура,
    пр_ОстаткиМатериаловОстаткиИОбороты.Регистратор КАК Регистратор,
    пр_ОстаткиМатериаловОстаткиИОбороты.ПериодСекунда КАК ПериодСекунда,
    пр_ОстаткиМатериаловОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток,
    пр_ОстаткиМатериаловОстаткиИОбороты.СуммаНачальныйОстаток КАК СуммаНачальныйОстаток,
    пр_ОстаткиМатериаловОстаткиИОбороты.КоличествоПриход КАК КоличествоПриход,
    пр_ОстаткиМатериаловОстаткиИОбороты.СуммаПриход КАК СуммаПриход,
    пр_ОстаткиМатериаловОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
    пр_ОстаткиМатериаловОстаткиИОбороты.СуммаРасход КАК СуммаРасход,
    пр_ОстаткиМатериаловОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток,
    пр_ОстаткиМатериаловОстаткиИОбороты.СуммаКонечныйОстаток КАК СуммаКонечныйОстаток
    ИЗ
    РегистрНакопления.пр_ОстаткиМатериалов.ОстаткиИОбороты(, , Авто, , ) КАК пр_ОстаткиМатериаловОстаткиИОбороты
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.ВидТМЦ,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.Склад,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.Номенклатура,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.Регистратор,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.ПериодСекунда,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.КоличествоНачальныйОстаток,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.СуммаНачальныйОстаток,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.КоличествоПриход,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.СуммаПриход,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.КоличествоРасход,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.СуммаРасход,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.КоличествоКонечныйОстаток,
    пр_ОстаткиГотовойПродукцииОстаткиИОбороты.СуммаКонечныйОстаток
    ИЗ
    РегистрНакопления.пр_ОстаткиГотовойПродукции.ОстаткиИОбороты(, , Авто, , ) КАК пр_ОстаткиГотовойПродукцииОстаткиИОбороты
    
    дает не верное значение остатков при группировке по регистратору. Но если запрос разъединить на 2 запроса, то каждый из запросов дает верный результат. Почему такое происходит? И еще, если этот объединенный запрос сделать вложенным, то результат по остаткам опять другой.
  2. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Да, сталкивался, при объединении СКД не знает, что тот комок данных, который мы получили, относится к Остаткам и оборотам, поэтому честно делает агрегацию, так как она описанна в соотв. закладке, чаще всего суммирует данные по строкам в колонках
  3. Yuriy_Alexandrovich
    Offline

    Yuriy_Alexandrovich Профессионал в 1С Команда форума

    Регистрация:
    15 сен 2011
    Сообщения:
    1.275
    Симпатии:
    76
    Баллы:
    54
    Как вариант решения - отдельно получить остатки и обороты, но тут есть подводные камни
  4. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Я пробовал даже в рамках СКД создать набор данных объединение и разносить запросы в разные наборы данных. Все равно не правильно итожит в части остатков.

    Да и так пробовал. И соединял результаты по разному и ОБЪЕДИНЕНИЕМ и через СОЕДИНЕНИЕ.........

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