Tridion 如何从当前自动活动设置下一个活动?

Tridion 如何从当前自动活动设置下一个活动?,tridion,tridion-2011,Tridion,Tridion 2011,我正在尝试从当前活动(自动决策活动)中决定下一个活动。下面是我的代码。如何设置下一个活动 public void DebugUserCheck(字符串workitemid) { CoreServiceSession客户端=新建CoreServiceSession(); SessionAwareCoreServiceClient csClient=client.GetClient(); var readoption=new ReadOptions(); WorkItemData workitem=

我正在尝试从当前活动(自动决策活动)中决定下一个活动。下面是我的代码。如何设置下一个活动

public void DebugUserCheck(字符串workitemid)
{
CoreServiceSession客户端=新建CoreServiceSession();
SessionAwareCoreServiceClient csClient=client.GetClient();
var readoption=new ReadOptions();
WorkItemData workitem=(WorkItemData)csClient.Read(workitemid,readoption);
ActivityInstanceData currentactivity=(ActivityInstanceData)csClient.Read(workitem.Activity.IdRef,readoption);
TridOnActivityDefinitionData activitydefinition=(TridOnActivityDefinitionData)csClient.Read(currentactivity.activitydefinition.IdRef,readoption);
ProcessDefinitionData processdefinition=(ProcessDefinitionData)csClient.Read(activitydefinition.processdefinition.IdRef,readoption);
IList activityDefinitions=新列表(processdefinition.activityDefinitions);
字符串superuseractivitytitle=“”;
字符串superuseractivityid=“”;
字符串normaluseractivitytitle=“”;
字符串normaluseractivityid=“”;
foreach(activityDefinitions中的var活动)
{
如果(activity.Title==“覆盖”)
{
superuseractivitytitle=activity.Title;
superuseractivityid=activity.Id;
}
if(activity.Title==“作者决定”)
{
normaluseractivitytitle=activity.Title;
normaluseractivityid=activity.Id;
}
}
UserData user=csClient.GetCurrentUser();
如果(user.Id==“tcm:0-141-65552”)
{
ActivityDefinitionData nextactivity=(ActivityDefinitionData)csClient.Read(superuseractivityid,readoption);
ActivityFinishData finishdata=新ActivityFinishData();
finishdata.Message=“自动决策活动已完成”;
csClient.FinishActivity(currentactivity.Id、finishdata、readoption);
}
其他的
{
ActivityDefinitionData nextactivity=(ActivityDefinitionData)csClient.Read(normaluseractivityid,readoption);
ActivityFinishData finishdata=新ActivityFinishData();
finishdata.Message=“自动决策活动已完成”;
csClient.FinishActivity(currentactivity.Id、finishdata、readoption);
}            
}   

使用
DecisionActivityFinishData
代替
ActivityFinishData

var decisionActivityFinishData = new DecisionActivityFinishData
{
  NextActivity = new LinkToActivityDefinitionData{IdRef = "next activity ID"}
};
csClient.FinishActivity(currentactivity.Id, decisionActivityFinishData, 
                        readoption);