Добрый день
Пытаюсь создать Инцидент из активности типа Email . Делаю кнопку в странице карточки Email, обработчик. В БП:
Нравится
Судя по сообщениям об ошибке, что-то неправильно написано в Вашем коде.
По первой, вы используете обращение к Terrasoft.Core.UserConnection.UserContext. А надо Page.UserConnection.UserContext.
По второй, вы обращаетесь к необъявленной переменной. Нужно сначала её объявить, а потом с ней работать. Или же создать одноимённый параметр в БП нужного типа.
Я смотрела тут: http://www.community.terrasoft.ru/forum/topic/9208
Там тоже подобная ошибка была, а сам процесс у меня правильный?
1) первую ошибку устранила.
2) по второй ошибке: создала новый параметр в БП: myParam.
В скрипте подготовки процесса действия открыть карточку пишу:
myParam = IncidentId;
В скрипте Генерации номера Инцидента пишу:
Page.DataSource.ActiveRow.SetColumnValue("IncidentId", myParam);
var entitySchemaManager = Page.Schema.SchemaManagerProvider.GetManager("EntitySchemaManager") as EntitySchemaManager;
var TargetScemaQuery = new EntitySchemaQuery(entitySchemaManager, "ServiceRequest");
var primaryColumn = TargetScemaQuery.AddColumn(TargetScemaQuery.RootSchema.GetPrimaryColumnName());
TargetScemaQuery.AddColumn("Number");
TargetScemaQuery.Filters.Add(TargetScemaQuery.CreateFilterWithParameters(
FilterComparisonType.Equal,
"Id",
myParam));
var incidentCollection = TargetScemaQuery.GetEntityCollection(UserConnection);
if(incidentCollection.Count != 0){
Page.IncidentEdit.SuspendAjaxEvents();
Page.IncidentEdit.SetValueAndText(incidentCollection[0].GetTypedColumnValue(primaryColumn.Name), incidentCollection[0].GetTypedColumnValue("Number"));
Page.IncidentEdit.ResumeAjaxEvents();
}
return true;
При опубликовании ошибка: