Aktionen
über den Button «Aktionen» lassen sich diverse Aktionen, für die Zeitpunkt «Vor Export», «Nach Export» und für «Nach allen Split-Exporten» einrichten
Auch sind nicht alle «Aktionen» in jedem der beiden Bereiche verfügbar. Nachfolgend werden daher alle «Aktionen» aufgeführt, ohne auf die Verfügbarkeit in den beiden Bereichen einzugehen
In allen «Aktionen» gibt es das Flag «aktiv», über welches man die jeweilige Aktion de-/aktivieren kann, sowie das Feld «Reihenfolge», über welches man bei mehreren erfassten Aktionen innerhalb eines Bereiches die Ausführungsreihenfolge festlegen kann.
Über den Button «(De)Aktivieren» lassen sich einzelne Aktions-Definitionen schnell (de)aktivieren, ohne, dass man dazu extra die Aktions-Definition zum Bearbeiten öffnen muss.
C# Script
über die Aktion «C# Script» kann ein C# Script ausgeführt werden. So ist es z.B. möglich in Abhängigkeit eines zu importierenden Zusatzfeld-Wertes zu prüfen, ob es bereits ein PROFFIX Dokument mit genau diesem Zusatzfeld gibt und dann den erneuten Import des Dokumentes zu unterbinden.
Stored Procedure
über die Aktion «Stored Procedure» kann eine Stored Procedure auf der Datenbank ausgeführt werden
Kommando: hier wird die Stored Procedure angegeben
Parameter: hier können Parameter angegeben werden, wenn dies die Stored Procedure erfordert
Die Eingabe eines Parameters erfolgt als «<Name>®<Datentyp>®<Wert>». Getrennt werden Parameter mittels «¿» Zeichen. Um die Eingabe der beiden Zeichen zu erleichtern, können bei gedrückter «Strg» Taste und Klick auf den «Var» Button (neben dem Feld «Parameter») diese beiden Zeichen ausgewählt werden.
SQL Statement
über die Aktion «SQL Statement» kann eine SQL Statement auf der Datenbank ausgeführt werden
Kommando: hier wird die SQL Statement angegeben
Batch/Exe
über die Aktion «Batch/EXE» kann eine Batch-Datei oder eine EXE ausgeführt werden
Kommando: hier wird die auszuführende Datei angegeben
Argumente: hier können Parameter angegeben werden, die beim Aufruf als Kommando-Zeilen-Parameter dem auszuführenden Programm übergeben werden.
Button «Var»: je nach Bereich können über den Button z.B. Platzhalter für die zu importierenden Spalten-Werte, etc. ausgewählt werden
SQL Statement intern
über die Aktion «SQL Statement intern» kann eine SQL Statement auf der internen SQLite Datenbank ausgeführt werden
Kommando: hier wird das SQL Statement angegeben
Hinweis: wenn ein Platzhalter mit @ (anstatt #) umschlossen wird (z.B. @USERVAR1@), so wird der Wert des Platzhalters 1:1 übernommen und eventuell enthaltenen Hochkommata werden nicht dupliziert
Abfragewerte
über die Aktion «Abfragewerte» können bis zu 10 vom Benutzer einzugebende Wert festgelegt werden, die vor einem manuellen Export abgefragt werden und als (zusätzliche) Where-Einschränkung dem Haupt-Select des Exports angehängt werden
Als Datentypen stehen «String», «Number», «DateTime» und «Auswahl» zu Verfügung.
Bei "«Auswahl»" werden Werte in einer Combobox angezeigt und können so einfach vom Benutzer ausgewählt werden. Die in den Comboboxen enthaltenen Werte müssen per C# Script über den Button «Default» als Rückgabe-Wert in nachfolgender Form angegeben werden
«<DisplayText>®<DataValue>». Getrennt werden die einzelnen Werte mittels «¿» Zeichen. Ein eventuell als Default vorbelegter Wert muss mit «<DataValue>» angegeben werden.
Nachfolgend ein Beispiel eine Auswahl mit allen Monaten und dem Default «Juni»
Januar®01¿Februar®02¿März®03¿April®04¿Mai®05¿Juni®06¿Juli®07¿August®08¿September®09¿Oktober®10¿November®11¿Dezember®12¿*06*
Nachfolgend ein C# Script Beispiel (Druckerauswahl) für einen Abfrage-Wert als Auswahl mit Default
//import System.Management.dll
using System;
using System.Text;
using System.Xml;
using System.Data;
using System.Management;
using Intern = WATO.PxDocCreator.Globals.Func;
public class WATOCSharpScript
{
public static string Execute(WATO.GL.BS.SQL.DBConn.ConnectionBase dbConn)
{
// Druckerliste aufbereiten für Auswahl mit Pattern gem WCO-Doku
// https://watoconnect.wato-soft.ch/docs/handbuch/export_definition/export_def_neu/aktionen_exp/#abfragewerte
// Name oder Teile vom Namen hier angeben zum Vorbelegen der Auswahl
string defaultName = "PRT01";
// Druckerliste abfragen
var printerQuery = new ManagementObjectSearcher("SELECT * from Win32_Printer");
string auswahlListe = string.Empty;
string defaultNameSelected = string.Empty;
foreach (var printer in printerQuery.Get())
{
string name = printer.GetPropertyValue("Name").ToString();
//var status = printer.GetPropertyValue("Status");
//var isDefault = printer.GetPropertyValue("Default");
//var isNetworkPrinter = printer.GetPropertyValue("Network");
//this.cmbPrinter.Items.Add(name, name);
auswahlListe += string.IsNullOrEmpty(auswahlListe) ? string.Empty : "¿";
auswahlListe += string.Concat(name, "®", name);
//Default prüfen
if(name.Contains(defaultName))
{
defaultNameSelected = name;
}
}
//Default anhängen wenn ermittelt
if(!string.IsNullOrEmpty(defaultNameSelected))
{
auswahlListe += string.Concat("¿*", defaultNameSelected, "*");
}
return auswahlListe;
}
}
eMail
Von: Absender-eMail-Adresse
An: Komma- oder Semikolon separierte die Empfänger-eMail-Adresse(n)
Cc: Komma- oder Semikolon separierte die CC-eMail-Adresse(n)
Bcc: Komma- oder Semikolon separierte die BCC-eMail-Adresse(n)
Betreff: Betreff-Text der eMail
Text: Body-Text der eMail
Sprache: hier kann je nach Zielsystem u. Mapping-Typ der eMail-Text für unterschiedliche Sprachen angegeben werden. So kann z.B. nach der PROFFIX-Dokumentanlage in Abhängigkeit der Sprache der Adresse des Dokumentes in der eMail nach der Dokumentanlage der sprachlich richtige Text für den jeweiligen Kunden verwendet werden.
HTML: gibt an, ob der Body-Text als HTML versendet wird und auch über einen integrierten HTML-Editor bearbeitet wird, oder ob es reiner Plain-Text ist
Export-Datei als: hier kann man angeben, ob und wie die Export-Datei in die eMail inkludiert werden soll
Priorität: hier kann man die Priorität der eMail angeben
Anhänge: über den Button «Anhänge» kann man Dateien definieren, die zusammen mit der eMail als Anhänge versendet werden sollen
Hinter allen Feldern befinden sich Button «Var», über die auf, wieder je nach Bereich, Zielsystem und/oder Mapping-Typ, mögliche Platzhalter zugegriffen werden kann und die in die jeweiligen Felder eingefügt werden können
Ftp
FTP-Server-Pfad: Server-URL und ggfls. Pfad, wohin der FTP-Upload erfolgen soll
Benutzer: Benutzer für die Anmeldung an den FTP Server
Kennwort: Kennwort des Benutzers für die Anmeldung an den FTP-Server
Zusätzliche Dateien: Dateien, die zusätzlich auf den FTP-Server hochgeladen werden sollen
Postfinance
Hier kann die Aktion «Postfinance» definiert werden, mit der nach einem Export z.B. Rechnung inkl. der zugehörigen Rechnungs-PDF-Datei an Postfinance übertragen werden können
Umgebung: hier kann ausgewählt werden, ob man sich im Test- oder im Produktiv-Betrieb befindet. Je nach Auswahl ändern sich automatisch die Felder «Upload Service» und «Upload ServiceVia»
Service-Typ: hier stehen die Möglichkeiten «B2BWebService (veraltet) und «B2BService» zur Verfügung. Voraussichtlich ab April 2021 wird nur noch der «B2BService» von Postfinance unterstützt werden
Benutzer: Benutzer zur Anmeldung an den Postfinance Web Service
Kennwort: Kennwort des Benutzers an den Postfinance Web Service
Biller ID: von Postfinance zugewiesen eindeutige ID für das rechnungsstellende Unternehmen
Import nach Export
Proffix Druck nach Export
über die Aktion «Proffix Druck nach Export» kann entweder ein Dokument-Report oder ein Bestell-Report gedruckt oder als PDF erzeugt werden
Export Plugin
Über die Auswahlbox kann das entsprechend installierte Plugin ausgewählt und über den Button dahinter konfiguriert werden
Kendox Export Plugin
Über das Kendox Export Plugin lassen sich beschreibende Eigenschaften von Kendox Dokumenten, z.B. zur Massenmutation, aus Kendox abrufen und als CSV-Datei speichern
Server-URL: URL der Kendox Services
Benutzer: Benutzer, der zur Verbindung mit den Kendox Services verwendet wird
Kennwort: Kennwort des Benutzers zur Verbindung mit den Kendox Services
Über den Button «Test Verbindung zu Kendox» kann ein Verbindungstest durchgeführt werden. Lässt man die Felder leer, so werden die Daten aus den globalen Einstellungen verwendet.
Eigenschaft: Die Eigenschaft der Kendox-Dokumente, welche als Suchkriterium gelten soll. Über den ?-Button kann ein Dialog aufgerufen werden, mittels dessen Hilfe die möglichen Eigenschaften ermittelt und eine davon übernommen werden kann.
Operator: das Vergleichskriterium für die Suche nach den Dokumenten
XML TAG: XPath-Ausdruck der Export-XML, der den/die Wert(e) enthält, welche als Suchkriterium für die Dokumente in Kendox gelten sollen
Ziel-Pfad: Datei-Pfad, unter dem/denen de CSV-Datei(en) abgelegt werden
Dateiname: hier wird der Datei-Name für die CSV-Datei(en) definiert.
Trennzeichen: Zeichen, welches als Trennzeichen innerhalb der CSV-Datei verwendet werden soll
Quote-Zeichen: Das Zeichen, mit denen die Daten innerhalb der CSV-Datei umschlossen werden (Optional)
Escape-Zeichen: Das Zeichen, mit denen eventuell Quote-Zeichen in einem Wert «escaped» werden (optional)
SFTP Export Plugin (PuTTY)
Über das SFTP Export Plugin lässt sich die Export-Datei mittels Putty PSFTP.exe Tool per «SSH Client» an einen Server übertragen
Server: IP oder Name des Servers
Port (optional): Port, über den die Verbindung mit dem Server aufgebaut wird (Default ist Port 22)
Benutzer (optional): Benutzer, der zur Verbindung mit dem Server verwendet wird
Kennwort (optional): Kennwort des Benutzers zur Verbindung mit dem Server
PSFTP.exe: Pfad + Dateiname der «PSFTP.exe»
Key-File (optional): Private Key zur sicheren Authentifizierung gegenüber dem Server
Upload-Verzeichnis (optional): Verzeichnis auf dem Server, in den der Upload erfolgen soll
Batch-File (optional): Angabe einer Batch-Datei mit Kommandos zum Upload der Datei. Wenn eine Batch-Datei angegeben wird, wird diese anstatt des «normalen» Uploads zeilenweise abgearbeitet und ausgeführt.
Zusätzliche Argumente (optional): hier können zusätzliche Kommando-Zeilen-Argumente angegeben werden, die dann 1:1 beim Aufruf mit übergeben werden
Informationen zur Erstellung einer Batch-Datei
-
Es können Leerzeilen angegeben werden. Diese werden bei der Ausführung übersprungen
-
Es können «Kommentar-Zeilen» angegeben werden. Alle Zeilen, die mit «;» oder «#» beginnen, werden als «Kommentar-Zeile «interpretiert und nicht ausgeführt
-
In der Batch-Datei können nachfolgende «Platzhalter» verwendet werden. Diese werden vor der Ausführung einer jeden Zeile mit den entsprechenden Werten ersetzt
#FILENAME#: Pfad + Dateiname + Extension der Export-Datei
#FILENAMEWITHOUTEXTENSION#: der reine Dateiname ohne Extension
#FILEEXTENSION#: die Extension des Dateinamens
#UPLOADPATH#: Wert aus dem Feld «Upload-Verzeichnis
-
Die Verbindung zum Server wird auch bei der Ausführung der Batch-Datei über den Programm-Code durchgeführt und muss/darf nicht innerhalb der Batch-Datei erfolgen
-
Eine Batch-Datei muss mit dem «quit» Befehl angeschlossen werden
HINWEIS: Die Datei «PSFTP.exe» ist nicht im Lieferumfang des Programms enthalten
Download: https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Dokumentation: [https://the.earth.li/~sgtatham/putty/latest/htmldoc/
SFTP Upload Export Plugin
Über das SFTP Upload Export Plugin lassen sich Dateien an einen SFTP Server übertragen
Quell-Verzeichnis: hier muss das Verzeichnis, aus dem die Dateien hochgeladen werden, angegeben werden
inkl. Unterverzeichnisse: wird das Flag gesetzt, so werden auch Dateien aus eventuell vorhandenen Unterverzeichnissen hochgeladen. Dabei wird die gleiche Verzeichnisstruktur auf dem Server erstellt (falls nicht vorhanden)
nur Export-Datei uploaden: wird das Flag gesetzt, so wird nur die Export- Dateien auf den SFTP Server hochgeladen
Dateien stehen lassen: wird das Flag gesetzt, so werden die Dateien nach dem Hochladen nicht in "Erledigt" verschoben
wenn Updload erfolgreich => Dateien löschen: wird das Flag gesetzt, so werden nach dem Hochladen die Dateien gelöscht
Datei-Filter: hier kann angegeben werden, welche Dateien hochgeladen werden soll
SFTP Server: Server URL (ohne sftp, etc.)
SFTP Verzeichnis: Verzeichnis auf dem SFTP Server, aus dem die Dateien abgerufen werden soll (. für Root, Unterverzeichnisse beginnend mit /)
SFTP Port: der Port, unter dem der SFTP Server erreichbar ist (Default 22)
SFTP Benutzer: User für die Verbindung zum SFTP Server
SFTP Kennwort: Kennwort für die Verbindung zum SFTP Server
Key File: Private Key Datei (optional)
PassPhrase: PassPhrase der Private Key Datei (optional)
FingerPrint: hier kann der erwartete FingerPrint des SFTP Servers eingetragen werden. Dieser wird dann mit dem vom Server gesendeten verglichen. (optional)
FingerPrint immer 'vertrauen': wird das Flag gesetzt, so wird der FingerPrint nicht überprüft (optional)
Datei zunächst als TMP File hochladen: wird das Flag gesetzt, so werden die Dateien zunächst mit der Endung ".tmp" hochgeladen und dann auf dem Server umbenannt
Upload nur, wenn ACK-File vorhanden: wird das Flag gesetzt, so werden Dateien nur hochgeladen, wenn auch eine ACK zu der entsprechenden Datei vorhanden ist
Zusätzliche Dateien: hier können zusätzliche Dateien angegeben werden, die mit auf den SFTP Server hochgeladen werden sollen
Über den Button «Test» kann geprüft werden, ob die Verbindung hergestellt werden kann. Dabei wird eine entsprechende Meldung, wie nachfolgend dargestellt, ausgegeben.