Пример создания модуля и его отладка
Пример создания простейшего модуля расширения для Flexberry Designer
Необходимо подключить библиотеки:
- ICSSoft.STORMNET.DataObject
- Repository
- STORM.NET Case Tool plugin
using System;
using System.Collections.Generic;
using System.Text;
using STORMCASE.Plugin;
using STORMCASE.Repository;
using System.Windows.Forms;
namespace STORMCASE.Plugin
{
public class OurPlugin : CasePlugin
{
#region private members
private NamedDoMethod[] _stageFeatures;
private NamedDoMethod[] _configurationFeatures;
private Type[] _stageTypes = new Type[] { typeof(STORMCASE.STORMNET.Repository.Stage) };
private string _name;
private string _description;
#endregion
#region CasePlugin members
public override string Description
{
get { return _description; }
}
public override void EditSettings()
{
}
public override NamedDoMethod[] GetFeatures(object SelectedObject)
{
if (SelectedObject.GetType() == typeof(STORMCASE.Repository.Configuration))
return _configurationFeatures;
else if (SelectedObject.GetType() == typeof(STORMCASE.STORMNET.Repository.Stage))
return _stageFeatures;
else return null;
}
public override Type[] GetStageTypes()
{
return _stageTypes;
}
public override string Name
{
get { return _name; }
}
public override string Settings
{
get
{
return null;
}
set
{
}
}
protected override void prv_SetDefaultSettings()
{
}
#endregion
#region Constructors
public OurPlugin()
{
_name = "Our plugin name";
_description = "Example of plugin";
// Операции, доступные для стадии.
_stageFeatures = new NamedDoMethod[] { new NamedDoMethod("Вывести имя стадии", new DoMethodDelegate(ShowStageName)) };
// Операции, доступные для конфигурации.
_configurationFeatures = new NamedDoMethod[] { new NamedDoMethod("Вывести имя конфигурации", new DoMethodDelegate(ShowConfigurationName)) };
}
#endregion
#region Methods
public void ShowStageName(object oStage)
{
// Stage, либо его наследник STORMCASE.STORMNET.Repository.Stage.
Stage stage = oStage as Stage;
MessageBox.Show(stage.Name);
}
public void ShowConfigurationName(object oConf)
{
Configuration conf = oConf as Configuration;
MessageBox.Show(conf.Name);
}
#endregion
}
}
Отладка модуля расширения
Для того чтобы отлаживать модуль расширения, можно в конфигурационном файле Flexberry Designer добавить следующую настройку:
<add key="GenerationDebug" value="true"/>
Если настройка стоит, то в некоторых случаях при выходе в отдельный процесс будет выведено сообщение, когда можно производить подключение к новому созданному процессу.