20.04.2016, 14:59 | #1 |
Участник
|
Сделать ресурсы глобальными для планирования
Всем добрый день,
AX 2012 R3 CU9 задача достаточно обширная, поэтому спрашиваю только об идеях реализации. Есть несколько компаний (текстильная промышленность), каждая из которых изготавливает собственную продукцию. НО: ресурсы у всех этих компаний общие, то есть заводы, изготовляющие части продукции или материалы могут располагаться в Китае или Польше, сами компании соответственно находиться в Германии или Франции. При планировании операций или задач может оказаться, что был использован один и тот же ресурс, что приводит к конфликтам планирования. Чтобы этого не происходило, необходимо сделать ресурсы глобальными. Здесь речь не идет о планировании между компаниями (intercompany planning), речь идет только о ресурсах. От виртуальных компаний отказались ввиду ряда факторов. Есть следующие идеи: 1. Сделать "реплики" основных таблиц ресурсов, использующихся при планировании, которые будут глобальными, и все данные зеркально туда копировать. При планировании или просмотре загруженности ресурсов использовать эти таблицы. Достоинства: централизованное хранение данных. Недостатки: большой объем переработки кода и структуры базы, по-сути та же виртуализация данных, только параллельная. 2. Альтернативный подход: для планирования использовать одно централизованное место (службу или менеджер), который при поступлении запроса на планирование ресурсов будет проверять ресурс, и если он доступен то делать его резервирование для всех компаний. Достоинства: меньшая степень изменения структуры базы, для внедрения сделать необходимо некую надстройку, которая будет управлять стандартным функционалом. Недостатки: при проводках в разы увеличивается загрузка базы, поскольку обновление нужно проводить во всех компаниях. 3. Использовать Views для просмотра/редактирования ресурсов и их загруженности, которые тоже будут глобальными. Этот вариант особо не рассматривается как возможный, поскольку возникает проблема с обновлением данных, но было бы интересно, хотя бы часть задачи решить таким образом. В настоящий момент нахожусь "в потемках", поскольку не знаю, какой вариант лучше выбрать, а возможно что и все варианты неправильные и есть более простой метод, поэтому очень нужно ваше мнение. |
|