From b6518726d9364f68b380d52f6ff83d7243336cab Mon Sep 17 00:00:00 2001 From: Ralph Soika Date: Thu, 20 Jan 2022 18:04:18 +0100 Subject: [PATCH] first draft zahlungsavis --- office-alexander-logistics-app/pom.xml | 2 +- .../ZahlungsavisAdapter.java | 108 + .../webapp/js/imixs-office.workitem.custom.js | 16 +- .../pages/workitems/forms/zahlungsavis.xhtml | 90 + pom.xml | 2 +- workflow/rechnungseingang-de-1.2.17.bpmn | 7222 +++++++++++++++++ workflow/zahlungsavis-1.0.0.bpmn | 670 ++ 7 files changed, 8107 insertions(+), 3 deletions(-) create mode 100644 office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ZahlungsavisAdapter.java create mode 100644 office-alexander-logistics-app/src/main/webapp/pages/workitems/forms/zahlungsavis.xhtml create mode 100644 workflow/rechnungseingang-de-1.2.17.bpmn create mode 100644 workflow/zahlungsavis-1.0.0.bpmn diff --git a/office-alexander-logistics-app/pom.xml b/office-alexander-logistics-app/pom.xml index 7bf08d0..9af6a7e 100644 --- a/office-alexander-logistics-app/pom.xml +++ b/office-alexander-logistics-app/pom.xml @@ -5,7 +5,7 @@ office-alexander-logistics com.alexander-logistics - 1.2.0 + 1.2.1 office-alexander-logistics-app war diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ZahlungsavisAdapter.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ZahlungsavisAdapter.java new file mode 100644 index 0000000..8cc0f6e --- /dev/null +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/ZahlungsavisAdapter.java @@ -0,0 +1,108 @@ +package com.alexanderlogistics; + +import java.util.List; +import java.util.logging.Logger; + +import javax.inject.Inject; + +import org.imixs.workflow.ItemCollection; +import org.imixs.workflow.SignalAdapter; +import org.imixs.workflow.engine.WorkflowService; +import org.imixs.workflow.exceptions.AccessDeniedException; +import org.imixs.workflow.exceptions.AdapterException; +import org.imixs.workflow.exceptions.ModelException; +import org.imixs.workflow.exceptions.PluginException; +import org.imixs.workflow.exceptions.ProcessingErrorException; +import org.imixs.workflow.exceptions.QueryException; + +/** + * Der ZahlungsavisAdapter verknüpft eine Rechnung mit einem Zahlungsavsis zum + * aktuellen Kreiditor. Existiert aktuell kein offener Zahlungsavis für diesen + * Kredito erzeugt der Adapter automatisch eine neue Prozessinstanz. + *

+ * Wurde die Rechnugn bereits einem Zahlungsavis zugeordnet passiert nichts. + * + * + * @version 1.0 + * @author rsoika + */ +public class ZahlungsavisAdapter implements SignalAdapter { + + private static Logger logger = Logger.getLogger(ZahlungsavisAdapter.class.getName()); + + public static final String ERROR_MISSING_DATA = "MISSING_DATA"; + + 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; + + /** + * This method finds or create the Zahlungsavis and adds a reference + * ($workitemref) to the current invoice. + * + * @throws PluginException + */ + @Override + public ItemCollection execute(ItemCollection invoice, ItemCollection event) + throws AdapterException, PluginException { + + String cdtrNumber = invoice.getItemValueString(ITEM_CDTR_NUMBER); + + if (cdtrNumber == null || cdtrNumber.isEmpty()) { + throw new PluginException(PluginException.class.getName(), ERROR_MISSING_DATA, + "Zahlungsavis kann nicht erzeugt werden. Bitte wählen Sie zuerst einen Kreditor aus."); + } + logger.info("......Seach Zahlungsavis or creditor '" + cdtrNumber + "'..."); + ItemCollection zahlungsAvis; + try { + zahlungsAvis = findZahlungsavis(cdtrNumber); + if (zahlungsAvis == null) { + // create a new one + zahlungsAvis = new ItemCollection().workflowGroup("Zahlungsavis").task(1000).event(100); + // add cdtr.name + zahlungsAvis.setItemValue(ITEM_CDTR_NAME, invoice.getItemValue(ITEM_CDTR_NAME)); + zahlungsAvis.setItemValue(ITEM_CDTR_NUMBER, invoice.getItemValue(ITEM_CDTR_NUMBER)); + zahlungsAvis.setItemValue(ITEM_CDTR_NAME_CARGOSOFT, invoice.getItemValue(ITEM_CDTR_NAME_CARGOSOFT)); + } else { + // zahlungsavis speichern + zahlungsAvis.event(100); + } + // Invoice mit zahlungsavis verknüpften (falls noch nicht verknüpft) + zahlungsAvis.appendItemValueUnique("$workitemref", invoice.getUniqueID()); + workflowService.processWorkItem(zahlungsAvis); + + } catch (QueryException | AccessDeniedException | ProcessingErrorException | ModelException e1) { + throw new PluginException(PluginException.class.getName(), ERROR_MISSING_DATA, + "Es konnte kein Zahlungsavis zugewiesen werden: " + e1.getMessage()); + + } + + return invoice; + } + + /** + * Prüft alle offenen Zahlugnsaviss und gibt den neuesten zur angegebenen + * cdrNumber zurück, oder null falls es keinen Offenen Zahlungsavis gibt. + * + * @param cdrNumber + * @return + * @throws QueryException + */ + private ItemCollection findZahlungsavis(String cdtrNumber) throws QueryException { + String query = "(type:workitem) AND ($modelversion:zahlungsavis*) "; + List resultList = workflowService.getDocumentService().find(query, 999, 0, "$modified", true); + + for (ItemCollection invoice : resultList) { + if (cdtrNumber.equals(invoice.getItemValueString(ITEM_CDTR_NUMBER))) { + return invoice; + } + } + + // no zahlungsavis found + return null; + } + +} \ No newline at end of file diff --git a/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js b/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js index c99bfa9..e17e58d 100644 --- a/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js +++ b/office-alexander-logistics-app/src/main/webapp/js/imixs-office.workitem.custom.js @@ -80,12 +80,18 @@ function validateBuchungsDatum(item) { } var d = new Date(); + // check for TTMMYY if (text.length == 6 && text.indexOf('.') == -1) { text = text.substring(0, 2) + "." + text.substring(2, 4) + ".20" + text.substring(4); } - + // check TTMMYYYY + if (text.length == 8 && text.indexOf('.') == -1) { + text = text.substring(0, 2) + "." + text.substring(2, 4) + + "." + text.substring(4); + } + // check for TTMM if (text.length == 4 && text.indexOf('.') == -1) { text = text.substring(0, 2) + "." + text.substring(2); @@ -100,6 +106,14 @@ function validateBuchungsDatum(item) { var right = text.substring(n + 1); text = left + "20" + right; } + + + // validate if year has more then 4 digits + // TT.MM.YYYY is allowed + if (text.length!=10) { + console.log("Invalid Date=" + text); + text=""; + } // update field.... $(mhd).val(text); diff --git a/office-alexander-logistics-app/src/main/webapp/pages/workitems/forms/zahlungsavis.xhtml b/office-alexander-logistics-app/src/main/webapp/pages/workitems/forms/zahlungsavis.xhtml new file mode 100644 index 0000000..e6e4179 --- /dev/null +++ b/office-alexander-logistics-app/src/main/webapp/pages/workitems/forms/zahlungsavis.xhtml @@ -0,0 +1,90 @@ + + + +

+
+
Kreditor
+
+ +
+
+ + +
+
Kreditor Nummer
+
+ +
+ +
+
+ + +
+

Invoices

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Vorgangsnummer#{message['form.invoicenumber']}#{message['form.date']}#{message['form.deadline']}#{message['form.amount']}
+ #{invoice.item['numsequencenumber']} + + + #{invoice.item['invoice.number']} + + + + + + + + + + #{invoice.item['invoice.currency']}
+ + Summary + + #{invoice.item['invoice.currency']}
+
+ + + + diff --git a/pom.xml b/pom.xml index 6d6b590..2d99730 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.alexander-logistics office-alexander-logistics - 1.2.0 + 1.2.1 pom Imixs Office Workflow - Custom Build diff --git a/workflow/rechnungseingang-de-1.2.17.bpmn b/workflow/rechnungseingang-de-1.2.17.bpmn new file mode 100644 index 0000000..c65dae5 --- /dev/null +++ b/workflow/rechnungseingang-de-1.2.17.bpmn @@ -0,0 +1,7222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Task_2 + ExclusiveGateway_1 + StartEvent_1 + IntermediateCatchEvent_3 + IntermediateCatchEvent_6 + IntermediateCatchEvent_27 + EventBasedGateway_1 + Task_10 + EndEvent_5 + IntermediateCatchEvent_40 + IntermediateThrowEvent_4 + IntermediateCatchEvent_49 + IntermediateCatchEvent_19 + IntermediateThrowEvent_3 + IntermediateCatchEvent_31 + IntermediateCatchEvent_13 + Task_14 + EventBasedGateway_3 + IntermediateCatchEvent_30 + Task_13 + EndEvent_4 + IntermediateCatchEvent_5000-20 + IntermediateCatchEvent_56 + IntermediateThrowEvent_9 + + + EndEvent_1 + IntermediateCatchEvent_12 + Task_4 + IntermediateCatchEvent_25 + Task_12 + Task_5005 + IntermediateCatchEvent_32 + EventBasedGateway_2 + IntermediateCatchEvent_42 + IntermediateCatchEvent_26 + IntermediateCatchEvent_21 + IntermediateThrowEvent_2 + IntermediateCatchEvent_28 + IntermediateCatchEvent_2 + ExclusiveGateway_6 + IntermediateCatchEvent_5005-20 + IntermediateCatchEvent_5005-30 + IntermediateThrowEvent_8 + IntermediateCatchEvent_36 + IntermediateCatchEvent_5005-10 + ExclusiveGateway_7 + IntermediateCatchEvent_55 + + + ExclusiveGateway_3 + Task_18 + IntermediateCatchEvent_51 + IntermediateThrowEvent_6 + IntermediateCatchEvent_53 + Task_17 + EventBasedGateway_6 + IntermediateCatchEvent_47 + EventBasedGateway_5 + IntermediateCatchEvent_43 + IntermediateCatchEvent_44 + IntermediateCatchEvent_54 + IntermediateThrowEvent_7 + ExclusiveGateway_8 + IntermediateCatchEvent_52 + IntermediateCatchEvent_50 + + + IntermediateCatchEvent_10 + IntermediateCatchEvent_11 + IntermediateThrowEvent_5 + IntermediateCatchEvent_1 + IntermediateCatchEvent_9 + IntermediateCatchEvent_45 + Task_1 + + + Task_3 + IntermediateCatchEvent_35 + EndEvent_3 + Task_5000 + IntermediateCatchEvent_5000-10 + IntermediateCatchEvent_33 + IntermediateCatchEvent_4 + IntermediateCatchEvent_38 + ExclusiveGateway_2 + IntermediateCatchEvent_15 + EndEvent_6 + Task_6 + IntermediateCatchEvent_39 + IntermediateCatchEvent_17 + Task_15 + EventBasedGateway_4 + IntermediateCatchEvent_14 + Task_16 + Task_7 + IntermediateCatchEvent_5 + IntermediateCatchEvent_37 + IntermediateCatchEvent_18 + IntermediateCatchEvent_24 + Task_8 + IntermediateCatchEvent_20 + IntermediateCatchEvent_22 + Task_11 + IntermediateCatchEvent_34 + IntermediateCatchEvent_8 + IntermediateCatchEvent_16 + Task_5 + Task_9 + IntermediateThrowEvent_1 + IntermediateCatchEvent_7 + IntermediateCatchEvent_23 + IntermediateCatchEvent_41 + EndEvent_2 + IntermediateCatchEvent_48 + IntermediateCatchEvent_29 + IntermediateCatchEvent_46 + IntermediateCatchEvent_57 + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_31 + SequenceFlow_1 + SequenceFlow_32 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_31 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home + + stop + false + + + start + false +]]> + + + + + + + + + space.name]]> + + + false + + + + + + + SequenceFlow_46 + SequenceFlow_24 + + + SequenceFlow_0 + SequenceFlow_15 + SequenceFlow_21 + SequenceFlow_33 + + + + SequenceFlow_0 + + + + + + + + + txtlastcomment]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_38 + SequenceFlow_75 + SequenceFlow_83 + SequenceFlow_106 + SequenceFlow_104 + SequenceFlow_37 + SequenceFlow_10 + + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +space.name + +cargosoft-export-1.0 +1000 +100 +(?!txtworkflowhistory)(^[a-zA-Z]|^_) + + + stop + false +]]> + + + + + + + + + + + + false + + + 0 && (parseFloat(a)!=parseFloat(b)) ) { + result.isValid=false; + result.errorMessage="Der Rechnungsbetrag " + a+ " stimmt nicht mit dem Positionsbetrag " + b + " überein."; + }]]> + + + + SequenceFlow_8 + SequenceFlow_111 + SequenceFlow_51 + + + DataOutput_1 + + + DataOutput_1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +false]]> + + + + + + + + + + + + false + + + + SequenceFlow_38 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +space.name + +false]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_10 + SequenceFlow_97 + SequenceFlow_110 + + + SequenceFlow_37 + SequenceFlow_8 + SequenceFlow_54 + SequenceFlow_96 + + + + + + + + + + txtlastcomment]]> + + + + + + + + + cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_33 + SequenceFlow_95 + SequenceFlow_49 + SequenceFlow_20 + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +suggest +false + + start + false +]]> + + + + + + + + + + + + false + + + + + SequenceFlow_22 + SequenceFlow_77 + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_67 + SequenceFlow_56 + SequenceFlow_55 + SequenceFlow_50 + SequenceFlow_81 + SequenceFlow_88 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_29 + SequenceFlow_2 + + + SequenceFlow_32 + SequenceFlow_29 + SequenceFlow_30 + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_30 + SequenceFlow_72 + SequenceFlow_67 + + + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_25 + SequenceFlow_44 + SequenceFlow_52 + SequenceFlow_58 + SequenceFlow_90 + SequenceFlow_47 + + + SequenceFlow_47 + + + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_55 + SequenceFlow_12 + + + + SequenceFlow_18 + SequenceFlow_1 + SequenceFlow_68 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + SequenceFlow_6 + SequenceFlow_18 + + + SequenceFlow_51 + SequenceFlow_6 + + + + SequenceFlow_15 + + + + + + + + SequenceFlow_12 + SequenceFlow_53 + SequenceFlow_19 + SequenceFlow_25 + SequenceFlow_4 + + + + + + + + + + + + + + SequenceFlow_19 + SequenceFlow_23 + + + + + + workitem['payment.type'][0]=="direct_debit" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Rechnungscontrolling]]> + + + + + + + + + + + + false + + + + SequenceFlow_21 + + + + + + + + + + + txtlastcomment]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_24 + SequenceFlow_26 + SequenceFlow_11 + SequenceFlow_118 + SequenceFlow_28 + SequenceFlow_36 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_26 + + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +space.name + + stop + false + + + start + false +]]> + + + + + + + + + $owner]]> + + + false + + + + + + + SequenceFlow_28 + SequenceFlow_105 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +space.name +false + + stop + false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_36 + SequenceFlow_35 + + + SequenceFlow_35 + + + + + + SequenceFlow_39 + + + + + + + + + txtlastcomment]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_39 + SequenceFlow_59 + SequenceFlow_40 + + + SequenceFlow_40 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + + + + space.name]]> + + + false + + + + SequenceFlow_11 + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_23 + SequenceFlow_45 + SequenceFlow_41 + SequenceFlow_14 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + SequenceFlow_14 + SequenceFlow_42 + + + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_42 + SequenceFlow_3 + SequenceFlow_43 + SequenceFlow_27 + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + + + + + + + false + + + + SequenceFlow_43 + SequenceFlow_5 + SequenceFlow_44 + + + + + + + + + + Wollen Sie den SEPA Export wirklich wiederholen?]]> + + + SequenceFlow_27 + SequenceFlow_45 + + + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + + + + + + + false + + + + + + + + + + + + + + + SequenceFlow_50 + SequenceFlow_53 + + + + + + + + + + + cdtr.name invoice.number]]> + + + + + + + + + cdtr.name +Rechnungsnummer: invoice.number +Betrag: invoice.total invoice.currency + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false]]> + + + + + + + + + + + + false + + + + + + + + + + SequenceFlow_54 + SequenceFlow_7 + + + + + SequenceFlow_63 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_17 + SequenceFlow_60 + SequenceFlow_9 + + + SequenceFlow_9 + + + + SequenceFlow_17 + + + + + SequenceFlow_20 + SequenceFlow_65 + SequenceFlow_71 + SequenceFlow_22 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +Wollen Sie den Vorgang wirklich löschen? + + stop + false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_49 + SequenceFlow_76 + SequenceFlow_48 + + + SequenceFlow_48 + + + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_2 + SequenceFlow_78 + SequenceFlow_89 + SequenceFlow_72 + SequenceFlow_86 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_52 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_60 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_59 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + suggest +false + + gutschriftabgleich-de-1.0 + 5001 + 980 + ]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_65 + SequenceFlow_69 + + + + + + workitem['payment.type'][0]=="credit" + + + + + + + + txtlastcomment]]> + + + + + + + + + cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_69 + SequenceFlow_70 + + + + SequenceFlow_70 + + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_4 + SequenceFlow_34 + SequenceFlow_119 + SequenceFlow_5 + + + workitem['payment.type'][0]=="no_sepa" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + txtlastcomment]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_7 + SequenceFlow_62 + SequenceFlow_61 + SequenceFlow_73 + + + + + + + + + cdtr.name invoice.number]]> + + + + + + + + + cdtr.name +Rechnungsnummer: invoice.number +Betrag: invoice.total invoice.currency + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +Wollen Sie den Vorgang wirklich archivieren?]]> + + + + + + + + + + + + false + + + + + + + + SequenceFlow_61 + SequenceFlow_63 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_62 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_56 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + suggest +false + + rechnungseingang-sachrechnung-de-1.0 + 5001 + 980 + ]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_71 + SequenceFlow_64 + + + + + + + + + txtlastcomment]]> + + + + + + + + + cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_64 + SequenceFlow_66 + + + SequenceFlow_66 + + + + + + + + + + + txtlastcomment]]> + + + + + + + + + cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_74 + SequenceFlow_77 + SequenceFlow_46 + SequenceFlow_85 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + + SequenceFlow_74 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +space.name +false]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_73 + SequenceFlow_75 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_78 + + + + + + + + + txtlastcomment]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_68 + SequenceFlow_79 + SequenceFlow_57 + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + + + + + + + false + + + + SequenceFlow_57 + SequenceFlow_58 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_79 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +Wollen Sie den Vorgang wirklich löschen?]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_81 + SequenceFlow_80 + + + SequenceFlow_80 + + + + + + SequenceFlow_82 + + + + + + + + txtlastcomment +numsequencenumber_sub]]> + + + + + + + + + numsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_84 + SequenceFlow_87 + SequenceFlow_82 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_84 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_86 + SequenceFlow_87 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_88 + SequenceFlow_89 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_83 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +Wollen Sie den Vorgang wirklich archivieren? + + stop + false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_16 + SequenceFlow_13 + + + SequenceFlow_13 + + + + + + SequenceFlow_85 + SequenceFlow_76 + SequenceFlow_16 + SequenceFlow_116 + + + + SequenceFlow_90 + + + + + + + + + + + + + _subject]]> + + + + + + + + + _amount (Brutto € _amount_brutto) +_description]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +space.name]]> + + + + + + + + + sb.assist]]> + + + false + + + + + + + SequenceFlow_96 + SequenceFlow_91 + + + + + + + + txtlastcomment]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_91 + SequenceFlow_92 + SequenceFlow_94 + SequenceFlow_117 + SequenceFlow_100 + SequenceFlow_101 + SequenceFlow_93 + + + + + + + + + txtlastcomment]]> + + + + + + + + + _imgnumsequencenumber: cdtr.name invoice.number (invoice.currency invoice.total) space.name]]> + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_102 + SequenceFlow_114 + SequenceFlow_109 + SequenceFlow_112 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_94 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_92 + + + + + + SequenceFlow_101 + SequenceFlow_98 + SequenceFlow_111 + + + + + + + + cdtr.name invoice.number]]> + + + + + + + + + cdtr.name +Rechnungsnummer: invoice.number +Betrag: invoice.total invoice.currency + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false]]> + + + + + + + + + + + + false + + + + + + + + + + SequenceFlow_98 + SequenceFlow_102 + + + + + + + + + + + + cdtr.name invoice.number]]> + + + + + + + + + cdtr.name +Rechnungsnummer: invoice.number +Betrag: invoice.total invoice.currency + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +false +Wollen Sie den Vorgang wirklich archivieren?]]> + + + + + + + + + + + + false + + + + + + + + SequenceFlow_109 + SequenceFlow_108 + + + + SequenceFlow_108 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home +space.name +false]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_112 + SequenceFlow_113 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_114 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + SequenceFlow_99 + SequenceFlow_103 + + + + + SequenceFlow_93 + SequenceFlow_97 + SequenceFlow_99 + + + + + + SequenceFlow_105 + SequenceFlow_106 + SequenceFlow_107 + + + + + workitem['sb.assist'] && ( workitem['sb.assist'][0]!="-" && workitem['sb.assist'][0]!="") + + + SequenceFlow_103 + + + + SequenceFlow_110 + + + + + SequenceFlow_113 + SequenceFlow_107 + SequenceFlow_117 + + + + SequenceFlow_118 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_34 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_41 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + posteingang-de-1.0 + 100 + 20 + ]]> + + + + + + + + + + + + false + + + SequenceFlow_95 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +]]> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_100 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_104 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + stop + false +]]> + + + + + + + + + + + + false + + + + + + + SequenceFlow_116 + SequenceFlow_115 + + + SequenceFlow_115 + + + + + + SequenceFlow_119 + + + DataOutput_2 + + + DataOutput_2 + + + + + + + Es handelt sich um einen SEPA Lauf. Die Rechnung muss explizit freigegeben werden. + +Ändern von IBAN und Fälligkeit ist hier möglich + + + + Datenübergabe an Cargosoft. + +Export erfolgt über eine asynchrone Verarbeitung im Modell 'cargosoft-export' + + + + + Liegt eine Logistik Leistung vor, wird ein Fachbereich ausgewählt + + + + Buchhaltung setzt Flag, wenn Mahnung eingetroffen ist + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/workflow/zahlungsavis-1.0.0.bpmn b/workflow/zahlungsavis-1.0.0.bpmn new file mode 100644 index 0000000..a7ce928 --- /dev/null +++ b/workflow/zahlungsavis-1.0.0.bpmn @@ -0,0 +1,670 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + application.urlindex.jsf?workitem=$uniqueid + +]]> + + + application.urlindex.jsf?workitem=$uniqueid + +]]> + + + + + + + + The linked invoice workitem will be processed by a configurable event. + + + + + + + StartEvent_1 + EventBasedGateway_1 + Task_1 + IntermediateCatchEvent_1 + IntermediateCatchEvent_18 + IntermediateCatchEvent_3 + IntermediateCatchEvent_5 + Task_6 + Task_2 + IntermediateCatchEvent_6 + EndEvent_3 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + $editor.]]> + + + false + + + + + + $editor]]> + SequenceFlow_13 + SequenceFlow_18 + + + SequenceFlow_5 + + + + + + + cdtr.name $created (cdtr.number)]]> + + + true + + + + + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_2 + SequenceFlow_6 + SequenceFlow_10 + + + + SequenceFlow_1 + SequenceFlow_13 + SequenceFlow_8 + + + SequenceFlow_10 + SequenceFlow_17 + + + + + cdtr.name $created (cdtr.number)]]> + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_7 + SequenceFlow_14 + SequenceFlow_1 + + + + + + cdtr.name $created (cdtr.number)]]> + + + true + + + + + + + + + + + + + + + + + + + + + $workflowgroup - $workflowstatus]]> + SequenceFlow_18 + SequenceFlow_17 + + + + + + + + + + + + + Rechnungscontrolling +]]> + + + + + + SequenceFlow_5 + SequenceFlow_7 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + home]]> + + + + + + $editor.]]> + + + false + + + + SequenceFlow_8 + SequenceFlow_2 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_6 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]]> + + + + + + + + + + + + false + + + + SequenceFlow_14 + + + + + Ein Zahlungsavis enthält eine Liste von zugeordneten Rechnungen (item '$workitemref') + +Eine Rechnung wird über die Adapter Klasse 'ZahlungsavisAdapter' eingefügt. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file