Коннектор с типом систем «Microsoft Dynamics AX 4.0»
Примеры настройки ответной части системы Dynamics AX 4.0
Для выполнения любого из действий интеграции в системе AX 4.0 необходимо на форме справочника создать кнопку. В качестве обработчика кнопки необходимо задать код на X++, инициирующий одно из действий интеграции. В следующих разделах приведены примеры кода.
Выгрузка данных из системы DIRECTUM и загрузка в систему Dynamics AX 4.0
// Код системы DIRECTUM.
Str DIRECTUMCode ="<Код системы DIRECTUM>";
// Режим выгрузки данных из DIRECTUM.
Str Mode = "Batch";
// Признак запуска действия интеграции в скрытом режиме.
Str HiddenMode = "-1";
// Код системы AX.
Str IntegrationSystemCode = "<Код интегрированной системы>";
// Имя действия интеграции.
Str Action ="ImportDataToInregratedSystem";
COMVariant tempVariant;
COM DIRECTUMLogon;
COM DIRECTUMApplication;
Str AddParams;
COM ScriptFactory;
COM Script;
COM ScriptParams;
#define.SBLogonProgId("SBLogon.LoginPoint")
// Создать приложение DIRECTUM.
DIRECTUMLogon = new COM(#SBLogonProgId);
tempVariant = DIRECTUMLogon.GetApplication(COMVariant::createFromStr(
"SystemCode=" + DIRECTUMCode));
DIRECTUMApplication = COM::createFromVariant(tempVariant);
// Сформировать параметры.
AddParams = strfmt("Mode=%1;HiddenMode=%2;IntegratedSystemCode=%3",
Mode, HiddenMode, IntegrationSystemCode);
// Выполнить сценарий.
ScriptFactory = DirectumApplication.ScriptFactory();
Script = ScriptFactory.GetObjectByName(COMVariant::createFromStr(
"LaunchIntegrationAction"));
ScriptParams = Script.Params();
ScriptParams.Add(COMVariant::createFromStr("Action"),
COMVariant::createFromStr(Action));
ScriptParams.Add(COMVariant::createFromStr("AddParams"),
COMVariant::createFromStr(AddParams));
Script.Execute();
Выгрузка данных из системы Dynamics AX 4.0 и загрузка в систему DIRECTUM
// Код системы DIRECTUM.
Str DIRECTUMCode ="<Код системы DIRECTUM>";
// Режим выгрузки данных из AX.
Str Mode = "Batch";
// Признак запуска действия интеграции в скрытом режиме.
Str HiddenMode = "-1";
// Код системы AX.
Str IntegrationSystemCode = "<Код интегрированной системы>";
// Признак отключения событий в справочниках DIRECTUM
// при приеме записей из внешней системы.
Str DisableEvents ="0";
// Имя действия интеграции.
Str Action = "ExportDataFromInregratedSystem";
COMVariant tempVariant;
COM DIRECTUMLogon;
COM DIRECTUMApplication;
Str AddParams;
COM ScriptFactory;
COM Script;
COM ScriptParams;
#define.SBLogonProgId("SBLogon.LoginPoint")
// Создать приложение DIRECTUM.
DIRECTUMLogon = new COM(#SBLogonProgId);
tempVariant = DIRECTUMLogon.GetApplication(COMVariant::createFromStr(
"SystemCode=" + DIRECTUMCode));
DIRECTUMApplication = COM::createFromVariant(tempVariant);
// Сформировать параметры.
AddParams = strfmt(
"Mode=%1;HiddenMode=%2;DisableEvents=%3;IntegratedSystemCode=%4",
Mode, HiddenMode, DisableEvents, IntegrationSystemCode);
// Выполнить сценарий.
ScriptFactory = DirectumApplication.ScriptFactory();
Script = ScriptFactory.GetObjectByName(
COMVariant::createFromStr("LaunchIntegrationAction"));
ScriptParams = Script.Params();
ScriptParams.Add(COMVariant::createFromStr("Action"),
COMVariant::createFromStr(Action));
ScriptParams.Add(COMVariant::createFromStr("AddParams"),
COMVariant::createFromStr(AddParams));
Script.Execute();
Открытие окна со списком электронных документов, связанных с объектом системы Dynamics AX 4.0
Str DIRECTUMCode = "<Код системы DIRECTUM>"; // Код системы DIRECTUM
Str IntegrationSystemCode = "<Код интегрированной системы>"; // Код системы AX
Str ObjectID = "<ИД объекта>"; // Идентификатор объекта системы AX
Str ObjectType = "<Тип объекта>"; // Имя таблицы системы AX
Str Action = "OpenBoundEDocumentsList"; // имя действия интеграции
COMVariant tempVariant;
COM DIRECTUMLogon;
COM DIRECTUMApplication;
Str AddParams;
COM ScriptFactory;
COM Script;
COM ScriptParams;
#define.SBLogonProgId("SBLogon.LoginPoint")
// Создать приложение DIRECTUM
DIRECTUMLogon = new COM(#SBLogonProgId);
tempVariant = DIRECTUMLogon.GetApplication(COMVariant::createFromStr("SystemCode=" + DIRECTUMCode));
DIRECTUMApplication = COM::createFromVariant(tempVariant);
// Сформировать параметры
AddParams = strfmt("IntegratedSystemCode=%1;ObjectType=%2;ObjectKey=%3", IntegrationSystemCode, ObjectType, ObjectID);
// Выполнить сценарий
ScriptFactory = DirectumApplication.ScriptFactory();
Script = ScriptFactory.GetObjectByName(COMVariant::createFromStr("LaunchIntegrationAction"));
ScriptParams = Script.Params();
ScriptParams.Add(COMVariant::createFromStr("Action"), COMVariant::createFromStr(Action));
ScriptParams.Add(COMVariant::createFromStr("AddParams"), COMVariant::createFromStr(AddParams));
Script.Execute();
Отправка объекта системы Dynamics AX 4.0 вложением в задачу DIRECTUM
// Код системы DIRECTUM.
Str DIRECTUMCode ="<Код системы DIRECTUM>";
// Код системы Ax.
Str IntegrationSystemCode = "<Код интегрированной системы>";
// Идентификатор объекта системы AX.
Str ObjectID = "<ИД объекта>";
// Имя таблицы системы AX.
Str ObjectType = "<Тип объекта>";
// Kод типового маршрута, по которому должна быть создана задача.
Str StandardRouteCode = "<Код типового маршрута>";
// Имя действия интеграции.
Str Action ="SendExternalObjectAsTaskAttachment";
COMVariant tempVariant;
COM DIRECTUMLogon;
COM DIRECTUMApplication;
Str AddParams;
COM ScriptFactory;
COM Script;
COM ScriptParams;
#define.SBLogonProgId("SBLogon.LoginPoint")
// Создать приложение DIRECTUM.
DIRECTUMLogon = new COM(#SBLogonProgId);
tempVariant = DIRECTUMLogon.GetApplication(
COMVariant::createFromStr("SystemCode=" + DIRECTUMCode));
DIRECTUMApplication = COM::createFromVariant(tempVariant);
// Сформировать параметры.
AddParams = strfmt(
"IntegratedSystemCode=%1;ObjectType=%2;ObjectKey=%3;StandardRouteCode=%4",
IntegrationSystemCode, ObjectType, ObjectID, StandardRouteCode);
// Выполнить сценарий.
ScriptFactory = DirectumApplication.ScriptFactory();
Script = ScriptFactory.GetObjectByName(COMVariant::createFromStr(
"LaunchIntegrationAction"));
ScriptParams = Script.Params();
ScriptParams.Add(COMVariant::createFromStr("Action"),
COMVariant::createFromStr(Action));
ScriptParams.Add(COMVariant::createFromStr("AddParams"),
COMVariant::createFromStr(AddParams));
Script.Execute();
См. также:
© 2009, Компания DIRECTUM
|
Отправить комментарий к этому разделу на
support@directum.ru
|