首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >属性面板扩展中的新自定义属性未在bpmn关系图xml中反映

属性面板扩展中的新自定义属性未在bpmn关系图xml中反映
EN

Stack Overflow用户
提问于 2021-03-19 07:55:38
回答 1查看 747关注 0票数 1

我在属性面板中添加了一些自定义属性,如下所示,我在General选项卡中添加了Id属性。添加两个新的标签输入和输出。

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="sample-diagram" targetNamespace="http://bpmn.io/schema/bpmn" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
  <bpmn2:process id="Process_1" isExecutable="false">
    <bpmn2:startEvent id="StartEvent_1">
      <bpmn2:outgoing>Flow_0n4p9tk</bpmn2:outgoing>
    </bpmn2:startEvent>
    <bpmn2:task id="Activity_0d872w2">
      <bpmn2:incoming>Flow_0n4p9tk</bpmn2:incoming>
    </bpmn2:task>
    <bpmn2:sequenceFlow id="Flow_0n4p9tk" sourceRef="StartEvent_1" targetRef="Activity_0d872w2" />
  </bpmn2:process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
      <bpmndi:BPMNEdge id="Flow_0n4p9tk_di" bpmnElement="Flow_0n4p9tk">
        <di:waypoint x="448" y="258" />
        <di:waypoint x="500" y="258" />
      </bpmndi:BPMNEdge>
      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
        <dc:Bounds x="412" y="240" width="36" height="36" />
      </bpmndi:BPMNShape>
      <bpmndi:BPMNShape id="Activity_0d872w2_di" bpmnElement="Activity_0d872w2">
        <dc:Bounds x="500" y="218" width="100" height="80" />
      </bpmndi:BPMNShape>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</bpmn2:definitions>

参见2张屏幕截图,我在属性面板中添加了新控件,但如果我下载图表,XML将不会显示给我。我在里面遗漏了什么?注意:我的代码是BPMN自定义属性面板示例的相同副本。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-16 06:06:59

我解决了这个问题。我可以使用以下代码在BPMN图中设置输入输出参数,

代码语言:javascript
复制
set: function setValue(element, values, node) {

          var b_obj = getBusinessObject(element);
          var selectedValues = {};
          selectedValues = values;
          prop[_id] = selectedValues[_id];
          var selectedName = dropdownOptions[parseInt(prop[_id])].name;
          var bo = cmdHelper.updateBusinessObject(element, b_obj, prop);

          var selectedInputParameter = bpmnFactory.create('camunda:InputParameter', {
            name: selectedName,
            value: prop[_id]
          });      
  
          var inputOutput = bpmnFactory.create('camunda:InputOutput', {
            inputParameters: [selectedInputParameter]
          });  
          b_obj.extensionElements = b_obj.extensionElements || bpmnFactory.create('bpmn:ExtensionElements');
          b_obj.extensionElements.get('values').push(inputOutput);
         
          return bo;
        }

我从这里那里得到一个提示

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66704359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档