Со встречными выпусками борюсь уже не первый год, подтверждение сему написанная мной два года назад обработка вот тут infostart.ru/public/251402/
Однако это была первая попытка решить проблему нахрапом и втупую, что в итоге не оказалось хорошо, о чем я и написал в комментариях к первому варианту решения.
В общем и целом пришел к выводу, что со встречными выпусками надо бороться только руками и никакие обработки эту проблему никогда не решат, могут только лишь облегчить незавидную участь.
Поэтому свою старую обработку двухлетней давности юзать не рекомендую, хотя она и может помочь в отдельных случаях, но в целом это путь тупиковый.
Здесь и сейчас я выкладываю инструмент для легкого поиска встречных выпусков в заглючившем документе расчета себестоимости УПП. А именно глюк, который выглядит как “Не выполнено распределение по переделам для затрат” и прочее бла-бла-бла.
То есть в этой обработке указывается заглючивший расчет и нажимается кнопка "Заполнить". Обработка построит дерево вида "Затрата-продукция-затрата-продукция" и так на всю глубину. То есть визуально покажет что из чего сделано.
Особая прелесть данной обработки заключается в возможности искать "хитрые" встречные выпуски, когда выпуск зацикливается не напрямую в одном переделе Затрата = Продукция, а через передел-другой. То есть когда встречный выпуск закольцевался через несколько переделов.
В общем все встречные выпуски в дереве будут гарантированно. У меня это работает уже не первый месяц. Как увидеть в дереве встречный выпуск? Когда в одной ветке на разных уровнях фигурирует одна и та же продукция-затрата. Это и есть встречный выпуск. По моей личной статистике 90% встречных выпусков бездумно наклепано бухгалтерией. Мои бухи когда не знают куда списать что-то, то отправляют на 23 счет, а там глядишь куда-то само и пристроится. А когда само не пристроилось, то вот он и готовый встречный выпуск.
Теперь когда встречные выпуски видны - собственно как с этим бороться.
Открываются две таблицы регистра "Выпуск продукции" и "Незавершенное производство". Задается период расчета в обоих. В первой делается отбор по продукции встречного выпуска, во второй - по затрате (это один и тот же элемент номенклатуры, если чо). Ну и смотрится какими документами накидано этих затрат и какими документами это навыпускали. Документы правятся руцями, либо меняется номенклатурная группа затрат, либо выпуска, либо вместо затрат на производство делается списание - тут уже дело вкуса. Главное это дело разложить по разным корзинкам.
И лишь только потом те встречные выпуски, которые РЕАЛЬНО встречные выпуски и их нельзя разрулить, ибо это неотъемлемая составляющая производственного процесса, заносятся в регистр сведений "Встречный выпуск" затрата - продукция, продукция-затрата, по расчетной стоимости. У меня в нем всего две записи "Работы АТП" - "Работы МТП". Как понятно из названия АТП и МТП постоянно оказывают друг другу услуги и от этого никуда не деться.
От создания записей в регистре "Встречный выпуск" надо максимально морозиться. Ибо это плохо для расчета. Производительность падает и возможно подвисание копеек в незавершенке. Самым правильным решением будет разрулить встречные выпуски руками.
P.S. Для неленивых программеров - если понравится и будет вдохновение поправить обработку, чтобы поцеплять все веточки на одно дерево и таким образом навести ей марафет, был бы премного благодарен. Но она работает и в таком неприглядном виде.
P.P.S. Согласно правилам публикации требуется скриншот обработки, но у меня уже нет расчетов со встречным выпуском. Поэтому дерево пустое.
P.P.P.S. Бухи мне выдали на гора реальный встречный выпуск. Добавил скриншот как он выглядит в обработке. Как можете видеть, встречный выпуск получился просто шикарно-жырнючий. Не напрямую, а через передел. Не имея данной обработки под рукой найти в базе ТАКОЙ встречный выпуск - проще повеситься.