Продукты в 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!