Quintiq file version 2.0
|
#parent: #root
|
Method OpenNewClientWithDatasetLoaded (
|
internal[MDSObjectInfo] datasetinfo
|
) id:Method_LibOpt_GlobalState_OpenNewClientWithDatasetLoaded
|
{
|
#keys: '[141860.2.203171788]'
|
Body:
|
[*
|
// This method first loads the dataset that belongs to the 'datasetinfo' object, then it executes a command that opens a new thin client.
|
// The dataset that belongs to the 'datasetinfo' object is automatically selected in this new thin client.
|
|
// This method is called when the 'Open client and select dataset' context menu item in the 'Snapshots' form is pressed.
|
|
// This method heavily relies on forbidden Quill. Therefore, this method is only intended to be used for development purposes.
|
|
if( not isnull( datasetinfo ) )
|
{
|
mdsid := datasetinfo.MDSID();
|
if( not datasetinfo.IsLoaded() )
|
{
|
ExternalMDSEditor::Editor().LoadMDS( mdsid, MDSInterface::StandAloneStorageState() );
|
}
|
Process::Execute( 'cmd',
|
'/C',
|
'"' + OS::BinDir() + 'QThinClient.exe"',
|
'/startup.autostart=true', // Attempts to start the client without presenting the login dialog.
|
'/startup.project='
|
// The documentation gives the following warning:
|
// "This element is part of internal infrastructure and must not be used in models."
|
// We use this attribute anyway, because there don't seem to be any good workarounds.
|
+ Application.ApplicationScope().Project().Name(),
|
'/startup.selectdataset='
|
+ datasetinfo.Kind()
|
+ ':'
|
+ datasetinfo.Path()
|
+ '/'
|
+ datasetinfo.Name(),
|
// The ViewManager().CurrentView() relation is forbidden Quill (not an officially supported relation)
|
"'/startup.view=" + ApplicationScope.ViewManager().CurrentView().Name() + "'"
|
);
|
}
|
*]
|
}
|