Использование продуктов для компаний в 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();
Все комментарии
Чтобы оставить комментарий, необходимо войти или зарегистрироваться.
Пока нет комментариев. Будьте первым!