
# Cargosoft

Wir haben eine Schnittstelle zu Cargosoft. Diese macht folgende Dinge:

 - Importieren von Kreditoren und Debitoren Stammdaten
 - Exportieren von Belegdaten + Belegbild von Imixs nach Cargosoft
 - Importieren von Ausgangsrechnungen über eine DATEV Schnittstelle
 - Exportieren von Saldenlisten aus Ausgangslisten


## FTP 

Wir habne einen eigenen FTP Server von Imixs in den alle Import und Export Files abgelegt werden.


## Importieren von Kreditoren und Debitoren Stammdaten

Wir importieren eine CSV Datei von Kreditoren mit dem namen `Vendors.csv` aus dem Verzeichnis `/cargosoft/stammdaten`.
Für den Import verwenden wir den Standard CSV Import Service aus dem [Imixs-Archive Importer Projekt](https://github.com/imixs/imixs-archive/tree/master/imixs-archive-importer).

Die Datei wird von Cargosoft einmal Täglich bereitgestellt und befindet sich auf unserem FTP Sever unter:

	/office-alexander-logistics/cargosoft/fromCargosoft/stammdaten/Vendors.csv

Das Schlüsselfeld ist `VENDOR_NUM`. Zusätzlich indizieren wir das feld `VENDOR_NAME`. So kann man über die Lucene SUche sowohl nach dem namen oder der Nummer suchen.

In der Erfassungsmaske haben wir dann eine JavaScript Implementierung mit Ajax die bei Eingabe in das Feld *cdtr.number* Vorschläge aus den importieren Kreditoren macht. Das ist ähnlich implementiert wie die Imixs-ML Suggest LIste


## Exportieren von Belegdaten + Belegbild von Imixs nach Cargosoft

Für den Export wird im Rechnungseingangs-Workflow einen Adapter der nach Freigabe ein child Workitem erzeugt.
Die Cargosoft Export Schnittstelle besteht aus einem eigenen BPMN modell "cargosoft-export-1.0.0". In diesem wird der CargoosftExportAdapter getriggert, der  diese Daten einer EingansRechnung an den FTP Server übermittelt.

Cargosoft prüft alle 10 Sekunden ob sich Dateien mit der Dateiendung ".xml" auf dem FTP befinden und holt diese ab.

Die Konfiguration der FTP Schnittstelle erfolgt über den Konfigurationsdialog im Office-Workflow mit den folgenden Werten:

	cargosoft.export.ftp.host=u248962.your-storagebox.de
	cargosoft.export.ftp.path=/
	cargosoft.export.ftp.user=u248962-sub2
	cargosoft.export.ftp.password=aXa61n9Un3jDNQlL
	
Die Belege wandern in das Root Verzeichnis. Die Firma Cargosft legt dann noch ein /logs/ Vereichnis an in den sie ab und zu Logdaten einspielen	

### Bei Problemen

Manchamal holt Cargosoft die Daten zwar ab importiert diese aber aus irgend einem Grund nicht in Cargosft. Frau Mahner kann dann die Buchung nicht finde. Wir haben deshalb einen Workflow Button "Cargosoft Export Wiederholen" gebaut mit dem man den Export nochmal anstoßen kann.


##  Importieren von Ausgangsrechnungen über eine DATEV Schnittstelle

Wir können Ausgangsrechnungen aus Cargosoft in Imixs über einen DATEV Import importieren.
Dazu haben wir einen eigenen Import Workflow gemacht "DATEV Import", welchen Frau Mahner manuell anstößt. Dabei wird eine CSV/DATEV Buchungstapel Datei importiert. Es muss sich um ein offizielles DATEV Import Format handeln mit dem Header 'Buchungsstapel' (Zelle D1).
Der Import nutzt dann den Adapter `com.alexanderlogistics.datev.DatevCargosoftImportAdapter` um einen Rechnungsausgangs-Workflow in Imixs zu starten.



## Exportieren von Saldenlisten aus Ausgangslisten	

Weil wir Ausgangsrechnungen und Zahlungseingänge mit Workflow Verwalten (Mahnwesen genannt) können wir sogenannte Saldenlisten erzeugen.
Dabei handelt es sich ein CARGOSOFT spezifisches CSV File in dem alle Rechnungen enthalten sind bei denen noch offene Beträge sind. Cargosoft weis selbst wie man auf den Saldo kommt.

Der Export erfolgt scheduled auf unseren FTP Server (u248962-sub2) in das Verzeichnis:

	/cargosoft/opliste-prod (Produktivumgebung)
	/cargosoft/opliste-test (Testumgebung
	
	
	
	
	
	
	
	
	