-1
我正在使用Tridion 2011 SP1,并且我正在创建类似于开始 - >创建 - >审阅 - >发布 - 停止的工作流程。CurrentWorkItem.ID在工作流脚本编辑器中是否正确?
我创建并注册了类库,并使用VBscript(WF Tab的脚本编辑器)调用C#方法,如下所示。
Option Explicit
Dim workflowHandler
Set workflowHandler= CreateObject("CoreComponentWorkflow.WorkflowHandler")
If Not workflowHandler Is Nothing Then
Call workflowHandler.PublishComponent(Cstr(CurrentWorkItem.ID))
FinishActivity "Published to WIP"
End If
Set workflowHandler= Nothing
上述代码是否正确?我相信我能够使用下面的行创建对象。
Set workflowHandler= CreateObject("CoreComponentWorkflow.WorkflowHandler")
而且我目前只发布使用C#代码当前项目,我打电话下面的C#功能。
Call workflowHandler.PublishComponent(Cstr(CurrentWorkItem.ID))
发布项目后,我正在完成使用下面的活动。
FinishActivity "Published to WIP"
我已经检查了上面的代码直接在服务器上硬编码currentworkitem,它工作正常。但是当我在vbscript编辑器中放入相同的代码时,该项目不会发布。
任何人都可以在此建议吗?
我认为提供的代码将返回您不是组件ID的流程实例ID。正确的API调用将为CurrentWorkItem.GetItem()。ID 请注意,GetItem方法具有可选参数TdsDefines.EnumOpenMode。 – 2012-07-10 10:36:06
你是对的。这只会让实例ID不是tcmid。编辑回应。 – 2012-07-11 00:06:23