update op liste export kw
This commit is contained in:
parent
e66b3add86
commit
e9665bf27c
6 changed files with 110 additions and 84 deletions
|
|
@ -28,6 +28,9 @@ public class InvoiceUtil {
|
|||
public static final String CHILD_ITEM_PROPERTY = "_ChildItems";
|
||||
public static final String ITEM_INVOICE_PERIOD = "invoice.period";
|
||||
public static final String ITEM_INVOICE_POSITIONS = "invoice.positions";
|
||||
public static final String ITEM_CDTR_NUMBER = "cdtr.number";
|
||||
public static final String ITEM_CDTR_NAME = "cdtr.name";
|
||||
public static final String ITEM_CDTR_NAME_CARGOSOFT = "cdtr.name.cargosoft";
|
||||
|
||||
public static double round(double value) {
|
||||
BigDecimal bd = BigDecimal.valueOf(value);
|
||||
|
|
@ -76,6 +79,24 @@ public class InvoiceUtil {
|
|||
return childItems;
|
||||
}
|
||||
|
||||
/**
|
||||
* Convert the List of ItemCollections back into a List of Map elements
|
||||
*
|
||||
* @param workitem
|
||||
*/
|
||||
@SuppressWarnings({ "rawtypes" })
|
||||
public static void implodeChildList(ItemCollection workitem, List<ItemCollection> childItems) {
|
||||
List<Map> mapOrderItems = new ArrayList<Map>();
|
||||
// convert the child ItemCollection elements into a List of Map
|
||||
if (childItems != null) {
|
||||
// iterate over all order items..
|
||||
for (ItemCollection orderItem : childItems) {
|
||||
mapOrderItems.add(orderItem.getAllItems());
|
||||
}
|
||||
workitem.replaceItemValue(CHILD_ITEM_PROPERTY, mapOrderItems);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Diese Methode berechnet das feld 'invoice.positions' welches eine Valueliste
|
||||
* mit allen Positionsnummern aus dem Childliste enthält.
|
||||
|
|
|
|||
|
|
@ -200,18 +200,15 @@ public class OPListExportAdapterByWeek extends POIFindReplaceAdapter {
|
|||
XSSFRow rowSpacesCurrencies = sheet.getRow(10);
|
||||
XSSFRow rowValues = sheet.getRow(11);
|
||||
|
||||
XSSFCell cellSpaceLabelReference = rowSpacesLabels.getCell(1);
|
||||
XSSFCell cellSpaceLabelReference = rowSpacesLabels.getCell(2);
|
||||
XSSFCell cellSpaceCurrencyReference = rowSpacesCurrencies.getCell(1);
|
||||
int column = 1;
|
||||
for (ItemCollection space : spaces) {
|
||||
XSSFCell cell = null;
|
||||
String spaceName = space.getItemValueString("space.name");
|
||||
String spaceID = space.getUniqueID();
|
||||
spaceNames.add(spaceName);
|
||||
|
||||
// Space Labe
|
||||
XSSFCell cell = rowSpacesLabels.getCell(column);
|
||||
// cell.copyCellFrom(cellSpaceLabelReference, new CellCopyPolicy());
|
||||
cell.setCellValue(spaceName);
|
||||
// Space currency EUR
|
||||
cell = rowSpacesCurrencies.getCell(column);
|
||||
cell.copyCellFrom(cellSpaceCurrencyReference, new CellCopyPolicy());
|
||||
|
|
@ -223,11 +220,16 @@ public class OPListExportAdapterByWeek extends POIFindReplaceAdapter {
|
|||
cell.copyCellFrom(cellSpaceCurrencyReference, new CellCopyPolicy());
|
||||
cell.setCellValue("USD");
|
||||
|
||||
// Space Label
|
||||
cell = rowSpacesLabels.getCell(column);
|
||||
cell.setCellValue(spaceName);
|
||||
|
||||
// create two new cells...
|
||||
column++;
|
||||
cell = rowSpacesLabels.createCell(column);
|
||||
cell.copyCellFrom(cellSpaceLabelReference, new CellCopyPolicy());
|
||||
cell.setCellValue("");
|
||||
column++;
|
||||
|
||||
cell = rowSpacesLabels.createCell(column);
|
||||
cell.copyCellFrom(cellSpaceLabelReference, new CellCopyPolicy());
|
||||
cell.setCellValue("");
|
||||
|
|
@ -267,21 +269,21 @@ public class OPListExportAdapterByWeek extends POIFindReplaceAdapter {
|
|||
column = 1;
|
||||
for (String name : spaceNames) {
|
||||
String key = name + "/" + week;
|
||||
logger.info("serach WeekInvoiceData for " + key);
|
||||
logger.info("search WeekInvoiceData for " + key);
|
||||
// list of invoices
|
||||
WeekInvoiceData weekData = weekDataMap.get(key);
|
||||
if (weekData != null) {
|
||||
logger.info("eur=" + weekData.totalEUR);
|
||||
logger.info(" EUR=" + weekData.totalEUR + " USD=" + weekData.totalUSD);
|
||||
row.getCell(column).setCellValue(weekData.totalEUR);
|
||||
column++;
|
||||
row.getCell(column).setCellValue(weekData.totalUSD);
|
||||
column++;
|
||||
|
||||
} else {
|
||||
logger.info("...... NOT FOUND");
|
||||
// skip columns
|
||||
column = column + 2;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// update style
|
||||
|
|
@ -392,12 +394,13 @@ public class OPListExportAdapterByWeek extends POIFindReplaceAdapter {
|
|||
private void groupInvoicesByWeek(String spaceID, String spaceName,
|
||||
Map<String, WeekInvoiceData> cache) {
|
||||
|
||||
logger.info("...group invoices for " + spaceID);
|
||||
logger.info("...group invoices for " + spaceName + "/" + spaceID);
|
||||
try {
|
||||
List<ItemCollection> invoices = documentService.find(
|
||||
"$modelversion:rechnungsausgang-* AND type:workitem AND $uniqueidref:" + spaceID, 9999, 0,
|
||||
"invoice.number", false);
|
||||
|
||||
logger.info(" found " + invoices.size() + " for space " + spaceName);
|
||||
for (ItemCollection invoice : invoices) {
|
||||
// compute Week
|
||||
Date dueDate = invoice.getItemValueDate("invoice.duedate");
|
||||
|
|
@ -414,7 +417,7 @@ public class OPListExportAdapterByWeek extends POIFindReplaceAdapter {
|
|||
// haben wir shon ein listchen?
|
||||
|
||||
String key = spaceName + "/" + weekCategory;
|
||||
logger.info("....building weekInvoiceData object for " + key);
|
||||
logger.fine(" ....building weekInvoiceData object for " + key);
|
||||
|
||||
WeekInvoiceData weekData = cache.get(key);
|
||||
if (weekData == null) {
|
||||
|
|
|
|||
|
|
@ -34,10 +34,6 @@ public class ZahlungsavisAppendAdapter implements SignalAdapter {
|
|||
public static final String ERROR_MISSING_DATA = "MISSING_DATA";
|
||||
public static final String ERROR_CONFIG = "CONFIG_ERROR";
|
||||
|
||||
public static final String ITEM_CDTR_NUMBER = "cdtr.number";
|
||||
public static final String ITEM_CDTR_NAME = "cdtr.name";
|
||||
public static final String ITEM_CDTR_NAME_CARGOSOFT = "cdtr.name.cargosoft";
|
||||
|
||||
@Inject
|
||||
WorkflowService workflowService;
|
||||
|
||||
|
|
@ -63,7 +59,7 @@ public class ZahlungsavisAppendAdapter implements SignalAdapter {
|
|||
* @throws PluginException
|
||||
*/
|
||||
private void appendInvoice(ItemCollection document) throws PluginException {
|
||||
String cdtrNumber = document.getItemValueString(ITEM_CDTR_NUMBER);
|
||||
String cdtrNumber = document.getItemValueString(InvoiceUtil.ITEM_CDTR_NUMBER);
|
||||
String currency = document.getItemValueString("invoice.currency");
|
||||
|
||||
if (cdtrNumber == null || cdtrNumber.isEmpty()) {
|
||||
|
|
@ -71,7 +67,6 @@ public class ZahlungsavisAppendAdapter implements SignalAdapter {
|
|||
"Zahlungsavis kann nicht erzeugt werden. Bitte wählen Sie zuerst einen Kreditor aus.");
|
||||
}
|
||||
|
||||
|
||||
logger.info("......Search Zahlungsavis or creditor '" + cdtrNumber + "'...");
|
||||
ItemCollection zahlungsAvis;
|
||||
try {
|
||||
|
|
@ -80,9 +75,12 @@ public class ZahlungsavisAppendAdapter implements SignalAdapter {
|
|||
// create a new one
|
||||
zahlungsAvis = new ItemCollection().workflowGroup("Zahlungsavis").task(1000).event(100);
|
||||
// add cdtr.name
|
||||
zahlungsAvis.setItemValue(ITEM_CDTR_NAME, document.getItemValue(ITEM_CDTR_NAME));
|
||||
zahlungsAvis.setItemValue(ITEM_CDTR_NUMBER, document.getItemValue(ITEM_CDTR_NUMBER));
|
||||
zahlungsAvis.setItemValue(ITEM_CDTR_NAME_CARGOSOFT, document.getItemValue(ITEM_CDTR_NAME_CARGOSOFT));
|
||||
zahlungsAvis.setItemValue(InvoiceUtil.ITEM_CDTR_NAME,
|
||||
document.getItemValue(InvoiceUtil.ITEM_CDTR_NAME));
|
||||
zahlungsAvis.setItemValue(InvoiceUtil.ITEM_CDTR_NUMBER,
|
||||
document.getItemValue(InvoiceUtil.ITEM_CDTR_NUMBER));
|
||||
zahlungsAvis.setItemValue(InvoiceUtil.ITEM_CDTR_NAME_CARGOSOFT,
|
||||
document.getItemValue(InvoiceUtil.ITEM_CDTR_NAME_CARGOSOFT));
|
||||
zahlungsAvis.setItemValue("invoice.currency", currency);
|
||||
} else {
|
||||
// zahlungsavis speichern
|
||||
|
|
@ -112,9 +110,8 @@ public class ZahlungsavisAppendAdapter implements SignalAdapter {
|
|||
List<ItemCollection> resultList = workflowService.getDocumentService().find(query, 999, 0, "$modified", true);
|
||||
|
||||
for (ItemCollection zahlungsavis : resultList) {
|
||||
if (cdtrNumber.equals(zahlungsavis.getItemValueString(ITEM_CDTR_NUMBER))
|
||||
&& currency.equals(zahlungsavis.getItemValueString("invoice.currency"))
|
||||
) {
|
||||
if (cdtrNumber.equals(zahlungsavis.getItemValueString(InvoiceUtil.ITEM_CDTR_NUMBER))
|
||||
&& currency.equals(zahlungsavis.getItemValueString("invoice.currency"))) {
|
||||
return zahlungsavis;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -531,7 +531,7 @@ public class DatevCargosoftImportAdapter implements SignalAdapter {
|
|||
datevWorkitem.setItemValue("invoice.total", total);
|
||||
datevWorkitem.setItemValue("invoice.saldo", total);
|
||||
// implode die Splitbuchungen
|
||||
implodeChildList(datevWorkitem, splitBuchungen);
|
||||
InvoiceUtil.implodeChildList(datevWorkitem, splitBuchungen);
|
||||
|
||||
// set dbtr.name
|
||||
ItemCollection dbtrItemCol = kreditorDebitorService
|
||||
|
|
@ -577,6 +577,8 @@ public class DatevCargosoftImportAdapter implements SignalAdapter {
|
|||
String belegNummer = datevWorkitem.getItemValueString("invoice.number");
|
||||
if (belegNummer.startsWith("ATC")) {
|
||||
// Zollanmeldung
|
||||
// Lookup Kreditor data... and switch dbtr to cdtr
|
||||
updateATCInvoice(datevWorkitem);
|
||||
datevWorkitem.model(INITIAL_MODEL_VERSION_TAX).task(INITIAL_TASK_ID_TAX).event(INITIAL_EVENT_ID_TAX);
|
||||
} else {
|
||||
// Normale Ausgangsrechnung
|
||||
|
|
@ -588,22 +590,41 @@ public class DatevCargosoftImportAdapter implements SignalAdapter {
|
|||
}
|
||||
|
||||
/**
|
||||
* Convert the List of ItemCollections back into a List of Map elements
|
||||
* This helper method updates some attributes of a DATEV Import regarding ATC
|
||||
* Invoice (Zollanmeldungen)
|
||||
*
|
||||
* @param workitem
|
||||
* Hier handelt es sich praktisch um eine Eingangsrechnung, daher tauschen wir
|
||||
* die Vorzeichen und dbtr/cdtr
|
||||
*
|
||||
* @param datevWorkitem
|
||||
* @throws PluginException
|
||||
*/
|
||||
@SuppressWarnings({ "rawtypes" })
|
||||
private void implodeChildList(ItemCollection workitem, List<ItemCollection> childItems) {
|
||||
List<Map> mapOrderItems = new ArrayList<Map>();
|
||||
// convert the child ItemCollection elements into a List of Map
|
||||
if (childItems != null) {
|
||||
logger.fine("Convert child items into Map...");
|
||||
// iterate over all order items..
|
||||
for (ItemCollection orderItem : childItems) {
|
||||
mapOrderItems.add(orderItem.getAllItems());
|
||||
private void updateATCInvoice(ItemCollection datevWorkitem) throws PluginException {
|
||||
String cdtrNumber = datevWorkitem.getItemValueString("dbtr.number");
|
||||
datevWorkitem.setItemValue("cdtr.number", cdtrNumber);
|
||||
datevWorkitem.removeItem("dbtr.number");
|
||||
ItemCollection creditor = kreditorDebitorService.findCreditor(cdtrNumber);
|
||||
if (creditor != null) {
|
||||
// update name....
|
||||
datevWorkitem.setItemValue(InvoiceUtil.ITEM_CDTR_NAME, creditor.getItemValueString("_VENDOR_Name"));
|
||||
}
|
||||
workitem.replaceItemValue(CHILD_ITEM_PROPERTY, mapOrderItems);
|
||||
// Update invoice.positions
|
||||
InvoiceUtil.updateInvoicePositions(datevWorkitem);
|
||||
|
||||
// Switch S/H
|
||||
List<ItemCollection> childs = InvoiceUtil.explodeChildList(datevWorkitem);
|
||||
for (ItemCollection posItem : childs) {
|
||||
if (posItem.hasItem("datev.shzeichen")) {
|
||||
String sh = posItem.getItemValueString("datev.shzeichen");
|
||||
if ("S".equalsIgnoreCase(sh)) {
|
||||
sh = "H";
|
||||
} else {
|
||||
sh = "S";
|
||||
}
|
||||
posItem.setItemValue("datev.shzeichen", sh);
|
||||
}
|
||||
}
|
||||
InvoiceUtil.implodeChildList(datevWorkitem, childs);
|
||||
}
|
||||
|
||||
}
|
||||
Binary file not shown.
|
|
@ -604,7 +604,6 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
|
||||
<bpmn2:incoming>sequenceFlow_71XoqA</bpmn2:incoming>
|
||||
<bpmn2:outgoing>sequenceFlow_QzU0Xg</bpmn2:outgoing>
|
||||
<bpmn2:incoming>sequenceFlow_hH7RWQ</bpmn2:incoming>
|
||||
</bpmn2:task>
|
||||
<bpmn2:intermediateCatchEvent id="event_a0OyNw" imixs:activityid="60" name="Erstellen">
|
||||
<bpmn2:extensionElements>
|
||||
|
|
@ -618,40 +617,27 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<imixs:item name="rtfresultlog" type="xs:string">
|
||||
<imixs:value><![CDATA[Liste Außenstände erstellt]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keypublicresult" type="xs:string">
|
||||
<imixs:value><![CDATA[1]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="txtactivityresult" type="xs:string">
|
||||
<imixs:value><![CDATA[<item name="process">Mahnwesen</item>
|
||||
<opliste name="textblock">OP-Liste KW Template</opliste>
|
||||
<opliste name="template">op-liste_kw_template.xlsx</opliste>
|
||||
<opliste name="target-name">op-liste_<itemvalue>space.name</itemvalue>_<itemvalue format="yyyy-MM-dd">$lasteventdate</itemvalue>.xlsx</opliste>
|
||||
|
||||
<poi-update name="findreplace">
|
||||
<find>C6</find>
|
||||
<replace><itemvalue>sequencenumber</itemvalue></replace>
|
||||
<type>text</type>
|
||||
</poi-update>
|
||||
<poi-update name="findreplace">
|
||||
<find>D6</find>
|
||||
<replace>Gesamtübersicht</replace>
|
||||
<type>text</type>
|
||||
</poi-update>
|
||||
<poi-update name="findreplace">
|
||||
<find>C8</find>
|
||||
<replace><itemvalue>space.name</itemvalue></replace>
|
||||
<type>text</type>
|
||||
</poi-update>
|
||||
|
||||
<poi-update name="findreplace">
|
||||
<find>I6</find>
|
||||
<replace><itemvalue format="dd.MM.yyyy">$lasteventdate</itemvalue></replace>
|
||||
<type>date</type>
|
||||
</poi-update>
|
||||
|
||||
<poi-update name="eval">I7</poi-update>
|
||||
]]></imixs:value>
|
||||
</imixs:item>
|
||||
<imixs:item name="keypublicresult" type="xs:string">
|
||||
<imixs:value><![CDATA[1]]></imixs:value>
|
||||
</imixs:item>
|
||||
</bpmn2:extensionElements>
|
||||
<bpmn2:signalEventDefinition id="signalEventDefinition_lJZyMA" signalRef="Signal_1"/>
|
||||
<bpmn2:signalEventDefinition id="signalEventDefinition_lJZyMA" signalRef="signal_2"/>
|
||||
<bpmn2:documentation id="documentation_z2Mzbg"/>
|
||||
<bpmn2:incoming>sequenceFlow_QzU0Xg</bpmn2:incoming>
|
||||
<bpmn2:outgoing>sequenceFlow_64kfIA</bpmn2:outgoing>
|
||||
|
|
@ -689,6 +675,7 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
|
||||
<bpmn2:incoming>sequenceFlow_64kfIA</bpmn2:incoming>
|
||||
<bpmn2:outgoing>sequenceFlow_W9rmgA</bpmn2:outgoing>
|
||||
<bpmn2:incoming>sequenceFlow_hH7RWQ</bpmn2:incoming>
|
||||
</bpmn2:task>
|
||||
<bpmn2:sequenceFlow id="sequenceFlow_71XoqA" sourceRef="event_yvRYxA" targetRef="task_A5VcTw">
|
||||
<bpmn2:documentation id="documentation_EL9YOw"/>
|
||||
|
|
@ -761,7 +748,7 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<bpmn2:association id="association_caVaqw" sourceRef="textAnnotation_5ZBmxg" targetRef="event_a0OyNw">
|
||||
<bpmn2:documentation id="documentation_VEQOAw"/>
|
||||
</bpmn2:association>
|
||||
<bpmn2:intermediateCatchEvent id="event_0DGK7A" imixs:activityid="111" name="Test">
|
||||
<bpmn2:intermediateCatchEvent id="event_0DGK7A" imixs:activityid="111" name="Aktualisieren">
|
||||
<bpmn2:extensionElements>
|
||||
<imixs:item name="txtmailsubject" type="xs:string">
|
||||
<imixs:value/>
|
||||
|
|
@ -797,7 +784,7 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<bpmn2:documentation id="documentation_V7ymKA"/>
|
||||
<bpmn2:outgoing>sequenceFlow_hH7RWQ</bpmn2:outgoing>
|
||||
</bpmn2:intermediateCatchEvent>
|
||||
<bpmn2:sequenceFlow id="sequenceFlow_hH7RWQ" sourceRef="event_0DGK7A" targetRef="task_A5VcTw">
|
||||
<bpmn2:sequenceFlow id="sequenceFlow_hH7RWQ" sourceRef="event_0DGK7A" targetRef="task_xZ1VEg">
|
||||
<bpmn2:documentation id="documentation_pZPHng"/>
|
||||
</bpmn2:sequenceFlow>
|
||||
</bpmn2:process>
|
||||
|
|
@ -1023,26 +1010,25 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<dc:Bounds height="50.0" width="110.0" x="290.0" y="830.0"/>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="event_a0OyNw" id="BPMNShape_UOz1ng">
|
||||
<dc:Bounds height="36.0" width="36.0" x="497.0" y="967.0"/>
|
||||
<dc:Bounds height="36.0" width="36.0" x="487.0" y="837.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_HWhMvg">
|
||||
<dc:Bounds height="20.0" width="100.0" x="468.0" y="1003.0"/>
|
||||
<dc:Bounds height="20.0" width="100.0" x="458.0" y="873.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNShape bpmnElement="task_xZ1VEg" id="BPMNShape_4UA3IA">
|
||||
<dc:Bounds height="50.0" width="110.0" x="780.0" y="960.0"/>
|
||||
<dc:Bounds height="50.0" width="110.0" x="700.0" y="830.0"/>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_71XoqA" id="BPMNEdge_NHStBg" sourceElement="BPMNShape_X1bTbg" targetElement="BPMNShape_thLYng">
|
||||
<di:waypoint x="213.0" y="855.0"/>
|
||||
<di:waypoint x="290.0" y="855.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_QzU0Xg" id="BPMNEdge_xcKr3g" sourceElement="BPMNShape_thLYng" targetElement="BPMNShape_UOz1ng">
|
||||
<di:waypoint x="347.0" y="880.0"/>
|
||||
<di:waypoint x="347.0" y="985.0"/>
|
||||
<di:waypoint x="497.0" y="985.0"/>
|
||||
<di:waypoint x="400.0" y="855.0"/>
|
||||
<di:waypoint x="487.0" y="855.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_64kfIA" id="BPMNEdge_xphwrQ" sourceElement="BPMNShape_UOz1ng" targetElement="BPMNShape_4UA3IA">
|
||||
<di:waypoint x="533.0" y="985.0"/>
|
||||
<di:waypoint x="780.0" y="985.0"/>
|
||||
<di:waypoint x="523.0" y="855.0"/>
|
||||
<di:waypoint x="700.0" y="855.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNShape bpmnElement="event_XWmcVw" id="BPMNShape_gjGFNA">
|
||||
<dc:Bounds height="36.0" width="36.0" x="957.0" y="837.0"/>
|
||||
|
|
@ -1060,9 +1046,7 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_W9rmgA" id="BPMNEdge_0VXmVQ" sourceElement="BPMNShape_4UA3IA" targetElement="BPMNShape_gjGFNA">
|
||||
<di:waypoint x="890.0" y="985.0"/>
|
||||
<di:waypoint x="923.5" y="985.0"/>
|
||||
<di:waypoint x="923.5" y="855.0"/>
|
||||
<di:waypoint x="810.0" y="855.0"/>
|
||||
<di:waypoint x="957.0" y="855.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_5c0Y8A" id="BPMNEdge_G6uKEg" sourceElement="BPMNShape_gjGFNA" targetElement="BPMNShape_KwE0KA">
|
||||
|
|
@ -1074,23 +1058,23 @@ Nach Prüfung schließen Sie bitte den Vorgang über die Schaltfläche "Erledigt
|
|||
<di:waypoint x="1197.0" y="855.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNShape bpmnElement="textAnnotation_5ZBmxg" id="BPMNShape_36UNzw">
|
||||
<dc:Bounds height="69.0" width="199.0" x="550.0" y="1050.0"/>
|
||||
<dc:Bounds height="69.0" width="199.0" x="340.0" y="960.0"/>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="association_caVaqw" id="BPMNEdge_AA2MfA" sourceElement="BPMNShape_36UNzw" targetElement="BPMNShape_UOz1ng">
|
||||
<di:waypoint x="649.5" y="1050.0"/>
|
||||
<di:waypoint x="649.5" y="1026.5"/>
|
||||
<di:waypoint x="515.0" y="1026.5"/>
|
||||
<di:waypoint x="515.0" y="1003.0"/>
|
||||
<di:waypoint x="439.5" y="960.0"/>
|
||||
<di:waypoint x="439.5" y="916.5"/>
|
||||
<di:waypoint x="505.0" y="916.5"/>
|
||||
<di:waypoint x="505.0" y="873.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
<bpmndi:BPMNShape bpmnElement="event_0DGK7A" id="BPMNShape_KWrOwQ">
|
||||
<dc:Bounds height="36.0" width="36.0" x="327.0" y="757.0"/>
|
||||
<dc:Bounds height="36.0" width="36.0" x="737.0" y="917.0"/>
|
||||
<bpmndi:BPMNLabel id="BPMNLabel_3RVChA">
|
||||
<dc:Bounds height="20.0" width="100.0" x="298.0" y="793.0"/>
|
||||
<dc:Bounds height="20.0" width="100.0" x="708.0" y="953.0"/>
|
||||
</bpmndi:BPMNLabel>
|
||||
</bpmndi:BPMNShape>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_hH7RWQ" id="BPMNEdge_nWebKA" sourceElement="BPMNShape_KWrOwQ" targetElement="BPMNShape_thLYng">
|
||||
<di:waypoint x="345.0" y="793.0"/>
|
||||
<di:waypoint x="345.0" y="830.0"/>
|
||||
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_hH7RWQ" id="BPMNEdge_nWebKA" sourceElement="BPMNShape_KWrOwQ" targetElement="BPMNShape_4UA3IA">
|
||||
<di:waypoint x="755.0" y="917.0"/>
|
||||
<di:waypoint x="755.0" y="880.0"/>
|
||||
</bpmndi:BPMNEdge>
|
||||
</bpmndi:BPMNPlane>
|
||||
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
||||
|
|
|
|||
Loading…
Reference in a new issue