Assign ProductDimenssionGroup for the ProductMaster:
static void ProductVariant(Args _args)
{
ecoResDistinctProductVariant ecoResDistinctProductVariant;
EcoResProductVariantDimensionValue EcoResProductVariantDimensionValue;
RefRecId ecoResDistinctProductVariantRecId;
EcoResProductReleaseManagerBase releaseManager;
container productDimensions;
InventTable inventtable;
EcoResProductMasterColor ecoResProductMasterColor;
EcoResProductDimensionGroupProduct ecoResProductDimensionGroupProduct;
inventtable = InventTable::find("AA0330LEN08");
ecoResProductDimensionGroupProduct = EcoResProductDimensionGroupProduct::findByProduct(EcoResProduct::find(InventTable.Product).RecId);
if(!ecoResProductDimensionGroupProduct)
{
ecoResProductDimensionGroupProduct.clear();
ecoResProductDimensionGroupProduct.initValue();
ecoResProductDimensionGroupProduct.initFromProduct(EcoResProduct::find(InventTable.Product));
ecoResProductDimensionGroupProduct.ProductDimensionGroup = EcoResProductDimensionGroup::findByDimensionGroupName("CLR").RecId;
ecoResProductDimensionGroupProduct.validateWrite();
ecoResProductDimensionGroupProduct.insert();
}
ecoResProductMasterColor.clear();
ecoResProductMasterColor.initValue();
ecoResProductMasterColor.Color = EcoResColor::findByName("RED").Recid;
ecoResProductMasterColor.ColorProductDimensionAttribute = EcoResProductDimensionAttribute::inventDimFieldId2DimensionAttributeRecId(fieldNum(InventDim, InventColorId));
ecoResProductMasterColor.ColorProductMaster = EcoResProduct::find(InventTable.Product).RecId;
ecoResProductMasterColor.insert();
productDimensions = EcoResProductVariantDimValue::getDimensionValuesContainer("","","RED","");
ecoResDistinctProductVariant.DisplayProductNumber = EcoResProductNumberBuilderVariant::buildFromProductNumberAndDimensions(
EcoResProduct::find(InventTable.Product).productNumber(),
productDimensions);
ecoResDistinctProductVariantRecId = EcoResProductVariantManager::createProductVariant(InventTable.Product,ecoResDistinctProductVariant.DisplayProductNumber,productDimensions);
ecoResDistinctProductVariant = ecoResDistinctProductVariant::find(ecoResDistinctProductVariantRecId);
releaseManager = EcoResProductReleaseManagerBase::newFromProduct(ecoResDistinctProductVariant);
releaseManager.release();
}
static void ProductVariant(Args _args)
{
ecoResDistinctProductVariant ecoResDistinctProductVariant;
EcoResProductVariantDimensionValue EcoResProductVariantDimensionValue;
RefRecId ecoResDistinctProductVariantRecId;
EcoResProductReleaseManagerBase releaseManager;
container productDimensions;
InventTable inventtable;
EcoResProductMasterColor ecoResProductMasterColor;
EcoResProductDimensionGroupProduct ecoResProductDimensionGroupProduct;
inventtable = InventTable::find("AA0330LEN08");
ecoResProductDimensionGroupProduct = EcoResProductDimensionGroupProduct::findByProduct(EcoResProduct::find(InventTable.Product).RecId);
if(!ecoResProductDimensionGroupProduct)
{
ecoResProductDimensionGroupProduct.clear();
ecoResProductDimensionGroupProduct.initValue();
ecoResProductDimensionGroupProduct.initFromProduct(EcoResProduct::find(InventTable.Product));
ecoResProductDimensionGroupProduct.ProductDimensionGroup = EcoResProductDimensionGroup::findByDimensionGroupName("CLR").RecId;
ecoResProductDimensionGroupProduct.validateWrite();
ecoResProductDimensionGroupProduct.insert();
}
ecoResProductMasterColor.clear();
ecoResProductMasterColor.initValue();
ecoResProductMasterColor.Color = EcoResColor::findByName("RED").Recid;
ecoResProductMasterColor.ColorProductDimensionAttribute = EcoResProductDimensionAttribute::inventDimFieldId2DimensionAttributeRecId(fieldNum(InventDim, InventColorId));
ecoResProductMasterColor.ColorProductMaster = EcoResProduct::find(InventTable.Product).RecId;
ecoResProductMasterColor.insert();
productDimensions = EcoResProductVariantDimValue::getDimensionValuesContainer("","","RED","");
ecoResDistinctProductVariant.DisplayProductNumber = EcoResProductNumberBuilderVariant::buildFromProductNumberAndDimensions(
EcoResProduct::find(InventTable.Product).productNumber(),
productDimensions);
ecoResDistinctProductVariantRecId = EcoResProductVariantManager::createProductVariant(InventTable.Product,ecoResDistinctProductVariant.DisplayProductNumber,productDimensions);
ecoResDistinctProductVariant = ecoResDistinctProductVariant::find(ecoResDistinctProductVariantRecId);
releaseManager = EcoResProductReleaseManagerBase::newFromProduct(ecoResDistinctProductVariant);
releaseManager.release();
}
No comments:
Post a Comment