CSS EDV Support Logo

MESO-ArchiveExport

AddOn für die Mesonic WinLine ©

Stand: 11.03.2025



MESO-Archiveexport

Diese .NET Kommandozeilenanwendung exportiert Dokumente aus einem WinLine©-Archiv und unterstützt dabei verschiedene Filter- und Umwandlungsoptionen

🔗 Download der aktuellen Version

ℹ️ Download dieser Dokumentation als pdf

Inhaltsverzeichnis

  1. Übersicht
  2. Systemvoraussetzungen
  3. Installation
  4. Konfiguration über appsettings.json
  5. Aufruf und Optionen
  6. Beispiele
  7. Fehlerbehandlung
  8. Lizenz

Übersicht

Das Mesonc Archiv Export Tool ermöglicht das Extrahieren und Exportieren von Dokumenten aus einer Mesonic-Datenbank.
Folgende Hauptfunktionen werden bereitgestellt:

  1. Export-Dokumente nach IDs
    Exportiert eine definierte Liste von Dokument-IDs mit Hilfe des Befehls export-documents.

  2. Export-Dokumente nach Filter
    Exportiert alle Dokumente, die einem bestimmten Filter (z. B. Start-ID, Start-Datum, Formular-IDs usw.) entsprechen, via export-range.

  3. Export-Dokumente nach Archivexportparametern des Mandanten
    Exportiert alle Dokumente des angegebenen Mandanten auf Basis der letzten exportierten Dokument-ID. Mit --usearchiveexport.

Zusätzlich stehen optional folgende Funktionen zur Verfügung:


Systemvoraussetzungen

Zurück zum Anfang


Installation

Zurück zum Anfang

  1. Nachdem die aktuelle Version heruntergeladen wurde, sollte über die Dateieigenschaften der .ZIP-Datei (current.zip) im Bereich Sicherheit der standardmäßig blockierte Zugriff gelassen werden, damit die Anwendung beim Start nicht durch den Windows Smart-Screen Filter als Verdächtig identifiziert wird.

  2. Kopiere die bereitgestellten Dateien in ein beliebiges Verzeichnis.

  3. Stelle sicher, dass du eine gültige .NET-Runtime installiert hast (zum Beispiel .NET 8).

  4. Platziere die Anwendung so, dass du sie über die Konsole aufrufen kannst:

    cd C:\Pfad\zum\Tool
    MesoArchiveExport.exe --help
  5. Appsettings.json ergänzen:

    1. Lizenz eintragen (ohne gültige Lizenz läuft die Anwendung im Testmodus). Die Lizenzdaten sind in der Datei appsettings.json gespeichert.
    2. Optional: Einstellungen für den Export eintragen, falls nicht über Kommandozeilenparameter gestartet wird. Siehe Konfiguration über appsettings.json.]

License

  "License": 
  {
    "CustomerNr": "",
    "LicenseNr": ""
  }

Die License-Einstellung enthält die Lizenzdaten, die Ihnen von Ihrem Mesonic Partner mitgeteilt wurde.

Ohne Angabe der Lizenz läuft die Anwendung im Test-Modus, es werden alle Daten gelesen und ausgegeben (zu Testzwecken) aber nicht gespeichert.


Konfiguration über appsettings.json

Neben den Kommandozeilenparametern können alle erforderlichen Einstellungen auch in der appsettings.json hinterlegt werden. Wird die Anwendung ohne Kommandozeilenparameter gestartet, lädt sie automatisch die Konfiguration aus dieser Datei und führt den Export-Vorgang anhand der dort definierten Parameter aus.

Dies betrifft insbesondere folgende Bereiche:

Beispiel: appsettings.json

{
  "License": {
    "CustomerNr": "",
    "LicenseNr": ""
  },
  "ConnectionStrings": {
    "WinLineSystem": "Server=ws01;Database=CWLSYSTEMCRM;Integrated Security=true;TrustServerCertificate=true"
  },
  "ArchiveExport": {
    "ExportDirectory": "C:\\Exports",
    "PathToMesospool": "C:\\WinLineCrmDemo\\",
    "Company": "500M",
    "FormIds": [ 1, 2 ],
    "StartDate": "2025-01-01T00:00:00",
    "StartDocumentId": 0,
    "UseArchiveExportSettings": false,
    "SplToPdf": true,
    "DocIdPrefix": true
  }
}

Nutzung

Starten Sie die Anwendung ohne Kommandozeilenparameter:

MesoncArchivExportTool.exe

In diesem Fall werden die in der appsettings.json definierten Einstellungen automatisch geladen und der Export-Vorgang (z. B. über export-range) wird ausgeführt.
Hinweis: Falls gleichzeitig Kommandozeilenparameter angegeben werden, haben diese Vorrang vor den Einstellungen in der Konfiguration.


Aufruf und Optionen

Globale Optionen

