Продукты в Dynamics Ax 2012. Использование продуктов для компаний
Использование продуктов для компаний в Dynamics Ax 2012
Встречаются ситуации, когда в системе используется функционал внутрихолдинговых заказов. В связи с этим, в компаниях уже должна существовать номенклатура, которая участвует в заказе. Поэтому, если в одной из компаний уже существует номенклатура, чтобы программно выполнить выпуск продукта в другой компании, на основании существующей номенклатуры, можно взять за основу следующий код:
EcoResProductReleaseSessionManager productReleaseSessionManager;
EcoResProductReleaseSessionBatch sessionBatch;
EcoResReleaseSessionRecId releaseSessionRecId;
EcoResProductRecId ecoResProductMasterRecId;
EcoResDistinctProductVariant distinctProductVariant;
Args args;
EcoResProduct ecoResProduct = EcoResProduct::find(_productRecId); //Выпускаемый продукт
RefRecId legalEntityRecId = _legalEntityRecId; //Компания, для которой выпускается продукт
productReleaseSessionManager = EcoResProductReleaseSessionManager::newReleaseSession();
releaseSessionRecId = productReleaseSessionManager.parmReleaseSessionRecId();
ecoResProductMasterRecId = ecoResProduct.RecId;
if (ecoResProduct.isDistinctProductVariant())
{
distinctProductVariant = ecoResProduct as EcoResDistinctProductVariant;
ecoResProductMasterRecId = distinctProductVariant.ProductMaster;
}
productReleaseSessionManager.addProductMasterWithVariants(ecoResProductMasterRecId);
productReleaseSessionManager.addLegalEntityForAllProducts(_legalEntityRecId);
args = new Args();
args.record(EcoResReleaseSession::find(releaseSessionRecId));
sessionBatch = EcoResProductReleaseSessionBatch::newFromArgs(args);
sessionBatch.run();

Comments
So empty here ... leave a comment!