Продукты в Dynamics Ax 2012. Группы аналитик
Contents
Группы аналитик продукта, хранения и отслеживания в Dynamics AX 2012
В Dynamics AX 2012 складские аналитики были разделены на 3 группы аналитик:
-
Аналитики продукта — эта группа включает номенклатурные аналитики, которые использовались в AX 2009.
-
Аналитики хранения – включает Сайт, Склад, Местоположение и Паллета.
-
Аналитики отслеживания – включает Партию и Серийный номер.
Группа продуктовых аналитик может быть назначена только когда создается продукт. Группы аналитик хранения и отслеживания могут быть назначены на двух уровнях:
-
Системный уровень – в этом случае, они будут использоваться всеми компаниями, которые выпускают продукт.
-
Уровень юридического лица – в этом случае, они будут использоваться только в пределах компании.
Физическая модель данных
Физическая модель данных групп аналитик представлена ниже:
Для получения информации о настройках складских аналитик используется несколько классов, схема которых представлена ниже:
Для получения информации об активности определённого поля аналитики в группе, следует использовать следующий код:
InventTable inventTable; InventDimGroupSetup inventDimGroupSetup; InventDimGroupFieldSetup inventDimGroupFieldSetup; inventDimGroupSetup = InventDimGroupSetup::newInventTable(inventTable); inventDimGroupFieldSetup = inventDimGroupSetup.getFieldSetup(fieldNum(InventDim,WMSPalletId)); if (inventDimGroupFieldSetup.isActive()) { info(strFmt("The palletId dimension is active for dimension group %1",inventDimGroupSetup.getStorageDimensionGroup())); }
Группа аналитик продукта
Microsoft Dynamics AX 2012 использует аналитики цвет, размер, стиль и конфигурация для определения группы аналитик продукта. Сущности для аналитик определены на системном уровне:
-
Размер – определена сущностями EcoResSize, EcoResProductMasterSize
-
Цвет – определена сущностями EcoResColor, EcoResProductMasterColor
- Конфигурация – определена сущностями EcoResConfiguration, EcoResProductMasterConfiguration
- Стиль – определен сущностями EcoResStyle, EcoResProductMasterStyle.
Эти таблицы EcoResProductMaster* описывают все возможные значения аналитик, которые могут быть связаны с продуктами, такие как размер, цвет и т.д. Каждое такое отношение классифицируется атрибутом аналитики продукта, который хранится в таблице EcoResProductDimensionAttribute.
Эти работающие «из коробки» атрибуты аналитик продукта совместно используются моделями и вариантами продукта. Атрибуты используются для установления отношений для полей цвета, размера, стиля и конфигурации InventDim, а также для установления основного сопоставления между значениями InventDim и аналитиками продукта.
Рассмотрим следующие примеры таблиц для атрибута размер. Атрибуты цвета, стиль и конфигурации обрабатываются также.
Настроим атрибуты аналитик продукта.
EcoResProductDimensionAttribute |
||
ID |
Name |
InstanceRelationType |
1 |
Size |
1000 (EcoResSize) |
2 |
Color |
1001 (EcoResColor) |
3 |
Configuration |
1002 (EcoResConfiguration) |
Создадим два основных продукта.
EcoResProduct |
|
RecId |
DisplayProductNumber |
1 |
GenericTshirt-A |
2 |
GenericTshirt-B |
Создадим два шаблона продукта.
EcoResProducMaster |
|
RecId |
VariantConfigurationTechnology |
1 |
DimensionBased |
2 |
ConstraintBased |
Добавим размеры, в таблицу аналитики Размер.
EcoResSize |
|
RecId |
Name |
1 |
S |
2 |
M |
3 |
L |
Настроим размеры, которые могут назначаться из шаблона продукта.
EcoResProducMasterSize |
||||
RecId |
ProductMaster |
ProductDimensionAttribute |
Size |
Description |
1 |
1 (GenericTshirt-A) |
1 (Size) |
2 (M) |
EU medium |
2 |
1 (GenericTshirt-A) |
1 (Size) |
3 (L) |
EU large |
3 |
2 (GenericTshirt-B) |
1 (Size) |
1 (S) |
EU small |
4 |
2 (GenericTshirt-B) |
1 (Size) |
3 (L) |
US large |
Для вариантов продукта, аналитики продукта сохраняются в таблицах EcoResProductVariant*, а атрибуты размера хранятся в таблице EcoResProductVariantSize. Одному варианту продукта может быть назначен только один размер, поэтому для нескольких размеров потребуется настроить несколько вариантов.
EcoResProduct |
|
RecId |
ProductId |
3 |
SpecificTshirt-A |
4 |
SpecificTshirt-B |
EcoResProductVariant |
|
RecId |
ProductMaster |
3 |
1 |
4 |
2 |
EcoResProductVariantDimensionValue |
|||
RecId |
InstanceRelationType |
DistinctProductVariant |
ProductDimensionAttribute |
1 |
EcoResProductVariantSize |
3 (SpecificTshirt-A) |
1 (Size) |
2 |
EcoResProductVariantSize |
4 (SpecificTshirt-B) |
1 (Size) |
EcoResProductVariantSize |
|
RecId |
Size |
1 |
2 (M) |
2 |
3 (L) |
Примеры кода
Чтобы найти все активные выпущенные конфигурации для продукта, следует воспользоваться кодом:
inventTable = this.inventTable(); if (inventTable && inventTable.configActive()) { configurations = EcoResProductVariantDimValue::newProductVariantDim_ConfigId().getDimValues(inventTable.Product); configurationsEnumerator = configurations.getEnumerator(); while (configurationsEnumerator.moveNext()) { configId = configurationsEnumerator.current(); } }
Чтобы добавить новое значение аналитики конфигурации продукта в шаблон продукта, если существует значение записи — productMasterRecId. Обратите внимание, что используеся метод EcoResProductDimensionAttribute ::ventDimFieldId2DimensionAttributeRecId(), чтобы найти атрибут аналитик продукта по умолчанию для поля fieldnum(InventDim, ConfigId), следует воспользоваться следующим кодом:
EcoResProductMasterManager::addProductDimensionValue(productMasterRecId, EcoResProductDimensionAttribute::inventDimFieldId2DimensionAttributeRecId(fieldnum(InventDim, ConfigId)), configurationName, '', '');
Comments
So empty here ... leave a comment!