Option Alias Beschreibung Pflicht? Beispiel
--winlinepath <DirectoryInfo> --w Pfad zur Mesospool.exe (in der Regel ein WinLine-Verzeichnis) Ja --winlinepath "C:\\Winline"
--server <String> --s SQL Server-Instanz der Mesonic System-Datenbank Ja --server "MyServer\\SQL2019"
--systemdatabase <String> --db Name der Mesonic System-Datenbank Ja --systemdatabase "mesoSystemDB"
--mesopassword <String> --p Passwort für den meso-Benutzer. Wenn --integratedsecurity aktiv ist, kann dies leer/optional bleiben. Nein (siehe Hinweis) --mesopassword "TopSecret"
--integratedsecurity <bool> --i Verwendet integrierte Windows-Sicherheit für die Datenbankverbindung (nur Windows). Falls true, wird --mesopassword nicht benötigt. Nein (default: false) --integratedsecurity true
--export-directory <String> --d Exportverzeichnis für die Dokumente. Wenn nicht angegeben, wird das aktuelle Verzeichnis verwendet. Nein --export-directory "D:\\Exports"
--mesocomp <String?> --c Welcher Mandant soll exportiert werden? Leer = alle.
Wichtig: Bei --usearchiveexport (siehe unten) ist ein Mandant Pflicht!
Nein (Pflicht mit --usearchiveexport) --mesocomp "MeinMandant"
--spltopdf <bool> (kein Alias) Sollen SPL-Dateien automatisch in PDF konvertiert werden? Nein (default: true) --spltopdf false
--docidprefix <bool> (kein Alias) Soll die Dokument-ID als Prefix für den Dateinamen genutzt werden, um Dateinamen eindeutig zu halten? Nein (default: true) --docidprefix false

Befehl: export-documents

Exportiert bestimmte Dokumente anhand einer Liste von Dokumenten-IDs.

Option Beschreibung Pflicht? Beispiel
--ids <List<int>> Kommagetrennte Liste von Dokumenten-IDs Ja --ids 101,102,500

Beispielaufruf:

MesoncArchivExportTool.exe export-documents 
    --winlinepath "C:\\Winline"
    --server "MyServer"
    --systemdatabase "mesoSystem"
    --mesopassword "MySecret"
    --ids 10,11,12
    --export-directory "C:\\ArchivExport"
    --spltopdf false
    --docidprefix false

Befehl: export-range

Exportiert alle Dokumente, die den angegebenen Filterkriterien entsprechen.
Ohne weitere Filter werden alle Dokumente (ab ID=0) eines Mandanten bzw. aller Mandanten exportiert.

Option Beschreibung Pflicht? Beispiel
--start <int> Ab welcher Dokumenten-ID soll exportiert werden (optional)?
Standard: 0 (beginnt bei ID=0).
Nein --start 500
--start-date <DateTime?> Ab welchem Datum (Schlagwort-Tagesdatum) soll exportiert werden? Nein --start-date 2024-01-01
--formids <List<int>> Kommagetrennte Liste von Formular-IDs (optional). Nein --formids 10,11,12
--usearchiveexport <bool> Wenn true, werden die Archivexport-Einstellungen (letzte exportierte Dok-ID) des Mandanten gelesen und aktualisiert.
Erfordert zwingend --mesocomp.
Nein (default: false) --usearchiveexport true

Besonderheit bei --usearchiveexport: - Die Option liest den zuletzt exportierten Stand aus den Mandanten-Einstellungen und setzt --start intern auf (letzteID + 1).
- Nach erfolgreichem Export wird die neue Export-Dokumenten-ID automatisch in der Datenbank aktualisiert.
- Wenn --mesocomp fehlt, wird ein Fehler gemeldet.

Beispielaufruf:

MesoncArchivExportTool.exe export-range
    --w "C:\\Winline"
    --s "SQLSERVER01"
    --db "mesoSystem"
    --p "geheim"
    --mesocomp "MeinMandant"
    --start 1000
    --start-date 2024-01-01
    --formids 10,12
    --spltopdf true
    --docidprefix true

Beispiele

1. Einfacher Export von Dokumenten-IDs

MesoncArchivExportTool.exe export-documents
  --winlinepath "C:\\Winline"
  --server "MyServer"
  --systemdatabase "mesoSystem"
  --mesopassword "TopSecret"
  --ids 101,102,103

2. Range-Export mit integrierter Sicherheit (Windows Auth)

MesoncArchivExportTool.exe export-range
  --w "C:\\Winline"
  --s "MyServer" 
  --db "mesoSystem"
  --integratedsecurity true
  --start 500
  --start-date 2023-01-01
  --formids 10,12,20
  --docidprefix false

3. Archivexport-Einstellungen verwenden (--usearchiveexport)

MesoncArchivExportTool.exe export-range
  --w "C:\\Winline"
  --s "SQLSERVER01"
  --db "mesoSystem"
  --p "geheim"
  --mesocomp "MeinMandant"
  --usearchiveexport true

Fehlerbehandlung und Logs


Verbesserungsvorschläge und Fragen

Bitte an [email protected]


Änderungen und Aktualisierungen vorbehalten.