我正在使用Tridion 2011 SP1,我正在创建工作流程,例如start - > create - > Review - > publish - Stop。
我创建并注册了类库,并使用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编辑器中放入相同的代码时,该项目不会发布。
任何人都能对此提出建议吗?
答案 0 :(得分:2)
当您进行硬编码时,您可能会直接添加TCM ID以使其正常工作,这意味着CurrentWorkItem.ID
不是获取组件ID的正确API调用。请参阅下面的Igor评论以获取tcm id。