Hi everyone,
I need to get the name of the current specification in project Bentley OpenPlant Modeler V8i (see Figure).
Now I can get a path of project Specs Databases
string specsDBDirPath = Bentley.Plant.Utilities.WorkspaceUtilities.GetConfigVar("OPM_DIR_SPECS");
But how to determine programmatically which specification is currently used in the project (for example, _Test_Spec on the picture)?
Regards, Vitaliy
I found how to get the name of the current specification after loading project.string currentSpecName = Bentley.Plant.StandardPreferences.DlgStandardPreference.GetPreferenceValue("SPECIFICATION");
string currentSpecName = Bentley.Plant.StandardPreferences.DlgStandardPreference.GetPreferenceValue("SPECIFICATION");
Please tell me how to catch event changes to the specifications in the window "Standard Preferences for Equipment".
Answer Verified By: Robert Hook
To catch a parameter "Specification" change event in a window "Standard Preference", you must implement the method
using Bentley.Plant.StandardPreferences; namespace PROJECT_NAMESPACE { public partial class MainClass { public MainClass { DlgStandardPreference instance = DlgStandardPreference.GetInstance(); instance.SPChangedCallback += new StandardPreferencesChangedEvent(OnStandardPreferencesChangedEvent); } private void OnStandardPreferencesChangedEvent(object o, EventArgs args) { //some actions } } }
Vitaliy Malikov said:o catch a parameter "Specification" change event
Thanks for publishing your solution for OpenPlant Modeller V8i!
Regards, Jon Summers LA Solutions