Добрый день.
У меня такой вопрос. Можно ли вызвать бизнес-процесс из скрипта c#?
Нравится
UserConnection userConnection = HttpContext.Current.Session[@"UserConnection"] as UserConnection; ProcessSchemaManager processSchemaManager = (ProcessSchemaManager)userConnection.GetSchemaManager(@"ProcessSchemaManager"); ProcessSchema processSchema = processSchemaManager.GetInstanceByName(@"GetManager"); //вместо GetManager вставить название БП Process process = processSchema.CreateProcess(userConnection); if (processSchema.Parameters.ExistsByName(@"ContactNum")) { process.SetPropertyValue(@"ContactNum", var1); } process.SetPropertyValue(@"ManagerNum", var2);//можно не проверять на существование параметра ...набиваем параметрами процесс... process.Execute(userConnection);
"Варфоломеев Данила Викторович" написал:UserConnection userConnection = HttpContext.Current.Session[@"UserConnection"] as UserConnection;
ProcessSchemaManager processSchemaManager = (ProcessSchemaManager)userConnection.GetSchemaManager(@"ProcessSchemaManager");
ProcessSchema processSchema = processSchemaManager.GetInstanceByName(@"GetManager"); //вместо GetManager вставить название БП
Process process = processSchema.CreateProcess(userConnection);
if (processSchema.Parameters.ExistsByName(@"ContactNum"))
{
process.SetPropertyValue(@"ContactNum", var1);
}
process.SetPropertyValue(@"ManagerNum", var2);//можно не проверять на существование параметра
...набиваем параметрами процесс...
process.Execute(userConnection);
Спасибо.
Но почему-то это не хочет работать в скрипте бизнес-процесса. Выкидывает ошибку: Невозможно получить экземпляр схемы типа "Terrasoft.Core.Process.UsrProcess2Schema".
Разобрался сам, надо было просто скомпилировать 2-й бизнес-процесс.