ImportStockTransfer (LC.WpfInterfaces, Import Lagerumbuchungen)
Lagerumbuchungen aus Dateien importieren.
Zusatzmodul erforderlich
Es wird das Zusatzmodul "ImportStockTransfer" benötigt!
Inhalt
Anforderungen
- LC.WpfInterfaces
- Modul "Import Lagerumbuchungen" - wird über Multiflex-Lizenzkey bereitgestellt
Schnellstart
- LC.WpfInterfaces installieren (wenn nicht vorhanden) bzw. aktualisieren - siehe Installation LC.WpfInterfaces
- XML-Konfigurationsdatei erstellen bzw. Vorlage kopieren und anpassen
- Batch-Datei erstellen, die diese XML-Konfigurationsdatei als Parameter ausführt
- Windows-Aufgabenplanung einrichten (zB. 1x pro Tag)
Einrichtung
Konfigurationsdatei
Aufbau
<ImportStockTransfer>
<!-- DB = Datenbankname -->
<DB>**Datenbankname**</DB>
<!-- USER = DB-Benutzername -->
<USER>SYSADM</USER>
<!-- PASSWORD = Datenbankname -->
<PASSWORD>SYSADM</PASSWORD>
<!-- DirectDbConnect ( True, False ) = Angabe, ob eine direkte Datenbank-Verbindung oder eine WebService-Verbindung verwendet wird -->
<DirectDbConnect>False</DirectDbConnect>
<!-- WatchFolders = Hier werden die zu prüfenden Ordner angegeben, welche die Umbuchungs-Dateien enthalten. Mehrere Ordner können strichpunkt-getrennt ( ; ) angegeben werden -->
<WatchFolders>\\server\io\ImportStockTransfer\files</WatchFolders>
<!-- TargetFolder = Der Ziel-Ordner, in dem die verarbeiteten Dateien verschoben werden. Details siehe https://help.pollex-lc.com/x/NYOLAw -->
<TargetFolder>\\server\io\ImportStockTransfer\files\done</TargetFolder>
<!-- FileFilter = Filter für die Selektion der Quell-Dateien in den entsprechenden WatchFolders -->
<FileFilter>*.csv</FileFilter>
<!-- FileInfo = Angaben zum Dateiaufbau der Quell-Datei -->
<FileInfo>
<!-- FileFormat = Dateiformat der Quell-Datei. Aktuell ist nur CSV möglich. -->
<FileFormat>CSV</FileFormat>
<!-- Encoding = Encoding der Quelldatei, falls diese nicht in UTF-8 kodiert ist. -->
<Encoding>UTF-8</Encoding>
<!-- SeparatorChar = Trennzeichen für CSV-Dateien. Standard ist ";" -->
<SeparatorChar>;</SeparatorChar>
<!-- DecimalSeparator = Dezimaltrennzeichen. Standard ist "." -->
<DecimalSeparator>.</DecimalSeparator>
<!-- GroupSeparator = Gruppen-Trennzeichen. Standard ist leer. -->
<GroupSeparator></GroupSeparator>
<!-- FormatPatternByte = Formatierungsvorlage für den Dateityp Byte. Standard ist "#" -->
<FormatPatternByte>#</FormatPatternByte>
<!-- FormatPatternInteger = Formatierungsvorlage für den Dateityp Integer. Standard ist "#" -->
<FormatPatternInteger>#</FormatPatternInteger>
<!-- FormatPatternNumber = Formatierungsvorlage für den Dateityp Number. Standard ist "#.##" -->
<FormatPatternNumber>#.##</FormatPatternNumber>
<!-- FormatPatternQuantity = Formatierungsvorlage für den Dateityp Quantity. Standard ist "#0.00" -->
<FormatPatternQuantity>#0.00</FormatPatternQuantity>
<!-- FormatPatternCurrency = Formatierungsvorlage für den Dateityp Currency. Standard ist "#0.00" -->
<FormatPatternCurrency></FormatPatternCurrency>
<!-- FormatPatternPercent = Formatierungsvorlage für den Dateityp Percent. Standard ist "#0.00" -->
<FormatPatternPercent></FormatPatternPercent>
<!-- FormatPatternDate = Formatierungsvorlage für den Dateityp Date. Standard ist "yyyyMMdd" -->
<FormatPatternDate>yyyyMMdd</FormatPatternDate>
<!-- FormatPatternDateTime = Formatierungsvorlage für den Dateityp DateTime. Standard ist "yyyyMMddHHmmss" -->
<FormatPatternDateTime>yyyyMMddHHmmss</FormatPatternDateTime>
<!-- BoolFalseValue = False-Wert für den Dateityp Bool. Standard ist "0" -->
<BoolFalseValue>0</BoolFalseValue>
<!-- BoolTrueValue = True-Wert für den Dateityp Bool. Standard ist "1" -->
<BoolTrueValue>1</BoolTrueValue>
<!-- Fields = Liste mit Spaltenzuordnungen (Quelle-Ziel-Definitionen) -->
<Fields>
<Field>
<!-- TargetField = DTO-Ziel-Property. Details siehe https://help.pollex-lc.com/x/NYOLAw -->
<TargetField></TargetField>
<!-- SourceField = Spalte/Feld in der Daten-Quell-Datei. Bei CSV-Dateien ist das die Kopf-Spalte. Die CSV-Datei muss also Header-Spalten enthalten. -->
<SourceField></SourceField>
<!-- Value = Standard-Vorgabewert für ein Property. Hier können auch StringFunctions verwendet werden, um bsp. Werte aus der Datenbank zu selektieren.-->
<Value></Value>
<!-- Format = Formatierungsvorlage für den Wert aus der Daten-Quell-Datei, wenn diese speziell formatiert ist. Das Format hängt am Datentyp (siehe Fields.DataType). -->
<Format></Format>
<!-- DataType = String, Bool, Byte, Integer, Number, PlainNumber, Quantity, Currency, Date, Time, DateTime -->
<DataType></DataType>
</Field>
<Field TargetField="ItemNumber" SourceField="Artikelnummer"></Field>
<Field TargetField="Quantity" SourceField="Menge"></Field>
<Field TargetField="SourceStockLocationName" SourceField="Abbuchungslagerort"></Field>
<Field TargetField="TargetStockLocationName" SourceField="Zubuchungslagerort"></Field>
<Field TargetField="BookingDate" SourceField="Buchungsdatum" Format="yyyyMMddHHmm"></Field>
</Fields>
</FileInfo>
<!-- BookingTransaction (File, Single) = Angabe zum Buchungsmodus (Transaktion für die gesamte Datei / oder für jede einzelne Buchung). Details siehe https://help.pollex-lc.com/x/NYOLAw -->
<BookingTransaction>File</BookingTransaction>
<!-- ErrorAction = (Continue, Break) = Angabe zur Behandlung von Fehlern - soll bei fehlerhaften Daten abgebrochen werden, oder soll fortgefahren werden. Details siehe https://help.pollex-lc.com/x/NYOLAw -->
<ErrorAction>Continue</ErrorAction>
<!-- ProtocolEMail = E-Mail-Adresse(n) für Protokollierung. Mehrere Adressen können Semikolon-getrennt angegeben werden. -->
<ProtocolEMail>max@mustermann.com</ProtocolEMail>
<!-- SenderEMail = Absender-E-Mail-Adresse wenn die Protokollierung aktiviert ist.-->
<SenderEMail>createconsignmentnotes@mustermann.com</SenderEMail>
<!-- SmtpServer = Smtp-Server für den Versand der Protokollierungs-Mails-->
<SmtpServer>mail.mustermann.com</SmtpServer>
<!-- SmtpUser = Der Benutzername für den Zugang zum Mail-Konto-->
<SmtpUser>Benutzername</SmtpUser>
<!-- Passwort = Das Passwort für den Zugang zum Mail-Konto-->
<SmtpPassword>Passwort</SmtpPassword>
<!-- SmtpPortNumber = Portnummer, falls eine andere als die Standard-Portnummer verwendet wird (Standard=25). -->
<SmtpPortNumber>25</SmtpPortNumber>
<!-- SmtpUseSSL = Wenn aktiviert, wird der Mail-Versand mittels SSL-Verschlüsselung durchgeführt.-->
<SmtpUseSSL>True</SmtpUseSSL>
<!-- [MailLevel] All = Mail wird immer versandt ... ActivityOnly = Mail wird nur bei Aktivität versandt... ErrorsOnly = Mail nur bei Fehler ... NoMail = Keine Mails-->
<MailLevel>All</MailLevel>
<!-- MailSubject = EMail-Betreff -->
<MailSubject>Individueller Betreff</MailSubject>
<!-- MailBody = EMail-Text -->
<MailBody>Individueller Body-Text</MailBody>
<!-- IsBodyHtml (True, False) = Angabe, ob der Body als HTML oder Text gesendet wird.
Standard ist False, bzw. wird das HTML-Tag aus dem Body-Text ausgelesen.
Bei Reports ist der Standard=True. -->
<IsBodyHtml>True</IsBodyHtml>
</ImportStockTransfer>
Feldbeschreibung
Feld | Mögliche Werte | Beschreibung |
---|---|---|
DB | Datenbankname für die Verbindung zur Datenbank | |
USER | Benutzername für die Verbindung zur Datenbank | |
PASSWORD | Passwort für die Verbindung zur Datenbank | |
DirectDbConnect | True, False | True = die Buchung wird mit der Datenbankverbindung direkt über LC.WpfInterfaces durchgeführt False (Standard) = die Buchung wird über den TaskCenter-WebService (LCService) durchgeführt |
WatchFolders | \\server\import1\StockTransfer\files; \\server\import2\StockTransfer\files; c:\csv | Hier werden die zu prüfenden Ordner angegeben, welche die Umbuchungs-Dateien enthalten. Mehrere Ordner können strichpunkt-getrennt ( ; ) angegeben werden |
FileFilter | *.csv | Filter für die Auswahl der Dateien (Standard-Windows-Dateifilter) |
TargetFolder | \\backup\import\done | Der Ziel-Ordner, in dem die verarbeiteten Dateien verschoben werden. Folgende Logik wird dabei angewendet: Bei Erfolg (wenn der jeweilige Ordner existiert, werden die nachfolgenden Ordner nicht mehr behandelt): 1) TargetFolder\success\Dateiname.{original-ext} 2) TargetFolder\Dateiname[yyyyMMdd_HHmmssfff].{original-ext} Bei Fehler (wenn der jeweilige Ordner existiert, werden die nachfolgenden Ordner nicht mehr behandelt): 1) TargetFolder\error\Dateiname.{original-ext} 2) TargetFolder\Dateiname[yyyyMMdd_HHmmssfff][error].{original-ext} Wenn kein Ordner (TargetFolder) angegeben wurde, dann wird folgende Logik angewendet: Bei Erfolg (wenn der jeweilige Ordner existiert, werden die nachfolgenden Ordner nicht mehr behandelt): 1) Quellordner\done\success\Dateiname.{original-ext} 2) Quellordner\done\Dateiname[yyyyMMdd_HHmmssfff].{original-ext} 3) Quellordner\Dateiname[yyyyMMdd_HHmmssfff].processed Bei Fehler (wenn der jeweilige Ordner existiert, werden die nachfolgenden Ordner nicht mehr behandelt): 1) Quellordner\done\error\Dateiname.{original-ext} 2) Quellordner\done\Dateiname[yyyyMMdd_HHmmssfff][error].{original-ext} 3) Quellordner\Dateiname[yyyyMMdd_HHmmssfff][error].processed |
FileInfo | /**/ | Angaben zum Dateiaufbau der Quell-Datei |
|--- FileFormat | CSV (zukünftig geplant XML, JSON) | Dateiformat der Quell-Date. Aktuell ist nur CSV möglich |
|--- Encoding | UTF-8, iso-8859-1,... | Encoding der Quelldatei, falls diese nicht in UTF-8 kodiert ist. |
|--- SeperatorChar | ; | Trennzeichen für CSV-Dateien. Standard ist ";" |
|--- DecimalSeperator | . | Dezimaltrennzeichen für Zahlen. Standard ist "." |
|--- GroupSeperator | , | Gruppen-Trennzeichen für Zahlen. Standard ist leer. |
|--- FormatPatternByte | # | Formatierungsvorlage für den Dateityp Byte. Standard ist "#" |
|--- FormatPatternInteger | # | Formatierungsvorlage für den Dateityp Integer. Standard ist "#" |
|--- FormatPatternNumber | #.## | Formatierungsvorlage für den Dateityp Number. Standard ist "#.##" |
|--- FormatPatternQuantity | #0.00 | Formatierungsvorlage für den Dateityp Quantity. Standard ist "#0.00" |
|---FormatPatternCurrency | #0.00 | Formatierungsvorlage für den Dateityp Currency. Standard ist "#0.00" |
|---FormatPatternPercent | #0.00 | Formatierungsvorlage für den Dateityp Percent. Standard ist "#0.00" |
|--- FormatPatternDate | yyyyMMdd | Formatierungsvorlage für den Dateityp Date. Standard ist "yyyyMMdd" |
|--- FormatPatternDateTime | yyyyMMddHHmmss | Formatierungsvorlage für den Dateityp DateTime. Standard ist "yyyyMMddHHmmss" |
|--- BoolFalseValue | 0 | Falsch-Wert für den Dateityp Bool. Standard ist "0" |
|--- BoolTrueValue | 1 | Richtig-Wert für den Dateityp Bool. Standard ist "1" |
|--- Fields | /**/ | Liste mit Spaltenzuordnungen (Quelle-Ziel-Definitionen) |
|--- TargetField | ItemNumber, Quantity, SourceStockNumber, SourceStockLocationNumber, TargetStockNumber, TargetStockLocationNumber | DTO-Ziel-Property. Das Ziel-DTO ist die Struktur einer Buchungsposition und enthält alle Spalten, die für die Tabelle Schnellumbuchung verfügbar sind. Zusätzlich werden auch Feature-Properties unterstützt, bsp. SourceStockLocationName oder TargetStockLocationName. Für eine Buchung sind mindestens folgende Werte anzugeben: ItemNumber, Quantity, SourceStockNumber (und/oder SourceStockLocationName), TargetStockNumber (und/oder TargetStockLocationNumber). Liste mit Properties --> |
|--- SourceField | Artikelnummer, ... | Spalte/Feld in der Daten-Quell-Datei. Bei CSV-Dateien ist das die Kopf-Spalte. Die CSV-Datei muss also Header-Spalten enthalten. |
|--- Value | Standard-Vorgabewert für ein Property. Hier können auch StringFunctions verwendet werden, um bsp. Werte aus der Datenbank zu selektieren. | |
|--- Format | yyyyMMdd, 00000.00,... | Formatierungsvorlage für den Wert aus der Daten-Quell-Datei, wenn diese speziell formatiert ist. Das Format hängt am Datentyp (siehe Fields.DataType). |
|--- DataType | Number, Bool, ... | Formatierungs-Datentyp der Spalte in der Daten-Quell-Datei. Folgende Typen sind verfügbar: String, Bool, Byte, Integer, Number, PlainNumber, Quantity, Currency, Date, Time, DateTime |
BookingTransaction | File, Single | Angabe zum Buchungsmodus (Transaktion für die gesamte Datei / oder für jede einzelne Buchung). File (Standard) = Es wird eine Transaktion über alle Buchungszeilen einer Datei gelegt. Tritt bei einer Buchung ein Fehler auf, wird ein "Rollback" durchgeführt - die gesamte Datei ist somit fehlerhaft und es wurde keine der Positionen gebucht. Single = Es wird für jede Position eine Transaktion erstellt und committed. Tritt ein Fehler bei einer Position auf, bleiben die bereits zuvor gebuchten Positionen bestehen. |
ErrorAction | Continue, Break | Angabe zur Behandlung von Fehlern - soll bei fehlerhaften Daten abgebrochen werden, oder soll fortgefahren werden Continue (Standard) = Tritt ein Fehler auf, wird mit der nächsten Buchung oder Datei fortgefahren, je nach Buchungsmodus (siehe BookingTransaction) Break = Tritt ein Fehler auf, wird die nachfolgende Verarbeitung abgebrochen |
ProtocolEMail | max@mustermann.com; | EMail-Adresse für Protokoll - mehrere Adressen können semikolon-getrennt angegeben werden |
BccEmail | min@mustermann.com | Unsichtbare Ziel-EMail-Adresse(n) |
SenderEMail | ordrsp@mustermann.com | EMail-Adresse die als Absender angezeigt wird |
SmtpServer | mail.mustermann.com | SMTP-Server für EMail-Versand |
SmtpUser | mustermann\admin | SMTP-Benutzername für EMail-Versand |
SmtpPassword | admmus | SMTP-Passwort für EMail-Versand |
SmtpUseSSL | True, False | SSL für SMTP-Email-Versand verwenden |
SmtpPortNumber | Port-Nummer für Mail-Versand (Standard=25) | |
MailLevel | All, ErrorsOnly, NoMail | Beinhaltet das Level, welche Mails versendet werden sollen. |
MailSubject | Wenn angegeben, wird dieser Betreff angezeigt. | |
MailBody | Gibt an, ob der Body ein HTML-Body ist, oder ein normaler Text. Wenn nicht angegeben, wird standardmäßig HTML gesendet. | |
IsBodyHtml | True, False | Wenn angegeben, wird dieser Body angezeigt. |
GetTargetProperties | Wenn angegeben, werden alle verfügbaren TargetProperties zurückgegeben. Alle anderen Funktionen werden ignoriert. |
TargetField-Properties
Die fett hervorgehobenen Properties sind "Pflichtfelder".
Property | = DB-Spalte | Datentyp | Beschreibung |
DocumentNumber | NUMMER | Long (Decimal 18,0) | Schnellumbuchungsnummer - wenn nicht angegeben, wird eine neue Umbuchungsnummer (erst bei Buchung) erstellt. Die Umbuchungsnummer bleibt je Datei für alle Positionen gleich. |
Inx | INX | Long (Decimal 18,0) | Eindeutiger Datensatz-Index der Umbuchungs-Position (wird automatisch erstellt) |
ItemNumber | ARTIKELNUMMER | String (Varchar) | Artikelnummer |
LotNumber | CHARGENNUMMER | String (Varchar) | Chargennummer - wenn angegeben, wird diese Charge gebucht |
SerialNumber | SERIENNUMMER | String (Varchar) | Seriennummer - wenn angegeben, wird diese Seriennummer gebucht |
Quantity | MENGE | Decimal 15,5 | Die umzubuchende Menge in Lager-MEH |
QuantityUnit | MENGENEINHEIT | String (Varchar) | Lager-Mengeneinheit |
PositionType | TYP | QuickTransferPositionType (Smallint) | NotAssigned (= 0 = KeineZuordnung) |
RowNumber | ZEILENNUMMER | Int (Smallint) | Positions-Zeilennummer innerhalb der Umbuchung (wird automatisch vergeben) |
SourceStockNumber | ABBUCHUNGSLAGER | Long (Decimal 18,0) | Abbuchungslagernummer |
SourceStockLocationNumber | ABBUCHUNGSLAGERORT | Long (Decimal 18,0) | Abbuchungslagerortnummer |
SourceStockLocationName | String (Varchar) | Abbuchungslagerortname. Wenn angegeben, und es sind eindeutige Lagerortnamen systemübergreifend vorhanden, dann kann die Angabe der Felder "SourceStockNumber" und "SourceStockLocationNumber" entfallen. | |
TargetStockNumber | ZUBUCHUNGSLAGER | Long (Decimal 18,0) | Zubuchungslagernummer |
TargetStockLocationNumber | ZUBUCHUNGSLAGERORT | Long (Decimal 18,0) | Zubuchungslagerortnummer |
TargetStockLocationName | String (Varchar) | Zubuchungslagerortname. Wenn angegeben, und es sind eindeutige Lagerortnamen systemübergreifend vorhanden, dann kann die Angabe der Felder "TargetStockNumber" und "TargetStockLocationNumber" entfallen. | |
APosInx | APOSINX | Long (Decimal 18,0) | Eindeutiger Datensatz-Index für die Verknüpfung zur Kunden-Auftragsposition. |
OrderInx | ANGINX | Long (Decimal 18,0) | Eindeutiger Datensatz-Index für die Verknüpfung zum Kunden-Auftrag. |
FaPosInx | FAPOSINX | Long (Decimal 18,0) | Eindeutiger Datensatz-Index für die Verknüpfung zur Fertigungsauftragsposition. |
DeliveryProposalNumber | LIEFERVORSCHLAG | Long (Decimal 18,0) | Liefervorschlagsnummer, für welchen die Umbuchung erstellt wurde. Wird vor allem für SmartCenter-Kommissionierung verwendet. |
Infotext | INFOTEXT | String (Varchar) | Individueller Zusatztext |
ChangeConsignmentStockLocation | KO_AENDERUNG | Bool (Smallint) | Kommissionierlagerplatz ändern. Wenn aktiviert, wird bei Lagerbuchung der Position der Defaultlagerort des Artikels am Ziel-Lager auf den Ziel-Lagerort geändert. |
ReleaseConsignmentStockLocation | KO_FREIGABE | Bool (Smallint) | Kommissionierlagerplatz freigeben. Wenn aktiviert, wird bei Lagerbuchung der Position der Defaultlagerort des Artikels am Quell-Lager auf den Quell-Lagerort geändert. |
ParentPackingEmptiesInx | Long | Zuordnung der Schnellumbuchung zu einem Verpackungs-Inhalt. Wenn angegeben, wird zusätzlich ein Eintrag in PACKLISTE_INHALT erstellt. | |
IsNotBooked | KB | Bool (Smallint) | Kennzeichen ob die Umbuchungs-Position lagergebucht (False, leer) werden soll, oder nicht (True). Wenn nicht explizit angegeben, wird die Position lagergebucht. |
BookingDate | BU_DATUM | Buchungsdatum - wenn angegeben, wird die Lagerbuchung für diesem Zeitpunkt durchgeführt. | |
CreationUser | ANLAGEUSER | String (Varchar) | Benutzername, der den Datensatz erstellt hat. |
CreationDate | ANLAGEDATUM | Datum/Uhrzeit der Datensatz-Anlage. | |
ModifiedUser | AENDERUNGSUSER | String (Varchar) | Benutzername, der den Datensatz zuletzt geändert hat. |
ModifiedDate | AENDERUNGSDATUM | Datum/Uhrzeit der letzten Datensatz-Änderung. | |
APType | AP | Int (Smallint) | Anlage-Programmteil. Die Kombination AP+SS_REFERENZ+SS_REFERENZ2 darf nur 1x vorhanden sein. |
EdiReference | SS_REFERENZ | String (Varchar) | Schnittstellenreferenznummer. Diese Referenznummert zieht sich vom Warenkorb über Auftrag, Lieferschein bis hin zur Rechnung. Die Kombination AP+SS_REFERENZ+SS_REFERENZ2 darf nur 1x vorhanden sein. |
EdiReference2 | SS_REFERENZ2 | String (Varchar) | Zusatz-Referenz für Schnittstellen, falls SS_REFERENZ nicht ausreichend ist. Die Kombination AP+SS_REFERENZ+SS_REFERENZ2 darf nur 1x vorhanden sein. |
Text01 | TEXT_01 | String (Varchar) | Freies Textfeld 01 |
Text02 | TEXT_02 | String (Varchar) | Freies Textfeld 02 |
Text03 | TEXT_03 | String (Varchar) | Freies Textfeld 03 |
Text04 | TEXT_04 | String (Varchar) | Freies Textfeld 04 |
Text05 | TEXT_05 | String (Varchar) | Freies Textfeld 05 |
StringFunctions
Zusätzlich zu den Standard-StringFunctions sind folgende Funktionen möglich:
StringFunction | Beschreibung |
GetSourceValue("SPALTE") | Liefert einen Wert aus der aktuell in Verarbeitung befindlichen Quell-Zeile. |
GetTargetValue("TargetProperty") | Liefert einen Wert aus dem befüllten Ziel-DTO. Es können hier alle TargetField-Properties angegeben werden. |
Ablauf
Nachfolgend wird der Programm-Ablauf der Schnittstelle näher beleuchtet.
- Ordner verarbeiten (Wiederholung je Ordner in WatchFolders)
- Datei verarbeiten (Wiederholung je Datei im aktuellen Ordner)
1) Dateiformat bestimmen
2) Datei einlesen
3) Gesamten Dateiinhalt konvertieren nach Ziel-Positionen, splitten nach Transaktionen wenn Buchungsmodus = Single
4) Für jede erstellte Transaktion alle Positionen buchen (Im Buchungsmodus Single ist jede Position in einer eigenen Transaktion) - Je Datei bleibt die Umbuchungsnummer gleich. - Optional Report senden
Automatischer Start
Im Unterordner \Interfaces\POLLEX-LC\ImportStockTransfer\Templates werden Beispieldaten für die automatische Ausführung der Schnittstelle mit ausgeliefert. Wollen Sie diese Dateien verwenden, kopieren Sie diese bitte in den Ordner der LC.WpfInterfaces.exe. Die mitgelieferten Templates werden beim Update überschrieben.
Beispiel
XML-Konfigurationsdatei
ImportStockTransferTemplate.xml
<ImportStockTransfer> <DB>**Datenbankname**</DB> <USER>SYSADM</USER> <PASSWORD>SYSADM</PASSWORD> <DirectDbConnect>False</DirectDbConnect> <WatchFolders>\\server\io\ImportStockTransfer\files</WatchFolders> <TargetFolder>\\server\io\ImportStockTransfer\files\done</TargetFolder> <FileFilter>*.csv</FileFilter> <FileInfo> <FileFormat>CSV</FileFormat> <Encoding>UTF-8</Encoding> <DecimalSeparator>.</DecimalSeparator> <GroupSeparator></GroupSeparator> <FormatPatternNumber>#.##</FormatPatternNumber> <FormatPatternDate>yyyyMMdd</FormatPatternDate> <FormatPatternDateTime>yyyyMMddHHmmss</FormatPatternDateTime> <SeparatorChar>;</SeparatorChar> <Fields> <Field TargetField="ItemNumber" SourceField="Artikelnummer"></Field> <Field TargetField="Quantity" SourceField="Menge"></Field> <Field TargetField="SourceStockLocationName" SourceField="Abbuchungslagerort"></Field> <Field TargetField="TargetStockLocationName" SourceField="Zubuchungslagerort"></Field> <Field TargetField="BookingDate" SourceField="Buchungsdatum" Format="yyyyMMddHHmm"></Field> <Field TargetField="EdiReference" SourceField="PosReferenz"></Field> <Field TargetField="EdiReference2" SourceField="DokReferenz"></Field> </Fields> </FileInfo> <BookingTransaction>File</BookingTransaction> <ErrorAction>Continue</ErrorAction> <ProtocolEMail>ihre_mail@ihr_provider.com</ProtocolEMail> <SenderEMail>noreply@ihr_provider.com</SenderEMail> <SmtpServer>mail.ihr_provider.com.com</SmtpServer> <SmtpUser>**Benutzername**</SmtpUser> <SmtpPassword>**Passwort**</SmtpPassword> <MailLevel>All</MailLevel> </ImportStockTransfer>
ImportStockTransfer.cmd
LC.WpfInterfaces.exe /C=ImportStockTransferTemplate.xmlLC.WpfInterfaces.exe /C=ImportStockTransferTemplate.xml /DB=DEMO /USER=DEMO /PASSWORD=TEST