02.08.2018, 18:12 | #1 |
Участник
|
d365technext: Environment Hot-Fixes List Using X++ D365FO & AX 7
Источник: http://d365technext.blogspot.com/201...t-using-x.html
============== Environment Hot-Fixes List Using X++ D365FO & AX 7 We All knows that information about metadata hotfixes installed directly from Visual Studio and we can check them Using Apply Hotfix Addins(Dynamics 365 -> Addins -> Apply Hotfix). The same things we can retrieve using X++ Job Result Code Sample class SLD_DemoClass { public static void main(Args _args) { new SLD_DemoClass().processExecution(); } public void processExecution() { var environment = Microsoft.Dynamics.ApplicationPlatform.Environment.EnvironmentFactory::GetApplicationEnvironment(); Microsoft.Dynamics.AX.Metadata.Providers.IMetadataProvider metadataProvider = this.getDiskMetadataProvider(environment); Microsoft.Dynamics.AX.Metadata.Providers.IMetaUpdateProvider updateProvider = metadataProvider.get_Updates(); var moduleInfoList = metadataProvider.ModelManifest.ListModules(); var i = moduleInfoList.GetEnumerator(); setPrefix('Installed KBs on your Instance'); while (i.MoveNext()) { Microsoft.Dynamics.AX.Metadata.MetaModel.IModuleInfo moduleInfo = i.get_Current(); System.String moduleName = moduleInfo.get_Name(); setPrefix(moduleName); var updatesHotfixesEnumerator = updateProvider.ListObjects(moduleName).GetEnumerator();; while (updatesHotfixesEnumerator.moveNext()) { System.String axUpdateName = updatesHotfixesEnumerator.get_Current(); Microsoft.Dynamics.AX.Metadata.MetaModel.AxUpdate axUpdateObject = updateProvider.Read(axUpdateName); utcdatetime installedDateTime = axUpdateObject.get_AppliedDateTime(); setPrefix(strFmt('Name %1, Installed on %2', axUpdateObject.get_Name(), installedDateTime)); var listKb = axUpdateObject.get_KBNumbers().GetEnumerator(); while (listKb.MoveNext()) { info(listKb.get_Current()); } } } } public Microsoft.Dynamics.AX.Metadata.Providers.IMetadataProvidergetDiskMetadataProvider(Microsoft.Dynamics.ApplicationPlatform.Environment.IApplicationEnvironment _Instance) { Microsoft.Dynamics.AX.Metadata.Storage.DiskProvider.DiskProviderConfigurationdiskProviderConfiguration = new Microsoft.Dynamics.AX.Metadata.Storage.DiskProvider.DiskProviderConfiguration(); diskProviderConfiguration.AddMetadataPath(_Instance.get_Aos().get_PackageDirectory()); Microsoft.Dynamics.AX.Metadata.Storage.MetadataProviderFactorymetadataProvicerFactory = new Microsoft.Dynamics.AX.Metadata.Storage.MetadataProviderFactory(); returnmetadataProvicerFactory.CreateDiskProvider(diskProviderConfiguration); } } Источник: http://d365technext.blogspot.com/201...t-using-x.html
__________________
Расскажите о новых и интересных блогах по Microsoft Dynamics, напишите личное сообщение администратору. |
|
|
|