|
06.10.2017, 11:20 | #1 |
Участник
|
группы хранения для новой складской аналитики (Ax2012R3)
Товарищи, разбирался ли кто-нибудь с механизмом валидации обязателности складских аналитик в зависимости от настроек групп хранения? как он примерно хотя бы работает?
версия аксапты - Ax 2012R3 Суть такая: была добавлена новая складская аналитика хранения, вроде бы добавлена где надо, работает везде нормально - за исключением Создаем группу аналитик хранения, указываем в ней флажки для аналитики Склад и для новой аналитики. Назначаем эту группу для какого-нибудь продукта. Создаем в заказе покупки строку, выбираем эту номенклатуру. Если оставляем для строки пустой Склад - получаем ошибку "Поле " Склад" должно быть заполнено.", если оставляем пустую вторую аналитику - ошибки не получаем. По отладке такое ощущение что все идет откуда-нибудь из ядра, стеки примерно такие: X++: (F)PurchTable\InventDim_ds\validateWrite() --> super() --> (C)FormDataSource.validateWrite() //эта штука системная --> Info.add() //здесь получаем сообщение об ошибке --> (T)InventDim.validateWrite() //а если бы не получили - то нормально провалились бы в валидейт таблицы X++: \Forms\PurchTable\Methods\selectControl --> super() --> \Classes\FormRun\selectControl //эта штука системная --> \Classes\FormStringControl\leave //эта штука системная --> \Classes\FormStringControl\validate //эта штука системная --> \Classes\Info\add |
|
06.10.2017, 11:28 | #2 |
Участник
|
Флажки в настройках какие ставите?
__________________
Ivanhoe as is.. |
|
06.10.2017, 12:12 | #3 |
Участник
|
|
|
06.10.2017, 13:51 | #4 |
Участник
|
Галка "Пропуск для приходов" не поставлена?
|
|
06.10.2017, 13:55 | #5 |
Участник
|
|
|
06.10.2017, 14:14 | #6 |
Участник
|
Если с настройками все верно, то, может, с кодом проблемы? Глобальная компиляция и полный CIL собраны?
__________________
Ivanhoe as is.. |
|
06.10.2017, 14:41 | #7 |
Участник
|
InventDimCtrl_Frm классы надо смотреть - там поля устанавливаются в mandatory() по условию
|
|
|
За это сообщение автора поблагодарили: Pandasama (1). |
09.10.2017, 13:12 | #8 |
Участник
|
В общем, в назидание другим таким же балбесам как я оставлю это здесь:
флаг "активный" у аналитики в настройках группы аналитик хранения вовсе не влияет на обязательность поля. Обязательные в общем случае поля - это Сайт (всегда, если активный) и Склад (если стоит на группе общий флаг "обязательности"). Это прописано вот здесь: (С)InventDimGroupFieldSetup.initFromStorageDimensionGroupFldSetup() Больше всегда обязательных аналитик группы хранения - нет. Ну, и конечно в семействе классов InventDimCtrl_Frm в многочисленных потомках можно для любых конкретных случаев прописать обязательность на каких-то формах, при каких-то условиях и т.д. Последний раз редактировалось Pandasama; 09.10.2017 в 13:15. |
|
|
За это сообщение автора поблагодарили: mazzy (2). |
09.10.2017, 13:20 | #9 |
Участник
|
А галки "первычный" больше нет?
__________________
Ivanhoe as is.. |
|
09.10.2017, 13:34 | #10 |
Участник
|
|
|
09.10.2017, 13:38 | #11 |
Участник
|
Она есть для tracking dimensions (партия, серийник, т.д.) + Склад
|
|
09.10.2017, 13:47 | #12 |
Участник
|
Т.е. вопрос насколько правильно была добавлена аналитика в группу хранения, а не отслеживания? Или нужно by design включать в специальную группу обязательных аналитик группы хранения именно в коде? Или все-таки это ошибка стандарта и стоило бы дать рабочую галку "первичная" для настройки?
__________________
Ivanhoe as is.. |
|
09.10.2017, 13:55 | #13 |
Banned
|
Это, кажется, давно не новость, что склад стал обязательным в AX2012. Логику разработчиков я понимаю:
1) Им нужен был обязательный сайт. 2) На древних проектах (типа 3.0) сайта еще не было в типичной конфигурации, но склад был всегда. 3) Из склада всегда можно восстановить сайт. 4) Резюме: делаем склад обязательным. Далее, галка "первичная", как известно, не сколько регулирует обязательность аналитики, сколько задает степени свободы для резервирования если пользователь задал слишком много аналитик в строке заказа, т.е. то что теперь решено с помощью иерархии резервирования в WHS. |
|
09.10.2017, 14:25 | #14 |
Участник
|
Без указания первичной не давало строку сохранить, разве нет?
__________________
Ivanhoe as is.. |
|
09.10.2017, 14:55 | #15 |
Участник
|
Нет, такого ограничения никогда не было. Не давало сохранить строку без номенклатурных аналитик.
Как указал EVGL, первичная аналитика фиксирует те аналитики, которые можно менять при разных резервированиях. Например, если есть резерв в заказанных и выполнен физических приход, то раскладывание физического резерва под те Issue, которые ожидали этот приход, происходит с учетом того, первичная ли аналитика - если первичная, то строгое соответствие, если не первичная, то можно менять в расходной проводке на то значение, которое пришло физически. Так же первичная ли аналитка влияет на то, можно ли задавать пропуски для приходов и расходов. Ну и несколько других кейсов есть, при которых используется первичность. |
|
|
За это сообщение автора поблагодарили: Logger (3). |
Теги |
ax2012, inventory dimensions, product management, storage dimensions |
|
|