diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java index 3451b53..87ca0ce 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListController.java @@ -43,6 +43,7 @@ public class OPListController implements Serializable { private static final long serialVersionUID = 1L; public static final int TASK_ERSTELLUNG = 1000; + private static Logger logger = Logger.getLogger(OPListController.class.getName()); private String lastDbtrNumber = null; @@ -64,7 +65,7 @@ public class OPListController implements Serializable { /** * Diese Methode wird für Zahlungseingänge und Mahnläufe verwendet. *

- * Die Methoe liefert die Rechnungen zur gegebenen dbtrNumber. Die Methode nutzt + * Die Methode liefert die Rechnungen zur gegebenen dbtrNumber. Die Methode nutzt * einen lokalen cache um die Zugriffe zu beschleunigen. *

* Befindet sich ein Zahlungseingang in Erstellung (Task=1000) werden alle @@ -78,6 +79,8 @@ public class OPListController implements Serializable { * in der Maske 'selection_opliste_Mahnluaf' angewählt. D.h auch, dass man ggf. * Rechnungen manuell delselktieren muss, wenn man diese nicht im Mahnlauf haben * will. + *

+ * Beim Mahnlauf werden Inkasso Rechnungen ausgenommen. * * * @param _dbtrNumber @@ -148,8 +151,12 @@ public class OPListController implements Serializable { * * Eine Ausnahme ist hier nur wenn jemand auf Speichern oder mahnen drückt * (Event = 10|20). Dann ändern wir die Liste nicht! + * + * Hinweis: in der Liste befinden sich keine Inkasso Rechnungen, da man diese + * nicht anwählen kann. */ if (workflowController.getWorkitem().getModelVersion().startsWith("mahnlauf")) { + // wir selektieren hier immer alle fälligen Rechnungen vor falls wir aus // einer Rechnung mit dem Event 100 (Mahnlauf erstellen) kommen, oder // wenn der Mahnlauf von außen gerate eben neu erzeugt wurde diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListExportScheduler.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListExportScheduler.java index 9a73bca..1368999 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListExportScheduler.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/OPListExportScheduler.java @@ -52,6 +52,8 @@ import org.imixs.workflow.exceptions.QueryException; * The OPListExportScheduler erzeugt für jeden Berich ein neues Workitem mit * einer Excel Datei mit allen offenen Rechnungen. *

+ * bei den OP Listen für die Abteilungen dürfen nur Rechnungen aktiviert werden, wo die 2. Mahnung bereits versandt wurde bzw. wo die Fälligkeit der Rechnungen 21 Tage übersteigt. + *

* The class implements the interface * _org.imixs.workflow.engine.scheduler.Scheduler_ and can be used in * combination with the Imxis-Workflow Scheduler Service. diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/datev/CargosoftExportScheduler.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/datev/CargosoftExportScheduler.java index a9cf7c2..0ac881b 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/datev/CargosoftExportScheduler.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/datev/CargosoftExportScheduler.java @@ -52,7 +52,7 @@ import org.imixs.workflow.exceptions.QueryException; /** * The CargosoftExportScheduler exportiert eine csv Datei auf eine FTP Laufwerk - * mit allen noch offenen Rechnungen. Diese Datei wird von Cargosoft ann + * mit allen noch offenen Rechnungen. Diese Datei wird von Cargosoft dann * verwendet um den Kreditramen für einen kunden zu ermitteln. Es werden * praktisch von Cargosoft nur die offenen Salen aus unserer CSV Datei pro * Kreditor ermittelt. (Wir könnten sozusagen auch direkt das ergeniss liefern, diff --git a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/mahnlauf/InkassoAppendAdapter.java b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/mahnlauf/InkassoAppendAdapter.java index 4d7b463..4ca0d58 100644 --- a/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/mahnlauf/InkassoAppendAdapter.java +++ b/office-alexander-logistics-app/src/main/java/com/alexanderlogistics/mahnlauf/InkassoAppendAdapter.java @@ -50,18 +50,21 @@ public class InkassoAppendAdapter implements SignalAdapter { public ItemCollection execute(ItemCollection document, ItemCollection event) throws AdapterException, PluginException { - appendInvoice(document); + ItemCollection inkassoWorkitem=appendInvoice(document); + + document.setItemValue("debtcollection.ref", inkassoWorkitem.getUniqueID()); return document; } /** - * Diese method hängt eine referenz der aktuellen Rechnung an den Inkasso + * Diese method hängt eine referenz der aktuellen Rechnung an den Inkasso Workflow an. Gibt es noch keinen, wird einer erzeugt. + * Die method liefert das Inkasso Workitem zurück. * * @param document * @throws PluginException */ - private void appendInvoice(ItemCollection document) throws PluginException { + private ItemCollection appendInvoice(ItemCollection document) throws PluginException { String dbtrNumber = document.getItemValueString(ITEM_DBTR_NUMBER); String currency = document.getItemValueString("invoice.currency"); @@ -88,7 +91,7 @@ public class InkassoAppendAdapter implements SignalAdapter { } // Invoice mit Inkasso verknüpften (falls noch nicht verknüpft) inkasso.appendItemValueUnique("$workitemref", document.getUniqueID()); - workflowService.processWorkItem(inkasso); + return workflowService.processWorkItem(inkasso); } catch (QueryException | AccessDeniedException | ProcessingErrorException | ModelException e1) { throw new PluginException(PluginException.class.getName(), ERROR_MISSING_DATA, diff --git a/workflow/rechnungsausgang-de-1.0.2-test.bpmn b/workflow/rechnungsausgang-de-1.0.2-test.bpmn index d710b1b..84fa321 100644 --- a/workflow/rechnungsausgang-de-1.0.2-test.bpmn +++ b/workflow/rechnungsausgang-de-1.0.2-test.bpmn @@ -98,59 +98,61 @@ th { font-weight: bold;} ExclusiveGateway_1 StartEvent_1 IntermediateCatchEvent_6 - Task_5 - IntermediateCatchEvent_12 - IntermediateCatchEvent_23 - ExclusiveGateway_2 IntermediateCatchEvent_17 IntermediateCatchEvent_2 IntermediateCatchEvent_3 ExclusiveGateway_5 EventBasedGateway_1 - IntermediateThrowEvent_8 IntermediateCatchEvent_13 EventBasedGateway_2 IntermediateCatchEvent_5000-20 - IntermediateCatchEvent_1 IntermediateCatchEvent_18 - IntermediateThrowEvent_2 - IntermediateCatchEvent_7 - IntermediateCatchEvent_5 - Task_6 - EndEvent_3 + IntermediateThrowEvent_11 + IntermediateThrowEvent_8 + Task_5 EndEvent_2 - - - ExclusiveGateway_3 - IntermediateThrowEvent_9 - Task_1 - IntermediateThrowEvent_1 - IntermediateCatchEvent_5005-10 - Task_5005 - Task_3 - IntermediateThrowEvent_7 - IntermediateCatchEvent_4 - IntermediateCatchEvent_15 - Task_4 - IntermediateCatchEvent_14 - IntermediateCatchEvent_8 - IntermediateCatchEvent_9 - IntermediateCatchEvent_16 - IntermediateCatchEvent_25 - IntermediateCatchEvent_19 - IntermediateCatchEvent_20 - IntermediateCatchEvent_21 - IntermediateCatchEvent_22 - IntermediateThrowEvent_3 - Task_7 - IntermediateThrowEvent_4 - IntermediateCatchEvent_11 + IntermediateCatchEvent_23 + IntermediateCatchEvent_1 + IntermediateCatchEvent_27 Task_8 EndEvent_1 - ExclusiveGateway_4 + + + Task_5005 + Task_4 + IntermediateCatchEvent_8 + IntermediateCatchEvent_9 + EventBasedGateway_3 + IntermediateCatchEvent_14 + Task_3 + IntermediateCatchEvent_16 + IntermediateCatchEvent_4 + IntermediateThrowEvent_5 + EventBasedGateway_4 + IntermediateCatchEvent_15 + IntermediateCatchEvent_29 IntermediateCatchEvent_26 + ExclusiveGateway_4 + IntermediateCatchEvent_11 + Task_7 IntermediateCatchEvent_28 - IntermediateCatchEvent_27 + EventBasedGateway_5 + IntermediateThrowEvent_7 + IntermediateThrowEvent_12 + IntermediateCatchEvent_19 + IntermediateCatchEvent_25 + IntermediateCatchEvent_22 + IntermediateCatchEvent_5005-10 + IntermediateCatchEvent_10 + IntermediateThrowEvent_1 + IntermediateCatchEvent_21 + IntermediateCatchEvent_20 + Task_1 + ExclusiveGateway_3 + IntermediateThrowEvent_10 + IntermediateThrowEvent_9 + IntermediateThrowEvent_6 + IntermediateThrowEvent_4 @@ -285,7 +287,6 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com SequenceFlow_41 SequenceFlow_2 SequenceFlow_24 - SequenceFlow_50 @@ -533,7 +534,6 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com $workflowgroup - $workflowstatus]]> SequenceFlow_52 - SequenceFlow_13 SequenceFlow_11 SequenceFlow_47 @@ -650,7 +650,6 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com SequenceFlow_27 SequenceFlow_4 SequenceFlow_18 - SequenceFlow_34 SequenceFlow_35 @@ -691,17 +690,15 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com SequenceFlow_31 SequenceFlow_1 SequenceFlow_44 - SequenceFlow_16 - SequenceFlow_48 + SequenceFlow_69 SequenceFlow_61 SequenceFlow_39 - SequenceFlow_19 SequenceFlow_17 - SequenceFlow_9 + SequenceFlow_65 @@ -882,8 +879,7 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com SequenceFlow_29 SequenceFlow_43 SequenceFlow_6 - SequenceFlow_30 - SequenceFlow_7 + SequenceFlow_68 @@ -954,90 +950,6 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com SequenceFlow_3 - - - - - - - - - - _subject]]> - - - - - - - - - _amount (Brutto € _amount_brutto) -_description]]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - home]]> - - - - - - - - - - - - false - - - - - - - SequenceFlow_19 - SequenceFlow_5 - SequenceFlow_23 - - - @@ -1133,18 +1045,12 @@ result.isValid=true; - - - SequenceFlow_23 - SequenceFlow_13 - SequenceFlow_18 - SequenceFlow_5 SequenceFlow_25 - SequenceFlow_45 + SequenceFlow_64 + SequenceFlow_34 - @@ -1218,12 +1124,12 @@ Betrag: invoice.total invoice.currency - SequenceFlow_24 + SequenceFlow_67 SequenceFlow_29 - + @@ -1301,7 +1207,7 @@ Betrag: invoice.total invoice.currency - + @@ -1387,12 +1293,12 @@ Betrag: invoice.total invoice.currencySequenceFlow_50 - + SequenceFlow_7 - + SequenceFlow_8 SequenceFlow_10 @@ -1433,7 +1339,7 @@ Betrag: invoice.total invoice.currencySequenceFlow_16 - + SequenceFlow_17 @@ -1522,7 +1428,7 @@ Betrag: invoice.total invoice.currencySequenceFlow_32 - + @@ -2138,138 +2044,7 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com - - - - - - - txtlastcomment]]> - - - - - - - - - invoice.number dbtr.number dbtr.name (invoice.currency invoice.total) ]]> - - - true - - - - - - - - - - - - - - - $workflowgroup - $workflowstatus]]> - SequenceFlow_26 - SequenceFlow_28 - - - SequenceFlow_9 - - - - - SequenceFlow_22 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ]]> - - - - - - - - - - - - false - - - - - - - SequenceFlow_22 - SequenceFlow_26 - - - - - SequenceFlow_28 - - - - SequenceFlow_45 - - - - + @@ -2311,13 +2086,13 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com - + /pages/workitems/workitem.jsf?id=debtcollection.ref]]> - SequenceFlow_48 + SequenceFlow_40 SequenceFlow_49 @@ -2328,7 +2103,6 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com - @@ -2550,28 +2324,67 @@ Bei Fragen wenden Sie sich bitte an info@imixs.com + + SequenceFlow_40 + + + + + SequenceFlow_62 + + + + + SequenceFlow_63 + + + + + SequenceFlow_64 + + + + + SequenceFlow_65 + + + + + SequenceFlow_24 + SequenceFlow_67 + SequenceFlow_63 + SequenceFlow_50 + + + + SequenceFlow_68 + SequenceFlow_30 + SequenceFlow_7 + SequenceFlow_62 + + + + SequenceFlow_69 + SequenceFlow_16 + SequenceFlow_70 + + + + SequenceFlow_70 + + + Trigger über ZahlungseingangsSaldoAdapter - Triggered by MahnlaufExecuteAdapter Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - - - - - Testweise versteckt - - @@ -2590,7 +2403,7 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + @@ -2612,9 +2425,9 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + @@ -2634,9 +2447,9 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + @@ -2646,15 +2459,15 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + - + - + @@ -2664,9 +2477,9 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + @@ -2676,9 +2489,9 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + @@ -2686,33 +2499,27 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + - + - + - + - + - + - - - - - - - + @@ -2721,24 +2528,20 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - - + - + - + - + - + @@ -2754,15 +2557,15 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + - + - + @@ -2788,27 +2591,27 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + - + - + - + - + - + - + @@ -2840,133 +2643,139 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + - + - + - + - - - - - - - + - + - + - + - + - + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2983,18 +2792,15 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - + + + - - - - - + + + @@ -3004,9 +2810,9 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - + + + @@ -3023,94 +2829,66 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - + + + - - - + + + - - - - + + + + - - - - - - - - - - - - - - - - + + + - - - - - - - - - - - - - - - + + + - - - - - + + + + - - - - + + + + - - - - + + + + - - - - + + + + - - - + + @@ -3120,16 +2898,16 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - + + + + - - - - + + + + @@ -3145,9 +2923,9 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - + + + @@ -3158,12 +2936,8 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - - - + + @@ -3174,30 +2948,29 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - - + + + + - - - + + + - - - - + + + + - - - + + + @@ -3206,28 +2979,22 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - - + + + + - - - - - - - - - + + + - - - + + + @@ -3245,185 +3012,158 @@ Wiedervorlage wird um 7 bzw. 5 Tage erhöht - - - + + + - - - + + + - - - - - - - - - - - - - - - - - - + + + - - - - - + + + + - - - + + + + - - - + + + - - - + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - - + + + - - - - - - - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +