Показать сообщение отдельно
Старый 08.05.2012, 12:00   #14  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,892 / 5650 (194) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
Цитата:

Развертывание (Explosion)


Развертывание - это просто такой специальный вариант режима обновления Минимальные изменения.По определению, развертывание может запускаться только для текущего динамического плана.Наиболее фундаментальное отличие между развертыванием и обычным сводным планирование состоит в том, что развертывание включает в Начальный Рабочий Набор ТОЛЬКО чистые потребности относящиеся к специфическому документу или даже строке документа.
Поскольку развертывание является наиболее 'точечным' вариантом сводного планирования, оно использует тот же подход к обновлению Рабочего набора что и Номенклатурное MRP. Рабочий набор развертывания также хранится как набор конкретных чистых потребностей, а не как набор комбинаций номенклатуры и аналитик покрытия.На стадии обновления чистых потребностей, система просто запускает Динамическое обновление для номенклатуры той чистой потребности, для которой выполняется развертывание, а затем создает Начальный рабочий набор для из данной чистой потребности и связанных с ней зависимых чистых потребностей (компонентов в случае спланированного производственного заказа или производственного заказа, зависимые потребности в номенклатуре на складе пополнения в случае спланированого заказа на перенос и т.д.). Последующие стадии выполняются более или менее тем же способом, что и в режиме Минимальных Изменений.

Существует три разных варианта Развертывания:
  1. Развертывание строки заказа. Реализовано в классе ReqCalcExplodeSO. Этот вариант развертывания запускается в том случае, если вы кликаете на кнопке 'Обновить' в форме Развертывания, запущенной из формы заказов на продажу по кнопку Запросы->Развертывание. Эта же разновидность развертывания запускается автоматически при создании или обновлении строки заказа на продажу в том случае, если для этой строки указан режим резервирования Развертывание. Кроме того, это же случается если пользователь изменил маркировку складской проводки. Последний случай выглядит слегка непонятным, но на самом деле его цель совершенно понятна: Как только пользователь меняет маркирование (которое служит отражением покрытия), система должна удалить текущие данные покрытия и построить их заново из маркирования.Чуть позже мы поговорим о некоторых дополнительных функциях развертывания, связаных с маркированием, которые не отсутствуют в стандартном MRP.
  2. Развертывание производственных заказов. Реализовано классоа RecCalcExplodeProd. Этот вид развертывания запускается в том случае если вы кликаете по кнопке 'Обновить' в форме развертывания, запущеной из формы производственных заказов.Этот же вариант развертывания может запускатся автоматически при запуске планирования операций или планирования заданий. Автоматическое развертывание производственного заказа производится в двух случаях: Во первых, оно происходит в том случае, если хотя бы у одной строки производственной спецификации установлен режим резервирования "При планировании" и если данный производственный заказ планируется первый раз за время его жизненного цикла.Во вторых, это случается если для данного производственного заказа не существует ни одной чистой потребности в текущем динамическом плане (вероятно - потому что производственный заказ был создан в ручную и после этого не планировался) и пользователь в форме планирования поставил галочку в поле "Ограничение по материалам".Возможно, с первого взгляда такое поведение кажется неожиданным, но режим "Ограничение по материалам" подразумевает принудительную интеграцию планирования производственного заказа со сводным планированием.В Аксапте нету другого способа узнать - доступны материалы или нет, кроме использования сводного планирования. Так что если вы собираетесь использовать планирование производственых заказов без нормально настроенного сводного планирования, не рассчитывайте получить разумные результаты планирования с галкой "Ограничение по материалам". Если вы не указали текущий динамический план в параметрах модуля, система будет использовать для развертывания текущий статический план. Если оба плана не заданы, система создаст новый план с разумными умолчаниями и будет использовать этот план как текущий статический и динамический план.
  3. Развертывание спланированых заказов.Реализовано в классе ReqCalcExplodePO. Этот вид развертывания запускается если вы кликните на кнопке 'Обновление' в форме Разветывания, запущенной из формы спланированных заказов.Эта же функциональность автоматически запускается если пользователь создал или модифицировал спланированный заказ в ручную или при утверждении спланированых заказов.
В наиболее общем случае, функционал развертывания имеет три дополнительных параметра, включающих/выключающих дополнительные функции, отсутствующие в обычном сводном планировании:
  1. Текущее развертывание. Этот флажек разрешает, так сказать, выборучню регенерацию развертывания. Вся информация о покрытии для данной чистой потребности удаляется. Если покрывающая чистая потребность является спланированым заказом, и этот заказ ничего больше не покрывает, он также удаляется, что приводит к рекурсивному удалению зависимых чистых потребностей и тд. Хочу предупредить вас что данный режим не предотвращает проблему некорректного планирования, которую мы обсуждали в предыдущем разделе. Поскольку в этом режиме информация покрытия удаляется только для данной чистой потребности и непосредственно зависящих от нее чистых потребностей, это не сможет помочь если мы имеем ситуацию независимой чистой потребности и запасы в наличии покрывают эту несрочную независимую чистую потребность.
  2. Маркировка и резервирование. Этот флажек доступен только при развертывании строки заказа и при развертывании производственного заказа. Он заставляет систему удалить маркировку и снять резервирование с соотвествующих складских проводок. Как вы, вероятно, уже знаете, маркирование и резервирование влияют на покрытие. Если две складских проводки были примаркированы друг к другу, их чистые потребности будут покрывать друг друга. Если складская проводка была физически зарезервирована, она будет покрыта чистой потребностью запасов в наличии. Так что если вы поставили галочку в параметре Текущее покрытие, то вам, вероятно, надо поставить галочку и для данного параметра; В противном случае, большая часть удаленной информации о покрытии будет восстановлена из данных складских проводок.
  3. Авторезервирование. Данный флажек доступен только для развертывания строи заказа и производственного заказа.Если вы включили этот флажек, то после развертывания, система продублирует информацию покрытия в складские проводки. Данные о покрытии переносятся в маркировку складских проводок. Если данная чистая потребность была покрыта запасами в наличии, соответствующая складская проводка будет физически зарезервирована. Этот режим особенно полезен, если вы хотите исправить ситуацию после ручного ввода производственного заказа.В идеальном мире, пользователи никогда не создают производственных заказов в ручную. Они всегда сначала запускают регенерацию плана для всей номенклатуры, потом утверждают спланированные заказы, а функция утверждения создает маркировки из данных покрытия спланированного заказа. Однако - что же можно сделать если пользователь создал производственный заказ в ручную? Как нам перенести данные о покрытии в маркирование складских проводок ?Просто включите этот флажек и запустите развертывание.
Я не понимаю, почему функционал авторезервирования ограничен только заказами на продажу и производственными заказами. Время от времени, пользователи в ручную создают заказы на закупку, перенос, складские журналы. Все эти документы участвуют в рассчете покрытия, но система не поддерживает никаких инструментов, которые позволили бы перенести информацию покрытия в складские проводки по данным документам. Я однажды разработал класс, который в пакетном режиме запускал подобное авторезервирование по всем заказам на продажу. Любопытно, почему Микрософт до сих пор не разработал какую-то функциональность для гибкого массового обновления складских проводок на основании данных из текущего динамического плана? Что-нибудь, что позволило бы вам выбрать тип чистых потребностей, период времени и т.п., а затем пробегало бы по подходящим чистым потребностям и переносило бы данные о покрытии в маркировку складских проводок...
Продолжаем...