implementierung cargosoft splitbuchung
This commit is contained in:
parent
a0e2655c1e
commit
caab9537b2
4 changed files with 5382 additions and 3 deletions
|
|
@ -0,0 +1,237 @@
|
|||
package com.alexanderlogistics;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.ListIterator;
|
||||
import java.util.Map;
|
||||
import java.util.StringTokenizer;
|
||||
import java.util.logging.Logger;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import javax.inject.Inject;
|
||||
|
||||
import org.imixs.marty.ejb.SequenceService;
|
||||
import org.imixs.workflow.ItemCollection;
|
||||
import org.imixs.workflow.SignalAdapter;
|
||||
import org.imixs.workflow.WorkflowKernel;
|
||||
import org.imixs.workflow.engine.WorkflowService;
|
||||
import org.imixs.workflow.engine.plugins.SplitAndJoinPlugin;
|
||||
import org.imixs.workflow.exceptions.AdapterException;
|
||||
import org.imixs.workflow.exceptions.ModelException;
|
||||
import org.imixs.workflow.exceptions.PluginException;
|
||||
|
||||
/**
|
||||
* Der CargosoftSplitAdapter erezeugt anhand der Positionstablelle eignee
|
||||
* cargosoft export workitems, getrennt für jede Buchungsperdiode. Dies ist
|
||||
* notwendig, da Cargosoft selbst nicht mit unterschiedlichen Buchungsperioden
|
||||
* in einer Rechnung umgehen kann.
|
||||
* <p>
|
||||
* adapter exports the invoice data to a ftp server connected to cargosoft. Da
|
||||
* auch eine fortlaufene Rechnungsnummer von Cargosoft zwingend vorgeschrieben
|
||||
* ist, erzeugt der adapter auch für jedes weiteres cargosoft export worktiem
|
||||
* ein neue Sequencenummer die im Hautpworkitem gespeichert wird.
|
||||
* <p>
|
||||
* Der Adapter wird im Modell wie folgt konfiguriert
|
||||
*
|
||||
* <pre>
|
||||
* {@code
|
||||
<cargosoft>
|
||||
<modelversion>cargosoft-export-1.0</modelversion>
|
||||
<task>1000</task>
|
||||
<event>100</event>
|
||||
<items>(?!txtworkflowhistory)(^[a-zA-Z]|^_)</items>
|
||||
</cargosoft>
|
||||
|
||||
}
|
||||
* </pre>
|
||||
* <p>
|
||||
* Because we also export the attachment data to cargosoft, the adaper lookups
|
||||
* the conente of the attachment in the snapshot of the origin workitem
|
||||
*
|
||||
*
|
||||
* @version 1.0
|
||||
* @author rsoika
|
||||
*/
|
||||
public class CargosoftSplitAdapter implements SignalAdapter {
|
||||
|
||||
public static final String CONFIG_ERROR = "CONFIG_ERROR";
|
||||
private static Logger logger = Logger.getLogger(CargosoftSplitAdapter.class.getName());
|
||||
|
||||
@Inject
|
||||
WorkflowService workflowService;
|
||||
|
||||
@Inject
|
||||
SequenceService sequenceService;
|
||||
|
||||
/**
|
||||
* This method computes the cargosoft export data file
|
||||
*
|
||||
* @throws PluginException
|
||||
*/
|
||||
@SuppressWarnings("rawtypes")
|
||||
@Override
|
||||
public ItemCollection execute(ItemCollection workitem, ItemCollection event)
|
||||
throws AdapterException, PluginException {
|
||||
|
||||
logger.info("......starting export...");
|
||||
try {
|
||||
|
||||
// read the cargosoft split options
|
||||
ItemCollection evalItemCollection = workflowService.evalWorkflowResult(event, "cargosoft", workitem, false);
|
||||
|
||||
if (evalItemCollection == null) {
|
||||
throw new PluginException(CargosoftSplitAdapter.class.getSimpleName(), CONFIG_ERROR,
|
||||
"missign cargosoft configuration in model event - please check model configuration");
|
||||
}
|
||||
String model = evalItemCollection.getItemValueString("model");
|
||||
int taskID = evalItemCollection.getItemValueInteger("task");
|
||||
int eventID = evalItemCollection.getItemValueInteger("event");
|
||||
String items = evalItemCollection.getItemValueString("items");
|
||||
|
||||
if (model.isEmpty() || taskID == 0 || eventID == 0) {
|
||||
throw new PluginException(CargosoftSplitAdapter.class.getSimpleName(), CONFIG_ERROR,
|
||||
"missign cargosoft configuration 'model', 'task', 'event' - please check model configuration");
|
||||
}
|
||||
|
||||
// Zunaechst müssen wir festelstellen, ob es mehrere unterschiedliche
|
||||
// Buchungsperioden in der Positionstabelle gibt.
|
||||
List<String> buchungsPersioden = new ArrayList<String>();
|
||||
// add haupt buchungsperiode
|
||||
buchungsPersioden.add(workitem.getItemValueString("invoice.period"));
|
||||
List<ItemCollection> positionsTabelle = InvoicePlugin.explodeChildList(workitem);
|
||||
for (ItemCollection posItem : positionsTabelle) {
|
||||
String childPeriod = posItem.getItemValueString(InvoicePlugin.ITEM_INVOICE_PERIOD);
|
||||
if (!childPeriod.isEmpty() && !buchungsPersioden.contains(childPeriod)) {
|
||||
buchungsPersioden.add(childPeriod);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// nun wird für jede Buchungsperiode ein eigener corgosoft Export angestoßen....
|
||||
boolean nextSequencenumber = false;
|
||||
for (String buchungsPeriode : buchungsPersioden) {
|
||||
// nun entnehmen wir aus der positionsTabelle alle einträge die zu dieser
|
||||
// Periode passen...
|
||||
// (die erste Periode ist die default periode welche wir nehemn wenn keine
|
||||
// Periode angegeben wurde).
|
||||
ItemCollection workitemSubProcess = new ItemCollection();
|
||||
// now clone the field list...
|
||||
copyItemList(items, workitem, workitemSubProcess);
|
||||
|
||||
// in die _childs Liste kommen jetzt nur passende Positionseinträge mit der
|
||||
// selben Buchungsperiode
|
||||
List<Map> splitPositionen = new ArrayList<Map>();
|
||||
ListIterator<ItemCollection> iter = positionsTabelle.listIterator();
|
||||
int row = 1;
|
||||
float netto = 0;
|
||||
float total = 0;
|
||||
// float tax=0;
|
||||
while (iter.hasNext()) {
|
||||
ItemCollection posItem = iter.next();
|
||||
String childPeriod = posItem.getItemValueString(InvoicePlugin.ITEM_INVOICE_PERIOD);
|
||||
if (childPeriod.isEmpty() || buchungsPeriode.equals(childPeriod)) {
|
||||
posItem.setItemValue("numpos", row);
|
||||
splitPositionen.add(posItem.getAllItems());
|
||||
iter.remove();
|
||||
row++;
|
||||
netto = netto + posItem.getItemValueFloat("amount");
|
||||
total = total + posItem.getItemValueFloat("total");
|
||||
|
||||
}
|
||||
}
|
||||
workitemSubProcess.setItemValue(InvoicePlugin.ITEM_INVOICE_PERIOD, buchungsPeriode);
|
||||
// jetzt muessen wir die neue Rechnungssumme bilden....
|
||||
workitemSubProcess.setItemValue("order.total", total);
|
||||
workitemSubProcess.setItemValue("order.total.tax", total - netto);
|
||||
workitemSubProcess.setItemValue("order.total.netto", netto);
|
||||
|
||||
logger.info("......create cargosoft split buchung - invoice.period=" + buchungsPeriode);
|
||||
// update the child items (reduzierte Positionstabelle)
|
||||
workitemSubProcess.setItemValue(InvoicePlugin.CHILD_ITEM_PROPERTY, splitPositionen);
|
||||
|
||||
workitemSubProcess.model(model).task(taskID).event(eventID);
|
||||
workitemSubProcess.replaceItemValue(WorkflowService.UNIQUEIDREF, workitem.getUniqueID());
|
||||
|
||||
// ab dem zweiten durchlauf benötigen wir immer eine neue sequencenumer
|
||||
if (nextSequencenumber) {
|
||||
workitemSubProcess.removeItem("numsequencenumber");
|
||||
// wegen numernkreis bildung muss hier die WrokflowGroup kurzfirstig auf
|
||||
// 'Rechnungseingang' gesetzt werden!
|
||||
workitemSubProcess.setItemValue(WorkflowKernel.WORKFLOWGROUP, "Rechnungseingang");
|
||||
sequenceService.computeSequenceNumber(workitemSubProcess);
|
||||
logger.info(".......compute new sequence number: "
|
||||
+ workitemSubProcess.getItemValueLong("numsequencenumber"));
|
||||
workitem.appendItemValueUnique("numsequencenumber_sub",
|
||||
workitemSubProcess.getItemValueLong("numsequencenumber"));
|
||||
} else {
|
||||
nextSequencenumber = true;
|
||||
}
|
||||
workitemSubProcess = workflowService.processWorkItem(workitemSubProcess);
|
||||
// finally add the new workitemRef into the origin
|
||||
workitem.appendItemValueUnique(SplitAndJoinPlugin.LINK_PROPERTY, workitemSubProcess.getUniqueID());
|
||||
|
||||
}
|
||||
|
||||
} catch (ModelException e) {
|
||||
logger.severe("cargosoft split failed: " + e.getMessage());
|
||||
throw new PluginException(CargosoftSplitAdapter.class.getSimpleName(), CONFIG_ERROR, e.getMessage(), e);
|
||||
}
|
||||
|
||||
return workitem;
|
||||
}
|
||||
|
||||
/**
|
||||
* This Method copies the fields defined in 'items' into the targetWorkitem.
|
||||
* Multiple values are separated with comma ','.
|
||||
* <p>
|
||||
* In case a item name contains '|' the target field name will become the right
|
||||
* part of the item name.
|
||||
* <p>
|
||||
* Example: {@code
|
||||
* txttitle,txtfirstname
|
||||
*
|
||||
* txttitle|newitem1,txtfirstname|newitem2
|
||||
*
|
||||
* }
|
||||
*
|
||||
* <p>
|
||||
* Optional also reg expressions are supported. In this case mapping of the item
|
||||
* name is not supported.
|
||||
* <p>
|
||||
* Example: {@code
|
||||
* (^artikel$|^invoice$),txtTitel|txtNewTitel
|
||||
*
|
||||
*
|
||||
* } A reg expression must be includes in brackets.
|
||||
*
|
||||
*/
|
||||
protected void copyItemList(String items, ItemCollection source, ItemCollection target) {
|
||||
// clone the field list...
|
||||
StringTokenizer st = new StringTokenizer(items, ",");
|
||||
while (st.hasMoreTokens()) {
|
||||
String field = st.nextToken().trim();
|
||||
|
||||
// test if field is a reg ex
|
||||
if (field.startsWith("(") && field.endsWith(")")) {
|
||||
Pattern itemPattern = Pattern.compile(field);
|
||||
Map<String, List<Object>> map = source.getAllItems();
|
||||
for (String itemName : map.keySet()) {
|
||||
if (itemPattern.matcher(itemName).find()) {
|
||||
target.replaceItemValue(itemName, source.getItemValue(itemName));
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
// default behavior without reg ex
|
||||
int pos = field.indexOf('|');
|
||||
if (pos > -1) {
|
||||
target.replaceItemValue(field.substring(pos + 1).trim(),
|
||||
source.getItemValue(field.substring(0, pos).trim()));
|
||||
} else {
|
||||
target.replaceItemValue(field, source.getItemValue(field));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -35,6 +35,7 @@ public class InvoicePlugin extends AbstractPlugin {
|
|||
public static final int TASK_ERFASSUNG = 5001;
|
||||
public static final int TASK_SACHPRUEFUNG = 5200;
|
||||
public static final int EVENT_FREIGEBEN = 20;
|
||||
public static final String ITEM_INVOICE_PERIOD = "invoice.period";
|
||||
|
||||
public static final String CHILD_ITEM_PROPERTY = "_ChildItems";
|
||||
public static final String ERROR_MISSING_DATA = "MISSING_DATA";
|
||||
|
|
@ -80,7 +81,7 @@ public class InvoicePlugin extends AbstractPlugin {
|
|||
if (workitem.getTaskID() == TASK_ERFASSUNG || workitem.getTaskID() == TASK_SACHPRUEFUNG) {
|
||||
// Buchungsperiode auf plausi prüfen
|
||||
if ("workitem".equals(workitem.getType())) {
|
||||
validateBuchungsperiode(workitem.getItemValueString("invoice.period"));
|
||||
validateBuchungsperiode(workitem.getItemValueString(ITEM_INVOICE_PERIOD));
|
||||
}
|
||||
// Cargosoft Kreditorennnummer prüfen
|
||||
validateCargosoftCdtrNumber(workitem);
|
||||
|
|
@ -129,8 +130,8 @@ public class InvoicePlugin extends AbstractPlugin {
|
|||
}
|
||||
|
||||
// Buchunsperiode
|
||||
if (!posItem.getItemValueString("invoice.period").trim().isEmpty()) {
|
||||
validateBuchungsperiode(posItem.getItemValueString("invoice.period"));
|
||||
if (!posItem.getItemValueString(ITEM_INVOICE_PERIOD).trim().isEmpty()) {
|
||||
validateBuchungsperiode(posItem.getItemValueString(ITEM_INVOICE_PERIOD));
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
674
workflow/cargosoft-export-1.0.1.bpmn
Normal file
674
workflow/cargosoft-export-1.0.1.bpmn
Normal file
|
|
@ -0,0 +1,674 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- origin at X=0.0 Y=0.0 -->
|
||||
<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" xmlns:imixs="http://www.imixs.org/bpmn2" xmlns:tl="http://www.w3.org/2001/XMLSchema" id="Definitions_1" exporter="org.eclipse.bpmn2.modeler.core" exporterVersion="1.5.3.SNAPSHOT-v20210402-0910-B1" targetNamespace="http://www.imixs.org/bpmn2">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="txtworkflowmodelversion" type="xs:string">
|
||||
<imixs:value><![CDATA[cargosoft-export-1.0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtfieldmapping" type="xs:string">
|
||||
<imixs:value><![CDATA[Prozess Team | process.team]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txttimefieldmapping" type="xs:string">
|
||||
<imixs:value><![CDATA[Rechnungsdatum | invoice.date]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtplugins" type="xs:string">
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.ResultPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.RulePlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.marty.plugins.ProfilePlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.marty.plugins.SequenceNumberPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.marty.plugins.TeamPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.marty.plugins.DeputyPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.OwnerPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.HistoryPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.LogPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.ApplicationPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.marty.plugins.CommentPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.marty.plugins.MailPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.IntervalPlugin]]></imixs:value>
|
||||
<imixs:value><![CDATA[org.imixs.workflow.engine.plugins.SplitAndJoinPlugin]]></imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:signal id="Signal_3" name="com.alexanderlogistics.CargosoftExportAdapter"/>
|
||||
<bpmn2:message id="Message_2" name="Eskalation-Subject">
|
||||
<bpmn2:documentation id="Documentation_20"><![CDATA[Erinnerung - Rechnungseingang: <itemvalue>_subject</itemvalue> (<itemvalue>txtspacename</itemvalue>)]]></bpmn2:documentation>
|
||||
</bpmn2:message>
|
||||
<bpmn2:message id="Message_4" name="Eskalation-Body">
|
||||
<bpmn2:documentation id="Documentation_21"><![CDATA[
|
||||
<propertyvalue>application.url</propertyvalue>index.jsf?workitem=<itemvalue>$uniqueid</itemvalue>
|
||||
|
||||
Das ist eine automatische generierte E-Mail. Bitte nicht auf diese E-Mail antworten. ]]></bpmn2:documentation>
|
||||
</bpmn2:message>
|
||||
<bpmn2:message id="Message_3" name="Html-Header">
|
||||
<bpmn2:documentation id="Documentation_16"><![CDATA[<html>
|
||||
<head>
|
||||
<style type="text/css">
|
||||
html, body, div, p, h1, h2, h3, ul, ol, span, a, table, td, form, img,
|
||||
li {
|
||||
font-family: Arial;
|
||||
font-style: normal;
|
||||
font-variant: normal;
|
||||
font-weight: normal;
|
||||
font-size: 11pt;
|
||||
}
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 1em;
|
||||
min-width: 41em;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 12pt;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
th, td {
|
||||
border: 1px solid #ccc;
|
||||
}
|
||||
|
||||
th {
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<title>Krieger Email</title>
|
||||
</head>
|
||||
<body>]]></bpmn2:documentation>
|
||||
</bpmn2:message>
|
||||
<bpmn2:message id="Message_6" name="Html-Footer">
|
||||
<bpmn2:documentation id="Documentation_18"><![CDATA[<p>
|
||||
<a href="<propertyvalue>application.url</propertyvalue>index.jsf?workitem=<itemvalue>$uniqueid</itemvalue>"><propertyvalue>application.url</propertyvalue>index.jsf?workitem=<itemvalue>$uniqueid</itemvalue></a>
|
||||
</p><p>
|
||||
Das ist eine automatische generierte E-Mail. Bitte nicht auf diese E-Mail antworten.
|
||||
</p>
|
||||
</body>
|
||||
</html>]]></bpmn2:documentation>
|
||||
</bpmn2:message>
|
||||
<bpmn2:collaboration id="Collaboration_1" name="Default Collaboration">
|
||||
<bpmn2:participant id="Participant_1" name="Cargosoft-Export" processRef="Process_1"/>
|
||||
</bpmn2:collaboration>
|
||||
<bpmn2:process id="Process_1" name="Cargosoft-Export" definitionalCollaborationRef="Collaboration_1" isExecutable="false">
|
||||
<bpmn2:laneSet id="LaneSet_3" name="Lane Set 3">
|
||||
<bpmn2:lane id="Lane_1" name="Buchhaltung">
|
||||
<bpmn2:flowNodeRef>StartEvent_1</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>IntermediateCatchEvent_29</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>Task_6</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>BoundaryEvent_1</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>IntermediateCatchEvent_26</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>EventBasedGateway_3</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>IntermediateCatchEvent_1</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>EndEvent_2</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>IntermediateCatchEvent_27</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>Task_1</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>EndEvent_1</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>Task_2</bpmn2:flowNodeRef>
|
||||
<bpmn2:flowNodeRef>IntermediateCatchEvent_2</bpmn2:flowNodeRef>
|
||||
</bpmn2:lane>
|
||||
</bpmn2:laneSet>
|
||||
<bpmn2:endEvent id="EndEvent_2" name="Ende">
|
||||
<bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
|
||||
</bpmn2:endEvent>
|
||||
<bpmn2:task id="Task_6" imixs:processid="1000" name="Verarbeitung">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="txteditorid" type="xs:string">
|
||||
<imixs:value><![CDATA[form_basic]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtworkflowabstract" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtname" type="xs:string">
|
||||
<imixs:value><![CDATA[Warten auf Zahlungsziel]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtimageurl" type="xs:string">
|
||||
<imixs:value><![CDATA[typcn-archive||]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||
<imixs:value><![CDATA[Buchung <itemvalue>numsequencenumber</itemvalue>: <itemvalue>cdtr.name</itemvalue> <itemvalue>invoice.number</itemvalue>]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||
<imixs:value>true</imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||
<imixs:value><![CDATA[process.team]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||
<imixs:value><![CDATA[{space:?:member}]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||
<imixs:item name="txttype" type="xs:string">
|
||||
<imixs:value><![CDATA[cargosoft]]></imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:documentation id="Documentation_14"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||
<bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
|
||||
<bpmn2:incoming>SequenceFlow_28</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_63</bpmn2:outgoing>
|
||||
</bpmn2:task>
|
||||
<bpmn2:task id="Task_2" imixs:processid="1900" name="Abgeschlossen">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="txttype" type="xs:string">
|
||||
<imixs:value><![CDATA[cargosoftarchive]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txteditorid" type="xs:string">
|
||||
<imixs:value><![CDATA[form_basic]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtworkflowabstract" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtname" type="xs:string">
|
||||
<imixs:value><![CDATA[Rechnung bezahlt]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtimageurl" type="xs:string">
|
||||
<imixs:value><![CDATA[typcn-archive||typcn-tick,imixs-success,icon-sub-se]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||
<imixs:value><![CDATA[Buchung <itemvalue>numsequencenumber</itemvalue>: <itemvalue>cdtr.name</itemvalue> <itemvalue>invoice.number</itemvalue>]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||
<imixs:value>true</imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||
<imixs:value><![CDATA[process.team]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||
<imixs:value><![CDATA[{space:?:member}]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:documentation id="Documentation_4"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||
<bpmn2:incoming>SequenceFlow_16</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
|
||||
<bpmn2:outgoing>SequenceFlow_27</bpmn2:outgoing>
|
||||
</bpmn2:task>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_9" sourceRef="Task_2" targetRef="EndEvent_2"/>
|
||||
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_26" imixs:activityid="110" name="[Export]">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyarchive" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaccessmode" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyscheduledactivity" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyversion" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||
<imixs:item name="numnextactivityid" type="xs:int">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyfollowup" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keypublicresult" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keylogdateformat" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||
<imixs:item name="numnextid" type="xs:int">
|
||||
<imixs:value><![CDATA[7000]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtactivityresult" type="xs:string">
|
||||
<imixs:value><![CDATA[<cargosoft name="report">cargosoft</cargosoft>]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtname" type="xs:string">
|
||||
<imixs:value><![CDATA[Speichern]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipmode" type="xs:string">
|
||||
<imixs:value><![CDATA[1]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="numversionactivityid" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="rtfresultlog" type="xs:string">
|
||||
<imixs:value><![CDATA[Export processing]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||
<imixs:value>false</imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:documentation id="Documentation_63"><![CDATA[Zwischenspeichern]]></bpmn2:documentation>
|
||||
<bpmn2:incoming>SequenceFlow_63</bpmn2:incoming>
|
||||
<bpmn2:incoming>SequenceFlow_23</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_15</bpmn2:outgoing>
|
||||
<bpmn2:dataOutput id="DataOutput_1" name="Signal_2_Output"/>
|
||||
<bpmn2:dataOutputAssociation id="DataOutputAssociation_1">
|
||||
<bpmn2:sourceRef>DataOutput_1</bpmn2:sourceRef>
|
||||
</bpmn2:dataOutputAssociation>
|
||||
<bpmn2:outputSet id="OutputSet_2" name="Output Set 2">
|
||||
<bpmn2:dataOutputRefs>DataOutput_1</bpmn2:dataOutputRefs>
|
||||
</bpmn2:outputSet>
|
||||
<bpmn2:signalEventDefinition id="SignalEventDefinition_2" signalRef="Signal_3"/>
|
||||
</bpmn2:intermediateCatchEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_63" sourceRef="Task_6" targetRef="IntermediateCatchEvent_26"/>
|
||||
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_29" imixs:activityid="100" name="[init]">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyarchive" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaccessmode" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyscheduledactivity" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyversion" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||
<imixs:item name="numnextactivityid" type="xs:int">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyfollowup" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keypublicresult" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keylogdateformat" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||
<imixs:item name="numnextid" type="xs:int">
|
||||
<imixs:value><![CDATA[7000]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtactivityresult" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtname" type="xs:string">
|
||||
<imixs:value><![CDATA[Speichern]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipmode" type="xs:string">
|
||||
<imixs:value><![CDATA[1]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="numversionactivityid" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="rtfresultlog" type="xs:string">
|
||||
<imixs:value><![CDATA[Export started]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||
<imixs:value>false</imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
|
||||
<bpmn2:signalEventDefinition id="SignalEventDefinition_4"/>
|
||||
</bpmn2:intermediateCatchEvent>
|
||||
<bpmn2:eventBasedGateway id="EventBasedGateway_3" gatewayDirection="Diverging">
|
||||
<bpmn2:incoming>SequenceFlow_15</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_38</bpmn2:outgoing>
|
||||
<bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
|
||||
</bpmn2:eventBasedGateway>
|
||||
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_27" imixs:activityid="300" name="[FAILED]">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="rtfresultlog" type="CDATA">
|
||||
<imixs:value><![CDATA[Export failed]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtactivityresult" type="CDATA">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keypublicresult" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:incoming>SequenceFlow_38</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_24</bpmn2:outgoing>
|
||||
<bpmn2:signalEventDefinition id="SignalEventDefinition_6"/>
|
||||
</bpmn2:intermediateCatchEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_38" sourceRef="EventBasedGateway_3" targetRef="IntermediateCatchEvent_27"/>
|
||||
<bpmn2:startEvent id="StartEvent_1" name="Start">
|
||||
<bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
|
||||
</bpmn2:startEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_1" sourceRef="StartEvent_1" targetRef="IntermediateCatchEvent_29"/>
|
||||
<bpmn2:task id="Task_1" imixs:processid="1800" name="Abgebrochen">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="txttype" type="xs:string">
|
||||
<imixs:value><![CDATA[cargosoftarchive]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txteditorid" type="xs:string">
|
||||
<imixs:value><![CDATA[form_basic]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtworkflowabstract" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtname" type="xs:string">
|
||||
<imixs:value><![CDATA[Rechnung bezahlt]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtimageurl" type="xs:string">
|
||||
<imixs:value><![CDATA[typcn-archive||typcn-warning,imixs-error,icon-sub-se]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||
<imixs:value><![CDATA[Buchung <itemvalue>numsequencenumber</itemvalue>: <itemvalue>cdtr.name</itemvalue> <itemvalue>invoice.number</itemvalue>]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||
<imixs:value>true</imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddwritefields" type="xs:string">
|
||||
<imixs:value><![CDATA[process.team]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||
<imixs:value><![CDATA[{space:?:member}]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:documentation id="Documentation_3"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||
<bpmn2:incoming>SequenceFlow_24</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>
|
||||
<bpmn2:outgoing>SequenceFlow_29</bpmn2:outgoing>
|
||||
</bpmn2:task>
|
||||
<bpmn2:endEvent id="EndEvent_1" name="Ende">
|
||||
<bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>
|
||||
</bpmn2:endEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_5" sourceRef="Task_1" targetRef="EndEvent_1"/>
|
||||
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_1" imixs:activityid="200" name="[SUCCESS]">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="keylogtimeformat" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyarchive" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaccessmode" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyscheduledactivity" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyversion" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||
<imixs:item name="numnextactivityid" type="xs:int">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyfollowup" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keypublicresult" type="xs:string">
|
||||
<imixs:value><![CDATA[0]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keylogdateformat" type="xs:string">
|
||||
<imixs:value><![CDATA[2]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||
<imixs:item name="numnextid" type="xs:int">
|
||||
<imixs:value><![CDATA[7000]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtactivityresult" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtname" type="xs:string">
|
||||
<imixs:value><![CDATA[Speichern]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyownershipmode" type="xs:string">
|
||||
<imixs:value><![CDATA[1]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="numversionactivityid" type="xs:string">
|
||||
<imixs:value><![CDATA[]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="rtfresultlog" type="xs:string">
|
||||
<imixs:value><![CDATA[Export successful]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||
<imixs:value>false</imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:documentation id="Documentation_6"><![CDATA[IW24 Export manuell abschließen]]></bpmn2:documentation>
|
||||
<bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_16</bpmn2:outgoing>
|
||||
<bpmn2:outputSet id="OutputSet_1" name="Output Set 1"/>
|
||||
</bpmn2:intermediateCatchEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_3" sourceRef="EventBasedGateway_3" targetRef="IntermediateCatchEvent_1"/>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_4" sourceRef="IntermediateCatchEvent_29" targetRef="Task_6"/>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_15" sourceRef="IntermediateCatchEvent_26" targetRef="EventBasedGateway_3"/>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_16" sourceRef="IntermediateCatchEvent_1" targetRef="Task_2"/>
|
||||
<bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="Task_6">
|
||||
<bpmn2:outgoing>SequenceFlow_23</bpmn2:outgoing>
|
||||
<bpmn2:timerEventDefinition id="TimerEventDefinition_1"/>
|
||||
</bpmn2:boundaryEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_23" sourceRef="BoundaryEvent_1" targetRef="IntermediateCatchEvent_26"/>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_24" sourceRef="IntermediateCatchEvent_27" targetRef="Task_1"/>
|
||||
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_2" imixs:activityid="10" name="Cargosoft Export wiederholen">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="rtfresultlog" type="CDATA">
|
||||
<imixs:value><![CDATA[Export neu gestartet]]></imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:incoming>SequenceFlow_27</bpmn2:incoming>
|
||||
<bpmn2:incoming>SequenceFlow_29</bpmn2:incoming>
|
||||
<bpmn2:outgoing>SequenceFlow_28</bpmn2:outgoing>
|
||||
</bpmn2:intermediateCatchEvent>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_27" sourceRef="Task_2" targetRef="IntermediateCatchEvent_2"/>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_28" sourceRef="IntermediateCatchEvent_2" targetRef="Task_6"/>
|
||||
<bpmn2:sequenceFlow id="SequenceFlow_29" sourceRef="Task_1" targetRef="IntermediateCatchEvent_2"/>
|
||||
</bpmn2:process>
|
||||
<bpmndi:BPMNDiagram id="BPMNDiagram_1" name="Default Collaboration Diagram">
|
||||
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_1">
|
||||
<bpmndi:BPMNShape id="BPMNShape_1" bpmnElement="Participant_1" isHorizontal="true">
|
||||
<dc:Bounds height="301.0" width="1001.0" x="100.0" y="100.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_1" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="92.0" width="14.0" x="106.0" y="204.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Lane_1" bpmnElement="Lane_1" isHorizontal="true">
|
||||
<dc:Bounds height="301.0" width="971.0" x="130.0" y="100.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_26" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="69.0" width="14.0" x="136.0" y="216.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_EndEvent_2" bpmnElement="EndEvent_2">
|
||||
<dc:Bounds height="36.0" width="36.0" x="977.0" y="211.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_3" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="29.0" x="980.0" y="247.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Task_6" bpmnElement="Task_6">
|
||||
<dc:Bounds height="50.0" width="110.0" x="330.0" y="204.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_13" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="70.0" x="350.0" y="222.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Task_2" bpmnElement="Task_2">
|
||||
<dc:Bounds height="50.0" width="110.0" x="780.0" y="204.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_5" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="84.0" x="793.0" y="222.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_IntermediateCatchEvent_26" bpmnElement="IntermediateCatchEvent_26">
|
||||
<dc:Bounds height="36.0" width="36.0" x="480.0" y="211.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_141" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="41.0" x="478.0" y="247.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_IntermediateCatchEvent_29" bpmnElement="IntermediateCatchEvent_29">
|
||||
<dc:Bounds height="36.0" width="36.0" x="260.0" y="211.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_145" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="22.0" x="267.0" y="247.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Message_1" bpmnElement="Message_2">
|
||||
<dc:Bounds height="20.0" width="30.0" x="140.0" y="0.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_174">
|
||||
<dc:Bounds height="28.0" width="63.0" x="124.0" y="20.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Message_2" bpmnElement="Message_4">
|
||||
<dc:Bounds height="20.0" width="30.0" x="209.0" y="0.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_175">
|
||||
<dc:Bounds height="28.0" width="63.0" x="193.0" y="20.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_EventBasedGateway_3" bpmnElement="EventBasedGateway_3" isMarkerVisible="true">
|
||||
<dc:Bounds height="50.0" width="50.0" x="570.0" y="204.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_17" labelStyle="BPMNLabelStyle_1"/>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_IntermediateCatchEvent_27" bpmnElement="IntermediateCatchEvent_27">
|
||||
<dc:Bounds height="36.0" width="36.0" x="670.0" y="127.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_77" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="47.0" x="665.0" y="163.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Message_3" bpmnElement="Message_3">
|
||||
<dc:Bounds height="20.0" width="30.0" x="287.0" y="0.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_163">
|
||||
<dc:Bounds height="14.0" width="70.0" x="267.0" y="20.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Message_4" bpmnElement="Message_6">
|
||||
<dc:Bounds height="20.0" width="30.0" x="360.0" y="0.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_164">
|
||||
<dc:Bounds height="14.0" width="64.0" x="343.0" y="20.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_StartEvent_1" bpmnElement="StartEvent_1">
|
||||
<dc:Bounds height="36.0" width="36.0" x="190.0" y="211.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_2" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="25.0" x="195.0" y="247.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_Task_1" bpmnElement="Task_1">
|
||||
<dc:Bounds height="50.0" width="110.0" x="780.0" y="120.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_9">
|
||||
<dc:Bounds height="14.0" width="74.0" x="798.0" y="138.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_EndEvent_1" bpmnElement="EndEvent_1">
|
||||
<dc:Bounds height="36.0" width="36.0" x="977.0" y="127.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_10" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="29.0" x="980.0" y="163.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_IntermediateCatchEvent_1" bpmnElement="IntermediateCatchEvent_1">
|
||||
<dc:Bounds height="36.0" width="36.0" x="671.0" y="211.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_16" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="14.0" width="65.0" x="657.0" y="247.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_BoundaryEvent_1" bpmnElement="BoundaryEvent_1">
|
||||
<dc:Bounds height="36.0" width="36.0" x="382.0" y="186.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_36"/>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape id="BPMNShape_IntermediateCatchEvent_2" bpmnElement="IntermediateCatchEvent_2">
|
||||
<dc:Bounds height="36.0" width="36.0" x="817.0" y="300.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_39" labelStyle="BPMNLabelStyle_1">
|
||||
<dc:Bounds height="42.0" width="70.0" x="800.0" y="336.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_11" bpmnElement="SequenceFlow_9" sourceElement="BPMNShape_Task_2" targetElement="BPMNShape_EndEvent_2">
|
||||
<di:waypoint xsi:type="dc:Point" x="890.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="933.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="977.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_11"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_63" bpmnElement="SequenceFlow_63" sourceElement="BPMNShape_Task_6" targetElement="BPMNShape_IntermediateCatchEvent_26">
|
||||
<di:waypoint xsi:type="dc:Point" x="440.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="460.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="480.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_142"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_37" bpmnElement="SequenceFlow_38" sourceElement="BPMNShape_EventBasedGateway_3" targetElement="BPMNShape_IntermediateCatchEvent_27">
|
||||
<di:waypoint xsi:type="dc:Point" x="595.0" y="204.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="595.0" y="145.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="670.0" y="145.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_137"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="BPMNShape_StartEvent_1" targetElement="BPMNShape_IntermediateCatchEvent_29">
|
||||
<di:waypoint xsi:type="dc:Point" x="226.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="243.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="260.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_4"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="BPMNShape_Task_1" targetElement="BPMNShape_EndEvent_1">
|
||||
<di:waypoint xsi:type="dc:Point" x="890.0" y="145.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="933.0" y="145.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="977.0" y="145.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_12"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="BPMNShape_EventBasedGateway_3" targetElement="BPMNShape_IntermediateCatchEvent_1">
|
||||
<di:waypoint xsi:type="dc:Point" x="620.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="645.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="671.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_18"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="BPMNShape_IntermediateCatchEvent_29" targetElement="BPMNShape_Task_6">
|
||||
<di:waypoint xsi:type="dc:Point" x="296.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="313.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="330.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_7"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_15" bpmnElement="SequenceFlow_15" sourceElement="BPMNShape_IntermediateCatchEvent_26" targetElement="BPMNShape_EventBasedGateway_3">
|
||||
<di:waypoint xsi:type="dc:Point" x="516.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="543.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="570.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_8"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_16" bpmnElement="SequenceFlow_16" sourceElement="BPMNShape_IntermediateCatchEvent_1" targetElement="BPMNShape_Task_2">
|
||||
<di:waypoint xsi:type="dc:Point" x="707.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="743.0" y="229.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="780.0" y="229.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_22"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_24" bpmnElement="SequenceFlow_23" sourceElement="BPMNShape_BoundaryEvent_1" targetElement="BPMNShape_IntermediateCatchEvent_26">
|
||||
<di:waypoint xsi:type="dc:Point" x="400.0" y="186.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="400.0" y="176.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="498.0" y="176.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="498.0" y="211.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_37"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_25" bpmnElement="SequenceFlow_24" sourceElement="BPMNShape_IntermediateCatchEvent_27" targetElement="BPMNShape_Task_1">
|
||||
<di:waypoint xsi:type="dc:Point" x="706.0" y="145.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="743.0" y="145.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="780.0" y="145.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_38"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_27" bpmnElement="SequenceFlow_27" sourceElement="BPMNShape_Task_2" targetElement="BPMNShape_IntermediateCatchEvent_2">
|
||||
<di:waypoint xsi:type="dc:Point" x="835.0" y="254.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="835.0" y="277.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="835.0" y="300.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_40"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_28" bpmnElement="SequenceFlow_28" sourceElement="BPMNShape_IntermediateCatchEvent_2" targetElement="BPMNShape_Task_6">
|
||||
<di:waypoint xsi:type="dc:Point" x="817.0" y="318.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="385.0" y="318.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="385.0" y="254.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_41"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_29" bpmnElement="SequenceFlow_29" sourceElement="BPMNShape_Task_1" targetElement="BPMNShape_IntermediateCatchEvent_2">
|
||||
<di:waypoint xsi:type="dc:Point" x="890.0" y="153.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="900.0" y="153.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="900.0" y="318.0"/>
|
||||
<di:waypoint xsi:type="dc:Point" x="853.0" y="318.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_42"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
||||
<dc:Font name="arial" size="9.0"/>
|
||||
</bpmndi:BPMNLabelStyle>
|
||||
</bpmndi:BPMNDiagram>
|
||||
</bpmn2:definitions>
|
||||
4467
workflow/rechnungseingang-de-1.1.3.bpmn
Normal file
4467
workflow/rechnungseingang-de-1.1.3.bpmn
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue