blob: 0fb2a30c915906e60edaeb9e1b993b32dad67781 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
<?xml version="1.0" encoding="UTF-8"?>
<cristalscript>
<output name="errors" type="com.c2kernel.scripting.ErrorInfo"/>
<script language="javascript" name=""><![CDATA[
importClass(Packages.com.c2kernel.lookup.DomainPath);
var job = bsf.lookupBean("job");
var item = bsf.lookupBean("item");
var agent = bsf.lookupBean("agent");
var errorBuffer = bsf.lookupBean("errors");
var wfDefName = job.getOutcome().getField("WorkflowDefinitionName");
var root = new DomainPath("/desc/ActivityDesc");
var wfItem;
try {
var wfPath = root.find(wfDefName);
wfItem = agent.getItem(wfPath);
} catch (e) { errorBuffer.addError(wfDefName+" is not a valid item"); errorBuffer.setFatal(); }
if (!errorBuffer.getFatal()) {
var itemType = wfItem.getProperty("Type");
var complex = wfItem.getProperty("Complexity");
if (!itemType.equals("ActivityDesc")) {
errorBuffer.addError(wfDefName+" is not an activity description");
errorBuffer.setFatal();
}
if (!complex.equals("Composite")) {
errorBuffer.addError(wfDefName+" is not a composite activity description");
errorBuffer.setFatal();
}
}
if (!errorBuffer.getFatal()) {
var coll = item.getObject("/Collection/Workflow");
if (coll.size() > 0) {
var member = coll.getMembers().list.get(0);
coll.removeMember(member.getID());
}
coll.addMember(wfItem.getSystemKey());
var params = new Array(1);
params[0] = agent.marshall(coll);
agent.execute(item, "AddC2KObject", params);
}
errorBuffer;
]]></script>
</cristalscript>
|