migration auf neue office version

This commit is contained in:
Ralph Soika 2026-08-15 10:54:26 +02:00
parent b8d0660526
commit e14af8449f
342 changed files with 1503 additions and 8539 deletions

View file

@ -1,11 +0,0 @@
#!/bin/bash
############################################################
# Setup hotdeploy
#
############################################################
cd office-alexander-logistics-app
mvn manik-hotdeploy:hotdeploy
cd ..

View file

@ -1 +0,0 @@
/target/

View file

@ -1,430 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>office-alexander-logistics</artifactId>
<groupId>com.alexander-logistics</groupId>
<version>1.3.6</version>
</parent>
<artifactId>office-alexander-logistics-app</artifactId>
<packaging>war</packaging>
<name>Imixs Office Workflow App</name>
<profiles>
<profile>
<id>docker</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}" />
<arg value="../." />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>debug</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-f" />
<arg value="../Dockerfile-wildfly-debug" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}" />
<arg value="../." />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>kubernetes</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg
value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg value="../." />
</exec>
<exec executable="docker">
<arg value="tag" />
<arg
value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg
value="${org.imixs.kubernetes.registry}/imixs/${imixs-office.applicationname}:${project.version}" />
</exec>
<exec executable="docker">
<arg value="push" />
<arg
value="${org.imixs.kubernetes.registry}/imixs/${imixs-office.applicationname}:${project.version}" />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<build>
<testResources>
<testResource>
<directory>${basedir}/../reports</directory>
</testResource>
<testResource>
<directory>${basedir}/../workflow</directory>
</testResource>
<testResource>
<directory>${basedir}/src/test/resources</directory>
</testResource>
</testResources>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.2</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<webResources>
<resource>
<filtering>true</filtering>
<!-- this is relative to the pom.xml directory -->
<directory>${custom.webResources}</directory>
<includes>
<include>**/WEB-INF/*</include>
<!-- include any other file types you want to filter -->
</includes>
</resource>
</webResources>
<workDirectory>target/overlay-war-folder</workDirectory>
<!-- We exclude libs form the parent WAR artifact -->
<overlays>
<overlay>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<excludes>
<exclude>WEB-INF/lib/*.jar</exclude>
</excludes>
</overlay>
</overlays>
</configuration>
</plugin>
<plugin>
<groupId>org.imixs.maven</groupId>
<artifactId>manik-hotdeploy-maven-plugin</artifactId>
<version>2.0.0</version>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- List Source and Target folders for Autodeploy and Hotdeploy -->
<autodeployments>
<deployment>
<!-- wildcard deployment -->
<source>target/*.{war,ear,jar}</source>
<target>../docker/deployments/</target>
<unpack>true</unpack>
</deployment>
</autodeployments>
<hotdeployments>
<deployment>
<source>src/main/webapp</source>
<target>../docker/deployments/office-alexander-logistics.war</target>
</deployment>
</hotdeployments>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- Imixs Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-core</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-engine</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-jax-rs</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-faces</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-index-lucene</artifactId>
<scope>compile</scope>
</dependency>
<!-- Marty -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-marty</artifactId>
<type>jar</type>
<scope>compile</scope>
</dependency>
<!-- Imixs-Office-Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<type>war</type>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-util</artifactId>
<scope>compile</scope>
</dependency>
<!-- Imixs-Archive -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-archive-api</artifactId>
<scope>compile</scope>
</dependency>
<!-- Imixs Data -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-groups</artifactId>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-views</artifactId>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-documents</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-importer</artifactId>
<scope>compile</scope>
</dependency>
<!-- SEPA Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-sepa</artifactId>
<scope>compile</scope>
</dependency>
<!-- DATEV Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-datev</artifactId>
<scope>compile</scope>
</dependency>
<!-- QR Code -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-qrcode</artifactId>
<scope>compile</scope>
</dependency>
<!-- POI Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-poi</artifactId>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-ai-workflow</artifactId>
<version>${org.imixs.ai.version}</version>
<scope>compile</scope>
</dependency>
<!-- E-Invoice -->
<dependency>
<groupId>org.imixs.util</groupId>
<artifactId>imixs-e-invoice</artifactId>
<version>${org.imixs.e-invoice.version}</version>
</dependency>
<!-- xsl 2.0 support for Reporting / Chart Diagrams -->
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
</dependency>
<!-- Apache PDFBox -->
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>${apache.pdfbox.version}</version>
<scope>compile</scope>
</dependency>
<!-- Apache Commons FTP Client -->
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.6</version>
</dependency>
<!-- Microsoft oauth token -->
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.3</version>
<scope>test</scope>
</dependency>
<!-- JUnit Tests
<dependency>
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<version>1.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<version>1.1</version>
<scope>test</scope>
</dependency>
-->
<!-- JAX-RS 2.0 Test dependencies -->
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>3.1.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<version>3.3.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.inject</groupId>
<artifactId>jersey-hk2</artifactId>
<version>3.1.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.ws.rs</groupId>
<artifactId>jakarta.ws.rs-api</artifactId>
<version>3.1.0</version>
<scope>test</scope>
</dependency>
<!-- KSeF 2.0 Client
<dependency>
<groupId>pl.akmf.ksef-sdk</groupId>
<artifactId>ksef-client</artifactId>
<version>3.0.4</version>
<scope>test</scope>
</dependency>
-->
</dependencies>
<!--
<repositories>
<repository>
<id>github-cirfmf</id>
<url>https://maven.pkg.github.com/CIRFMF/ksef-client-java</url>
</repository>
</repositories>
-->
</project>

View file

@ -1,139 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>office-alexander-logistics</artifactId>
<groupId>com.alexander-logistics</groupId>
<version>1.3.6</version>
</parent>
<artifactId>office-alexander-logistics-testclient</artifactId>
<packaging>jar</packaging>
<name>Imixs Office Workflow Remote Test Client</name>
<build>
<resources>
<!-- enable resource filtering for multi language version -->
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<!-- use JDK settings for compiling -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.11.0</version>
<configuration>
<source>11</source>
<target>11</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.3.1</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<!-- Testing JUnit 5 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.1.2</version>
</plugin>
</plugins>
<finalName>imixs-process-manager</finalName>
</build>
<dependencies>
<!-- JEE Dependencies -->
<dependency>
<groupId>jakarta.platform</groupId>
<artifactId>jakarta.jakartaee-api</artifactId>
<version>10.0.0</version>
<scope>provided</scope>
</dependency>
<!-- Imixs Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-core</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-melman</artifactId>
<version>${org.imixs.melman.version}</version>
</dependency>
<!-- JUnit 5 Dependencies -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
<!-- Mockito Dependencies -->
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-junit-jupiter</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<!-- Test dependencies -->
<dependency>
<groupId>jakarta.xml.bind</groupId>
<artifactId>jakarta.xml.bind-api</artifactId>
<version>3.0.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.parsson</groupId>
<artifactId>jakarta.json</artifactId>
<version>1.1.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jaxb</groupId>
<artifactId>jaxb-runtime</artifactId>
<version>3.0.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-jaxb</artifactId>
<version>3.1.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>3.1.5</version>
</dependency>
</dependencies>
</project>

View file

@ -1,105 +0,0 @@
package com.alexanderlogistics.rest;
import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import org.imixs.melman.EventLogClient;
import org.imixs.melman.FormAuthenticator;
import org.imixs.melman.RestAPIException;
import org.imixs.workflow.ItemCollection;
import org.imixs.workflow.exceptions.PluginException;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
/**
* A test to explore a corgosoft invoice event
*
*/
@Disabled
public class TestCargosoftEvents {
private static Logger logger = Logger.getLogger(TestCargosoftEvents.class.getName());
EventLogClient client = null;
String restAPI = "https://test.alexander-logistics.office-workflow.de/api";
// String restAPI = "http://localhost:8080/api";
String userID = "kutzner-service";
String password = "imixs";
/**
* Setup a new Rest Client
*
* @throws PluginException
*/
@BeforeEach
public void setup() throws PluginException {
client = new EventLogClient(restAPI);
FormAuthenticator aut;
try {
aut = new FormAuthenticator(restAPI, userID, password);
client.registerClientRequestFilter(aut);
} catch (RestAPIException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Disabled
@Test
public void getXMLData() {
logger.info("start...");
try {
List<ItemCollection> list = client.searchEventLog("TOPIC_CARGOSOFT_INVOICE");
logger.info("found " + list.size() + " log entries");
for (ItemCollection entry : list) {
List<?> dataList = entry.getItemValue("data");
if (dataList != null && dataList.size() > 0) {
ItemCollection data = new ItemCollection((Map<String, List<Object>>) dataList.get(0));
logger.info("Data=" + data.getItemValueString("some-data"));
logger.info("XML Data=" + data.getItemValueString("xml-data"));
}
}
} catch (RestAPIException e) {
logger.severe("Failed to read event log entry: " + e.getMessage());
e.printStackTrace();
}
}
/**
* Deletes the 10 last topics
*/
@Test
public void deleteXMLData() {
logger.info("start...");
int count = 0;
try {
client.setPageSize(1000);
List<ItemCollection> list = client.searchEventLog("topictest", "TOPIC_CARGOSOFT_INVOICE");
// List<ItemCollection> list = client.searchEventLog("");
logger.info("found " + list.size() + " log entries");
for (ItemCollection entry : list) {
String id = entry.getItemValueString("id");
logger.info("delete event log entry id=" + id);
client.deleteEventLogEntry(id);
count++;
if (count >= 635000) {
break;
}
}
logger.info(count + " log entries deleted");
} catch (
RestAPIException e) {
logger.severe("Failed to read event log entry: " + e.getMessage());
e.printStackTrace();
}
}
}

View file

@ -1,101 +0,0 @@
package com.alexanderlogistics.rest;
import java.util.List;
import java.util.Map;
import java.util.logging.Logger;
import org.imixs.melman.EventLogClient;
import org.imixs.melman.FormAuthenticator;
import org.imixs.melman.RestAPIException;
import org.imixs.workflow.ItemCollection;
import org.imixs.workflow.WorkflowKernel;
import org.imixs.workflow.exceptions.PluginException;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
/**
* A simple example how to create a new event log entry remote.
*
*/
@Disabled
public class TestEventLog {
private static Logger logger = Logger.getLogger(TestEventLog.class.getName());
EventLogClient client = null;
// String restAPI = "https://test.alexander-logistics.office-workflow.de/api";
String restAPI = "http://localhost:8080/api";
String userID = "kutzner-service";
String password = "imixs";
/**
* Setup a new Rest Client
*
* @throws PluginException
*/
@BeforeEach
public void setup() throws PluginException {
client = new EventLogClient(restAPI);
FormAuthenticator aut;
try {
aut = new FormAuthenticator(restAPI, userID, password);
client.registerClientRequestFilter(aut);
} catch (RestAPIException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* Create an event log entry....
*
*/
@Test
public void sendXMLData() {
logger.info("start...");
ItemCollection payLoad = new ItemCollection();
String uid = WorkflowKernel.generateUniqueID();
try {
// set data....
payLoad.setItemValue("some-data", "abc");
String xmlString = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
+ "<Invoices>"
+ " <InvoiceHeader>"
+ " <InvoiceNumber>224225</InvoiceNumber>"
+ " </InvoiceHeader>"
+ " </Invoices>";
payLoad.setItemValue("xml-data", xmlString);
client.createEventLogEntry("TOPIC_CARGOSOFT_INVOICE", uid, payLoad);
logger.info("completed");
} catch (RestAPIException e) {
logger.severe("Failed to send event log entry: " + e.getMessage());
e.printStackTrace();
}
}
@Test
public void getXMLData() {
logger.info("start...");
try {
List<ItemCollection> list = client.searchEventLog("TOPIC_CARGOSOFT_INVOICE");
logger.info("found " + list.size() + " log entries");
for (ItemCollection entry : list) {
List<?> dataList = entry.getItemValue("data");
if (dataList != null && dataList.size() > 0) {
ItemCollection data = new ItemCollection((Map<String, List<Object>>) dataList.get(0));
logger.info("Data=" + data.getItemValueString("some-data"));
logger.info("XML Data=" + data.getItemValueString("xml-data"));
}
}
} catch (RestAPIException e) {
logger.severe("Failed to read event log entry: " + e.getMessage());
e.printStackTrace();
}
}
}

View file

@ -1,88 +0,0 @@
package com.alexanderlogistics.rest;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.fail;
import java.io.IOException;
import java.util.List;
import java.util.logging.Logger;
import org.imixs.melman.FormAuthenticator;
import org.imixs.melman.RestAPIException;
import org.imixs.melman.WorkflowClient;
import org.imixs.workflow.ItemCollection;
import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.xml.XMLDataCollectionAdapter;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import jakarta.xml.bind.JAXBException;
/**
* A simple example how to send an invoice document remote.
*
*/
@Disabled
public class TestSendInvoice {
private static Logger logger = Logger.getLogger(TestSendInvoice.class.getName());
WorkflowClient client = null;
// String restAPI = "https://test.alexander-logistics.office-workflow.de/api";
String restAPI = "http://localhost:8080/api";
String userID = "kutzner-service";
String password = "imixs";
/**
* Setup a new Rest Client
*
* @throws PluginException
*/
@BeforeEach
public void setup() throws PluginException {
client = new WorkflowClient(restAPI);
FormAuthenticator aut;
try {
aut = new FormAuthenticator(restAPI, userID, password);
client.registerClientRequestFilter(aut);
} catch (RestAPIException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* Create an event log entry....
*
*/
@Test
public void sendXMLData() {
logger.info("send invoice...");
ItemCollection payLoad = new ItemCollection();
ItemCollection result = null;
try {
// read test data
List<ItemCollection> col = null;
// read default content
col = XMLDataCollectionAdapter
.readCollectionFromInputStream(getClass().getResourceAsStream("/invoice-01.xml"));
assertEquals(1, col.size());
// set invoice data....
// XMLDataCollection result = client.postXMLDocument("workflow/workitem",
// XMLDocumentAdapter.getDocument(col.get(0)));
result = client.processWorkitem(col.get(0));
logger.info("completed");
} catch (RestAPIException | JAXBException | IOException e) {
logger.severe("Failed to send event log entry: " + e.getMessage());
fail(e);
}
}
}

View file

@ -1,187 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<document>
<!-- Workflow -->
<item name="type">
<value xsi:type="xs:string">workitem</value>
</item>
<item name="$workflowgroup">
<value xsi:type="xs:string">Rechnungsausgang</value>
</item>
<item name="$taskid">
<value xsi:type="xs:int">5001</value>
</item>
<item name="$eventid">
<value xsi:type="xs:int">980</value>
</item>
<!-- Dateianhänge -->
<item name="$file">
<value xsi:type="xmlItemArray">
<item name="001_245956_250901_R.pdf">
<value xsi:type="xs:string">application/pdf</value>
<value xsi:type="xs:base64Binary">
JVBERi0xLjMgCiXi48............................
</value>
</item>
</value>
</item>
<!-- Rechnungspositionen -->
<item name="_childitems">
<value xsi:type="xmlItemArray">
<item name="billingcode">
<value xsi:type="xs:string">NACHL40</value>
</item>
<item name="datev.wkz">
<value xsi:type="xs:string">EUR</value>
</item>
<item name="datev.umsatz">
<value xsi:type="xs:double">252.84</value>
</item>
<item name="billingtext">
<value xsi:type="xs:string">Container transport from port</value>
<value xsi:type="xs:string">to warehouse in Antwerp</value>
</item>
<item name="datev.shzeichen">
<value xsi:type="xs:string">H</value>
</item>
<item name="category">
<value xsi:type="xs:string">SEE</value>
</item>
<item name="datev.text">
<value xsi:type="xs:string">LA-PAP-2508-012</value>
</item>
</value>
<value xsi:type="xmlItemArray">
<item name="billingcode">
<value xsi:type="xs:string">FC</value>
</item>
<item name="datev.wkz">
<value xsi:type="xs:string">EUR</value>
</item>
<item name="datev.umsatz">
<value xsi:type="xs:double">22.38</value>
</item>
<item name="billingtext">
<value xsi:type="xs:string">Fuel Charge as per fuel floater August</value>
<value xsi:type="xs:string">2025</value>
</item>
<item name="datev.shzeichen">
<value xsi:type="xs:string">H</value>
</item>
<item name="category">
<value xsi:type="xs:string">DIESEL</value>
</item>
<item name="datev.text">
<value xsi:type="xs:string">LA-PAP-2508-012</value>
</item>
</value>
<value xsi:type="xmlItemArray">
<item name="billingcode">
<value xsi:type="xs:string">ZOLLABF</value>
</item>
<item name="datev.wkz">
<value xsi:type="xs:string">EUR</value>
</item>
<item name="datev.umsatz">
<value xsi:type="xs:double">16.2</value>
</item>
<item name="billingtext">
<value xsi:type="xs:string">custom clearance fiscal representation</value>
<value xsi:type="xs:string">VAT reporting</value>
</item>
<item name="datev.shzeichen">
<value xsi:type="xs:string">H</value>
</item>
<item name="category">
<value xsi:type="xs:string">SEE</value>
</item>
<item name="datev.text">
<value xsi:type="xs:string">LA-PAP-2508-012</value>
</item>
</value>
</item>
<!-- Fachdaten -->
<item name="dbtr.name">
<value xsi:type="xs:string">Graphic Packaging International (NL)</value>
</item>
<item name="dbtr.number">
<value xsi:type="xs:string">D12495</value>
</item>
<item name="invoice.base.amount">
<value xsi:type="xs:double">0.0</value>
</item>
<item name="invoice.bookingperiod">
<value xsi:type="xs:string">202508</value>
</item>
<item name="invoice.costunit">
<value xsi:type="xs:string">IM-ZEL</value>
</item>
<item name="invoice.country">
<value xsi:type="xs:string" />
</item>
<item name="invoice.currency">
<value xsi:type="xs:string">EUR</value>
</item>
<item name="invoice.date">
<value xsi:type="xs:dateTime">2025-09-01T00:00:00+02:00</value>
</item>
<item name="invoice.duedate">
<value xsi:type="xs:dateTime">2025-10-16T00:00:00+02:00</value>
</item>
<item name="invoice.language">
<value xsi:type="xs:string">EN</value>
</item>
<item name="invoice.number">
<value xsi:type="xs:string">245956</value>
</item>
<item name="invoice.positions">
<value xsi:type="xs:string">LA-PAP-2508-012</value>
<value xsi:type="xs:string">LA-PAP-2508-012</value>
<value xsi:type="xs:string">LA-PAP-2508-012</value>
</item>
<item name="invoice.rate">
<value xsi:type="xs:double">0.0</value>
</item>
<item name="invoice.reminder">
<value xsi:type="xs:dateTime">2025-10-16T00:00:00+02:00</value>
</item>
<item name="invoice.saldo">
<value xsi:type="xs:double">469.07</value>
</item>
<item name="invoice.text">
<value xsi:type="xs:string">LA-PAP-2508-012</value>
</item>
<item name="invoice.total">
<value xsi:type="xs:double">469.07</value>
</item>
<item name="invoice.total.net">
<value xsi:type="xs:double">469.07</value>
</item>
<item name="invoice.total.tax">
<value xsi:type="xs:double">0.0</value>
</item>
<item name="invoice.type">
<value xsi:type="xs:string">R</value>
</item>
<item name="invoice.type.description">
<value xsi:type="xs:string">Ausgangsrechnung</value>
</item>
<item name="invoice.vatrate">
<value xsi:type="xs:double">0.0</value>
</item>
<item name="mandant.id">
<value xsi:type="xs:string">001</value>
</item>
<item name="payment.term">
<value xsi:type="xs:string">10</value>
</item>
</document>
</data>

608
pom.xml
View file

@ -5,38 +5,72 @@
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>com.alexander-logistics</groupId> <groupId>com.alexander-logistics</groupId>
<artifactId>office-alexander-logistics</artifactId> <artifactId>office-alexander-logistics</artifactId>
<version>1.3.6</version> <version>1.4.0</version>
<packaging>pom</packaging> <packaging>war</packaging>
<name>Imixs Office Workflow - Custom Build</name> <name>Imixs Office Workflow - Custom Build</name>
<organization>
<name>Imixs Software Solutions GmbH</name>
<url>http://www.imixs.com</url>
</organization>
<inceptionYear>2024</inceptionYear>
<developers>
<developer>
<id>rsoika</id>
<name>Ralph Soika</name>
<email>ralph.soika@imixs.com</email>
<url>http://blog.imixs.org/</url>
<organization>Imixs Software Solutions GmbH</organization>
<organizationUrl>http://www.imixs.com</organizationUrl>
<roles>
<role>developer</role>
<role>testing</role>
</roles>
<timezone>2</timezone>
</developer>
<developer>
<id>gaheinle</id>
<name>Gaby Heinle</name>
<email />
<url />
<organization>Imixs Software Solutions GmbH</organization>
<organizationUrl>http://www.imixs.com</organizationUrl>
<roles>
<role>developer</role>
<role>testing</role>
</roles>
<timezone>2</timezone>
</developer>
</developers>
<modules>
<module>office-alexander-logistics-app</module>
<module>office-alexander-logistics-testclient</module>
</modules>
<properties> <properties>
<java.source>11</java.source> <java.source>17</java.source>
<java.target>11</java.target> <java.target>17</java.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!-- Wildfly -->
<custom.webResources>src/main/webapp</custom.webResources>
<custom.unpackTypes>war</custom.unpackTypes>
<!-- Build Time --> <!-- Build Time -->
<org.imixs.build.timestamp>${maven.build.timestamp}</org.imixs.build.timestamp> <org.imixs.build.timestamp>${maven.build.timestamp}</org.imixs.build.timestamp>
<maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format> <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
<!-- Dependency Versions --> <!-- Dependency Versions -->
<jakarta.version>10.0.0</jakarta.version> <jakarta.version>10.0.0</jakarta.version>
<org.imixs.office.version>5.0.5</org.imixs.office.version> <microprofile.version>6.0</microprofile.version>
<org.imixs.workflow.version>6.0.9</org.imixs.workflow.version>
<org.imixs.marty.version>5.0.0</org.imixs.marty.version> <org.imixs.workflow.version>6.2.8-SNAPSHOT</org.imixs.workflow.version>
<org.imixs.archive.version>3.1.3</org.imixs.archive.version> <org.imixs.office.version>5.1.8</org.imixs.office.version>
<org.imixs.adapters.version>3.0.3</org.imixs.adapters.version> <org.imixs.marty.version>5.2.0</org.imixs.marty.version>
<org.imixs.melman.version>2.1.1</org.imixs.melman.version> <org.imixs.adapter.version>3.2.3</org.imixs.adapter.version>
<org.imixs.data.version>1.0.3</org.imixs.data.version> <org.imixs.data.version>1.0.3</org.imixs.data.version>
<org.imixs.e-invoice.version>1.0.3-SNAPSHOT</org.imixs.e-invoice.version> <org.imixs.e-invoice.version>1.0.3-SNAPSHOT</org.imixs.e-invoice.version>
<microprofile.version>6.0</microprofile.version>
<apache.poi.version>4.0.0</apache.poi.version>
<net.sf.saxon.version>9.9.1-4</net.sf.saxon.version> <net.sf.saxon.version>9.9.1-4</net.sf.saxon.version>
<apache.pdfbox.version>2.0.26</apache.pdfbox.version> <apache.pdfbox.version>2.0.24</apache.pdfbox.version>
<!-- --> <!-- -->
<org.imixs.ai.version>1.1.1</org.imixs.ai.version> <org.imixs.ai.version>1.1.1</org.imixs.ai.version>
<custom.webResources>src/main/webapp</custom.webResources> <custom.webResources>src/main/webapp</custom.webResources>
@ -56,6 +90,7 @@
<!-- Wildfly unpack war --> <!-- Wildfly unpack war -->
<custom.unpackTypes>war</custom.unpackTypes> <custom.unpackTypes>war</custom.unpackTypes>
<jakarta.faces.project_stage>Production</jakarta.faces.project_stage>
<!-- jndi Mail res-ref name --> <!-- jndi Mail res-ref name -->
<imixs-mail-res-ref-name>java:/mail/org.imixs.workflow.mail</imixs-mail-res-ref-name> <imixs-mail-res-ref-name>java:/mail/org.imixs.workflow.mail</imixs-mail-res-ref-name>
@ -67,9 +102,9 @@
<repositories> <repositories>
<!-- Sonatype Snapshot repository --> <!-- Sonatype Snapshot repository -->
<repository> <repository>
<id>sonatype-snaptshots</id> <id>central-portal-snapshots</id>
<name>Sonatype Snapshot repository</name> <name>Central Portal Snapshots</name>
<url>http://oss.sonatype.org/content/repositories/snapshots</url> <url>https://central.sonatype.com/repository/maven-snapshots/</url>
<releases> <releases>
<enabled>false</enabled> <enabled>false</enabled>
</releases> </releases>
@ -82,19 +117,114 @@
<profiles> <profiles>
<profile> <profile>
<id>docker</id> <id>docker</id>
<!-- build latest - see ear module for details --> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}" />
<arg value="./" />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile> </profile>
<profile> <profile>
<id>debug</id> <id>debug</id>
<!-- build latest - see ear module for details --> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-f" />
<arg value="./Dockerfile-debug" />
<arg value="-t" />
<arg value="imixs/${imixs-office.applicationname}" />
<arg value="./." />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile> </profile>
<profile> <profile>
<id>kubernetes</id> <id>imixs-cloud</id>
<!-- build and push to rep - see ear module for details --> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<phase>install</phase>
<configuration>
<target>
<exec executable="docker">
<arg value="build" />
<arg value="-t" />
<arg
value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg value="./." />
</exec>
<exec executable="docker">
<arg value="tag" />
<arg
value="imixs/${imixs-office.applicationname}:${project.version}" />
<arg
value="${org.imixs.kubernetes.registry}/imixs/${imixs-office.applicationname}:${project.version}" />
</exec>
<exec executable="docker">
<arg value="push" />
<arg
value="${org.imixs.kubernetes.registry}/imixs/${imixs-office.applicationname}:${project.version}" />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile> </profile>
</profiles> </profiles>
<build> <build>
<resources> <resources>
<!-- enable resource filtering for multi language version --> <!-- enable resource filtering for multi language version -->
@ -103,7 +233,21 @@
<filtering>true</filtering> <filtering>true</filtering>
</resource> </resource>
</resources> </resources>
<testResources>
<testResource>
<directory>${basedir}/./reports</directory>
</testResource>
<testResource>
<directory>${basedir}/./workflow</directory>
</testResource>
<testResource>
<directory>${basedir}/src/test/resources</directory>
</testResource>
</testResources>
<plugins> <plugins>
<!-- use JDK settings for compiling --> <!-- use JDK settings for compiling -->
<plugin> <plugin>
<artifactId>maven-compiler-plugin</artifactId> <artifactId>maven-compiler-plugin</artifactId>
@ -117,8 +261,58 @@
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId> <artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version> <version>3.3.1</version>
<executions>
<execution>
<id>default-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<argLine>
--add-opens java.base/java.lang=ALL-UNNAMED
</argLine>
</configuration>
</execution>
</executions>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<webResources>
<resource>
<filtering>true</filtering>
<!-- this is relative to the pom.xml directory -->
<directory>${custom.webResources}</directory>
<includes>
<include>**/WEB-INF/*</include>
<!-- include any other file types you want to filter -->
</includes>
</resource>
</webResources>
<!-- We exclude libs form the parent WAR artifact
<workDirectory>target/overlay-war-folder</workDirectory>
<overlays>
<overlay>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<excludes>
<exclude>WEB-INF/lib/*.jar</exclude>
</excludes>
</overlay>
</overlays>
-->
</configuration>
</plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId> <artifactId>maven-resources-plugin</artifactId>
@ -128,196 +322,49 @@
</configuration> </configuration>
</plugin> </plugin>
<!-- Imixs Code Formatter and Checkstyle
<plugin> <plugin>
<groupId>net.revelc.code.formatter</groupId> <groupId>org.imixs.maven</groupId>
<artifactId>formatter-maven-plugin</artifactId> <artifactId>manik-hotdeploy-maven-plugin</artifactId>
<version>2.26.0</version> <version>2.0.0</version>
<configuration>
<configFile>
https://raw.githubusercontent.com/imixs/imixs-workflow/refs/heads/master/imixs-code-style.xml</configFile>
<lineEnding>LF</lineEnding>
</configuration>
<executions> <executions>
<execution> <execution>
<phase>validate</phase> <phase>install</phase>
<goals> <goals>
<goal>format</goal> <goal>deploy</goal>
</goals> </goals>
</execution> </execution>
</executions> </executions>
<configuration>
<!-- List Source and Target folders for Autodeploy and Hotdeploy -->
<autodeployments>
<deployment>
<!-- wildcard deployment -->
<source>target/*.{war,ear,jar}</source>
<target>./docker/deployments/</target>
<unpack>true</unpack>
</deployment>
</autodeployments>
<hotdeployments>
<deployment>
<source>src/main/webapp</source>
<target>./docker/deployments/${imixs-office.applicationname}.war</target>
</deployment>
</hotdeployments>
</configuration>
</plugin> </plugin>
<!-- relase management -->
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId> <artifactId>maven-release-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<configLocation>
https://raw.githubusercontent.com/imixs/imixs-workflow/master/imixs-checkstyle-8.44.xml</configLocation>
<failOnViolation>true</failOnViolation>
</configuration>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin> </plugin>
-->
</plugins> </plugins>
<finalName>office-alexander-logistics</finalName> <finalName>office-alexander-logistics</finalName>
</build> </build>
<dependencyManagement>
<dependencies>
<!-- Imixs Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-core</artifactId>
<version>${org.imixs.workflow.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-engine</artifactId>
<version>${org.imixs.workflow.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-faces</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-jax-rs</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-index-lucene</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<!-- Marty -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-marty</artifactId>
<version>${org.imixs.marty.version}</version>
<scope>provided</scope>
</dependency>
<!-- Office Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<version>${org.imixs.office.version}</version>
<type>war</type>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-util</artifactId>
<version>${org.imixs.office.version}</version>
<scope>provided</scope>
</dependency>
<!-- SEPA Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-sepa</artifactId>
<version>${org.imixs.adapters.version}</version>
<scope>provided</scope>
</dependency>
<!-- DATEV Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-datev</artifactId>
<version>${org.imixs.adapters.version}</version>
<scope>provided</scope>
</dependency>
<!-- QR Code -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-qrcode</artifactId>
<version>${org.imixs.adapters.version}</version>
<scope>provided</scope>
</dependency>
<!-- POI Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-poi</artifactId>
<version>${org.imixs.adapters.version}</version>
<scope>provided</scope>
</dependency>
<!-- Imixs-Archive API -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-archive-api</artifactId>
<version>${org.imixs.archive.version}</version>
<scope>provided</scope>
</dependency>
<!-- Imixs AI -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-ai-workflow</artifactId>
<version>${org.imixs.ai.version}</version>
<scope>compile</scope>
</dependency>
<!-- Imixs Data -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-groups</artifactId>
<version>${org.imixs.data.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-views</artifactId>
<version>${org.imixs.data.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-documents</artifactId>
<version>${org.imixs.data.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-importer</artifactId>
<version>${org.imixs.data.version}</version>
<scope>compile</scope>
</dependency>
<!-- Melman Version Management hinzufügen -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-melman</artifactId>
<version>${org.imixs.melman.version}</version>
<scope>compile</scope>
</dependency>
<!-- xsl 2.0 support for Reporting / Chart Diagrams -->
<dependency>
<groupId>net.sf.saxon</groupId>
<artifactId>Saxon-HE</artifactId>
<version>${net.sf.saxon.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies> <dependencies>
<!-- Jakarta EE --> <!-- Jakarta EE -->
<dependency> <dependency>
@ -326,8 +373,6 @@
<version>${jakarta.version}</version> <version>${jakarta.version}</version>
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<!-- Microprofile --> <!-- Microprofile -->
<dependency> <dependency>
<groupId>org.eclipse.microprofile</groupId> <groupId>org.eclipse.microprofile</groupId>
@ -337,6 +382,166 @@
<scope>provided</scope> <scope>provided</scope>
</dependency> </dependency>
<!-- Imixs Workflow -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-core</artifactId>
<type>jar</type>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-engine</artifactId>
<type>jar</type>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-jax-rs</artifactId>
<type>jar</type>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-faces</artifactId>
<type>jar</type>
<version>${org.imixs.workflow.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-workflow-index-lucene</artifactId>
<version>${org.imixs.workflow.version}</version>
</dependency>
<!-- Imixs-Office-Workflow Overlay -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-app</artifactId>
<type>war</type>
<version>${org.imixs.office.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-office-workflow-util</artifactId>
<version>${org.imixs.office.version}</version>
</dependency>
<!-- Imixs Data -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-groups</artifactId>
<version>${org.imixs.data.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-views</artifactId>
<version>${org.imixs.data.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-documents</artifactId>
<version>${org.imixs.data.version}</version>
</dependency>
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-data-importer</artifactId>
<version>${org.imixs.data.version}</version>
</dependency>
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>${apache.pdfbox.version}</version>
</dependency>
<!-- SEPA -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-sepa</artifactId>
<version>${org.imixs.adapter.version}</version>
</dependency>
<!-- DATEV -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-datev</artifactId>
<version>${org.imixs.adapter.version}</version>
</dependency>
<!-- POI Adapter -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-poi</artifactId>
<version>${org.imixs.adapter.version}</version>
</dependency>
<!-- QR Code -->
<dependency>
<groupId>org.imixs.workflow</groupId>
<artifactId>imixs-adapters-qrcode</artifactId>
<version>${org.imixs.adapter.version}</version>
</dependency>
<!-- E-Invoice-->
<dependency>
<groupId>org.imixs.util</groupId>
<artifactId>imixs-e-invoice</artifactId>
<version>${org.imixs.e-invoice.version}</version>
</dependency>
<!-- Apache Commons FTP Client -->
<dependency>
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.6</version>
</dependency>
<!-- Microsoft oauth token -->
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.10</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.3</version>
<scope>test</scope>
</dependency>
<!-- JAX-RS 2.0 Test dependencies -->
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>3.1.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<version>3.3.6</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.inject</groupId>
<artifactId>jersey-hk2</artifactId>
<version>3.1.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.ws.rs</groupId>
<artifactId>jakarta.ws.rs-api</artifactId>
<version>3.1.0</version>
<scope>test</scope>
</dependency>
<!-- Testing --> <!-- Testing -->
<!-- JUnit 5 Dependencies --> <!-- JUnit 5 Dependencies -->
@ -365,7 +570,6 @@
<version>${mockito.version}</version> <version>${mockito.version}</version>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<!-- Test dependencies -->
<dependency> <dependency>
<groupId>org.eclipse.parsson</groupId> <groupId>org.eclipse.parsson</groupId>
<artifactId>jakarta.json</artifactId> <artifactId>jakarta.json</artifactId>

View file

@ -1,523 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xsi:schemaLocation="urn:iso:std:iso:20022:tech:xsd:pain.001.001.03 pain.001.001.03.xsd">
<CstmrCdtTrfInitn>
<GrpHdr>
<MsgId>885e0519099f4ef5876b1b721d4b605f</MsgId>
<CreDtTm>2024-06-20T09:33:46</CreDtTm>
<NbOfTxs>20</NbOfTxs>
<CtrlSum>67913,22</CtrlSum>
<InitgPty>
<Nm>PKO Bank Polski SA (PLN)</Nm>
</InitgPty>
</GrpHdr>
<PmtInf>
<PmtInfId>885e0519099f4ef5876b1b721d4b605f-1</PmtInfId>
<PmtMtd>TRF</PmtMtd>
<NbOfTxs>20</NbOfTxs>
<CtrlSum>67913,22</CtrlSum>
<PmtTpInf>
<SvcLvl>
<Cd>SEPA</Cd>
</SvcLvl>
</PmtTpInf>
<ReqdExctnDt>2024-06-20</ReqdExctnDt>
<Dbtr>
<Nm>PKO Bank Polski SA (PLN)</Nm>
</Dbtr>
<DbtrAcct>
<Id>
<IBAN>PL61102010260000120203993128</IBAN>
</Id>
</DbtrAcct>
<DbtrAgt>
<FinInstnId>
<BIC>BPKOPLPW</BIC>
</FinInstnId>
</DbtrAgt>
<ChrgBr>SHAR</ChrgBr>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>ALBPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Blaszkiewicz</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL35249000050000453034973384</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701528 / 540/05/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">4059.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>GBWCPLPP</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>KOWALEWSKI</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL33823300040017753920140001</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701515 / FS 318/04/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>GEODIS</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL85124062921111001069083502</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701779 / FWA/24FTD/01725</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>GEODIS</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL85124062921111001069083502</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701780 / FWA/24FTD/01732</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>GEODIS</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL85124062921111001069083502</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701781 / FWA/24FTD/01736</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">3013.50</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>INGBPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>adex</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL42105015911000009135641521</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701800 / FS 34/05/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2952.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PPABPLPK</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Danuta Bedkowska</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL50102024300000860200294058</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701801 / FT/948/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2952.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>INGBPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Easy Way</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL31105017221000009142459099</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701817 / FV/106/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PPABPLPK</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>RABEN</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL67203000745059000010201640</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701809 / 8742530343</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PPABPLPK</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>RABEN</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL67203000745059000010201640</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701808 / 8742530342</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>WBKPPLPP</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>ZASADA TRANS</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL08150017481217400107410000</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701815 / TKP/0211/05/2024/FV</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PPABPLPKXXX</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Wielkopolska</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL73203000451110000002046170</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701802 / V 00043/05/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2337.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>EXWIS</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL88124060871111001053542790</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701823 / 381/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">1230.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>GEODIS</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL85124062921111001069083502</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701782 / FKA/24FTD/01907</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2029.50</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>STALKO</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL51124063351111000051278199</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701813 / 3814/04/2024/TR</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">2029.50</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PKOPPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>STALKO</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL51124063351111000051278199</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701811 / 3812/04/2024/TR</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">3075.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>POLUPLPR</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Klajnowski</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL21888210322001002691790001</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>701816 / 751/2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">1848.00</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>INGBPLPW</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>BULK CARGO</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL97105000995381000010009580</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>702441 / VAT/2043/E /2024</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">16961.40</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PPABPLPK</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Baltic Hub</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL52160014753166100000000793</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>702466 / FV/24/06/0304</Ustrd>
</RmtInf>
</CdtTrfTxInf>
<CdtTrfTxInf>
<PmtId>
<EndToEndId>NOTPROVIDED</EndToEndId>
</PmtId>
<Amt>
<InstdAmt Ccy="PLN">6730.32</InstdAmt>
</Amt>
<CdtrAgt>
<FinInstnId>
<BIC>PPABPLPK</BIC>
</FinInstnId>
</CdtrAgt>
<Cdtr>
<Nm>Baltic Hub</Nm>
</Cdtr>
<CdtrAcct>
<Id>
<IBAN>PL52160014753166100000000793</IBAN>
</Id>
</CdtrAcct>
<RmtInf>
<Ustrd>702467 / FV/24/06/0309</Ustrd>
</RmtInf>
</CdtTrfTxInf>
</PmtInf>
</CstmrCdtTrfInitn>
</Document>

View file

@ -1,20 +0,0 @@
#!/bin/bash
############################################################
# Setup Imixs-Documents Training Environment
#
############################################################
sudo chmod -R 777 docker/deployments/
echo "#############################################"
echo " building Imixs-ML Docker images..."
echo "#############################################"
mvn -f ~/git/imixs-ml/ clean install -Pdocker -DskipTests
echo "#############################################"
echo " starting dev enrvionment..."
echo "#############################################"
mvn clean install -Pdebug
cp ./*-app/target/*.war ./docker/deployments/
docker-compose -f docker-compose.yml up

View file

@ -25,7 +25,7 @@ import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.office.config.ConfigService; import org.imixs.workflow.office.config.ConfigService;
import org.imixs.workflow.poi.POIFindReplaceAdapter; import org.imixs.workflow.poi.POIFindReplaceAdapter;
import org.imixs.workflow.poi.POIUtil; import org.imixs.workflow.poi.XSSFUtil;
import org.imixs.workflow.util.XMLParser; import org.imixs.workflow.util.XMLParser;
import jakarta.inject.Inject; import jakarta.inject.Inject;
@ -174,7 +174,7 @@ public class AGLAnalyticExcelAdapterDebitor extends POIFindReplaceAdapter {
int newColumns = (currencyList.size() - 1) * 2; int newColumns = (currencyList.size() - 1) * 2;
for (int i = 0; i < newColumns; i++) { for (int i = 0; i < newColumns; i++) {
logger.info(".. add currency column..."); logger.info(".. add currency column...");
POIUtil.insertColumn(sheet, 6, 8 + i); XSSFUtil.insertColumn(sheet, 6, 8 + i);
} }
// Beschriftungen eintragen // Beschriftungen eintragen
@ -247,7 +247,7 @@ public class AGLAnalyticExcelAdapterDebitor extends POIFindReplaceAdapter {
// jetzt füge alle Rechnungen an. // jetzt füge alle Rechnungen an.
int totalRowCount = invoices.size(); int totalRowCount = invoices.size();
POIUtil.insertRows(sheet, "A11", totalRowCount - 0); XSSFUtil.insertRows(sheet, "A11", totalRowCount - 0);
for (ItemCollection invoice : invoices) { for (ItemCollection invoice : invoices) {
logger.fine("......add invoice " + invoice.getUniqueID()); logger.fine("......add invoice " + invoice.getUniqueID());
@ -285,8 +285,8 @@ public class AGLAnalyticExcelAdapterDebitor extends POIFindReplaceAdapter {
// setze Summen Formeln // setze Summen Formeln
for (int column = 6; column < currencyList.size() * 2 + 6; column++) { for (int column = 6; column < currencyList.size() * 2 + 6; column++) {
XSSFCell cell = sheet.getRow(totalRowCount + 11).getCell(column); // G11 XSSFCell cell = sheet.getRow(totalRowCount + 11).getCell(column); // G11
String cellRefFrom = POIUtil.getCellReference(column, 10); String cellRefFrom = XSSFUtil.getCellReference(column, 10);
String cellRefTo = POIUtil.getCellReference(column, totalRowCount + 10); String cellRefTo = XSSFUtil.getCellReference(column, totalRowCount + 10);
String formula = "SUM(" + cellRefFrom + ":" + cellRefTo + ")"; String formula = "SUM(" + cellRefFrom + ":" + cellRefTo + ")";
cell.setCellFormula(formula); cell.setCellFormula(formula);
} }

View file

@ -26,7 +26,7 @@ import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.office.config.ConfigService; import org.imixs.workflow.office.config.ConfigService;
import org.imixs.workflow.poi.POIFindReplaceAdapter; import org.imixs.workflow.poi.POIFindReplaceAdapter;
import org.imixs.workflow.poi.POIUtil; import org.imixs.workflow.poi.XSSFUtil;
import org.imixs.workflow.util.XMLParser; import org.imixs.workflow.util.XMLParser;
import jakarta.inject.Inject; import jakarta.inject.Inject;
@ -179,7 +179,7 @@ public class OPListExportAdapter extends POIFindReplaceAdapter {
int newColumns = (currencyList.size() - 1) * 1; int newColumns = (currencyList.size() - 1) * 1;
for (int i = 0; i < newColumns; i++) { for (int i = 0; i < newColumns; i++) {
logger.fine(".. add currency column..."); logger.fine(".. add currency column...");
POIUtil.insertColumn(sheet, 5, 6 + i); XSSFUtil.insertColumn(sheet, 5, 6 + i);
} }
// Beschriftungen eintragen // Beschriftungen eintragen

View file

@ -37,7 +37,7 @@ import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.office.config.ConfigService; import org.imixs.workflow.office.config.ConfigService;
import org.imixs.workflow.poi.POIFindReplaceAdapter; import org.imixs.workflow.poi.POIFindReplaceAdapter;
import org.imixs.workflow.poi.POIUtil; import org.imixs.workflow.poi.XSSFUtil;
import org.imixs.workflow.util.XMLParser; import org.imixs.workflow.util.XMLParser;
import jakarta.inject.Inject; import jakarta.inject.Inject;
@ -199,13 +199,13 @@ public class OPListExportAdapterByWeek extends POIFindReplaceAdapter {
int newColumns = (currencyList.size() * (spaces.size())) - 1; int newColumns = (currencyList.size() * (spaces.size())) - 1;
for (int i = 0; i < newColumns; i++) { for (int i = 0; i < newColumns; i++) {
logger.fine(".. add currency column..."); logger.fine(".. add currency column...");
POIUtil.insertColumn(sheet, 1, 2 + i); XSSFUtil.insertColumn(sheet, 1, 2 + i);
} }
// Total spalten einfuegen // Total spalten einfuegen
for (int i = 0; i < currencyList.size() - 1; i++) { for (int i = 0; i < currencyList.size() - 1; i++) {
logger.fine(".. add total column..."); logger.fine(".. add total column...");
POIUtil.insertColumn(sheet, 2 + newColumns, 3 + newColumns + i); XSSFUtil.insertColumn(sheet, 2 + newColumns, 3 + newColumns + i);
} }
newColumns = newColumns + currencyList.size(); newColumns = newColumns + currencyList.size();

View file

@ -22,6 +22,7 @@ import org.imixs.workflow.exceptions.AdapterException;
import org.imixs.workflow.exceptions.PluginException; import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.poi.POIFindReplaceAdapter; import org.imixs.workflow.poi.POIFindReplaceAdapter;
import org.imixs.workflow.poi.XSSFUtil;
import jakarta.inject.Inject; import jakarta.inject.Inject;
@ -171,7 +172,7 @@ public class ZahlungsavisExportAdapter extends POIFindReplaceAdapter {
sheet.shiftRows(referenceRowPos, lastRow + invoiceIDs.size(), -1, true, true); sheet.shiftRows(referenceRowPos, lastRow + invoiceIDs.size(), -1, true, true);
// finally update the total formula... // finally update the total formula...
evalXSSFSheet(doc, sheet, "TOTAL"); XSSFUtil.evalXSSFSheet(doc, sheet, "TOTAL");
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
// write back the file // write back the file

View file

@ -19,7 +19,7 @@ import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.office.config.ConfigService; import org.imixs.workflow.office.config.ConfigService;
import org.imixs.workflow.poi.POIFindReplaceAdapter; import org.imixs.workflow.poi.POIFindReplaceAdapter;
import org.imixs.workflow.poi.POIUtil; import org.imixs.workflow.poi.XSSFUtil;
import com.alexanderlogistics.InvoiceService; import com.alexanderlogistics.InvoiceService;
@ -189,7 +189,7 @@ public class AGLDataViewDebitorAdapter extends POIFindReplaceAdapter {
int newColumns = (currencyList.size() - 1) * 2; int newColumns = (currencyList.size() - 1) * 2;
for (int i = 0; i < newColumns; i++) { for (int i = 0; i < newColumns; i++) {
logger.info(".. add currency column..."); logger.info(".. add currency column...");
POIUtil.insertColumn(sheet, 6, 8 + i); XSSFUtil.insertColumn(sheet, 6, 8 + i);
} }
// Beschriftungen eintragen // Beschriftungen eintragen
@ -259,7 +259,7 @@ public class AGLDataViewDebitorAdapter extends POIFindReplaceAdapter {
// jetzt füge alle Rechnungen an. // jetzt füge alle Rechnungen an.
int totalRowCount = invoices.size(); int totalRowCount = invoices.size();
POIUtil.insertRows(sheet, "A11", totalRowCount - 0); XSSFUtil.insertRows(sheet, "A11", totalRowCount - 0);
for (ItemCollection invoice : invoices) { for (ItemCollection invoice : invoices) {
logger.fine("......add invoice " + invoice.getUniqueID()); logger.fine("......add invoice " + invoice.getUniqueID());
@ -297,8 +297,8 @@ public class AGLDataViewDebitorAdapter extends POIFindReplaceAdapter {
// setze Summen Formeln // setze Summen Formeln
for (int column = 6; column < currencyList.size() * 2 + 6; column++) { for (int column = 6; column < currencyList.size() * 2 + 6; column++) {
XSSFCell cell = sheet.getRow(totalRowCount + 11).getCell(column); // G11 XSSFCell cell = sheet.getRow(totalRowCount + 11).getCell(column); // G11
String cellRefFrom = POIUtil.getCellReference(column, 10); String cellRefFrom = XSSFUtil.getCellReference(column, 10);
String cellRefTo = POIUtil.getCellReference(column, totalRowCount + 10); String cellRefTo = XSSFUtil.getCellReference(column, totalRowCount + 10);
String formula = "SUM(" + cellRefFrom + ":" + cellRefTo + ")"; String formula = "SUM(" + cellRefFrom + ":" + cellRefTo + ")";
cell.setCellFormula(formula); cell.setCellFormula(formula);
} }

View file

@ -22,6 +22,7 @@ import org.imixs.workflow.exceptions.AdapterException;
import org.imixs.workflow.exceptions.PluginException; import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.poi.POIFindReplaceAdapter; import org.imixs.workflow.poi.POIFindReplaceAdapter;
import org.imixs.workflow.poi.XSSFUtil;
import jakarta.inject.Inject; import jakarta.inject.Inject;
@ -164,7 +165,7 @@ public class InkassoExportAdapter extends POIFindReplaceAdapter {
sheet.shiftRows(referenceRowPos, lastRow + invoiceIDs.size(), -1, true, true); sheet.shiftRows(referenceRowPos, lastRow + invoiceIDs.size(), -1, true, true);
// finally update the total formula... // finally update the total formula...
evalXSSFSheet(doc, sheet, "TOTAL"); XSSFUtil.evalXSSFSheet(doc, sheet, "TOTAL");
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
// write back the file // write back the file

View file

@ -9,13 +9,14 @@ import java.util.Map;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.imixs.workflow.ItemCollection; import org.imixs.workflow.ItemCollection;
import org.imixs.workflow.Model;
import org.imixs.workflow.SignalAdapter; import org.imixs.workflow.SignalAdapter;
import org.imixs.workflow.engine.ModelService; import org.imixs.workflow.engine.ModelService;
import org.imixs.workflow.engine.WorkflowService; import org.imixs.workflow.engine.WorkflowService;
import org.imixs.workflow.exceptions.AdapterException; import org.imixs.workflow.exceptions.AdapterException;
import org.imixs.workflow.exceptions.ModelException; import org.imixs.workflow.exceptions.ModelException;
import org.imixs.workflow.exceptions.PluginException; import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.office.model.SharedModelManager;
import org.openbpmn.bpmn.BPMNModel;
import com.alexanderlogistics.InvoiceUtil; import com.alexanderlogistics.InvoiceUtil;
@ -50,6 +51,9 @@ public class MahnlaufExecuteAdapter implements SignalAdapter {
@Inject @Inject
MahnlaufService mahnlaufService; MahnlaufService mahnlaufService;
@Inject
SharedModelManager sharedModelManager;
/** /**
* This method finds all invices ($workitemref) and tirgges event 300 * This method finds all invices ($workitemref) and tirgges event 300
* *
@ -96,10 +100,15 @@ public class MahnlaufExecuteAdapter implements SignalAdapter {
if (isInDue(invoice)) { if (isInDue(invoice)) {
try { try {
// first fetch the event of the invoice to be processed // first fetch the event of the invoice to be processed
Model invoiceModel;
invoiceModel = this.modelService.getModel(invoice.getModelVersion()); BPMNModel bpmnModel = modelService.getBPMNModel(invoice.getModelVersion());
ItemCollection invoiceEvent = invoiceModel.getEvent(invoice.getTaskID(), ItemCollection invoiceEvent = sharedModelManager.getModelManager().findEventByID(bpmnModel,
MahnlaufService.EVENT_MAHNLAUF_EXECUTE); invoice.getTaskID(), MahnlaufService.EVENT_MAHNLAUF_EXECUTE);
// Model invoiceModel;
// invoiceModel = this.modelService.getModel(invoice.getModelVersion());
// ItemCollection invoiceEvent = invoiceModel.getEvent(invoice.getTaskID(),
// MahnlaufService.EVENT_MAHNLAUF_EXECUTE);
if (invoiceEvent != null) { if (invoiceEvent != null) {
ItemCollection eventDunningConfig = this.workflowService.evalWorkflowResult(invoiceEvent, ItemCollection eventDunningConfig = this.workflowService.evalWorkflowResult(invoiceEvent,
"dunning", invoice); "dunning", invoice);

View file

@ -5,7 +5,6 @@ import java.util.List;
import java.util.logging.Logger; import java.util.logging.Logger;
import org.imixs.workflow.ItemCollection; import org.imixs.workflow.ItemCollection;
import org.imixs.workflow.Model;
import org.imixs.workflow.SignalAdapter; import org.imixs.workflow.SignalAdapter;
import org.imixs.workflow.WorkflowKernel; import org.imixs.workflow.WorkflowKernel;
import org.imixs.workflow.engine.ModelService; import org.imixs.workflow.engine.ModelService;
@ -14,7 +13,9 @@ import org.imixs.workflow.exceptions.AdapterException;
import org.imixs.workflow.exceptions.ModelException; import org.imixs.workflow.exceptions.ModelException;
import org.imixs.workflow.exceptions.PluginException; import org.imixs.workflow.exceptions.PluginException;
import org.imixs.workflow.exceptions.QueryException; import org.imixs.workflow.exceptions.QueryException;
import org.imixs.workflow.office.model.SharedModelManager;
import org.imixs.workflow.sepa.services.SepaWorkflowService; import org.imixs.workflow.sepa.services.SepaWorkflowService;
import org.openbpmn.bpmn.BPMNModel;
import com.alexanderlogistics.BusinessPartnerService; import com.alexanderlogistics.BusinessPartnerService;
import com.alexanderlogistics.InvoiceUtil; import com.alexanderlogistics.InvoiceUtil;
@ -50,6 +51,9 @@ public class MahnlaufRefAddAdapter implements SignalAdapter {
@Inject @Inject
BusinessPartnerService businessPartnerService; BusinessPartnerService businessPartnerService;
@Inject
SharedModelManager sharedModelManager;
/** /**
* 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.
@ -167,8 +171,11 @@ public class MahnlaufRefAddAdapter implements SignalAdapter {
mahnlaufWorkitem.setItemValue("invoice.language", invoice.getItemValue("invoice.language")); mahnlaufWorkitem.setItemValue("invoice.language", invoice.getItemValue("invoice.language"));
// set workflow group name from the Task Element to identify document in xslt // set workflow group name from the Task Element to identify document in xslt
Model model = modelService.getModel(modelVersion); BPMNModel bpmnModel = modelService.getBPMNModel(modelVersion);
ItemCollection task = model.getTask(taskID); ItemCollection task = sharedModelManager.getModelManager().findTaskByID(bpmnModel, taskID);
// Model model = modelService.getModel(modelVersion);
// ItemCollection task = model.getTask(taskID);
String modelTaskGroupName = task.getItemValueString("txtworkflowgroup"); // DO NOT CHANGE! String modelTaskGroupName = task.getItemValueString("txtworkflowgroup"); // DO NOT CHANGE!
mahnlaufWorkitem.setItemValue(WorkflowKernel.WORKFLOWGROUP, modelTaskGroupName); mahnlaufWorkitem.setItemValue(WorkflowKernel.WORKFLOWGROUP, modelTaskGroupName);

Some files were not shown because too many files have changed in this diff Show more