3

我在 K2 Blackpearl 上分配了一项任务,该任务涉及以编程方式直接停止某些工作项的进程,而不使用产品的界面,因为它不能达到目的。

问题是在这个业务需求中,一个特定的支持者可以有多个文档上传,这可以通过制作一个从 excel 文件中读取行并自动上传到 K2 的自定义应用程序来实现。

该解决方案的开发人员不再存在,他们的工作细节也无法获得。

我只是被告知可以使用自定义控制台应用程序来停止进程。

有人可以教我正确的道路吗?我之前没有 K2 的经验,所以这对我来说是一项艰巨的任务,因为我不熟悉它的流程。

4

1 回答 1

8

K2 API 有很好的文档,您可以从 K2 地下下载示例代码和演示应用程序。

您的问题的答案在这里:k2underground.com/forums/p/12082/35429.aspx

我已经提取了相关的代码行:

// 参考

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SourceCode.Workflow.Management;
using SourceCode.Hosting.Client.BaseAPI;

// 代码

// connection string
SCConnectionStringBuilder scBuilder = new SCConnectionStringBuilder();
scBuilder.Authenticate = true;
scBuilder.IsPrimaryLogin = true;
scBuilder.Integrated = true;
scBuilder.Host = "localhost";
scBuilder.Port = 5555;

// connect to K2 Server
WorkflowManagementServer wfmServer = new WorkflowManagementServer();

wfmServer.CreateConnection();
wfmServer.Connection.Open(scBuilder.ConnectionString);

// optionally get a list of process instances to explore
/*
ProcessInstances procInst = 
  wfmServer.GetProcessInstancesAll(string.Empty, string.Empty, string.Empty);
*/

// when you've got a proc inst you're interested in, stop it.
int _procInstId = 123; // get this from your process instance context
wfmServer.StopProcessInstances(_procInstId);

您可以在此处找到更多代码示例: Tim Byrne 的博客 re: K2

在 API 中的几十个可用命名空间中,最常用的命名空间是(顺便说一下,公司的名称是 SourceCode):

> Sourcecode.Workflow.Client
> SourceCode.Workflow.Management
> SourceCode.SmartObjects.Client

希望有帮助。

于 2010-12-10T16:49:38.647 回答