Schaltflächen und Beschreibung
Mit * gekennzeichnete Felder sind Pflichtfelder.
Bereich: Übergreifend
Schaltflächen und Felder | Beschreibung |
---|---|
Grundlagen | |
KonverterID | Die KonverterID ist die einzigartige Identifikationsnummer des Konverters. |
Beschreibung | Eine freie Beschreibung zur Wiedererkennung des Konverters in anderen Menüs. |
Aktiv | Dieser Wert beschreibt, ob der Konverter aktiv oder inaktiv ist. |
Art* | Beschreibt die Art des Konverters (Import oder Export). |
Validierung | |
Preisvalidierung | Hier wird festgelegt, wie mit abweichenden Preisen verfahren werden soll. |
Validierungsdatei | Hier wird der komplette Datenpfad der Validierungsdatei hinterlegt, z.B. eine XML-Schema-Datei im .xsd-Format. |
Trennzeichen | Beinhaltet eine Sammlung von Trennzeichen, um Datensegmente voneinander zu trennen. |
Positionsmarker | Definiert den Einsprungspunkt als Beginn des Belegs bzw. dem Beginn der Position. |
Externe Verknüpfung | |
Name* | Hier wird der Handler gewählt, z.B. die Konvertierung zwischen Sage-Belegen und EDI-Dateien. |
Speicherpfad* | In diesem Feld legen Sie den Speicherort und den Namen der Datei für die Verarbeitung fest. Beispiel für den Import-Speicherpfad: C:\Pfad\Order*.xml Beispiel für den Export-Speicherpfad: C:\Order_BellID.xml BellID wird beim Speichern durch den vorhandenen Datenwert ersetzt (.z.B. Dateiname Order_12345.xml) |
Erledigtpfad* | Gibt den Dateipfad auf Ihrem System an, an dem verarbeitete Dateien abgelegt werden. |
Errorpfad* | Gibt den Dateipfad auf Ihrem System an, an dem fehlerhafte Import-Belege abgelegt werden. |
Encoding CodePage | Hier legen Sie fest, welchen Wert aus der Zeichensatztabelle Sie nutzen möchten. Bleibt das Feld leer, nutzt der Konverter den Standardwert UTF-8 ohne BOM. |
Bereich: Konverter
Schaltflächen und Felder | Beschreibung |
---|---|
Datenverknüpfung | |
Belegkennzeichen* | Hier wird festgelegt, welches Belegkennzeichen, z.B. Auftragsbestätigung, Bestellung usw. auf den Konverter angewendet wird. |
Kto* | Kto bezeichnet den Kontokorrent, auf dem der Konverter angewendet wird. Hier kann auch eine Kundengruppe angegeben werden. |
TabelleBelegInfo | In diesem Feld regelt eine durch Komma getrennte Liste der Tabellen/Views die Datenbestimmung für die verschiedenen Ebenen des Belegs. |
TabelleParameter | Hier wird durch eine durch Kommata getrennte Liste der Verknüpfungsschlüssel der Abfrageparameter festgelegt, z.B. BelID, BelPosID usw. |
Druckprozess | In diesem Feld ist der Druckprozess auszuwählen, der nach dem Import genutzt werden soll. Lässt man das Feld leer, greift der Konverter auf den Standarddruckprozess zurück. |
Benutzerfeld | Dieses Feld definiert den iwmEDIBenutzer, der beim Im- oder Export angegeben wird. |
Datumfeld | Dieses Feld regelt die Datumsangabe beim Im- oder Export. |
Bereich: Mapping
Schaltflächen und Felder | Beschreibung |
---|---|
Mapping ID | Bei der Mapping ID handelt es sich um die einzigartige Identifikationsnummer von Elementen innerhalb eines Konverters. |
Konverter ID | Die Konverter ID ist die zugehörige ID des Konverters. |
Elternelement | Das Elternelement bezeichnet das übergeordnete Datenelement und bezieht sich auf die Mapping ID. |
Informationsebene | Die Informationsebene bezeichnet die Ebene der Informationsbeschaffung. Zur Auswahl stehen die Optionen „Beleg“, „Position“ sowie weitere Loops. |
Attribut | Diese Spalte regelt, ob das Element als Attribut des Elternteils verwendet wird. |
Reihenfolge | Hier ist die Reihenfolge der Elemente festgelegt. Die Reihenfolge ist nullbasiert. |
Name extern | Hier wird der Name des externen Datenelements festgelegt. |
Validierung extern | Hier erfolgt die Validierung des externen Datenelements, beispielsweise wird das Datumsformat für das Datenelement „Datum“ festgelegt. |
Name SQL-Spalte | Diese Spalte bezeichnet den Namen der Spalte, deren Informationen ausgelesen werden soll. Funktionen werden hier eingegeben. |
Befehlssatz | Der Befehlssatz ermöglicht die nachträgliche Verarbeitung von Daten. Beispiel: Ist bei einem Im- oder Export ein Element mit 0 hinterlegt oder leer, sollen andere Elemente verändert oder gelöscht werden, z.B. soll der Steuerbetrag vo dem Export entfernt werden, wenn der zugehörige Betrag 0 Euro beträgt und somit nicht relevant ist. |
Positionsmarker | Definiert den Positionsmarker, der verwendet wird, um bei der Mapping-Erstellung den Beginn der Position zu erkennen. |
Druckprozess | In diesem Feld ist der Druckprozess auszuwählen, der nach dem Import genutzt werden soll. Lässt man das Feld leer, greift der Konverter auf den Standarddruckprozess zurück. |
Benutzerfeld | Dieses Feld definiert den iwmEDIBenutzer, der beim Im- oder Export angegeben wird. |
Datumfeld | Dieses Feld regelt die Datumsangabe beim Im- oder Export. |
Kurzanleitung für die Anlage eines Konverters
Die Anlage eines neuen Konverters folgt einem festen Muster in fünf Schritten. Wir zeigen den Ablauf am Beispiel einer eingehenden Bestellung durch den Kunden als Datei. Der Konverter wird für die entsprechende Auftragsbestätigung eingerichtet.
Die Anlage eines neuen Konverters können Sie durch Klick auf die Schaltfläche “Neu” oberhalb der Tabelle beginnen.
Schritt 1: Validierungsdatei erstellen
Erstellen Sie vorbereitend anhand Ihrer Dokumentation eine Validierungsdatei mit Notepad++ oder einem vergleichbaren Programm. Sie können mit dem leeren Blatt Papier beginnen und eine ganz neue Datei erstellen, oder eine vorhandene Datei als Vorlage benutzen, in welcher Sie die Parameter anpassen. Die Segmentstruktur der Validierungsdatei muss den gültigen Standards entsprechen und wie im folgen Beispiel aufgebaut sein. Bitte bedenken Sie, dass die Struktur keine Leerzeichen beinhalten darf.
Structure -> Name -> Kann/muss -> Validierung -> Positionierung -> Übersetzung
MOA MONETARY AMOUNT M 1 MOA_GeldbetragSteuern
C516 MONETARY AMOUNT M 2 GeldbetragSteuern
5025 Monetary amount type code qualifier M ‘124’ 3 BetragsArt
5004 Monetary amount C n1..35,2 3 GeldbetragSteuern
Schritt 2: Felder im Bereich “Konverter” ausfüllen
Füllen Sie nun die Felder unter “Konverter” in den Bereichen “Grundlagen”, “Validierung”, “Datenverknüpfung” und “Externe Verknüpfung” gemäß Ihren Wünschen aus, hinterlegen Sie dabei den Pfad zur Validierungsdatei und bestimmen Sie die Pfade zur Speicherung von erledigten und fehlerhaften Jobs. Die “Grundlagen” dienen zur Identifikation und Abgrenzung Ihres neuen Konverters. Die Felder unter “Datenbankverknüpfung” definieren Belegart, Kontoinformationen und Datenbank.
Schritt 3: Validierung importieren
Als nächstes folgt der Import der Validierung. Dies geschieht durch Klick auf die gleichnamige Schaltfläche oberhalb der Tabelle. Ist die Validierungsdatei richtig hinterlegt, werden die festen Mapping-Werte im Bereich “Mapping” aus der Datei übernommen und in die entsprechenden Felder eingetragen. Nachträgliche Änderungen, zum Beispiel die Eingabe der Funktion im Feld “Neue SQL-Spalte”, sind jederzeit durch manuelle Eingabe möglich.
Schritt 4: Mapping überprüfen
Nun ist das Mapping fertig vorbereitet. Durch Klick auf die Schaltfläche “Test” oberhalb der Tabelle, können Sie Ihre Eingaben auf Richtigkeit überprüfen und sich von der Funktionstüchtigkeit des erstellten Konverters überzeugen. Die Informationen werden als Textblock ausgegeben. Jetzt ist der Konverter eingerichtet, und kann über den Import oder Export genutzt werden. Nicht länger benötigte Konverter können durch Klick auf die Schaltfläche “Entfernen” oberhalb der Tabelle gelöscht werden. Der nicht mehr benötigte Konverter muss dafür zuvor in der Tabelle markiert werden.
Funktionen für den Import
Beim Import werden Informationen aus einer Datei ausgelesen und an den Belegerstellungsprozess in der Sage100 weitergegeben. In der Spalte “Name-SQL-Spalte” hinterlegt man dafür die Eigenschaftswerte des Belegs bzw. eine der unten stehenden Funktionen, um die Informationen aus der Datei vor der Weitergabe zu verarbeiten. Die Spalte “Validierung extern” wird gefüllt, um die Konvertierung der Zeichenkette in Zahlen- oder Datumswerte zu vollziehen. Weitere Einstellungen können in der Spalte “Befehlssatz” vorgenommen oder Eigenschaftswerte verändert werden.
Funktionsübersicht
Verketten von Funktionen und Spalten (+)
Diese Funktion ermöglicht es, mehrere Spalten bzw. weitere Funktionen mit dem ermittelten Datenelement auszuführen, z.B. um ein Element an mehreren Positionen im Beleg zu speichern. Der Wert der Datei @Data wird dafür in die benutzerdefinierten Felder USER_BYILN (ILN des Käufers) und USER_IVILN (ILN des Rechnungsempfängers) geschrieben.
Aufbau
Funktion1+Funktion2+…+FunktionN
Erklärung der verwendeten Parameter
Das “+” leitet weitere Funktionen ein.
Beispiel
USER_BYILN+USER_IVILN
Freier SQL-Code (~)
Diese Funktion führt den angegebenen SQL-Code aus und leitet das Ergebnis an den Erstellprozess der Sage-Belege weiter. Als Übergabename wird der Name der Spalte verwendet. Eventuell muss dieser mit dem “AS”-Stichwort umbenannt werden. Als Parameter werden der Mandant (@Mandant) und der Wert aus der Datei (@Datei) unterstützt. Die SQL-Abfrage fragt dabei zu einem gegebenen Kontokorrent (@Data) den Matchcode aus und schreibt dies in das benutzerdefinierte Feld USER_Kundenmatchcode.
Aufbau
~SELECT Spalte AS Bezeichnung FROM Tabelle WHERE Mandant=@Mandant AND Wert=@Data
Erklärung der verwendeten Parameter
Die “~” leitet die SQL-Funktion ein.
Beispiel
~SELECT TOP 1 Matchcode AS USER_Kundenmatchcode FROM KHKKontokorrent WHERE Mandant=@Mandant AND Kto=@Data
Vergleich mit einer Referenzspalte (#CompareEQ)
Diese Funktion vergleicht den Datenwert @Data mit einem bereits eingelesenen Vergleichswert. Sind die beiden Werte identisch, wird der Wahrheitswert „true“ gesetzt bzw., falls vorhanden, der angegebene Wahrheitswert übergeben. Andernfalls wird „false“ bzw. der Falschwert übergeben. Der Datenwert @Data wird dabei mit dem Wert in der Spalte verglichen. Ist dieser Zeichenkettenvergleich erfolgreich, wird die Eigenschaft der Spalte auf wahr gestellt.
Aufbau
#CompareEQ:Spalte:Referenzspalte[:TrueValue[:FalseValue]]
Erklärung der verwendeten Parameter
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position).
Die Referenzspalte ist der Referenzwert für den Vergleich.
TrueValue bezeichnet den abweichenden Wahrheitswert (optional).
FalseValue bezeichnet den abweichenden Falschwert (optional).
Beispiel
#CompareEQ:VKHatKommissionierungsfreigabe:Artikelgruppe
Suche über Referenz (#Referenz)
Mit dieser Funktion kann man an eine einfache Datenbankabfrage erstellen. Das Ergebnis wird in die angegebene Spalte übergeben. Es wird dabei der Eintrag der Spalte einer Tabelle gesucht, deren Parameter übereinstimmen.
Aufbau
#Reference:Tabelle:Spalte[:Referenzspalte AS Parametername]*
Erklärung der verwendeten Parameter
Bei der Tabelle handelt es sich um die Datenbanktabelle zur Abfrage.
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position). Diese kann mit “AS” auch umbenannt werden, falls die SQL-Spalte vom Eigenschaftswert abweicht.
Die referenzspalte bezeichnet die Parameter für die SQL-Suche, wobei die Referenzspalte den Eigenschaftswert darstellt und der Parametername den SQL-Spaltennamen enthält (optional, beliebig viele)
Beispiel
#Reference:KHKKontokorrent:Matchcode:Kto
Zusammenfügen von Datenelementen (#Merge)
Manche Einträge werden über mehrere Felder oder Zeilen in der externen Datei gespeichert. Mit diesem Befehl ist es möglich diese Elemente zusammenzuführen. Der Datenwert @Data wird an die Referenzspalte angefügt, falls bereits vorhanden.
Aufbau
#Merge:Spalte:Mergestring[:]
Erklärung der verwendeten Parameter
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position).
Der Mergestring ist das Bindeelement zwischen den Einträgen.
Der Doppelpunkt ermöglicht es, den Datenwert vorne einzufügen.
Beispiele
#Merge:Bezeichnung1:““ (AltNeu)
#Merge:Bezeichnung1:,: (Neu,Alt)
Statische Zuordnung verwenden (#LookUp)
Bei der Übergabe von Beleg- oder Positionseigenschaften kann es zwischen verschiedenen Systemen zu unterschiedlichen Codierungsbezeichnungen kommen. Statische Zuweisungen können verwendet werden, um Übersetzungen von festen Werten aus der Sage100 und der externen Dateien zu realisieren, etwa um Mengenangaben von Artikeln zu übertragen. Der Datenwert @Data wird dabei über die statische Zuordnung der Gruppenkennung übersetzt und in der Spalte abgespeichert.
Aufbau
#LookUp:Gruppenkennung:Spalte
Erklärung der verwendeten Parameter
Die Gruppenkennung regelt die statische Zuordnung in der Sage100-Warenwirtschft.
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position).
Beispiel
#LookUp:PreisProMenge:Preiseinheit
Zusammenfügen von Datenelementen mit anschließender statischer Zuweisung (#MergeLookUp)
Diese Funktion fügt einem bestehenden Spalte den Datenwert hinzu und übersetzt diesen anschließend über die statische Zuordnung. Der Datenwert @Data wird dabei an die Referenzspalte angefügt, falls bereits vorhanden. Als Trennzeichen wird die angegebene Zeichenkette verwendet. Um einen Leerstring zu nutzen, müssen doppelte Ausführungszeichen verwendet werden. Das Ergebnis wird im Gruppenkennzeichen nachgeschlagen und in das Spaltenfeld geschrieben.
Aufbau
#MergeLookUp:Gurppenkennung:Spalte:Mergestring[:]
Erklärung der verwendeten Parameter
Die Gruppenkennung regelt die statische Zuordnung in der Sage100-Warenwirtschaft.
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position).
Der Mergestring ist das Bindeelement zwischen den Einträgen.
Der Doppelpunkt ermöglicht es, den Datenwert vorne einzufügen.
Beispiel
# MergeLookUp:Kto:““ (AltNeu -> Kto)
Adressnummer anhand einer einzigartigen Spalte ermitteln (#AddressByColumn)
Dieser Befehl ermöglicht das Suchen einer Adresse anhand einer einzigartigen Spalte. Beispielsweise wird eine ILN in der Datei angegeben, um die Lieferadresse auszuwählen. Der Datenwert @Data wird dabei als Parameter für die Parameterspalte eingesetzt. Nach der SQL-Abfrage wird das Ergebnis in die Spalte geschrieben. Der Sage100-Beleg setzt daraufhin die Lieferanschrift auf die ausgewählte Adresse.
Aufbau
#AddressByColumn:Parameterspalte:Spalte
Erklärung der verwendeten Parameter
Die Parameterspalte dient der Ermittlung der Adressspalte.
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position).
Beispiel
#AddressByColumn:USER_ILN:A1Adresse
Kontokorrent anhand einer einzigartigen Spalte ermitteln (#KtoByAddressColumn)
Dieser Befehl ermöglicht das Suchen eines Kontokorrenten anhand einer einzigartigen Spalte. Beispielsweise wird eine ILN in der Datei angegeben, um den Auftraggeber auszuwählen. Der Datenwert @Data wird dabei als Parameter für die Parameterspalte eingesetzt. Nach der SQL-Abfrage wird das Ergebnis in die Spalte geschrieben. Der Sage100-Beleg setzt daraufhin den ausgewählten Kontokorrenten.
Aufbau
#KtoByAddressColumn:Parameterspalte:Spalte
Erklärung der verwendeten Parameter
Die Parameterspalte dient der Ermittlung der Adressspalte.
Die Spalte ist der Speicherort des Ergebnisses (Eigenschaftswert des Belegs/der Position).
Beispiel
#KtoByAddressColumn:USER_ILN:Kto
Kontokorrenten über zusammengesetzte Informationen ermitteln (#KtoByMergeReference)
Manchmal muss das Kontokorrent über verschiedene Elemente ermittelt werden. Mit dieser Funktion kann eine zusammengesetzte Abfrage des Kontokorrents erstellt werden. Der Datenwert @Data wird dabei an die Referenzspalte mit dem Trennzeichen angefügt. Anschließend wird der Inhalt der Referenzspalte am Mergestring gespalten und die Informationen in die Spalten1-SpaltenN aufgeteilt. Ist ein Element leer, muss der Abfragewert in der Tabelle „null“ oder ein Leerstring sein. Der Rückgabewert der Abfrage wird schließlich in die Zielspalte übergeben.
Aufbau
#KtoByMergeReference:Zielspalte:Mergestring:Spalte1,Spalte2,…,SpalteN
Erklärung der verwendeten Parameter
Die Zielspalte ist selbige für das Kontokorrent.
Der Mergerstring gibt die Zeichenkette der zusammengesetzten Spalteninformationen an.
Die Spalten Spalte1-SpalteN sind die Parameterlisten, in die die Spalteninformation aufgeteilt wird.
Beispiel
#KtoByMergeReference:Kto:,:Name1:Poststrasse (AltNeu)
Zahlungskondition anhand einer Beschreibung auswählen (#ZKD)
Diese Funktion ermöglicht es, die Zahlungskondition anhand einer Beschreibung in der Datei auszuwählen. Voraussetzung hierfür ist es, dass die Beschreibung in der Sage100 vorhanden ist. Falls kein Wert ermittelt werden konnte, kann bei Bedarf ein Standardwert (Schlüssel der Zahlungskondition) festgelegt werden. Der Datenwert @Data wird dabei in der Beschreibung der Zahlungskonditionen gesucht. Falls ein Match gefunden wird, wird der entsprechende Schlüssel als Zahlungskondition des Beleges zurückgegeben. Konnte kein Wert ermittelt werden, wird die Zahlungskondition nicht gesetzt und die Sage kümmert sich um den Standardwert des Kunden bzw. des Beleges. Wird hier ein Standardwert mit übergeben, wird stattdessen dieser verwendet.
Aufbau
#ZKD:Standardwert
Erklärung der verwendeten Parameter
Der Standardwert ist der Schlüssel der Standard-Zahlungskondition, für den Fall, dass keine gültige Kondition ermittelt werden kann.
Beispiel
#ZKD
Ermittlung eines Zuschlags anhand der Zuschlagsart (#Zuschlag)
Bei manchen Dateien werden Zuschläge im Bereich der Positionen übermittelt. Diese Funktion ermöglicht es, die Positionsanlage abzufangen, um stattdessen einen Zuschlag anzulegen. Falls die Artikelnummer nicht gegeben ist, wird der Datenwert @Data dabei als Zuschlagart gesucht und die ermittelte ID in das Feld „Zuschlag“ geschrieben. Wird dabei keine Zuschlagsart gefunden, wird der Standardwert (2) verwendet, falls angegeben.
Aufbau
#Zuschlag:ActiveByName[:Standardwert]
Erklärung der verwendeten Parameter
ActiveByName aktiviert die Zuschlagserstellung. Der Wert der angegebenen Spalte muss “0” oder leer sein.
Hinter dem Standardwert verbirgt sich die ZuschlagID, die ausgewählt wird, wenn die Zuschlagsart nicht gefunden wird.
Beispiele
#Zuschlag:Artikelnummer
#Zuschlag:Artikelnummer:2
Aktuelles Datum oder aktuellen Zeitpunkt ermitteln (#Today)
Die Funktion erfasst das aktuelle Datum und gibt dies an den Belegerstellungsprozess weiter. Das aktuelle Datum wird dabei in die Spalte des Liefertermins geschrieben. Ist eine Abweichung angegeben, wird das Datum um diesen Wert erhöht. Falls der Doppelpunkt verwendet wird, wird das Datum mit Zeiteinheiten abgespeichert und die Abweichung wird als Stunden verrechnet.
Aufbau
#Today:Spalte[:Abweichung[:]]
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position)
Die Abweichung beziffert die Anzahl der Tage oder Stunden, um die das Datum erweitert wird.
Durch den Doppelpunkt wird der Datenwert als Zeitpunkt ermittelt.
Beispiele
#Today:Liefertermin
#Today:Liefertermin:10
#Today:USER_Zeiterfassung:1:
Aktuelle Woche ermitteln (#Week)
Die Funktion erfasst die aktuelle Woche und gibt diese an den Belegerstellungsprozess weiter. Die aktuelle Woche wird in die Spalte des Lieferwoche geschrieben. Ist die Abweichung angegeben, wird das Datum vorher um diese erhöht oder verringert.
Aufbau
#Week:Spalte[:Abweichung]
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position)
Die Abweichung beziffert die Anzahl der Tage oder Stunden, die aufaddiert werden, bevor die Woche ermittelt wird.
Durch den Doppelpunkt wird der Datenwert als Zeitpunkt ermittelt.
Beispiele
# Week:Lieferwoche:10
Datumsrechnung (#Date)
Die Funktion erfasst das Datum der Datei und gibt dies an den Belegerstellungsprozess weiter. Der Datenwert @Data wird dabei in ein Datum umgewandelt und in die Spalte geschrieben. Ist eine Abweichung angegeben, werden die angegebenen Tage entsprechend mit berücksichtigt.
Aufbau
#Date:Spalte[:Abweichung]
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position)
Die Abweichung beziffert die Anzahl der aufaddierten oder abgezogenen Tage.
Beispiel
#Date:Liefertermin
#Date:Liefertermin:10
Woche aus einem Datum der Datei ermitteln (#DateWeek)
Die Funktion erfasst das Datum als Woche und gibt dies an den Belegerstellungsprozess weiter. Der Datenwert @Data wird dabei in ein Datum umgewandelt und die dazugehörige Woche ermittelt. Diese wird in die Spalte der Lieferwoche geschrieben. Ist eine Abweichung angegeben, wird das Datum vor der Umwandlung entsprechend erhöht oder verringert.
Aufbau
#DateWeek:Spalte[:Abweichung]
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position)
Die Abweichung beziffert die Anzahl der aufaddierten oder abgezogenen Tage vor der Umrechnung.
Beispiel
#DateWeek:Lieferwoche:10
Datum mit Mindestwert aus Datei ermitteln (#DateMin)
Die Funktion erfasst das Datum der Datei und gibt dies an den Belegerstellungsprozess weiter. Falls das Datum kleiner als der Mindestwert ist, wird stattdessen dieser verwendet. Der Datenwert @Data wird dabei in ein Datum umgewandelt und in die Spalte des Liefertermins geschrieben. Das Datum muss jedoch mindestens um die angegebene Abweichung in der Zukunft liegen.
Aufbau
#DateMin:Spalte:Abweichung
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position)
Die Abweichung beziffert die Anzahl der Tage gegenüber heute, die mindestens erreicht werden müssen.
Beispiel
#DateMin:Liefertermin:10
Woche mit Mindestwert aus Datum aus Datei ermitteln (#DateMin)
Die Funktion erfasst das Datum als Woche und gibt dies an den Belegerstellungsprozess weiter, wobei sie eine Mindestabweichung berücksichtigt. Der Datenwert @Data wird dabei in ein Datum umgewandelt und die dazugehörige Woche ermittelt. Diese wird in die Spalte geschrieben. Dabei muss das Datum mindestens um die als Abweichung definierten Tage in der Zukunft liegen.
Aufbau
#DateWeekMin:Spalte:Abweichung
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position).
Die Abweichung beziffert die Anzahl der Tage gegenüber heute, die mindestens erreicht werden müssen, bevor die Woche ermittelt wird.
Beispiel
#DateWeekMin:Lieferwoche:10
Einen Teil einer Zeichenkette auswerten (#Split)
Bei manchen Datenwerten werden mehrere Informationen in einem Element geschrieben. Diese Funktion ermöglicht es, nur einen Teil der Information auszulesen. Der Datenwert @Data wird dabei durch ein Trennzeichen getrennt und die Position unter der Bezeichnung der Spalte an die Sage100 weitergegeben.
Aufbau
#Split:Spalte:Position:Trennzeichen
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position).
Die Position ist der Teil der Zeichenkette, der nach der Trennung ausgewertet werden soll.
Das Trennzeichen trennt die Zeichenkette.
Beispiel
#Split:Bezeichnung1:0:
Liste von Elementen auswerten (#Child)
Die Funktion ermöglicht das Auswerten von angehängten Listen, wie sie beispielsweise bei Seriennummern verwendet werden. Dabei wird die Aufzählung der Listenelemente als Seriennummer an den Sage-Prozess übergeben.
Aufbau
#Child:Spalte
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position).
Beispiel
#Seriennummer: Nimmt alle Werte des Unterelements und fügt sie als durch Komma getrennte Liste ein. Seriennummer: Wert1,Wert2,Wert3
Statische Werte übergeben (#Static)
Statische Werte, die nicht in der Datei vermerkt sind, können mit dieser Funktion an die Sage übergeben werden.
Aufbau
#Static:Spalte:Wert
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position).
Der Wert bezeichnet den Wert, der übergeben werden soll.
Beispiel
#Static:Kto:D12345
Den Dateinamen übergeben (#File)
Die Funktion gibt den Dateinamen der Datei zurück.
Aufbau
#File:Spalte
Erklärung der verwendeten Parameter
Die Spalte gibt den Speicherort des Ergebnisses an (Eigenschaftswert des Belegs/der Position).
Beispiel
#File:USER_Filename
Beleg auf Einzigartigkeit prüfen (#CheckUnique)
In der Regel sollen Belege nur einmal importiert werden. Mit dieser Prüfung kann dies sichergestellt werden, indem bei Doppelungen der Importprozess abgebrochen wird.
Aufbau
#CheckUnique:Spalte
Erklärung der verwendeten Parameter
Die Spalte beinhaltet den zu überprüfenden Wert.
Beispiel
#CheckUnique:Referenznummer
Datenwert ersetzen (#Replace)
Normalerweise darf eine Spalte nur einmal beschrieben werden. Dieser Befehlssatz erlaubt es, den Wert zu ersetzen.
Aufbau
#Replace:Spalte
Erklärung der verwendeten Parameter
Die Spalte beinhaltet den Wert, der ersetzt werden darf.
Beispiel
#Replace:Kto
Datenwert zusammensetzen (#Merge)
Normalerweise darf eine Spalte nur einmal beschrieben werden. Dieser Befehlssatz erlaubt es, den Wert zu erweitern.
Aufbau
#Merge:Spalte:MergeString[:]
Erklärung der verwendeten Parameter
Die Spalte beinhaltet den Wert, der erweitert werden soll.
Der Mergestring beinhaltet die Zeichenkette, die als Bindeglied fungieren soll.
Der Doppelpunkt fügt den Datenwert optional vorne ein.
Beispiel
#Merge:Bezeichnung1:““
#Merge:Bezeichnung2:“,“:
Datenwert umwandeln (#Cast)
Die Funktion wandelt einen Datenwert in den angegebenen Typen um. Optional kann auch die Kultur des Betriebssystems mit angegeben werden.
Aufbau
#Cast:Datentyp[:Format]
Erklärung der verwendeten Parameter
Der Datentyp definiert den Zieldatentypen.
Das Format beinhaltet das Format für die Umwandlung.
Beispiel
#Cast:Bool konvertiert Datenwert in booleschen Ausdruck.
#Cast:Int konvertiert Datenwert in eine Ganzzahl.
#Cast:Decimal:de-de konvertiert Datenwert in eine Dezimalzahl. Der Datenwert ist in deutscher Schreibweise angegeben.
#Cast:DecimalPlus konvertiert Datenwert in eine positive Dezimalzahl.
Datenwert abschneiden (#Cut)
Diese Funktion schneidet zu lange Zeichenketten ab bzw. extrahiert einen Teil der Zeichenkette. Sie verkürzt dabei die Zeichenkette auf die angegebene Länge und beginnt den Prozess beim ersten Zeichen bzw. beim angegebenen Startwert.
Aufbau
#Cut:Länge[:Startwert]
Erklärung der verwendeten Parameter
Der Datentyp definiert den Zieldatentypen.
Das Format beinhaltet das Format für die Umwandlung.
Beispiel
#Cut:35 verkürzt die Zeichenkette auf maximal 35 Zeichen.
#Cast:35:70 verkürzt die Zeichenkette auf maximal 35 Zeichen und beginnt mit Zeichen Nummer 71.
Datenwert trimmen (#Trim)
Diese Funktion entfernt überflüssige Zeichen am Anfang und Ende der Zeichenkette. Das Standardzeichen ist ein Leerzeichen. Optional kann ein alternatives Zeichen angegeben werden.
Aufbau
#Trim[:Trimmzeichen]
Erklärung der verwendeten Parameter
Das Trimmzeichen definiert optional das Zeichen, das entfernt werden soll.
Beispiel
#Trim: entfernt überflüssige Leerzeichen am Anfang und Ende der Zeichenkette.
#Trim:0 entfernt überflüssige Nullen am Anfang und Ende der Zeichenkette.
Funktionen für den Export
Verketten von Funktionen und Spalten (+)
Diese Funktion ermöglicht es, mehrere Spalten bzw. weitere Funktionen mit dem ermittelten Datenelement auszuführen. Dies ist wichtig, wenn ein Element an mehreren Positionen im Beleg geschrieben werden soll.
Aufbau
Funktion1+Funktion2+…+FunktionN
Beispiel
USER_BYILN+USER_IVILN
Freier SQL-Code (~)
Dieser Befehl führt den angegebenen SQL-Code aus und leitet das Ergebnis an den Erstellprozess der Sage-Belege weiter. Als Übergabenamen wird der Name der Spalte verwendet. Eventuell muss dieser mit dem “AS”-Stichwort umbenannt werden. Als Parameter werden der Mandant (@Mandant) und der Wert aus der Datei (@Data) unterstützt.
Aufbau
~SELECT Spalte AS Bezeichnung FROM Tabelle WHERE Mandant=@Mandant AND Wert=@Data
Beispiel
~SELECT TOP 1 Matchcode FROM KHKKontokorrent WHERE Mandant=@Mandant AND Kto=@Da