refactoring business data - neue Logik
This commit is contained in:
parent
ac4127e353
commit
aa5f000715
31 changed files with 1436 additions and 227 deletions
|
|
@ -6,7 +6,7 @@
|
||||||
|- Neue Plugin Logik (Aktualisierung der BP Nummer und Aktivierung von BP Objekten falls diese archiviert waren)
|
|- Neue Plugin Logik (Aktualisierung der BP Nummer und Aktivierung von BP Objekten falls diese archiviert waren)
|
||||||
- Zoho Schnittstelle
|
- Zoho Schnittstelle
|
||||||
|
|
||||||
**Migration**
|
#### Migration
|
||||||
|
|
||||||
- Encoding für CSV Impoort aus cargosoft muss auf `encoding=UTF-8` stehen!
|
- Encoding für CSV Impoort aus cargosoft muss auf `encoding=UTF-8` stehen!
|
||||||
- Neues Businesspartner BPMN Modell einspielen
|
- Neues Businesspartner BPMN Modell einspielen
|
||||||
|
|
@ -22,9 +22,16 @@
|
||||||
|
|
||||||
- Modelle Anpassen
|
- Modelle Anpassen
|
||||||
|
|
||||||
in allen Rechnungsmodellen müssen die alten form parts `alexander/cdtreingabe` und `alexander/dbtreingabe` mit dem neuen `alexander/businesspartner_search` ausgetauscht werden.
|
in verschiedenen müssen die alten form parts `alexander/cdtreingabe` und `alexander/dbtreingabe` mit dem neuen `alexander/businesspartner_search` ausgetauscht werden.
|
||||||
Der `BusinessPartnerController` bzw. das `InvoicePlugin` bzw. `InvoiceOutgoingPlugin` kümmert sich automatisch um die Migration
|
Der `BusinessPartnerController` bzw. das `InvoicePlugin` bzw. `InvoiceOutgoingPlugin` kümmert sich automatisch um die Migration
|
||||||
|
|
||||||
|
Betroffen sind:
|
||||||
|
|
||||||
|
- reingsungseingang
|
||||||
|
- rechnungsausgang
|
||||||
|
- zahlungseingang
|
||||||
|
- Analyse-debitor
|
||||||
|
|
||||||
### 1.3.3
|
### 1.3.3
|
||||||
|
|
||||||
- Imixs-Archive 3.1.1. Compactor Sevrvice
|
- Imixs-Archive 3.1.1. Compactor Sevrvice
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,6 @@ import org.imixs.workflow.exceptions.ProcessingErrorException;
|
||||||
import org.imixs.workflow.exceptions.QueryException;
|
import org.imixs.workflow.exceptions.QueryException;
|
||||||
|
|
||||||
import com.alexanderlogistics.InvoiceUtil;
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
|
||||||
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
||||||
|
|
||||||
import jakarta.inject.Inject;
|
import jakarta.inject.Inject;
|
||||||
|
|
@ -0,0 +1,84 @@
|
||||||
|
<ui:composition xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://xmlns.jcp.org/jsf/core"
|
||||||
|
xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
|
||||||
|
xmlns:ui="http://xmlns.jcp.org/jsf/facelets" xmlns:pt="http://xmlns.jcp.org/jsf/passthrough"
|
||||||
|
xmlns:marty="http://xmlns.jcp.org/jsf/composite/marty" xmlns:i="http://xmlns.jcp.org/jsf/composite/imixs">
|
||||||
|
|
||||||
|
<!-- Cargosoft Search integration
|
||||||
|
|
||||||
|
This subform is loaded by the form_basic.xhtml page.
|
||||||
|
|
||||||
|
The subform provides a jsf commandScript which calls the cargosoftController.searchCreditor method in the backend.
|
||||||
|
|
||||||
|
The script below inits a autocompletion feature for the input field.
|
||||||
|
See imixs-office.autocompletion.js
|
||||||
|
|
||||||
|
See also:
|
||||||
|
https://stackoverflow.com/questions/16588327/how-to-invoke-a-jsf-managed-bean-on-a-html-dom-event-using-native-javascript
|
||||||
|
https://dzone.com/articles/execute-a-jsf-ajax-request-by-just-a-function-call
|
||||||
|
https://www.w3schools.com/howto/howto_js_autocomplete.asp
|
||||||
|
-->
|
||||||
|
<h:commandScript name="cargosoftDbtrSearch" action="#{cargosoftController.searchDebitor()}"
|
||||||
|
render="autocomplete-resultlist-cargosoft" onevent="autocompleteShowResult" />
|
||||||
|
<h:commandScript name="updateDbtrNumber" action="#{opListController.updateDbtrNumber()}"
|
||||||
|
render="#{opListContainer.clientId}" onevent="ajaxUpdateInvoiceSelection" />
|
||||||
|
<script type="text/javascript">
|
||||||
|
/*<![CDATA[*/
|
||||||
|
|
||||||
|
// init ml input fields...
|
||||||
|
$(document).ready(function () {
|
||||||
|
|
||||||
|
// add autocomplete feature to dbtr.number...
|
||||||
|
var creditorField = $("input[data-item='dbtr.number']");
|
||||||
|
$(creditorField).each(function () {
|
||||||
|
$(this).addClass("imixs-ml");
|
||||||
|
// set callback function...
|
||||||
|
autocompleteInitInput(this, cargosoftDbtrSearch, 'autocomplete-resultlist-cargosoft', selectDbtrCallback);
|
||||||
|
});
|
||||||
|
// add cargsoft label if available
|
||||||
|
var dbtrName = "#{workflowController.workitem.item['dbtr.name']}";
|
||||||
|
// append span with dbtr.name....
|
||||||
|
creditorField.after("<span id='dbtr-name-id' class='small'>" + dbtrName + "</p>");
|
||||||
|
});
|
||||||
|
|
||||||
|
// Hier bekommen wir die JSON Struktur mit allen daten.
|
||||||
|
// diese Daten werden auf die einzelnen Felder verteilt.
|
||||||
|
function selectDbtrCallback(selection) {
|
||||||
|
|
||||||
|
const dbtrData = JSON.parse(selection);
|
||||||
|
|
||||||
|
// fill data into the fields....
|
||||||
|
var inputElement = $("input[data-item='dbtr.number']");
|
||||||
|
inputElement.val(dbtrData.no);
|
||||||
|
// remove old dbtr.name
|
||||||
|
$('#dbtr-name-id').remove();
|
||||||
|
// append span with dbtr.name....
|
||||||
|
inputElement.after("<span id='dbtr-name-id' class='small'>" + dbtrData.name + "</p>");
|
||||||
|
|
||||||
|
|
||||||
|
var inputElementDbtrName = $("input[id$='dbtr_name']");
|
||||||
|
if (inputElementDbtrName) {
|
||||||
|
inputElementDbtrName.val(dbtrData.name);
|
||||||
|
}
|
||||||
|
// check if we have a mail...
|
||||||
|
if (dbtrData.mail) {
|
||||||
|
var inputElementMail = $("input[data-item='dbtr.mail'],textarea[data-item='dbtr.mail']");
|
||||||
|
if (inputElementMail) {
|
||||||
|
inputElementMail.val(dbtrData.mail);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// finally we do a trick and trigger the commandScript updateDbtrNumber which
|
||||||
|
// refreshes the op section
|
||||||
|
updateDbtrNumber({ dbtrNumber: dbtrData.no });
|
||||||
|
}
|
||||||
|
|
||||||
|
/*]]>*/
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Hier speichern das von Kreditor vorgeschlagene zahlungsziel -->
|
||||||
|
<h:inputHidden id="dbtr_creditperiod" value="#{workflowController.workitem.item['dbtr.creditperiod']}" />
|
||||||
|
<h:inputHidden id="dbtr_name" value="#{workflowController.workitem.item['dbtr.name']}" />
|
||||||
|
|
||||||
|
|
||||||
|
</ui:composition>
|
||||||
|
|
@ -92,6 +92,7 @@ public class AGLAnalyticControllerDebitor implements Serializable {
|
||||||
}
|
}
|
||||||
|
|
||||||
String dbtrNumber = event.getWorkitem().getItemValueString("dbtr.number");
|
String dbtrNumber = event.getWorkitem().getItemValueString("dbtr.number");
|
||||||
|
logger.info("Analytic Event : " + dbtrNumber);
|
||||||
String dbtrNumberLast = event.getWorkitem().getItemValueString("dbtr.number.last");
|
String dbtrNumberLast = event.getWorkitem().getItemValueString("dbtr.number.last");
|
||||||
|
|
||||||
// Recompute only if last dbtr.number has changed or no values yet computed
|
// Recompute only if last dbtr.number has changed or no values yet computed
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,7 @@ import org.imixs.workflow.ItemCollection;
|
||||||
import org.imixs.workflow.engine.DocumentService;
|
import org.imixs.workflow.engine.DocumentService;
|
||||||
import org.imixs.workflow.exceptions.AccessDeniedException;
|
import org.imixs.workflow.exceptions.AccessDeniedException;
|
||||||
import org.imixs.workflow.exceptions.QueryException;
|
import org.imixs.workflow.exceptions.QueryException;
|
||||||
|
import org.imixs.workflow.faces.data.WorkflowController;
|
||||||
import org.imixs.workflow.faces.data.WorkflowEvent;
|
import org.imixs.workflow.faces.data.WorkflowEvent;
|
||||||
|
|
||||||
import jakarta.enterprise.context.ConversationScoped;
|
import jakarta.enterprise.context.ConversationScoped;
|
||||||
|
|
@ -67,6 +68,9 @@ public class BusinessPartnerController implements Serializable {
|
||||||
protected List<ItemCollection> invoicesIn = null;
|
protected List<ItemCollection> invoicesIn = null;
|
||||||
protected List<ItemCollection> dunnings = null;
|
protected List<ItemCollection> dunnings = null;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
protected WorkflowController workflowController;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
DocumentService documentService;
|
DocumentService documentService;
|
||||||
|
|
||||||
|
|
@ -299,6 +303,65 @@ public class BusinessPartnerController implements Serializable {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This JSF backing method is called by businesspartner_serach.xhtml after the
|
||||||
|
* user has selected a new businesspartner.
|
||||||
|
* <p>
|
||||||
|
* The method lookups the given BusinessPartner and updates the metadata for
|
||||||
|
* dbtr/cdtr depending on the workflow type.
|
||||||
|
* A form will than rerender the opList section.
|
||||||
|
*/
|
||||||
|
public void updateMetaData() {
|
||||||
|
FacesContext fc = FacesContext.getCurrentInstance();
|
||||||
|
String bpid = fc.getExternalContext().getRequestParameterMap().get("partnerID");
|
||||||
|
logger.fine(".........bpid = " + bpid);
|
||||||
|
ItemCollection businessPartner = businessPartnerService.getBusinessPartnerByID(bpid);
|
||||||
|
if (businessPartner != null) {
|
||||||
|
|
||||||
|
// Eingangsrechnung
|
||||||
|
if (InvoiceUtil.isCreditorInvoice(workflowController.getWorkitem())) {
|
||||||
|
workflowController.getWorkitem().setItemValue("cdtr.number",
|
||||||
|
businessPartner.getItemValueString("cdtr.number"));
|
||||||
|
workflowController.getWorkitem().setItemValue("cdtr.name",
|
||||||
|
businessPartner.getItemValueString("partner.name"));
|
||||||
|
workflowController.getWorkitem().setItemValue("cdtr.email",
|
||||||
|
businessPartner.getItemValue("cdtr.email"));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Ausgangsrechnung
|
||||||
|
if (InvoiceUtil.isDebitorInvoice(workflowController.getWorkitem())) {
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.number",
|
||||||
|
businessPartner.getItemValueString("dbtr.number"));
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.name",
|
||||||
|
businessPartner.getItemValueString("partner.name"));
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.email",
|
||||||
|
businessPartner.getItemValue("dbtr.email"));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Zahlungseingang
|
||||||
|
if (workflowController.getWorkitem().getModelVersion().startsWith("zahlungseingang")) {
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.number",
|
||||||
|
businessPartner.getItemValueString("dbtr.number"));
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.name",
|
||||||
|
businessPartner.getItemValueString("partner.name"));
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.email",
|
||||||
|
businessPartner.getItemValue("dbtr.email"));
|
||||||
|
}
|
||||||
|
|
||||||
|
// Analyse Debitor
|
||||||
|
if (workflowController.getWorkitem().getModelVersion().startsWith("analyse-debitor")) {
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.number",
|
||||||
|
businessPartner.getItemValueString("dbtr.number"));
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.name",
|
||||||
|
businessPartner.getItemValueString("partner.name"));
|
||||||
|
workflowController.getWorkitem().setItemValue("dbtr.email",
|
||||||
|
businessPartner.getItemValue("dbtr.email"));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Hilfsmethode die eine JSON Struktur mit allen relevanten Daten für einen
|
* Hilfsmethode die eine JSON Struktur mit allen relevanten Daten für einen
|
||||||
* BusinessPartner erzeugt.
|
* BusinessPartner erzeugt.
|
||||||
|
|
|
||||||
|
|
@ -313,4 +313,58 @@ public class BusinessPartnerService {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Diese Methode übertragt neue IBAN/BIC Pare in den Kreditor Banken Bereich
|
||||||
|
*
|
||||||
|
* @param cdtrNumber
|
||||||
|
* @param iban
|
||||||
|
* @param bic
|
||||||
|
* @throws PluginException
|
||||||
|
*/
|
||||||
|
public void addNewIBANBIC(ItemCollection businessPartner, String iban, String bic) throws PluginException {
|
||||||
|
if (businessPartner != null) {
|
||||||
|
|
||||||
|
List<ItemCollection> bankenListe = explodeBanks(businessPartner);
|
||||||
|
ItemCollection newbank = new ItemCollection();
|
||||||
|
// {iban=[IBAN], name=[Test Bank], id=[test ], bic=[BIC]}
|
||||||
|
newbank.setItemValue("iban", iban);
|
||||||
|
newbank.setItemValue("bic", bic);
|
||||||
|
newbank.setItemValue("id", bankenListe.size() + 1);
|
||||||
|
newbank.setItemValue("name", "Banke-" + bankenListe.size() + 1);
|
||||||
|
|
||||||
|
bankenListe.add(newbank);
|
||||||
|
implodeBanks(businessPartner, bankenListe);
|
||||||
|
|
||||||
|
documentService.save(businessPartner);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Diese Methode gibt true zurück wenn die angegebene IBAN/BIC Kombination als
|
||||||
|
* bank bereits bekannt ist
|
||||||
|
*
|
||||||
|
* @param cdtrNumber
|
||||||
|
* @param iban
|
||||||
|
* @param bic
|
||||||
|
* @throws PluginException
|
||||||
|
*/
|
||||||
|
public boolean isIBANBICKnown(ItemCollection businessPartner, String iban, String bic) throws PluginException {
|
||||||
|
|
||||||
|
if (businessPartner != null) {
|
||||||
|
|
||||||
|
List<ItemCollection> bankenListe = explodeBanks(businessPartner);
|
||||||
|
for (ItemCollection bank : bankenListe) {
|
||||||
|
if (iban.equals(bank.getItemValueString("iban"))
|
||||||
|
&& bic.equals(bank.getItemValueString("bic"))) {
|
||||||
|
// known!
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ import java.util.stream.Collectors;
|
||||||
|
|
||||||
import org.imixs.workflow.ItemCollection;
|
import org.imixs.workflow.ItemCollection;
|
||||||
import org.imixs.workflow.engine.DocumentService;
|
import org.imixs.workflow.engine.DocumentService;
|
||||||
import org.imixs.workflow.exceptions.PluginException;
|
|
||||||
import org.imixs.workflow.exceptions.QueryException;
|
import org.imixs.workflow.exceptions.QueryException;
|
||||||
import org.imixs.workflow.faces.data.WorkflowController;
|
import org.imixs.workflow.faces.data.WorkflowController;
|
||||||
import org.imixs.workflow.office.views.SearchController;
|
import org.imixs.workflow.office.views.SearchController;
|
||||||
|
|
@ -58,7 +57,7 @@ public class DebitorStatistikController implements Serializable {
|
||||||
protected SearchController searchController;
|
protected SearchController searchController;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
protected KreditorDebitorService kreditorDebitorService;
|
protected BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize default behavior initialize an opitonal id from the query string
|
* Initialize default behavior initialize an opitonal id from the query string
|
||||||
|
|
@ -73,14 +72,13 @@ public class DebitorStatistikController implements Serializable {
|
||||||
String id = paramMap.get("dbtr.number");
|
String id = paramMap.get("dbtr.number");
|
||||||
if (id != null && !id.isEmpty()) {
|
if (id != null && !id.isEmpty()) {
|
||||||
workflowController.getWorkitem().setItemValue("dbtr.number", id);
|
workflowController.getWorkitem().setItemValue("dbtr.number", id);
|
||||||
try {
|
|
||||||
ItemCollection dbtr = kreditorDebitorService.findDebitor(id);
|
ItemCollection dbtr = businessPartnerService.getBusinessPartnerByID(InvoiceUtil.buildBPID(id));
|
||||||
if (dbtr != null) {
|
// ItemCollection dbtr = kreditorDebitorService.findDebitor(id);
|
||||||
workflowController.getWorkitem().setItemValue("dbtr.name", dbtr.getItemValueString("_vendor_name"));
|
if (dbtr != null) {
|
||||||
}
|
workflowController.getWorkitem().setItemValue("dbtr.name", dbtr.getItemValueString("partner.name"));
|
||||||
} catch (PluginException e) {
|
|
||||||
// e.printStackTrace();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,9 +17,6 @@ import jakarta.inject.Inject;
|
||||||
*/
|
*/
|
||||||
public class InvoiceOutgoingPlugin extends AbstractPlugin {
|
public class InvoiceOutgoingPlugin extends AbstractPlugin {
|
||||||
|
|
||||||
@Inject
|
|
||||||
KreditorDebitorService kreditorService;
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
BusinessPartnerService businessPartnerService;
|
BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,6 @@ import org.imixs.workflow.exceptions.PluginException;
|
||||||
import org.imixs.workflow.exceptions.QueryException;
|
import org.imixs.workflow.exceptions.QueryException;
|
||||||
import org.imixs.workflow.faces.util.ResourceBundleHandler;
|
import org.imixs.workflow.faces.util.ResourceBundleHandler;
|
||||||
|
|
||||||
import jakarta.ejb.EJB;
|
|
||||||
import jakarta.inject.Inject;
|
import jakarta.inject.Inject;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -68,10 +67,6 @@ public class InvoicePlugin extends AbstractPlugin {
|
||||||
@ConfigProperty(name = "invoice.position.pattern", defaultValue = INVOICE_POSITIONS_PATTERN_DEFAULT)
|
@ConfigProperty(name = "invoice.position.pattern", defaultValue = INVOICE_POSITIONS_PATTERN_DEFAULT)
|
||||||
String invoicePositionsPattern;
|
String invoicePositionsPattern;
|
||||||
|
|
||||||
// @Inject
|
|
||||||
@EJB
|
|
||||||
KreditorDebitorService kreditorService;
|
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
BusinessPartnerService businessPartnerService;
|
BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
|
|
@ -359,38 +354,28 @@ public class InvoicePlugin extends AbstractPlugin {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// wenn bereits eine Überneahme angedroht wurde dann übernehemen!
|
ItemCollection businessPartner = businessPartnerService
|
||||||
if (!overtakeIBAN.isEmpty()) {
|
.getBusinessPartnerByID(InvoiceUtil.buildBPID(cdtrNumber));
|
||||||
kreditorService.addNewIBANBIC(cdtrNumber, iban, bic);
|
if (businessPartner != null) {
|
||||||
workitem.setItemValue("ibanbic.overtake", "");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// search the kreditor
|
|
||||||
ItemCollection cdtr = kreditorService.findCreditorDebitor(cdtrNumber);
|
|
||||||
if (cdtr != null) {
|
|
||||||
// update country
|
// update country
|
||||||
workitem.setItemValue("invoice.country", cdtr.getItemValueString("_vendor_country"));
|
workitem.setItemValue("invoice.country", businessPartner.getItemValueString("partner.country"));
|
||||||
|
|
||||||
|
// wenn bereits eine Übernahme angedroht wurde, dann übernehmen wir die neue
|
||||||
|
// IBAN/BIC!
|
||||||
|
if (!overtakeIBAN.isEmpty()) {
|
||||||
|
businessPartnerService.addNewIBANBIC(businessPartner, iban, bic);
|
||||||
|
workitem.setItemValue("ibanbic.overtake", "");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// Prüfen ob wir die IBAN schon kennen
|
// Prüfen ob wir die IBAN schon kennen
|
||||||
if (iban.equals(cdtr.getItemValueString("cdtr.iban")) && bic.equals(cdtr.getItemValueString("cdtr.bic"))) {
|
if (!businessPartnerService.isIBANBICKnown(businessPartner, iban, bic)) {
|
||||||
return;
|
// OK - scheinbar ist diese IBAN/BIC nicht bekannt. Also fragen wir mal nach....
|
||||||
|
workitem.setItemValue("ibanbic.overtake", iban + bic);
|
||||||
|
String message = resourceBundleHandler.findMessage("ERROR_IBAN_UNKNOWN");
|
||||||
|
throw new PluginException(InvoicePlugin.class.getName(), ERROR_NEW_IBANBIC, message);
|
||||||
}
|
}
|
||||||
if (iban.equals(cdtr.getItemValueString("cdtr.iban2"))
|
|
||||||
&& bic.equals(cdtr.getItemValueString("cdtr.bic2"))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (iban.equals(cdtr.getItemValueString("cdtr.iban3"))
|
|
||||||
&& bic.equals(cdtr.getItemValueString("cdtr.bic3"))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
if (iban.equals(cdtr.getItemValueString("cdtr.iban4"))
|
|
||||||
&& bic.equals(cdtr.getItemValueString("cdtr.bic4"))) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// OK - scheinbar ist diese IBAN/BIC nicht bekannt. Also fragen wir mal nach....
|
|
||||||
workitem.setItemValue("ibanbic.overtake", iban + bic);
|
|
||||||
String message = resourceBundleHandler.findMessage("ERROR_IBAN_UNKNOWN");
|
|
||||||
throw new PluginException(InvoicePlugin.class.getName(), ERROR_NEW_IBANBIC, message);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ import org.imixs.workflow.faces.data.WorkflowEvent;
|
||||||
|
|
||||||
import jakarta.enterprise.context.ConversationScoped;
|
import jakarta.enterprise.context.ConversationScoped;
|
||||||
import jakarta.enterprise.event.Observes;
|
import jakarta.enterprise.event.Observes;
|
||||||
import jakarta.faces.context.FacesContext;
|
|
||||||
import jakarta.inject.Inject;
|
import jakarta.inject.Inject;
|
||||||
import jakarta.inject.Named;
|
import jakarta.inject.Named;
|
||||||
|
|
||||||
|
|
@ -69,6 +68,9 @@ public class OPListController implements Serializable {
|
||||||
@Inject
|
@Inject
|
||||||
protected InvoiceService invoiceService;
|
protected InvoiceService invoiceService;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
protected BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Diese Methode wird für Zahlungseingänge und Mahnläufe verwendet.
|
* Diese Methode wird für Zahlungseingänge und Mahnläufe verwendet.
|
||||||
* <p>
|
* <p>
|
||||||
|
|
@ -311,22 +313,6 @@ public class OPListController implements Serializable {
|
||||||
workitem.setItemValue("$workitemref", selectionList);
|
workitem.setItemValue("$workitemref", selectionList);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* This JSF backing method is called by cargosft-debitor-serach.xhtml after the
|
|
||||||
* user has selected a new debitor.
|
|
||||||
* <p>
|
|
||||||
* The new dbtrNumber is slected form the curren ajax request param 'dbtrNumber'
|
|
||||||
* <p>
|
|
||||||
* The method just updates the dbtr.number of the current workitem. The form
|
|
||||||
* will than rerender the opList section.
|
|
||||||
*/
|
|
||||||
public void updateDbtrNumber() {
|
|
||||||
FacesContext fc = FacesContext.getCurrentInstance();
|
|
||||||
String dbtrNumber = fc.getExternalContext().getRequestParameterMap().get("dbtrNumber");
|
|
||||||
logger.fine(".........dbtrNumber = " + dbtrNumber);
|
|
||||||
workflowController.getWorkitem().setItemValue("dbtr.number", dbtrNumber);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Hilfsmethode delegates to ZahlungseingangServcie
|
* Hilfsmethode delegates to ZahlungseingangServcie
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -35,9 +35,6 @@ public class SteuerbescheidPlugin extends AbstractPlugin {
|
||||||
@Inject
|
@Inject
|
||||||
protected DocumentService documentService;
|
protected DocumentService documentService;
|
||||||
|
|
||||||
@Inject
|
|
||||||
KreditorDebitorService kreditorService;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Prüft ob der Steuerbetrag abgerechnet ist.
|
* Prüft ob der Steuerbetrag abgerechnet ist.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,8 @@ import org.imixs.workflow.exceptions.PluginException;
|
||||||
import org.imixs.workflow.exceptions.QueryException;
|
import org.imixs.workflow.exceptions.QueryException;
|
||||||
import org.imixs.workflow.sepa.services.SepaWorkflowService;
|
import org.imixs.workflow.sepa.services.SepaWorkflowService;
|
||||||
|
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
import com.alexanderlogistics.BusinessPartnerService;
|
||||||
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
|
|
||||||
import jakarta.ejb.EJB;
|
import jakarta.ejb.EJB;
|
||||||
import jakarta.inject.Inject;
|
import jakarta.inject.Inject;
|
||||||
|
|
@ -40,15 +41,15 @@ public class MahnlaufRefAddAdapter implements SignalAdapter {
|
||||||
@EJB
|
@EJB
|
||||||
ModelService modelService;
|
ModelService modelService;
|
||||||
|
|
||||||
@EJB
|
|
||||||
KreditorDebitorService kreditorDebitorService;
|
|
||||||
|
|
||||||
@EJB
|
@EJB
|
||||||
WorkflowService workflowService = null;
|
WorkflowService workflowService = null;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
SepaWorkflowService sepaWorkflowService;
|
SepaWorkflowService sepaWorkflowService;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method finds or create the Mahnlauf and adds a reference ($workitemref)
|
* This method finds or create the Mahnlauf and adds a reference ($workitemref)
|
||||||
* to the current invoice.
|
* to the current invoice.
|
||||||
|
|
@ -156,9 +157,10 @@ public class MahnlaufRefAddAdapter implements SignalAdapter {
|
||||||
|
|
||||||
// lookup email....
|
// lookup email....
|
||||||
String dbtrNumber = invoice.getItemValueString("dbtr.number");
|
String dbtrNumber = invoice.getItemValueString("dbtr.number");
|
||||||
ItemCollection dbtrItemCol = kreditorDebitorService.findDebitor("D" + dbtrNumber);
|
ItemCollection businessPartner = businessPartnerService
|
||||||
if (dbtrItemCol != null) {
|
.getBusinessPartnerByID(InvoiceUtil.buildBPID(dbtrNumber));
|
||||||
mahnlaufWorkitem.setItemValue(MahnlaufService.ITEM_DBTR_EMAIL, dbtrItemCol.getItemValue("cdtr.mail"));// dbtr.mail
|
if (businessPartner != null) {
|
||||||
|
mahnlaufWorkitem.setItemValue(MahnlaufService.ITEM_DBTR_EMAIL, businessPartner.getItemValue("dbtr.mail"));// dbtr.mail
|
||||||
}
|
}
|
||||||
|
|
||||||
mahnlaufWorkitem.setItemValue(MahnlaufService.ITEM_DBTR_NUMBER,
|
mahnlaufWorkitem.setItemValue(MahnlaufService.ITEM_DBTR_NUMBER,
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,6 @@ import org.imixs.workflow.exceptions.QueryException;
|
||||||
|
|
||||||
import com.alexanderlogistics.BusinessPartnerService;
|
import com.alexanderlogistics.BusinessPartnerService;
|
||||||
import com.alexanderlogistics.InvoiceUtil;
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
|
||||||
|
|
||||||
import jakarta.annotation.security.DeclareRoles;
|
import jakarta.annotation.security.DeclareRoles;
|
||||||
import jakarta.annotation.security.RolesAllowed;
|
import jakarta.annotation.security.RolesAllowed;
|
||||||
|
|
@ -89,6 +88,9 @@ import jakarta.enterprise.event.Observes;
|
||||||
public class BusinessPartnerImportService {
|
public class BusinessPartnerImportService {
|
||||||
|
|
||||||
private static Logger logger = Logger.getLogger(BusinessPartnerImportService.class.getName());
|
private static Logger logger = Logger.getLogger(BusinessPartnerImportService.class.getName());
|
||||||
|
|
||||||
|
public static final String TYPE_CARGOSOFTKREDITOR = "cargosoftkreditor";
|
||||||
|
|
||||||
public static final String OPTION_MANDANT_ID = "mandant.id";
|
public static final String OPTION_MANDANT_ID = "mandant.id";
|
||||||
public static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss";
|
public static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss";
|
||||||
public static final String REGEX_IMPORTTEXTPATTERN = "^R[1-8] .*$";
|
public static final String REGEX_IMPORTTEXTPATTERN = "^R[1-8] .*$";
|
||||||
|
|
@ -228,7 +230,7 @@ public class BusinessPartnerImportService {
|
||||||
// Hier migrieren wir jetzt auch die alten IBAN/BIC Daten
|
// Hier migrieren wir jetzt auch die alten IBAN/BIC Daten
|
||||||
try {
|
try {
|
||||||
String cargoShortID = partnerID.substring(2);
|
String cargoShortID = partnerID.substring(2);
|
||||||
String query = "(type:" + KreditorDebitorService.TYPE_CARGOSOFTKREDITOR + ")";
|
String query = "(type:" + TYPE_CARGOSOFTKREDITOR + ")";
|
||||||
query = query + " AND ( name:K7" + cargoShortID + " OR name:D1" + cargoShortID + " )";
|
query = query + " AND ( name:K7" + cargoShortID + " OR name:D1" + cargoShortID + " )";
|
||||||
|
|
||||||
List<ItemCollection> oldList = documentService.find(query, 2, 0);
|
List<ItemCollection> oldList = documentService.find(query, 2, 0);
|
||||||
|
|
|
||||||
|
|
@ -79,8 +79,8 @@ import org.w3c.dom.NodeList;
|
||||||
import org.xml.sax.InputSource;
|
import org.xml.sax.InputSource;
|
||||||
import org.xml.sax.SAXException;
|
import org.xml.sax.SAXException;
|
||||||
|
|
||||||
|
import com.alexanderlogistics.BusinessPartnerService;
|
||||||
import com.alexanderlogistics.InvoiceUtil;
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
|
||||||
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
||||||
|
|
||||||
import jakarta.ejb.EJB;
|
import jakarta.ejb.EJB;
|
||||||
|
|
@ -123,15 +123,15 @@ public class CargosoftXMLEAkteImportService {
|
||||||
@EJB
|
@EJB
|
||||||
ModelService modelService;
|
ModelService modelService;
|
||||||
|
|
||||||
@EJB
|
|
||||||
KreditorDebitorService kreditorDebitorService;
|
|
||||||
|
|
||||||
@EJB
|
@EJB
|
||||||
DocumentImportService documentImportService;
|
DocumentImportService documentImportService;
|
||||||
|
|
||||||
@Inject
|
@Inject
|
||||||
MahnlaufService mahnlaufService;
|
MahnlaufService mahnlaufService;
|
||||||
|
|
||||||
|
@Inject
|
||||||
|
BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method reacts on a CDI ImportEvent and reads documents form a ftp
|
* This method reacts on a CDI ImportEvent and reads documents form a ftp
|
||||||
* server.
|
* server.
|
||||||
|
|
@ -413,41 +413,32 @@ public class CargosoftXMLEAkteImportService {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
String cdtrNumber = workitem.getItemValueString("cdtr.number");
|
String bid = InvoiceUtil.buildBPID(workitem.getItemValueString("cdtr.number"));
|
||||||
if (cdtrNumber.startsWith("K") || cdtrNumber.startsWith("D")) {
|
ItemCollection businessPartner = businessPartnerService.getBusinessPartnerByID(bid);
|
||||||
workitem.setItemValue("cdtr.number", cdtrNumber.substring(1));
|
// ersten BUchstaben hier wegnehmen (warum auch immer)
|
||||||
}
|
workitem.setItemValue("cdtr.number", businessPartner.getItemValueString("cdtr.number").substring(1));
|
||||||
// lookup debitor and set name
|
// lookup debitor and set name
|
||||||
if (cdtrNumber != null && !cdtrNumber.isEmpty())
|
if (businessPartner != null) {
|
||||||
try {
|
workitem.setItemValue("cdtr.name", businessPartner.getItemValueString("partner.name"));
|
||||||
ItemCollection cdtr = kreditorDebitorService.findCreditor(cdtrNumber);
|
// Anhand der Creditoren Stammdaten errechnen wir die Sprache für diese
|
||||||
if (cdtr != null) {
|
// Rechnung
|
||||||
workitem.setItemValue("cdtr.name", cdtr.getItemValueString("_vendor_name"));
|
String country = businessPartner.getItemValueString("partner.country");
|
||||||
// Anhand der Creditoren Stammdaten errrechnen wir die Sprache für diese
|
workitem.setItemValue("invoice.country", country);
|
||||||
// Rechnung
|
if (country.equalsIgnoreCase("de") || country.equalsIgnoreCase("ch")
|
||||||
String country = cdtr.getItemValueString("_VENDOR_COUNTRY");
|
|| country.equalsIgnoreCase("at")) {
|
||||||
workitem.setItemValue("invoice.country", country);
|
workitem.setItemValue("invoice.language", "DE");
|
||||||
if (country.equalsIgnoreCase("de") || country.equalsIgnoreCase("ch")
|
} else {
|
||||||
|| country.equalsIgnoreCase("at")) {
|
workitem.setItemValue("invoice.language", "EN");
|
||||||
workitem.setItemValue("invoice.language", "DE");
|
|
||||||
} else {
|
|
||||||
workitem.setItemValue("invoice.language", "EN");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (PluginException e) {
|
|
||||||
// e.printStackTrace();
|
|
||||||
}
|
}
|
||||||
|
// Row Positions lesen
|
||||||
|
readXMLRows(doc, workitem);
|
||||||
|
// Jetzt noch das Space mapping
|
||||||
|
workitem.setItemValue("invoice.text", workitem.getItemValueString("invoice.positions"));
|
||||||
|
mahnlaufService.mapInvoiceTextToSpace(workitem, spacePosMappings);
|
||||||
|
|
||||||
// Row Positions lesen
|
// Finally we attache the pdf file and the XML content to the workitem.
|
||||||
readXMLRows(doc, workitem);
|
attacheFiles(doc, workitem);
|
||||||
|
}
|
||||||
// Jetzt noch das Space mapping
|
|
||||||
workitem.setItemValue("invoice.text", workitem.getItemValueString("invoice.positions"));
|
|
||||||
mahnlaufService.mapInvoiceTextToSpace(workitem, spacePosMappings);
|
|
||||||
|
|
||||||
// Finally we attache the pdf file and the XML content to the workitem.
|
|
||||||
attacheFiles(doc, workitem);
|
|
||||||
|
|
||||||
} catch (ParserConfigurationException | SAXException | IOException e) {
|
} catch (ParserConfigurationException | SAXException | IOException e) {
|
||||||
throw new PluginException(CargosoftXMLEAkteImportService.class.getName(),
|
throw new PluginException(CargosoftXMLEAkteImportService.class.getName(),
|
||||||
"XML_ERROR", e.getMessage());
|
"XML_ERROR", e.getMessage());
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,6 @@ import org.xml.sax.InputSource;
|
||||||
import org.xml.sax.SAXException;
|
import org.xml.sax.SAXException;
|
||||||
|
|
||||||
import com.alexanderlogistics.InvoiceUtil;
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
|
||||||
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
||||||
|
|
||||||
import jakarta.ejb.EJB;
|
import jakarta.ejb.EJB;
|
||||||
|
|
@ -114,6 +113,9 @@ public class CargosoftXMLInvoiceImportService {
|
||||||
|
|
||||||
private static Logger logger = Logger.getLogger(CargosoftXMLInvoiceImportService.class.getName());
|
private static Logger logger = Logger.getLogger(CargosoftXMLInvoiceImportService.class.getName());
|
||||||
public static final String OPTION_MANDANT_ID = "mandant.id";
|
public static final String OPTION_MANDANT_ID = "mandant.id";
|
||||||
|
|
||||||
|
public static final String TYPE_CARGOSOFTKREDITOR = "cargosoftkreditor";
|
||||||
|
|
||||||
public static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss";
|
public static final String DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss";
|
||||||
public static final String REGEX_IMPORTTEXTPATTERN = "^R[1-8] .*$";
|
public static final String REGEX_IMPORTTEXTPATTERN = "^R[1-8] .*$";
|
||||||
|
|
||||||
|
|
@ -126,9 +128,6 @@ public class CargosoftXMLInvoiceImportService {
|
||||||
@EJB
|
@EJB
|
||||||
ModelService modelService;
|
ModelService modelService;
|
||||||
|
|
||||||
@EJB
|
|
||||||
KreditorDebitorService kreditorDebitorService;
|
|
||||||
|
|
||||||
@EJB
|
@EJB
|
||||||
DocumentImportService documentImportService;
|
DocumentImportService documentImportService;
|
||||||
|
|
||||||
|
|
@ -451,7 +450,7 @@ public class CargosoftXMLInvoiceImportService {
|
||||||
}
|
}
|
||||||
// lookup debitor and set name
|
// lookup debitor and set name
|
||||||
try {
|
try {
|
||||||
ItemCollection dbtr = kreditorDebitorService.findDebitor(dbtrNumber);
|
ItemCollection dbtr = findDebitor(dbtrNumber);
|
||||||
if (dbtr != null) {
|
if (dbtr != null) {
|
||||||
workitem.setItemValue("dbtr.name", dbtr.getItemValueString("_vendor_name"));
|
workitem.setItemValue("dbtr.name", dbtr.getItemValueString("_vendor_name"));
|
||||||
// Anhand der Creditoren Stammdaten errrechnen wir die Sprache für diese
|
// Anhand der Creditoren Stammdaten errrechnen wir die Sprache für diese
|
||||||
|
|
@ -824,4 +823,30 @@ public class CargosoftXMLInvoiceImportService {
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Diese Method sucht einen Debitor.
|
||||||
|
* <p>
|
||||||
|
* Diese Methode erwartet das führende D
|
||||||
|
*
|
||||||
|
* @throws PluginException
|
||||||
|
*/
|
||||||
|
public ItemCollection findDebitor(String dbtrNumber) throws PluginException {
|
||||||
|
|
||||||
|
if ((!dbtrNumber.startsWith("D"))) {
|
||||||
|
dbtrNumber = "D" + dbtrNumber;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
String query = "(type:" + TYPE_CARGOSOFTKREDITOR + ") AND (name:" + dbtrNumber + ")";
|
||||||
|
List<ItemCollection> result = documentService.find(query, 1, 0, "$modified", true);
|
||||||
|
if (result.size() > 0) {
|
||||||
|
return result.get(0);
|
||||||
|
|
||||||
|
}
|
||||||
|
} catch (QueryException e) {
|
||||||
|
throw new PluginException(PluginException.class.getName(), "QUERY ERROR", e.getMessage(), e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,90 +0,0 @@
|
||||||
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
|
|
||||||
xmlns:f="http://xmlns.jcp.org/jsf/core"
|
|
||||||
xmlns:h="http://xmlns.jcp.org/jsf/html"
|
|
||||||
xmlns:c="http://xmlns.jcp.org/jsp/jstl/core"
|
|
||||||
xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
|
|
||||||
xmlns:pt="http://xmlns.jcp.org/jsf/passthrough"
|
|
||||||
xmlns:marty="http://xmlns.jcp.org/jsf/composite/marty"
|
|
||||||
xmlns:i="http://xmlns.jcp.org/jsf/composite/imixs">
|
|
||||||
|
|
||||||
<!-- Cargosoft Search integration
|
|
||||||
|
|
||||||
This subform is loaded by the form_basic.xhtml page.
|
|
||||||
|
|
||||||
The subform provides a jsf commandScript which calls the cargosoftController.searchCreditor method in the backend.
|
|
||||||
|
|
||||||
The script below inits a autocompletion feature for the input field.
|
|
||||||
See imixs-office.autocompletion.js
|
|
||||||
|
|
||||||
See also:
|
|
||||||
https://stackoverflow.com/questions/16588327/how-to-invoke-a-jsf-managed-bean-on-a-html-dom-event-using-native-javascript
|
|
||||||
https://dzone.com/articles/execute-a-jsf-ajax-request-by-just-a-function-call
|
|
||||||
https://www.w3schools.com/howto/howto_js_autocomplete.asp
|
|
||||||
-->
|
|
||||||
<h:commandScript name="cargosoftDbtrSearch" action="#{cargosoftController.searchDebitor()}"
|
|
||||||
render="autocomplete-resultlist-cargosoft" onevent="autocompleteShowResult" />
|
|
||||||
<h:commandScript name="updateDbtrNumber" action="#{opListController.updateDbtrNumber()}"
|
|
||||||
render="#{opListContainer.clientId}" onevent="ajaxUpdateInvoiceSelection" />
|
|
||||||
<script type="text/javascript">
|
|
||||||
/*<![CDATA[*/
|
|
||||||
|
|
||||||
// init ml input fields...
|
|
||||||
$(document).ready(function() {
|
|
||||||
|
|
||||||
// add autocomplete feature to dbtr.number...
|
|
||||||
var creditorField= $("input[data-item='dbtr.number']");
|
|
||||||
$(creditorField).each(function() {
|
|
||||||
$(this).addClass("imixs-ml");
|
|
||||||
// set callback function...
|
|
||||||
autocompleteInitInput(this,cargosoftDbtrSearch,'autocomplete-resultlist-cargosoft',selectDbtrCallback);
|
|
||||||
});
|
|
||||||
// add cargsoft label if available
|
|
||||||
var dbtrName="#{workflowController.workitem.item['dbtr.name']}";
|
|
||||||
// append span with dbtr.name....
|
|
||||||
creditorField.after( "<span id='dbtr-name-id' class='small'>" + dbtrName + "</p>" );
|
|
||||||
});
|
|
||||||
|
|
||||||
// Hier bekommen wir die JSON Struktur mit allen daten.
|
|
||||||
// diese Daten werden auf die einzelnen Felder verteilt.
|
|
||||||
function selectDbtrCallback(selection) {
|
|
||||||
|
|
||||||
const dbtrData = JSON.parse(selection);
|
|
||||||
|
|
||||||
// fill data into the fields....
|
|
||||||
var inputElement=$("input[data-item='dbtr.number']");
|
|
||||||
inputElement.val(dbtrData.no);
|
|
||||||
// remove old dbtr.name
|
|
||||||
$('#dbtr-name-id').remove();
|
|
||||||
// append span with dbtr.name....
|
|
||||||
inputElement.after( "<span id='dbtr-name-id' class='small'>" + dbtrData.name + "</p>" );
|
|
||||||
|
|
||||||
|
|
||||||
var inputElementDbtrName=$("input[id$='dbtr_name']");
|
|
||||||
if (inputElementDbtrName) {
|
|
||||||
inputElementDbtrName.val(dbtrData.name);
|
|
||||||
}
|
|
||||||
// check if we have a mail...
|
|
||||||
if (dbtrData.mail) {
|
|
||||||
var inputElementMail=$("input[data-item='dbtr.mail'],textarea[data-item='dbtr.mail']");
|
|
||||||
if (inputElementMail) {
|
|
||||||
inputElementMail.val(dbtrData.mail);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// finally we do a trick and trigger the commandScript updateDbtrNumber which
|
|
||||||
// refreshes the op section
|
|
||||||
updateDbtrNumber({ dbtrNumber: dbtrData.no });
|
|
||||||
}
|
|
||||||
|
|
||||||
/*]]>*/
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<!-- Hier speichern das von Kreditor vorgeschlagene zahlungsziel -->
|
|
||||||
<h:inputHidden id="dbtr_creditperiod" value="#{workflowController.workitem.item['dbtr.creditperiod']}" />
|
|
||||||
<h:inputHidden id="dbtr_name" value="#{workflowController.workitem.item['dbtr.name']}" />
|
|
||||||
|
|
||||||
|
|
||||||
</ui:composition>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -27,6 +27,9 @@
|
||||||
<h:commandScript name="businsspartnerSearch" action="#{businessPartnerController.search(options)}"
|
<h:commandScript name="businsspartnerSearch" action="#{businessPartnerController.search(options)}"
|
||||||
render="autocomplete-resultlist-businsspartner" onevent="autocompleteShowResult" />
|
render="autocomplete-resultlist-businsspartner" onevent="autocompleteShowResult" />
|
||||||
|
|
||||||
|
<h:commandScript name="updateBPForm" action="#{businessPartnerController.updateMetaData()}"
|
||||||
|
render="#{opListContainer.clientId}" onevent="handleUpdateEvent" />
|
||||||
|
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
/*<![CDATA[*/
|
/*<![CDATA[*/
|
||||||
|
|
||||||
|
|
@ -54,6 +57,18 @@
|
||||||
$('#businsspartner-konto-id').remove();
|
$('#businsspartner-konto-id').remove();
|
||||||
// append span with konto name....
|
// append span with konto name....
|
||||||
inputElementKonto.after("<span id='businsspartner-konto-id' class='small'>" + kontoData['partner.name'] + "</span>");
|
inputElementKonto.after("<span id='businsspartner-konto-id' class='small'>" + kontoData['partner.name'] + "</span>");
|
||||||
|
|
||||||
|
// finally we do a trick and trigger the commandScript updateBPForm which
|
||||||
|
// refreshes the op section
|
||||||
|
updateBPForm({ partnerID: kontoData.name });
|
||||||
|
}
|
||||||
|
|
||||||
|
function handleUpdateEvent(data) {
|
||||||
|
console.log('bin in handleUpdaetEvent');
|
||||||
|
if (typeof ajaxUpdateInvoiceSelection === 'function') {
|
||||||
|
console.log('und wir haben die fuktion');
|
||||||
|
ajaxUpdateInvoiceSelection(data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*]]>*/
|
/*]]>*/
|
||||||
|
|
|
||||||
|
|
@ -5,8 +5,6 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
|
||||||
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
import com.alexanderlogistics.datev.DatevCargosoftImportAdapter;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This test generates random test data
|
* This test generates random test data
|
||||||
*
|
*
|
||||||
|
|
@ -29,12 +27,4 @@ public class TestPostionsnummernRegex {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testCargoImportText() {
|
|
||||||
|
|
||||||
assertTrue("R3 EX-PRO-2208-054".matches(DatevCargosoftImportAdapter.REGEX_IMPORTTEXTPATTERN));
|
|
||||||
assertTrue("R3 VP".matches(DatevCargosoftImportAdapter.REGEX_IMPORTTEXTPATTERN));
|
|
||||||
assertFalse("R LA-HOL-2208-013".matches(DatevCargosoftImportAdapter.REGEX_IMPORTTEXTPATTERN));
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -28,8 +28,8 @@ import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
import org.mockito.junit.jupiter.MockitoSettings;
|
import org.mockito.junit.jupiter.MockitoSettings;
|
||||||
import org.mockito.quality.Strictness;
|
import org.mockito.quality.Strictness;
|
||||||
|
|
||||||
|
import com.alexanderlogistics.BusinessPartnerService;
|
||||||
import com.alexanderlogistics.InvoiceUtil;
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
|
||||||
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -51,7 +51,7 @@ public class EAkteImportTester {
|
||||||
private DocumentService documentService;
|
private DocumentService documentService;
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private KreditorDebitorService kreditorDebitorService;
|
private BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private MahnlaufService mahnlaufService;
|
private MahnlaufService mahnlaufService;
|
||||||
|
|
|
||||||
|
|
@ -28,8 +28,8 @@ import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
import org.mockito.junit.jupiter.MockitoSettings;
|
import org.mockito.junit.jupiter.MockitoSettings;
|
||||||
import org.mockito.quality.Strictness;
|
import org.mockito.quality.Strictness;
|
||||||
|
|
||||||
|
import com.alexanderlogistics.BusinessPartnerService;
|
||||||
import com.alexanderlogistics.InvoiceUtil;
|
import com.alexanderlogistics.InvoiceUtil;
|
||||||
import com.alexanderlogistics.KreditorDebitorService;
|
|
||||||
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
import com.alexanderlogistics.mahnlauf.MahnlaufService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -51,10 +51,10 @@ public class InvoiceImportTester {
|
||||||
private DocumentService documentService;
|
private DocumentService documentService;
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private KreditorDebitorService kreditorDebitorService;
|
private MahnlaufService mahnlaufService;
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private MahnlaufService mahnlaufService;
|
private BusinessPartnerService businessPartnerService;
|
||||||
|
|
||||||
@BeforeEach
|
@BeforeEach
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
|
|
|
||||||
480
workflow/analyse-debitor-en-1.0.1-draft.bpmn
Normal file
480
workflow/analyse-debitor-en-1.0.1-draft.bpmn
Normal file
|
|
@ -0,0 +1,480 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- origin at X=0.0 Y=0.0 --><bpmn2:definitions 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:open-bpmn="http://open-bpmn.org/XMLSchema" xmlns:tl="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exporter="org.eclipse.bpmn2.modeler.core" exporterVersion="1.5.4.RC1-v20220528-0836-B1" id="Definitions_1" name="Definitions 1" targetNamespace="http://www.imixs.org/bpmn2">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txtworkflowmodelversion" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[analyse-debitor-en-1.0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtfieldmapping" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Prozess-Verantwortliche|namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[Prozess-Assistenz|namprocessassist]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[Buchhaltung|namprocessteam]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[Debitor-Mail|dbtr.mail]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttimefieldmapping" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Ende|datTo]]></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.profile.ProfilePlugin]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[org.imixs.marty.plugins.SequenceNumberPlugin]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[org.imixs.marty.team.TeamPlugin]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[org.imixs.marty.profile.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.profile.MailPlugin]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<open-bpmn:auto-align>true</open-bpmn:auto-align>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:signal id="Signal_1" name="com.alexanderlogistics.AGLAnalyticExcelAdapterDebitor"/>
|
||||||
|
<bpmn2:message id="Message_2" name="Html-Header">
|
||||||
|
<bpmn2:documentation id="Documentation_22"><![CDATA[<html>
|
||||||
|
<head>
|
||||||
|
<style type="text/css">
|
||||||
|
html, body, div, p, pre, 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 {
|
||||||
|
border-bottom: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
td { border:none;min-width:120px; }
|
||||||
|
th { font-weight: bold;}
|
||||||
|
</style>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title><itemvalue>$workflowstatus</itemvalue></title>
|
||||||
|
</head>
|
||||||
|
<body>]]></bpmn2:documentation>
|
||||||
|
</bpmn2:message>
|
||||||
|
<bpmn2:message id="Message_7" name="Html-Footer">
|
||||||
|
<bpmn2:documentation id="Documentation_15"><![CDATA[</body>
|
||||||
|
</html>]]></bpmn2:documentation>
|
||||||
|
</bpmn2:message>
|
||||||
|
<bpmn2:collaboration id="Collaboration_1" name="Mahnlauf">
|
||||||
|
<bpmn2:participant id="Participant_1" name="Analysis Debitor " processRef="Process_1">
|
||||||
|
<bpmn2:documentation id="documentation_sqQYFQ"/>
|
||||||
|
</bpmn2:participant>
|
||||||
|
<bpmn2:participant id="Participant_2" name="SEPA-Export Pool" processRef="eingangsrechnung-de"/>
|
||||||
|
</bpmn2:collaboration>
|
||||||
|
<bpmn2:process id="eingangsrechnung-de" isExecutable="false" name="Default Process" processType="Public">
|
||||||
|
<bpmn2:documentation id="documentation_sxNNHw"/>
|
||||||
|
</bpmn2:process>
|
||||||
|
<bpmn2:process definitionalCollaborationRef="Collaboration_1" id="Process_1" isExecutable="false" name="Analysis Debitor " processType="Private">
|
||||||
|
<bpmn2:laneSet id="LaneSet_1" name="Lane Set 1">
|
||||||
|
<bpmn2:lane id="Lane_1" name="Team">
|
||||||
|
<bpmn2:flowNodeRef>StartEvent_1</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>Task_1</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>EndEvent_3</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>Task_2</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>IntermediateCatchEvent_8</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:documentation id="documentation_WBGJTA"/>
|
||||||
|
<bpmn2:flowNodeRef>DataObject_1</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_HrHS9A</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>dataObject_00mX6w</bpmn2:flowNodeRef>
|
||||||
|
</bpmn2:lane>
|
||||||
|
</bpmn2:laneSet>
|
||||||
|
<bpmn2:startEvent id="StartEvent_1" name="Start">
|
||||||
|
<bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
|
||||||
|
<bpmn2:documentation id="documentation_5CHRCQ"/>
|
||||||
|
</bpmn2:startEvent>
|
||||||
|
<bpmn2:task id="Task_2" imixs:processid="1900" name="Archived">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[SOA <itemvalue>dbtr.name</itemvalue> - <itemvalue format="EEE. dd. MMM. yyyy">$lasteventdate</itemvalue>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>true</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||||
|
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||||
|
<imixs:item name="txtimageurl" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[typcn-chart-pie||||typcn-tick,imixs-success]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttype" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[workitemarchive]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txteditorid" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[form_basic_read]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="Documentation_4"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
|
||||||
|
<bpmn2:incoming>sequenceFlow_OL83kQ</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_1K0l0g</bpmn2:incoming>
|
||||||
|
</bpmn2:task>
|
||||||
|
<bpmn2:sequenceFlow id="SequenceFlow_10" sourceRef="Task_2" targetRef="EndEvent_3">
|
||||||
|
<bpmn2:documentation id="documentation_WzPj2A"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:endEvent id="EndEvent_3" name="End">
|
||||||
|
<bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
|
||||||
|
<bpmn2:documentation id="documentation_sMnhoQ"/>
|
||||||
|
</bpmn2:endEvent>
|
||||||
|
<bpmn2:task id="Task_1" imixs:processid="1000" name="Creation">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<itemvalue format="dd.MM.yyyy">$lasteventdate</itemvalue>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txteditorid" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[alexander/form_basic]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtimageurl" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[typcn-chart-pie||]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttype" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[workitem]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>true</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||||
|
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="namaddwriteaccess" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="Documentation_3"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_17AQjg</bpmn2:outgoing>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_LhcuMQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:task>
|
||||||
|
<bpmn2:sequenceFlow id="SequenceFlow_4" sourceRef="StartEvent_1" targetRef="Task_1">
|
||||||
|
<bpmn2:documentation id="documentation_p6trwA"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:dataObject id="DataObject_1" name="Form">
|
||||||
|
<bpmn2:documentation id="Documentation_17"><![CDATA[<imixs-form>
|
||||||
|
<imixs-form-section columns="2">
|
||||||
|
<item name="dbtr.number" type="custom" path="alexander/businesspartner_search" required="true" label="Debtor:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="4" label="Invoices">
|
||||||
|
<item name="analytic.invoices.count.all" type="custom" path="alexander/analyze_plain" label="All:" />
|
||||||
|
<item name="analytic.invoices.count.open" type="custom" path="alexander/analyze_plain" label="Unpaid:" />
|
||||||
|
<item name="analytic.invoices.count.due" type="custom" path="alexander/analyze_plain" label="Due:" />
|
||||||
|
<item name="analytic.invoices.count.dunning" type="custom" path="alexander/analyze_plain" label="Dunning:" />
|
||||||
|
<item name="analytic.payment.avg.due" type="custom" path="alexander/analyze_plain" label="Average term of credit:" />
|
||||||
|
<item name="analytic.payment.avg.days" type="custom" path="alexander/analyze_plain" label="Average payment duration:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="1" label="Trend Payment ">
|
||||||
|
<item name="analytic.invoices.trend" type="custom" path="alexander/analyze_chart" label="Payments in the last 6 months:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
</imixs-form>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:dataState id="DataState_1"/>
|
||||||
|
</bpmn2:dataObject>
|
||||||
|
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_8" imixs:activityid="40" name="Archive">
|
||||||
|
<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="txtmailsubject" type="xs:string">
|
||||||
|
<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="rtfmailbody" type="xs:string">
|
||||||
|
<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[1]]></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[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<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[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Analysis data archived]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="Documentation_2"><![CDATA[Archive analysis data]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>sequenceFlow_17AQjg</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_OL83kQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:association id="Association_2" sourceRef="DataObject_1" targetRef="Task_1">
|
||||||
|
<bpmn2:documentation id="documentation_pDK6DQ"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_17AQjg" sourceRef="Task_1" targetRef="IntermediateCatchEvent_8">
|
||||||
|
<bpmn2:documentation id="documentation_c8gvZg"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_OL83kQ" sourceRef="IntermediateCatchEvent_8" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_j2zUkw"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:intermediateCatchEvent id="event_HrHS9A" imixs:activityid="20" name="Excel 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="txtmailsubject" type="xs:string">
|
||||||
|
<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="rtfmailbody" type="xs:string">
|
||||||
|
<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[1]]></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[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<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[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Analysis data archived and Excel report generated]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<soa name="excel-export">
|
||||||
|
<textblock>SOA Template</textblock>
|
||||||
|
<template>soa_template.xlsx</template>
|
||||||
|
<target-name>soa_<itemvalue>dbtr.number</itemvalue>_<itemvalue format="yyyy-MM-dd">$lasteventdate</itemvalue>.xlsx</target-name>
|
||||||
|
</soa>
|
||||||
|
<poi-update name="findreplace">
|
||||||
|
<find>F6</find>
|
||||||
|
<replace><itemvalue format="dd.MM.yyyy">$lasteventdate</itemvalue></replace>
|
||||||
|
<type>date</type>
|
||||||
|
</poi-update>
|
||||||
|
<poi-update name="findreplace">
|
||||||
|
<find>A7</find>
|
||||||
|
<replace><itemvalue>dbtr.name</itemvalue></replace>
|
||||||
|
</poi-update>
|
||||||
|
|
||||||
|
]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_pCTOtQ"><![CDATA[Create Excel File]]></bpmn2:documentation>
|
||||||
|
<bpmn2:signalEventDefinition id="signalEventDefinition_007muw" signalRef="Signal_1"/>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_1K0l0g</bpmn2:outgoing>
|
||||||
|
<bpmn2:incoming>sequenceFlow_LhcuMQ</bpmn2:incoming>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:dataObject id="dataObject_00mX6w" name="Form">
|
||||||
|
<bpmn2:documentation id="documentation_lUG0qw"><![CDATA[<imixs-form>
|
||||||
|
<imixs-form-section columns="2">
|
||||||
|
<item name="dbtr.number" type="custom" path="alexander/businesspartner_search" readonly="true" label="Debtor:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
<imixs-form-section columns="4" label="Invoices">
|
||||||
|
<item name="analytic.invoices.count.all" type="custom" path="alexander/analyze_plain" label="All:" />
|
||||||
|
<item name="analytic.invoices.count.open" type="custom" path="alexander/analyze_plain" label="Unpaid:" />
|
||||||
|
<item name="analytic.invoices.count.due" type="custom" path="alexander/analyze_plain" label="Due:" />
|
||||||
|
<item name="analytic.invoices.count.dunning" type="custom" path="alexander/analyze_plain" label="Dunning:" />
|
||||||
|
<item name="analytic.payment.avg.due" type="custom" path="alexander/analyze_plain" label="Average term of credit:" />
|
||||||
|
<item name="analytic.payment.avg.days" type="custom" path="alexander/analyze_plain" label="Average payment duration:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="1" label="Trend Payment ">
|
||||||
|
<item name="analytic.invoices.trend" type="custom" path="alexander/analyze_chart" label="Payments in the last 6 months:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
</imixs-form>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:dataState id="dataState_n87Eag"/>
|
||||||
|
</bpmn2:dataObject>
|
||||||
|
<bpmn2:association id="association_hwRAUQ" sourceRef="dataObject_00mX6w" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_rNw1ng"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_1K0l0g" sourceRef="event_HrHS9A" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_CVv7XQ"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_LhcuMQ" sourceRef="Task_1" targetRef="event_HrHS9A">
|
||||||
|
<bpmn2:documentation id="documentation_Ll2kVg"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
</bpmn2:process>
|
||||||
|
<bpmndi:BPMNDiagram id="BPMNDiagram_1" name="Default Process Diagram">
|
||||||
|
<bpmndi:BPMNPlane bpmnElement="Collaboration_1" id="BPMNPlane_1">
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Participant_1" id="BPMNShape_Participant_1" isHorizontal="true">
|
||||||
|
<dc:Bounds height="330.0" width="960.0" x="100.0" y="150.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Lane_1" id="BPMNShape_Lane_1" isHorizontal="true">
|
||||||
|
<dc:Bounds height="330.0" width="930.0" x="130.0" y="150.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="StartEvent_1" id="BPMNShape_1">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="197.0" y="297.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_1" labelStyle="BPMNLabelStyle_1">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="169.5" y="337.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Task_1" id="BPMNShape_Task_1">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="290.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="EndEvent_3" id="BPMNShape_EndEvent_2">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="757.0" y="297.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_85" labelStyle="BPMNLabelStyle_1">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="728.0" y="337.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Task_2" id="BPMNShape_Task_2">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="570.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="DataObject_1" id="BPMNShape_DataObject_1">
|
||||||
|
<dc:Bounds height="50.0" width="35.0" x="290.0" y="190.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_13">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="258.0" y="240.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Message_2" id="BPMNShape_Message_1">
|
||||||
|
<dc:Bounds height="20.0" width="30.0" x="119.0" y="59.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_35">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="84.0" y="79.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Message_7" id="BPMNShape_Message_4">
|
||||||
|
<dc:Bounds height="20.0" width="30.0" x="213.0" y="59.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_40">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="178.0" y="79.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_8" id="BPMNShape_IntermediateCatchEvent_8">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="467.0" y="297.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_24">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="434.5" y="337.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_10" id="BPMNEdge_SequenceFlow_10" sourceElement="BPMNShape_Task_2" targetElement="BPMNShape_EndEvent_2">
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_26"/>
|
||||||
|
<di:waypoint x="680.0" y="315.0"/>
|
||||||
|
<di:waypoint x="757.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_4" id="BPMNEdge_SequenceFlow_4" sourceElement="BPMNShape_1" targetElement="BPMNShape_Task_1">
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_11"/>
|
||||||
|
<di:waypoint x="233.0" y="315.0"/>
|
||||||
|
<di:waypoint x="290.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="Association_2" id="BPMNEdge_Association_2" sourceElement="BPMNShape_DataObject_1" targetElement="BPMNShape_Task_1">
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_17"/>
|
||||||
|
<di:waypoint x="325.0" y="213.0"/>
|
||||||
|
<di:waypoint x="345.0" y="213.0"/>
|
||||||
|
<di:waypoint x="345.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_17AQjg" id="BPMNEdge_oSvh0w" sourceElement="BPMNShape_Task_1" targetElement="BPMNShape_IntermediateCatchEvent_8">
|
||||||
|
<di:waypoint x="400.0" y="315.0"/>
|
||||||
|
<di:waypoint x="467.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_OL83kQ" id="BPMNEdge_lwO0vA" sourceElement="BPMNShape_IntermediateCatchEvent_8" targetElement="BPMNShape_Task_2">
|
||||||
|
<di:waypoint x="503.0" y="315.0"/>
|
||||||
|
<di:waypoint x="570.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_HrHS9A" id="BPMNShape_hrK7fA">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="467.0" y="377.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_CJ3Faw">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="435.0" y="416.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="dataObject_00mX6w" id="BPMNShape_UEsYmw">
|
||||||
|
<dc:Bounds height="50.0" width="35.0" x="560.0" y="190.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_ekwD3A">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="526.0" y="239.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="association_hwRAUQ" id="BPMNEdge_9JCm5A" sourceElement="BPMNShape_UEsYmw" targetElement="BPMNShape_Task_2">
|
||||||
|
<di:waypoint x="578.0" y="240.0"/>
|
||||||
|
<di:waypoint x="578.0" y="265.0"/>
|
||||||
|
<di:waypoint x="625.0" y="265.0"/>
|
||||||
|
<di:waypoint x="625.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_1K0l0g" id="BPMNEdge_1KePCQ" sourceElement="BPMNShape_hrK7fA" targetElement="BPMNShape_Task_2">
|
||||||
|
<di:waypoint x="503.0" y="395.0"/>
|
||||||
|
<di:waypoint x="630.0" y="395.0"/>
|
||||||
|
<di:waypoint x="630.0" y="340.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_LhcuMQ" id="BPMNEdge_p8xjxQ" sourceElement="BPMNShape_Task_1" targetElement="BPMNShape_hrK7fA">
|
||||||
|
<di:waypoint x="349.0" y="340.0"/>
|
||||||
|
<di:waypoint x="349.0" y="395.0"/>
|
||||||
|
<di:waypoint x="467.0" y="395.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
</bpmndi:BPMNPlane>
|
||||||
|
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
||||||
|
<dc:Font name="arial" size="9.0"/>
|
||||||
|
</bpmndi:BPMNLabelStyle>
|
||||||
|
</bpmndi:BPMNDiagram>
|
||||||
|
</bpmn2:definitions>
|
||||||
481
workflow/dwc/deprecated/analyse-debitor-en-1.0.1-draft.bpmn
Normal file
481
workflow/dwc/deprecated/analyse-debitor-en-1.0.1-draft.bpmn
Normal file
|
|
@ -0,0 +1,481 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- origin at X=0.0 Y=0.0 --><bpmn2:definitions 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:open-bpmn="http://open-bpmn.org/XMLSchema" xmlns:tl="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exporter="org.eclipse.bpmn2.modeler.core" exporterVersion="1.5.4.RC1-v20220528-0836-B1" id="Definitions_1" name="Definitions 1" targetNamespace="http://www.imixs.org/bpmn2">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txtworkflowmodelversion" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[analyse-debitor-en-1.0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtfieldmapping" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Prozess-Verantwortliche|namprocessmanager]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[Prozess-Assistenz|namprocessassist]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[Buchhaltung|namprocessteam]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[Debitor-Mail|dbtr.mail]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttimefieldmapping" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Ende|datTo]]></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.profile.ProfilePlugin]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[org.imixs.marty.plugins.SequenceNumberPlugin]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[org.imixs.marty.team.TeamPlugin]]></imixs:value>
|
||||||
|
<imixs:value><![CDATA[org.imixs.marty.profile.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.profile.MailPlugin]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<open-bpmn:auto-align>true</open-bpmn:auto-align>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:signal id="Signal_1" name="com.alexanderlogistics.AGLAnalyticExcelAdapterDebitor"/>
|
||||||
|
<bpmn2:message id="Message_2" name="Html-Header">
|
||||||
|
<bpmn2:documentation id="Documentation_22"><![CDATA[<html>
|
||||||
|
<head>
|
||||||
|
<style type="text/css">
|
||||||
|
html, body, div, p, pre, 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 {
|
||||||
|
border-bottom: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
td { border:none;min-width:120px; }
|
||||||
|
th { font-weight: bold;}
|
||||||
|
</style>
|
||||||
|
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||||
|
<title><itemvalue>$workflowstatus</itemvalue></title>
|
||||||
|
</head>
|
||||||
|
<body>]]></bpmn2:documentation>
|
||||||
|
</bpmn2:message>
|
||||||
|
<bpmn2:message id="Message_7" name="Html-Footer">
|
||||||
|
<bpmn2:documentation id="Documentation_15"><![CDATA[</body>
|
||||||
|
</html>]]></bpmn2:documentation>
|
||||||
|
</bpmn2:message>
|
||||||
|
<bpmn2:collaboration id="Collaboration_1" name="Mahnlauf">
|
||||||
|
<bpmn2:participant id="Participant_1" name="Debitor - Analysis" processRef="Process_1">
|
||||||
|
<bpmn2:documentation id="documentation_sqQYFQ"/>
|
||||||
|
</bpmn2:participant>
|
||||||
|
<bpmn2:participant id="Participant_2" name="SEPA-Export Pool" processRef="eingangsrechnung-de"/>
|
||||||
|
</bpmn2:collaboration>
|
||||||
|
<bpmn2:process id="eingangsrechnung-de" isExecutable="false" name="Default Process" processType="Public">
|
||||||
|
<bpmn2:documentation id="documentation_sxNNHw"/>
|
||||||
|
</bpmn2:process>
|
||||||
|
<bpmn2:process definitionalCollaborationRef="Collaboration_1" id="Process_1" isExecutable="false" name="Debitor - Analysis" processType="Private">
|
||||||
|
<bpmn2:laneSet id="LaneSet_1" name="Lane Set 1">
|
||||||
|
<bpmn2:lane id="Lane_1" name="Team">
|
||||||
|
<bpmn2:flowNodeRef>StartEvent_1</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>Task_1</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>EndEvent_3</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>Task_2</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>IntermediateCatchEvent_8</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:documentation id="documentation_WBGJTA"/>
|
||||||
|
<bpmn2:flowNodeRef>DataObject_1</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>event_HrHS9A</bpmn2:flowNodeRef>
|
||||||
|
<bpmn2:flowNodeRef>dataObject_00mX6w</bpmn2:flowNodeRef>
|
||||||
|
</bpmn2:lane>
|
||||||
|
</bpmn2:laneSet>
|
||||||
|
<bpmn2:startEvent id="StartEvent_1" name="Start">
|
||||||
|
<bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
|
||||||
|
<bpmn2:documentation id="documentation_5CHRCQ"/>
|
||||||
|
</bpmn2:startEvent>
|
||||||
|
<bpmn2:task id="Task_2" imixs:processid="1900" name="Archived">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue format="EEE. dd. MMM. yyyy">$lasteventdate</itemvalue>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>true</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string"/>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||||
|
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||||
|
<imixs:item name="txtimageurl" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[typcn-chart-pie||||typcn-tick,imixs-success]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttype" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[workitemarchive]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txteditorid" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[form_basic_read]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="Documentation_4"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:outgoing>SequenceFlow_10</bpmn2:outgoing>
|
||||||
|
<bpmn2:incoming>sequenceFlow_OL83kQ</bpmn2:incoming>
|
||||||
|
<bpmn2:incoming>sequenceFlow_1K0l0g</bpmn2:incoming>
|
||||||
|
</bpmn2:task>
|
||||||
|
<bpmn2:sequenceFlow id="SequenceFlow_10" sourceRef="Task_2" targetRef="EndEvent_3">
|
||||||
|
<bpmn2:documentation id="documentation_WzPj2A"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:endEvent id="EndEvent_3" name="End">
|
||||||
|
<bpmn2:incoming>SequenceFlow_10</bpmn2:incoming>
|
||||||
|
<bpmn2:documentation id="documentation_sMnhoQ"/>
|
||||||
|
</bpmn2:endEvent>
|
||||||
|
<bpmn2:task id="Task_1" imixs:processid="1000" name="Creation">
|
||||||
|
<bpmn2:extensionElements>
|
||||||
|
<imixs:item name="txtworkflowsummary" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<itemvalue format="dd.MM.yyyy">$lasteventdate</itemvalue>]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txteditorid" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[alexander/form_basic]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtimageurl" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[typcn-chart-pie||]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txttype" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[workitem]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>true</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyownershipfields" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[namprocessteam]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyaddreadfields" type="xs:string"/>
|
||||||
|
<imixs:item name="keyaddwritefields" type="xs:string"/>
|
||||||
|
<imixs:item name="namaddreadaccess" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="namaddwriteaccess" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[{process:?:member}]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="Documentation_3"><![CDATA[<textblock><itemvalue>$workflowgroup</itemvalue> - <itemvalue>$workflowstatus</itemvalue></textblock>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_17AQjg</bpmn2:outgoing>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_LhcuMQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:task>
|
||||||
|
<bpmn2:sequenceFlow id="SequenceFlow_4" sourceRef="StartEvent_1" targetRef="Task_1">
|
||||||
|
<bpmn2:documentation id="documentation_p6trwA"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:dataObject id="DataObject_1" name="Form">
|
||||||
|
<bpmn2:documentation id="Documentation_17"><![CDATA[<imixs-form>
|
||||||
|
<imixs-form-section columns="2">
|
||||||
|
<item name="dbtr.number" type="custom" path="alexander/businesspartner_search" required="true" label="Debitor:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
<imixs-form-section columns="4" label="Invoices">
|
||||||
|
<item name="analytic.invoices.count.all" type="custom" path="alexander/analyze_plain" label="All Invoices:" />
|
||||||
|
<item name="analytic.invoices.count.open" type="custom" path="alexander/analyze_plain" label="Open Invoices open:" />
|
||||||
|
<item name="analytic.invoices.count.due" type="custom" path="alexander/analyze_plain" label="Invoices in due:" />
|
||||||
|
<item name="analytic.invoices.count.dunning" type="custom" path="alexander/analyze_plain" label="Invoices in dunning:" />
|
||||||
|
<item name="analytic.payment.avg.due" type="custom" path="alexander/analyze_plain" label="Average term of credit:" />
|
||||||
|
<item name="analytic.payment.avg.days" type="custom" path="alexander/analyze_plain" label="Average payment duration:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="1" label="Trend Payment Practices">
|
||||||
|
<item name="analytic.invoices.trend" type="custom" path="alexander/analyze_chart" label="Payments within the last 6 months:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
|
||||||
|
</imixs-form>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:dataState id="DataState_1"/>
|
||||||
|
</bpmn2:dataObject>
|
||||||
|
<bpmn2:intermediateCatchEvent id="IntermediateCatchEvent_8" imixs:activityid="40" name="Archive">
|
||||||
|
<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="txtmailsubject" type="xs:string">
|
||||||
|
<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="rtfmailbody" type="xs:string">
|
||||||
|
<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[1]]></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[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<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[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Analysis data archived]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="Documentation_2"><![CDATA[Archive analysis data]]></bpmn2:documentation>
|
||||||
|
<bpmn2:incoming>sequenceFlow_17AQjg</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_OL83kQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:association id="Association_2" sourceRef="DataObject_1" targetRef="Task_1">
|
||||||
|
<bpmn2:documentation id="documentation_pDK6DQ"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_17AQjg" sourceRef="Task_1" targetRef="IntermediateCatchEvent_8">
|
||||||
|
<bpmn2:documentation id="documentation_c8gvZg"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_OL83kQ" sourceRef="IntermediateCatchEvent_8" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_j2zUkw"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:intermediateCatchEvent id="event_HrHS9A" imixs:activityid="20" name="Excel 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="txtmailsubject" type="xs:string">
|
||||||
|
<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="rtfmailbody" type="xs:string">
|
||||||
|
<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[1]]></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[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<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[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Analysedaten Debitor archiviert]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<soa name="excel-export">
|
||||||
|
<textblock>SOA Template</textblock>
|
||||||
|
<template>soa_template.xlsx</template>
|
||||||
|
<target-name>soa_<itemvalue>dbtr.number</itemvalue>_<itemvalue format="yyyy-MM-dd">$lasteventdate</itemvalue>.xlsx</target-name>
|
||||||
|
</soa>
|
||||||
|
<poi-update name="findreplace">
|
||||||
|
<find>F6</find>
|
||||||
|
<replace><itemvalue format="dd.MM.yyyy">$lasteventdate</itemvalue></replace>
|
||||||
|
<type>date</type>
|
||||||
|
</poi-update>
|
||||||
|
<poi-update name="findreplace">
|
||||||
|
<find>A7</find>
|
||||||
|
<replace><itemvalue>dbtr.name</itemvalue></replace>
|
||||||
|
</poi-update>
|
||||||
|
|
||||||
|
]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_pCTOtQ"><![CDATA[Excel Datei erzeugen]]></bpmn2:documentation>
|
||||||
|
<bpmn2:signalEventDefinition id="signalEventDefinition_007muw" signalRef="Signal_1"/>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_1K0l0g</bpmn2:outgoing>
|
||||||
|
<bpmn2:incoming>sequenceFlow_LhcuMQ</bpmn2:incoming>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:dataObject id="dataObject_00mX6w" name="Form">
|
||||||
|
<bpmn2:documentation id="documentation_lUG0qw"><![CDATA[<imixs-form>
|
||||||
|
<imixs-form-section columns="2">
|
||||||
|
<item name="dbtr.number" type="custom" path="alexander/businesspartner_search" readonly="true" label="Debitor:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
<imixs-form-section columns="4" label="Invoices">
|
||||||
|
<item name="analytic.invoices.count.all" type="custom" path="alexander/analyze_plain" label="All Invoices:" />
|
||||||
|
<item name="analytic.invoices.count.open" type="custom" path="alexander/analyze_plain" label="Open Invoices open:" />
|
||||||
|
<item name="analytic.invoices.count.due" type="custom" path="alexander/analyze_plain" label="Invoices in due:" />
|
||||||
|
<item name="analytic.invoices.count.dunning" type="custom" path="alexander/analyze_plain" label="Invoices in dunning:" />
|
||||||
|
<item name="analytic.payment.avg.due" type="custom" path="alexander/analyze_plain" label="Average term of credit:" />
|
||||||
|
<item name="analytic.payment.avg.days" type="custom" path="alexander/analyze_plain" label="Average payment duration:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
<imixs-form-section columns="1" label="Trend Payment Practices">
|
||||||
|
<item name="analytic.invoices.trend" type="custom" path="alexander/analyze_chart" label="Payments within the last 6 months:" />
|
||||||
|
</imixs-form-section>
|
||||||
|
|
||||||
|
|
||||||
|
</imixs-form>]]></bpmn2:documentation>
|
||||||
|
<bpmn2:dataState id="dataState_n87Eag"/>
|
||||||
|
</bpmn2:dataObject>
|
||||||
|
<bpmn2:association id="association_hwRAUQ" sourceRef="dataObject_00mX6w" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_rNw1ng"/>
|
||||||
|
</bpmn2:association>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_1K0l0g" sourceRef="event_HrHS9A" targetRef="Task_2">
|
||||||
|
<bpmn2:documentation id="documentation_CVv7XQ"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_LhcuMQ" sourceRef="Task_1" targetRef="event_HrHS9A">
|
||||||
|
<bpmn2:documentation id="documentation_Ll2kVg"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
</bpmn2:process>
|
||||||
|
<bpmndi:BPMNDiagram id="BPMNDiagram_1" name="Default Process Diagram">
|
||||||
|
<bpmndi:BPMNPlane bpmnElement="Collaboration_1" id="BPMNPlane_1">
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Participant_1" id="BPMNShape_Participant_1" isHorizontal="true">
|
||||||
|
<dc:Bounds height="330.0" width="960.0" x="100.0" y="150.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Lane_1" id="BPMNShape_Lane_1" isHorizontal="true">
|
||||||
|
<dc:Bounds height="330.0" width="930.0" x="130.0" y="150.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="StartEvent_1" id="BPMNShape_1">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="197.0" y="297.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_1" labelStyle="BPMNLabelStyle_1">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="169.5" y="337.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Task_1" id="BPMNShape_Task_1">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="290.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="EndEvent_3" id="BPMNShape_EndEvent_2">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="757.0" y="297.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_85" labelStyle="BPMNLabelStyle_1">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="728.0" y="337.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Task_2" id="BPMNShape_Task_2">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="570.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="DataObject_1" id="BPMNShape_DataObject_1">
|
||||||
|
<dc:Bounds height="50.0" width="35.0" x="290.0" y="190.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_13">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="258.0" y="240.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Message_2" id="BPMNShape_Message_1">
|
||||||
|
<dc:Bounds height="20.0" width="30.0" x="119.0" y="59.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_35">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="84.0" y="79.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="Message_7" id="BPMNShape_Message_4">
|
||||||
|
<dc:Bounds height="20.0" width="30.0" x="213.0" y="59.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_40">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="178.0" y="79.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="IntermediateCatchEvent_8" id="BPMNShape_IntermediateCatchEvent_8">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="467.0" y="297.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_24">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="434.5" y="337.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_10" id="BPMNEdge_SequenceFlow_10" sourceElement="BPMNShape_Task_2" targetElement="BPMNShape_EndEvent_2">
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_26"/>
|
||||||
|
<di:waypoint x="680.0" y="315.0"/>
|
||||||
|
<di:waypoint x="757.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="SequenceFlow_4" id="BPMNEdge_SequenceFlow_4" sourceElement="BPMNShape_1" targetElement="BPMNShape_Task_1">
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_11"/>
|
||||||
|
<di:waypoint x="233.0" y="315.0"/>
|
||||||
|
<di:waypoint x="290.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="Association_2" id="BPMNEdge_Association_2" sourceElement="BPMNShape_DataObject_1" targetElement="BPMNShape_Task_1">
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_17"/>
|
||||||
|
<di:waypoint x="325.0" y="213.0"/>
|
||||||
|
<di:waypoint x="345.0" y="213.0"/>
|
||||||
|
<di:waypoint x="345.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_17AQjg" id="BPMNEdge_oSvh0w" sourceElement="BPMNShape_Task_1" targetElement="BPMNShape_IntermediateCatchEvent_8">
|
||||||
|
<di:waypoint x="400.0" y="315.0"/>
|
||||||
|
<di:waypoint x="467.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_OL83kQ" id="BPMNEdge_lwO0vA" sourceElement="BPMNShape_IntermediateCatchEvent_8" targetElement="BPMNShape_Task_2">
|
||||||
|
<di:waypoint x="503.0" y="315.0"/>
|
||||||
|
<di:waypoint x="570.0" y="315.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_HrHS9A" id="BPMNShape_hrK7fA">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="467.0" y="377.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_CJ3Faw">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="435.0" y="416.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="dataObject_00mX6w" id="BPMNShape_UEsYmw">
|
||||||
|
<dc:Bounds height="50.0" width="35.0" x="560.0" y="190.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_ekwD3A">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="528.0" y="229.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="association_hwRAUQ" id="BPMNEdge_9JCm5A" sourceElement="BPMNShape_UEsYmw" targetElement="BPMNShape_Task_2">
|
||||||
|
<di:waypoint x="577.0" y="240.0"/>
|
||||||
|
<di:waypoint x="577.0" y="265.0"/>
|
||||||
|
<di:waypoint x="625.0" y="265.0"/>
|
||||||
|
<di:waypoint x="625.0" y="290.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_1K0l0g" id="BPMNEdge_1KePCQ" sourceElement="BPMNShape_hrK7fA" targetElement="BPMNShape_Task_2">
|
||||||
|
<di:waypoint x="503.0" y="395.0"/>
|
||||||
|
<di:waypoint x="630.0" y="395.0"/>
|
||||||
|
<di:waypoint x="630.0" y="340.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_LhcuMQ" id="BPMNEdge_p8xjxQ" sourceElement="BPMNShape_Task_1" targetElement="BPMNShape_hrK7fA">
|
||||||
|
<di:waypoint x="349.0" y="340.0"/>
|
||||||
|
<di:waypoint x="349.0" y="395.0"/>
|
||||||
|
<di:waypoint x="467.0" y="395.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
</bpmndi:BPMNPlane>
|
||||||
|
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
||||||
|
<dc:Font name="arial" size="9.0"/>
|
||||||
|
</bpmndi:BPMNLabelStyle>
|
||||||
|
</bpmndi:BPMNDiagram>
|
||||||
|
</bpmn2:definitions>
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
<!-- origin at X=0.0 Y=0.0 --><bpmn2:definitions 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:open-bpmn="http://open-bpmn.org/XMLSchema" xmlns:tl="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exporter="org.eclipse.bpmn2.modeler.core" exporterVersion="1.5.4.RC1-v20220528-0836-B1" id="Definitions_1" name="Definitions 1" targetNamespace="http://www.imixs.org/bpmn2">
|
<!-- origin at X=0.0 Y=0.0 --><bpmn2:definitions xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" 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:open-bpmn="http://open-bpmn.org/XMLSchema" xmlns:tl="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" exporter="org.eclipse.bpmn2.modeler.core" exporterVersion="1.5.4.RC1-v20220528-0836-B1" id="Definitions_1" name="Definitions 1" targetNamespace="http://www.imixs.org/bpmn2">
|
||||||
<bpmn2:extensionElements>
|
<bpmn2:extensionElements>
|
||||||
<imixs:item name="txtworkflowmodelversion" type="xs:string">
|
<imixs:item name="txtworkflowmodelversion" type="xs:string">
|
||||||
<imixs:value><![CDATA[zahlungseingang-dwc-1.0]]></imixs:value>
|
<imixs:value><![CDATA[zahlungseingang-dwc-1.0]]></imixs:value>
|
||||||
|
|
@ -54,6 +54,107 @@
|
||||||
</bpmn2:collaboration>
|
</bpmn2:collaboration>
|
||||||
<bpmn2:process id="eingangsrechnung-de" isExecutable="false" name="Payment Receipt" processType="Public">
|
<bpmn2:process id="eingangsrechnung-de" isExecutable="false" name="Payment Receipt" processType="Public">
|
||||||
<bpmn2:documentation id="documentation_jDBJJg"/>
|
<bpmn2:documentation id="documentation_jDBJJg"/>
|
||||||
|
<bpmn2:startEvent id="event_LmQVtw" name="Event-10">
|
||||||
|
<bpmn2:documentation id="documentation_9vma0g"/>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_CYsovQ</bpmn2:outgoing>
|
||||||
|
</bpmn2:startEvent>
|
||||||
|
<bpmn2:serviceTask id="task_gBLi9g" imixs:processid="100" name="Task-5">
|
||||||
|
<bpmn2:documentation id="documentation_R1ctSQ"/>
|
||||||
|
<bpmn2:incoming>sequenceFlow_CYsovQ</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_ceiZVA</bpmn2:outgoing>
|
||||||
|
</bpmn2:serviceTask>
|
||||||
|
<bpmn2:endEvent id="event_d0LERw" name="Event-11">
|
||||||
|
<bpmn2:documentation id="documentation_8D8N5g"/>
|
||||||
|
<bpmn2:incoming>sequenceFlow_92Rz3A</bpmn2:incoming>
|
||||||
|
</bpmn2:endEvent>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_CYsovQ" sourceRef="event_LmQVtw" targetRef="task_gBLi9g">
|
||||||
|
<bpmn2:documentation id="documentation_3VUtQQ"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_ceiZVA" sourceRef="task_gBLi9g" targetRef="event_eD33Og">
|
||||||
|
<bpmn2:documentation id="documentation_oVUTZA"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:serviceTask id="task_ftEmsg" imixs:processid="100" name="Task-6">
|
||||||
|
<bpmn2:documentation id="documentation_5tYCGQ"/>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_92Rz3A</bpmn2:outgoing>
|
||||||
|
<bpmn2:incoming>sequenceFlow_G011rg</bpmn2:incoming>
|
||||||
|
</bpmn2:serviceTask>
|
||||||
|
<bpmn2:intermediateCatchEvent id="event_eD33Og" imixs:activityid="20" name="Accounting">
|
||||||
|
<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="txtmailsubject" type="xs:string">
|
||||||
|
<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="rtfmailbody" type="xs:string">
|
||||||
|
<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[1]]></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[5000]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtnextprocesstree" type="xs:string">
|
||||||
|
<imixs:value/>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="txtactivityresult" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[<item name="action">home</item>]]></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[0]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="rtfresultlog" type="xs:string">
|
||||||
|
<imixs:value><![CDATA[Invoiced were reconciled and receipt of payment is booked and completed.]]></imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
<imixs:item name="keyupdateacl" type="xs:boolean">
|
||||||
|
<imixs:value>false</imixs:value>
|
||||||
|
</imixs:item>
|
||||||
|
</bpmn2:extensionElements>
|
||||||
|
<bpmn2:documentation id="documentation_XP07ew"><![CDATA[Forward the payment capture to accounting]]></bpmn2:documentation>
|
||||||
|
<bpmn2:dataOutput id="dataOutput_nhT7zw" name="Signal_1_Output"/>
|
||||||
|
<bpmn2:dataOutputAssociation id="dataOutputAssociation_bXi80A">
|
||||||
|
<bpmn2:sourceRef>DataOutput_1</bpmn2:sourceRef>
|
||||||
|
</bpmn2:dataOutputAssociation>
|
||||||
|
<bpmn2:outputSet id="outputSet_qi2HmQ" name="Output Set 2">
|
||||||
|
<bpmn2:dataOutputRefs>DataOutput_1</bpmn2:dataOutputRefs>
|
||||||
|
</bpmn2:outputSet>
|
||||||
|
<bpmn2:signalEventDefinition id="signalEventDefinition_i1zJYA" signalRef="Signal_1"/>
|
||||||
|
<bpmn2:incoming>sequenceFlow_ceiZVA</bpmn2:incoming>
|
||||||
|
<bpmn2:outgoing>sequenceFlow_G011rg</bpmn2:outgoing>
|
||||||
|
</bpmn2:intermediateCatchEvent>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_92Rz3A" sourceRef="task_ftEmsg" targetRef="event_d0LERw">
|
||||||
|
<bpmn2:documentation id="documentation_sqekDQ"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
|
<bpmn2:sequenceFlow id="sequenceFlow_G011rg" sourceRef="event_eD33Og" targetRef="task_ftEmsg">
|
||||||
|
<bpmn2:documentation id="documentation_piM82g"/>
|
||||||
|
</bpmn2:sequenceFlow>
|
||||||
</bpmn2:process>
|
</bpmn2:process>
|
||||||
<bpmn2:process definitionalCollaborationRef="Collaboration_1" id="Process_1" isExecutable="false" name="Payment Receipt" processType="Private">
|
<bpmn2:process definitionalCollaborationRef="Collaboration_1" id="Process_1" isExecutable="false" name="Payment Receipt" processType="Private">
|
||||||
<bpmn2:laneSet id="LaneSet_1" name="Lane Set 1">
|
<bpmn2:laneSet id="LaneSet_1" name="Lane Set 1">
|
||||||
|
|
@ -424,7 +525,7 @@ result.isValid=true;
|
||||||
<bpmn2:documentation id="Documentation_17"><![CDATA[<?xml version="1.0"?>
|
<bpmn2:documentation id="Documentation_17"><![CDATA[<?xml version="1.0"?>
|
||||||
<imixs-form>
|
<imixs-form>
|
||||||
<imixs-form-section columns="2" >
|
<imixs-form-section columns="2" >
|
||||||
<item name="dbtr.number" type="text" required="true" label="Debtor:" />
|
<item name="partner.id" type="custom" path="alexander/businesspartner_search" requred="true" label="Debitor:"/>
|
||||||
<item name="payment.date" type="date" required="true" label="Payment Date:" />
|
<item name="payment.date" type="date" required="true" label="Payment Date:" />
|
||||||
</imixs-form-section>
|
</imixs-form-section>
|
||||||
<imixs-form-section>
|
<imixs-form-section>
|
||||||
|
|
@ -810,6 +911,7 @@ th { font-weight: bold;}
|
||||||
<bpmn2:documentation id="documentation_Ikyn9A"><![CDATA[</body>
|
<bpmn2:documentation id="documentation_Ikyn9A"><![CDATA[</body>
|
||||||
</html>]]></bpmn2:documentation>
|
</html>]]></bpmn2:documentation>
|
||||||
</bpmn2:message>
|
</bpmn2:message>
|
||||||
|
<bpmn2:signal id="signal_3" name="Signal 3"/>
|
||||||
<bpmndi:BPMNDiagram id="BPMNDiagram_1" name="Default Process Diagram">
|
<bpmndi:BPMNDiagram id="BPMNDiagram_1" name="Default Process Diagram">
|
||||||
<bpmndi:BPMNPlane bpmnElement="Collaboration_1" id="BPMNPlane_1">
|
<bpmndi:BPMNPlane bpmnElement="Collaboration_1" id="BPMNPlane_1">
|
||||||
<bpmndi:BPMNShape bpmnElement="Participant_1" id="BPMNShape_Participant_1" isHorizontal="true">
|
<bpmndi:BPMNShape bpmnElement="Participant_1" id="BPMNShape_Participant_1" isHorizontal="true">
|
||||||
|
|
@ -1021,6 +1123,46 @@ th { font-weight: bold;}
|
||||||
<dc:Bounds height="20.0" width="100.0" x="495.0" y="105.0"/>
|
<dc:Bounds height="20.0" width="100.0" x="495.0" y="105.0"/>
|
||||||
</bpmndi:BPMNLabel>
|
</bpmndi:BPMNLabel>
|
||||||
</bpmndi:BPMNShape>
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_LmQVtw" id="BPMNShape_yPIbDA">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="397.0" y="-113.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_ZG3NoQ">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="359.0" y="-77.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="task_gBLi9g" id="BPMNShape_NRK0yg">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="500.0" y="-120.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_d0LERw" id="BPMNShape_m2nFdA">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="937.0" y="-113.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_7xbjwQ">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="905.0" y="-74.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_CYsovQ" id="BPMNEdge_4ObFBw" sourceElement="BPMNShape_yPIbDA" targetElement="BPMNShape_NRK0yg">
|
||||||
|
<di:waypoint x="433.0" y="-95.0"/>
|
||||||
|
<di:waypoint x="500.0" y="-95.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_ceiZVA" id="BPMNEdge_iB3xOA" sourceElement="BPMNShape_NRK0yg" targetElement="BPMNShape_t9Br7g">
|
||||||
|
<di:waypoint x="610.0" y="-95.0"/>
|
||||||
|
<di:waypoint x="667.0" y="-95.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="task_ftEmsg" id="BPMNShape_yuVyVQ">
|
||||||
|
<dc:Bounds height="50.0" width="110.0" x="760.0" y="-120.0"/>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNShape bpmnElement="event_eD33Og" id="BPMNShape_t9Br7g">
|
||||||
|
<dc:Bounds height="36.0" width="36.0" x="667.0" y="-113.0"/>
|
||||||
|
<bpmndi:BPMNLabel id="BPMNLabel_o9l7fw">
|
||||||
|
<dc:Bounds height="20.0" width="100.0" x="635.0" y="-74.0"/>
|
||||||
|
</bpmndi:BPMNLabel>
|
||||||
|
</bpmndi:BPMNShape>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_92Rz3A" id="BPMNEdge_7OEmsw" sourceElement="BPMNShape_yuVyVQ" targetElement="BPMNShape_m2nFdA">
|
||||||
|
<di:waypoint x="870.0" y="-95.0"/>
|
||||||
|
<di:waypoint x="937.0" y="-95.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
|
<bpmndi:BPMNEdge bpmnElement="sequenceFlow_G011rg" id="BPMNEdge_iwbPWQ" sourceElement="BPMNShape_t9Br7g" targetElement="BPMNShape_yuVyVQ">
|
||||||
|
<di:waypoint x="703.0" y="-95.0"/>
|
||||||
|
<di:waypoint x="760.0" y="-95.0"/>
|
||||||
|
</bpmndi:BPMNEdge>
|
||||||
</bpmndi:BPMNPlane>
|
</bpmndi:BPMNPlane>
|
||||||
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
<bpmndi:BPMNLabelStyle id="BPMNLabelStyle_1">
|
||||||
<dc:Font name="arial" size="9.0"/>
|
<dc:Font name="arial" size="9.0"/>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue