MESO-Währungsimport
AddOn für die Mesonic WinLine ©
Stand: 22.11.2025
MESO-Fremdwährungsimport
.NET Kommandozeilenanwendung zum automatischen Import von Fremdwährungen und tagesaktuellen Kursen in die Mesonic WinLine©
🔗 Download der aktuellen Version
ℹ️ Download dieser Dokumentation als pdf
Inhaltsverzeichnis
- Funktionen
- Quick Start
- Systemvoraussetzungen
- Installation
- Kommandozeilenparameter
- Einstellungen
- Logging
- Automatisierung
- Troubleshooting
- FAQ
- Verbesserungsvorschläge
- Versionshistorie
Funktionen
Die .NET 9 Konsolenanwendung MESOWaehrungsimport.exe
dient zum Import von tagesaktuellen Fremdwährungskursen (Kurshistorien)
in die Mesonic WinLine ERP Lösung. Optional können auch bereitgestellte
Fremdwährungen angelegt werden, die noch nicht in der WinLine vorhanden
sind. Die Kursaktualisierung kann für beliebig viele Mandanten
durchgeführt werden.
Bei der Anlage von Fremdwährungen muss das Ertrags- und Aufwandskonto des jeweiligen Mandanten angegeben werden
Als Quelle der Kurse dient die EZB (Europäische Zentralbank). Bei jedem Start werden die Kurse mit dem von der EZB angegebenen Gültigkeitsdatum in der WinLine angelegt. Wird das Tool mehrmals am Tag ausgeführt, wird der Tageskurs überschrieben.
Hinweis zum Testmodus: wird keine oder keine gültige Lizenz in den Einstellungen angegeben, wird die Anwendung im Testmodus gestartet. In diesem Modus werden alle Kurse ausgelesen und in der Konsole ausgegeben, aber nicht in die WinLine-Datenbank geschrieben.
Hinweis zur Kursaktualisierung: Die EZB aktualisiert die Kurse in der Regel um 16:00 Uhr
Quick Start
Für einen schnellen Einstieg folgen Sie diesen Schritten:
.NET 9 Runtime installieren: Laden Sie die .NET 9 Runtime herunter und installieren Sie diese
Anwendung herunterladen: Laden Sie die aktuelle Version herunter
ZIP-Datei entsperren: Klicken Sie mit der rechten Maustaste auf die ZIP-Datei → Eigenschaften → “Zulassen” aktivieren → OK
Entpacken: Extrahieren Sie die Dateien in einen beliebigen Ordner (z.B.
C:\WinLine\Kursaktaktualisierung)Konfiguration anpassen: Öffnen Sie die Datei
appsettings.jsonund passen Sie folgende Einstellungen an:- ConnectionStrings: Verbindung zur WinLine-Systemdatenbank
- WinLineSettings: Mandanten und deren Konten
- License: Lizenzinformationen (vom Mesonic Partner erhalten)
Testlauf durchführen: Öffnen Sie eine Kommandozeile im Installationsordner und führen Sie aus:
MESOWaehrungsimport.exe TestModeProduktivbetrieb: Wenn der Testlauf erfolgreich war, führen Sie die Anwendung ohne Parameter aus:
MESOWaehrungsimport.exe
Systemvoraussetzungen
- Betriebssystem: Windows 10/11 oder Windows Server 2016 oder höher
- WinLine Version: Mesonic WinLine ab Edition 2022
- MDP Runtime Lizenz: Diese Lizenz ist erforderlich und wird von Ihrem Mesonic Vertriebspartner bereitgestellt
- .NET 9 Runtime:
- Download: .NET 9 Runtime (Deutsch)
- Es wird die .NET Desktop Runtime oder die .NET Runtime benötigt
- Die Installation erfordert Administratorrechte
- Datenbankzugriff:
- Zugriff auf die WinLine-Systemdatenbank (SQL Server)
- Berechtigung zum Lesen und Schreiben in den WinLine-Mandantendatenbanken
- Netzwerkverbindung zum SQL Server
- Internetverbindung: Zum Abrufen der aktuellen Wechselkurse von der EZB (HTTPS, Port 443)
Installation
Schritt 1: Download
Laden Sie die aktuelle Version von https://updates.itsolute.de/mesowaehrung/current.zip herunter.
Alternative: Sie können auch die neueste Version direkt von den GitHub Releases herunterladen.
Schritt 2: Datei entsperren
Nachdem Sie die aktuelle Version heruntergeladen
haben, sollten Sie über die Dateieigenschaften der .ZIP-Datei
(current.zip) im Bereich Sicherheit den standardmäßig
blockierten Zugriff zulassen, damit die Anwendung beim Start nicht durch
den Windows Smart-Screen Filter als verdächtig identifiziert wird.
Schritt 3: Entpacken
Anschließend extrahieren Sie den Inhalt der ZIP-Datei in einen
beliebigen Ordner (z.B.
C:\WinLine\Kursaktaktualisierung)
Empfohlene Ordnerstruktur:
C:\WinLine\Kursaktaktualisierung\
├── MESOWaehrungsimport.exe
├── appsettings.json
├── (weitere DLL-Dateien)
└── Logs\ (wird automatisch erstellt)
Schritt 4: Konfiguration
Die Konfiguration erfolgt über die Datei
appsettings.json. Details zur Konfiguration finden Sie im
Abschnitt Einstellungen.
Ausführung
Die ausführbare Datei ist die
MESOWaehrungsimport.exe.
Es handelt bei der Datei MESOWaehrungsimport.exe um eine
Konsolenanwendung, die somit einfach in Automatisierungen wie Batchfiles
oder die Windows-Aufgabenplanung eingebunden werden kann. Die Anwendung
kann auch manuell in einer Kommandozeile (CMD,
PowerShell) gestartet werden, um z.B. mittels des
TestMode Parameters die aktuellen Kurse anzuzeigen.
Kommandozeilenparameter
TestMode
Die Kursdaten werden nur ausgegeben, aber nicht in die Datenbank gespeichert (wird automatisch verwendet, wenn keine Lizenzinformationen angegeben wurden)
Verwendung:
MESOWaehrungsimport.exe TestModeAusgabe im TestMode: - Zeigt alle geladenen Wechselkurse mit Datum an - Listet alle konfigurierten Mandanten auf - Gibt Informationen zur Lizenz aus - Schreibt keine Daten in die WinLine-Datenbank
Empfehlung: Führen Sie die Anwendung zuerst im TestMode aus, um die Konfiguration zu prüfen, bevor Sie Daten in die Produktivdatenbank schreiben.
Einstellungen
Damit die Kurse importiert werden können, sind folgende
Grundeinstellungen notwendig, welche in der Datei
appsettings.json gespeichert sind.
License
"License":
{
"CustomerNr": "",
"LicenseNr": ""
}Die License-Einstellung enthält die Lizenzdaten, die
Ihnen von Ihrem Mesonic Partner mitgeteilt wurden.
Ohne Angabe der Lizenz läuft die Anwendung im Test-Modus, es werden alle Daten gelesen und ausgegeben (zu Testzwecken) aber nicht in die Mesonic WinLine© Datenbank gespeichert.
- CustomerNr: Die Kundennummer, die den Lizenzinhaber eindeutig identifiziert. Dieser Wert ist standardmäßig leer und muss vom Benutzer ausgefüllt werden.
- LicenseNr: Die Lizenznummer für die Softwareaktivierung. Auch dieser Wert ist initial leer und muss vom Benutzer bereitgestellt werden.
Beispiel:
"License":
{
"CustomerNr": "12345",
"LicenseNr": "XXXXX-XXXXX-XXXXX-XXXXX"
}WinLineSettings
"WinLineSettings": {
"Companies":
[
{
"CreateCurrencies": false,
"CompanyNr": "500M",
"DefaultExpenseAccount": "2150",
"DefaultIncomeAccount": "2660"
},
{
"CreateCurrencies": false,
"CompanyNr": "300M",
"DefaultExpenseAccount": "5840",
"DefaultIncomeAccount": "4840"
}
]
}Im Abschnitt WinLineSettings werden die für die
Kursaktualisierung in der Mesonic WinLine© notwendigen Einstellungen
konfiguriert:
- Companies: Eine Liste der Mandanten, deren Kurse
aktualisiert werden sollen. Jeder Eintrag repräsentiert die spezifische
Konfiguration zu einem Mandanten:
- CompanyNr: Die Mandantennummer (z.B. “500M”)
- CreateCurrencies: Ein boolescher Wert
(
trueoderfalse), der angibt, ob Währungen, die nicht im Mandant vorhanden sind, automatisch erstellt werden sollen. - DefaultExpenseAccount: Aufwandskonto, das
eingetragen wird, wenn eine neue Währung angelegt wird. (Ist nur
notwendig, wenn CreateCurrencies auf
truesteht) - DefaultIncomeAccount: Ertragskonto, das eingetragen
wird, wenn eine neue Währung angelegt wird. (Ist nur notwendig, wenn
CreateCurrencies auf
truesteht)
Hinweise: - Sie können beliebig viele Mandanten
konfigurieren - Wenn CreateCurrencies auf
false steht, werden nur Kurse für bereits existierende
Währungen aktualisiert - Die Kontonummern müssen im jeweiligen Mandanten
existieren
ConnectionStrings
"ConnectionStrings":
{
"WinLineSystemConnectionString": "Server=SERVERNAME;Initial Catalog=CWLSYSTEMDATENBANK;Integrated Security=true;Encrypt=false;TrustServerCertificate=true;"
//"WinLineSystemConnectionString": "Server=SERVERNAME;Initial Catalog=CWLSYSTEMDATENBANK;User ID=meso;Password=xxxxxx;Integrated Security=false;Encrypt=false;TrustServerCertificate=true;"
}Hier wird die Verbindungszeichenfolge zur WinLine System-Datenbank hinterlegt.
- WinLineSystemConnectionString: Verbindungsdaten zur
WinLine-Systemdatenbank.
- Server: Servername oder IP-Adresse des SQL Servers, auf dem die Datenbank läuft
- Initial Catalog: Name der WinLine System-Datenbank (häufig: CWLSYSTEM oder ähnlich)
- Integrated Security: Verwendung der
Windows-Authentifizierung (
true) - User ID / Password: Alternative SQL Server-Authentifizierung (auskommentierte Zeile)
- Encrypt: Gibt an, ob die Verbindung verschlüsselt
wird (
false) - TrustServerCertificate: Ob dem Serverzertifikat
vertraut wird, selbst wenn es nicht zertifiziert ist
(
true)
Beispiele:
Windows-Authentifizierung (Standard):
"WinLineSystemConnectionString": "Server=SQLSERVER01;Initial Catalog=CWLSYSTEM;Integrated Security=true;Encrypt=false;TrustServerCertificate=true;"SQL Server-Authentifizierung:
"WinLineSystemConnectionString": "Server=SQLSERVER01;Initial Catalog=CWLSYSTEM;User ID=winlineuser;Password=MeinPasswort123;Integrated Security=false;Encrypt=false;TrustServerCertificate=true;"Wichtig: - Testen Sie die Verbindung zunächst im TestMode - Der verwendete Benutzer benötigt Lese- und Schreibrechte auf die WinLine-Datenbanken
Logging
Die Anwendung erstellt automatisch Logdateien im Unterordner
Logs\ des Installationsverzeichnisses.
Logdatei-Format: - Dateiname:
importlog-YYYYMMDD.txt (z.B.
importlog-20231215.txt) - Jeder Tag erhält eine eigene
Logdatei - Alte Logdateien werden nicht automatisch gelöscht
Loglevel: - Information: Normale Programmausführung (Standard) - Warning: Warnungen, z.B. bei fehlender Lizenz oder Konfigurationsproblemen - Error: Fehler bei der Ausführung
Ausgabe: - Alle Logs werden sowohl in der Konsole als auch in der Datei ausgegeben - Im TestMode werden zusätzlich alle geladenen Kurse in der Konsole angezeigt
Beispiel-Logausgabe:
[14:30:15 INF] Loading Currencyrates
[14:30:16 INF] Currency date: 2023-12-15
[14:30:16 INF] Writing Rates to Mesonic WinLine
[14:30:18 INF] Finished
Automatisierung
Windows-Aufgabenplanung
Um die Anwendung täglich automatisch auszuführen, können Sie die Windows-Aufgabenplanung verwenden:
- Öffnen Sie die Aufgabenplanung (
taskschd.msc) - Klicken Sie auf “Einfache Aufgabe erstellen”
- Geben Sie einen Namen ein, z.B. “WinLine Kursupdate”
- Wählen Sie als Trigger “Täglich” aus
- Stellen Sie die Zeit ein (empfohlen: nach 16:00 Uhr, da die EZB die Kurse um ca. 16:00 Uhr aktualisiert)
- Wählen Sie “Programm starten” aus
- Programm/Skript:
C:\WinLine\Kursaktaktualisierung\MESOWaehrungsimport.exe - Starten in:
C:\WinLine\Kursaktaktualisierung\
Empfohlene Einstellungen: - Aufgabe mit höchsten Privilegien ausführen (falls SQL Server Windows-Authentifizierung verwendet wird) - Aufgabe auch ausführen, wenn Benutzer nicht angemeldet ist - Bei Fehler: Aufgabe nach 5 Minuten wiederholen (maximal 3 Versuche)
Batch-Datei
Sie können auch eine Batch-Datei erstellen, z.B.
KursUpdate.bat:
@echo off
cd /d "C:\WinLine\Kursaktaktualisierung"
MESOWaehrungsimport.exe
echo.
echo Kursimport abgeschlossen am %date% %time%
pause
PowerShell-Skript
Für fortgeschrittene Benutzer können Sie auch ein PowerShell-Skript verwenden:
$logPath = "C:\WinLine\Kursaktaktualisierung\Logs"
$exePath = "C:\WinLine\Kursaktaktualisierung\MESOWaehrungsimport.exe"
Write-Host "Starte Währungsimport..." -ForegroundColor Green
& $exePath
if ($LASTEXITCODE -eq 0) {
Write-Host "Import erfolgreich abgeschlossen." -ForegroundColor Green
} else {
Write-Host "Import mit Fehlercode $LASTEXITCODE beendet." -ForegroundColor Red
}Troubleshooting
Die Anwendung startet nicht
Problem: Beim Doppelklick auf
MESOWaehrungsimport.exe erscheint eine Fehlermeldung oder
die Anwendung startet nicht.
Lösung: 1. Prüfen Sie, ob .NET 9 Runtime installiert
ist: cmd dotnet --version Die Ausgabe sollte mit “9.”
beginnen 2. Installieren Sie ggf. die .NET 9 Runtime von Microsoft
3. Führen Sie die Anwendung in einer Kommandozeile aus, um
Fehlermeldungen zu sehen
Verbindung zur Datenbank schlägt fehl
Problem: Fehlermeldung “Cannot connect to database” oder ähnlich.
Lösungen: 1. Prüfen Sie die
ConnectionString-Konfiguration in appsettings.json 2.
Testen Sie die Verbindung mit SQL Server Management Studio 3. Prüfen
Sie, ob der SQL Server-Dienst läuft 4. Überprüfen Sie die
Firewall-Einstellungen 5. Bei Windows-Authentifizierung: Stellen Sie
sicher, dass der ausführende Benutzer Zugriff auf die Datenbank hat 6.
Bei SQL-Authentifizierung: Überprüfen Sie Benutzername und Passwort
Kurse werden nicht importiert
Problem: Die Anwendung läuft, aber die Kurse werden nicht in der WinLine angezeigt.
Lösungen: 1. Prüfen Sie, ob die Anwendung im
TestMode läuft (ohne gültige Lizenz) 2. Überprüfen Sie die
Lizenz-Konfiguration 3. Prüfen Sie die Logdateien im
Logs\-Ordner 4. Stellen Sie sicher, dass die
Mandantennummer korrekt ist 5. Prüfen Sie, ob die Währungen im Mandanten
bereits existieren (wenn CreateCurrencies: false)
EZB-Daten können nicht abgerufen werden
Problem: Fehlermeldung beim Abrufen der Wechselkurse von der EZB.
Lösungen: 1. Prüfen Sie die Internetverbindung 2. Testen Sie den Zugriff auf https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml im Browser 3. Prüfen Sie die Firewall-/Proxy-Einstellungen 4. Port 443 (HTTPS) muss freigegeben sein
Lizenz wird nicht erkannt
Problem: Die Anwendung läuft immer im TestMode.
Lösungen: 1. Überprüfen Sie die Schreibweise von CustomerNr und LicenseNr 2. Stellen Sie sicher, dass keine Leerzeichen am Anfang oder Ende der Werte vorhanden sind 3. Kontaktieren Sie Ihren Mesonic Partner zur Überprüfung der Lizenzdaten 4. Prüfen Sie die Internetverbindung zum Lizenzserver (https://license.css-edv-support.de)
Anwendung läuft sehr langsam
Problem: Der Import dauert sehr lange.
Lösungen: 1. Prüfen Sie die Netzwerkverbindung zum SQL Server 2. Reduzieren Sie ggf. die Anzahl der Mandanten in der Konfiguration 3. Führen Sie die Anwendung zu Zeiten geringer Datenbanklast aus 4. Prüfen Sie die SQL Server-Performance
FAQ
F: Wie oft sollte die Anwendung ausgeführt werden?
A: Empfohlen wird einmal täglich nach 16:00 Uhr, da die EZB die Kurse in der Regel um 16:00 Uhr aktualisiert. Ein mehrmaliges Ausführen pro Tag ist möglich, der Kurs wird dann überschrieben.
F: Welche Währungen werden importiert?
A: Alle von der EZB bereitgestellten Währungen werden importiert. Die EZB bietet über 30 Währungen an, darunter USD, GBP, CHF, JPY, CNY und viele mehr.
F: Was passiert mit historischen Kursen?
A: Die Anwendung importiert nur den aktuellen Tageskurs. Historische Kurse bleiben unverändert. Bei mehrmaliger Ausführung am selben Tag wird der Kurs überschrieben.
F: Kann ich nur bestimmte Währungen importieren?
A: Nein, die Anwendung importiert immer alle von der EZB
bereitgestellten Währungen. Sie können aber steuern, ob neue Währungen
automatisch angelegt werden sollen
(CreateCurrencies: true/false).
F: Was kostet die Lizenz?
A: Kontaktieren Sie Ihren Mesonic Vertriebspartner für Preisinformationen zur MDP Runtime Lizenz.
F: Kann ich die Anwendung auf mehreren Servern installieren?
A: Ja, Sie können die Anwendung auf mehreren Servern installieren. Beachten Sie jedoch die Lizenzbedingungen Ihres Mesonic Partners.
F: Was ist der Unterschied zwischen TestMode und Produktivmodus?
A: Im TestMode werden die Daten nur geladen und in der Konsole/Logdatei ausgegeben, aber nicht in die WinLine-Datenbank geschrieben. Im Produktivmodus (mit gültiger Lizenz) werden die Kurse tatsächlich in die Datenbank importiert.
F: Wo finde ich Unterstützung bei Problemen?
A: Kontaktieren Sie [email protected] oder wenden Sie sich an Ihren Mesonic Partner.
F: Sind Änderungen an der Konfiguration während der Laufzeit möglich?
A: Nein, die Konfiguration wird beim Start der Anwendung geladen.
Änderungen an appsettings.json werden erst beim nächsten
Start wirksam.
F: Funktioniert die Anwendung auch ohne Internetverbindung?
A: Nein, die Anwendung benötigt eine Internetverbindung, um die aktuellen Wechselkurse von der EZB abzurufen und die Lizenz zu validieren.
Verbesserungsvorschläge
Bitte an [email protected]
Versionshistorie
Version 2025.4.28
💎 Added - Upgrade auf MesoXPO-DevEx24.2 Version 2025.4.28 - Aktualisierte Dependencies
Version 1.0.x (Initial Release)
💎 Added - Import von tagesaktuellen Wechselkursen von der EZB - Unterstützung für mehrere Mandanten - Automatische Erstellung von Währungen (optional) - TestMode für sichere Konfigurationstests - Logging in Datei und Konsole - Lizenzvalidierung - Windows-Authentifizierung und SQL Server-Authentifizierung