Scroll export button | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Scroll ignore | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Copyright WEBSALE AG 2010
- Vertraulich -
Weitergabe an Dritte nur mit Genehmigung der WEBSALE AG.
- Confidential -
Transfer to third parties only allowed with written permission of WEBSALE AG.
Allgemein
Im Folgenden wird die Funktionsweise des Upload-Moduls beschrieben und wie ein ERP-System die Upload-Dateien per SFTP vom Shopserver abholen kann.
Upload-Prozess
Upload-Produkte
...
General
The following describes how the Upload-module works and how an ERP system can fetch the Upload-files from the shop server via SFTP.
Upload products
In the shop, upload products are marked accordingly. For each upload product, a customer can upload one or more Upload-files after the order process.
Upload-ID / Position-ID
Sobald ein Upload-Produkt in den Warenkorb gelegt wird, generiert der Shop einmalig eine As soon as an upload product is placed in the shopping cart, the shop generates an Upload-ID once. Diese This Upload-ID bleibt während einer Session stets gleich.
Zusätzlich wird zu jedem Upload-Produkt eine Position-ID generiert. Wird ein Upload-Produkt nachträglich aus dem Warenkorb gelöscht, dann wird ebenfalls die zugehörige Position-ID gelöscht.
Zu jeder Upload-ID und Position-ID erstellt der Shop synchron gleichnamige Upload-Verzeichnisse, in denen die Upload-Dateien vom Upload-Modul gespeichert werden.
Die Verzeichnisstruktur ist wie folgt aufgebaut:<Upload-Root-Verzeichnis>
always remains the same during a session.
In addition, an Position-ID is generated for each upload product. If an upload product is subsequently deleted from the shopping cart, the associated Position-ID is also deleted.
For each Upload-ID and Position-ID, the shop synchronously creates upload directories with the same name, in which the upload files are stored by the Upload-module.
The directory structure is as follows:<upload root directory>
Upload-ID (Upload-ID einer Bestellungof an order)
finished.sync (AbschlussFinished-Dateifile)
upload.log (Log-Dateifile)
fileinfo.dat (Info-Dateifile)
Position-ID1 (Upload-ID der 1. Positionof the 1st position)
Upload-Datei1file1
Upload-Datei2file2
...
Upload-DateiNfileN
Position-ID2 (Upload-ID der 2. Positionof the 2nd position)
Upload-Datei1file1
Upload-Datei2file2
...
Upload-DateiNfileN
...
Position-IDN (Upload-ID der of the N. Positionposition)
Upload-Datei1file1
Upload-Datei2file2
...
Upload-DateiN
...
fileN
Transfer of the Upload-ID / Position-ID in
...
the order data
The ERP system is informed of the Upload-ID und and Position-ID mitgeteiltwithin the purchase order.
Auszug aus den Bestelldaten:<Order>
Extract from the order data:
Code Block |
---|
<Order> ... |
...
UploadID = 5DA7106A ... |
...
</Order> |
...
...
</Item>
<Item>
Number = 1111
Name = Produkt 2
UploadID = A22445566 (Position)
...
</Item>
<Item>
Number = 567890
Name = Produkt 3
UploadID = A22445566 (Position)
...
</Item>
<OrderList>
Aufgrund dieser Informationen kann das ERP-System die Upload-Dateien zu jeder Bestellung gezielt per SFTP abholen.
Verwaltungsdateien
Neben den Upload-Dateien existieren noch 3 Verwaltungsdateien direkt unterhalb des Upload-Verzeichnisses. Diese sind:
...
<OrderList>
<Item>
Number = 1234
Name = Product 1
UploadID = A882F49D (Position)
...
</Item>
<Item>
Number = 1111
Name = Product 2
UploadID = A22445566 (Position)
...
</Item>
<Item>
Number = 567890
Name = Product 3
UploadID = A22445566 (Position)
...
</Item>
<OrderList> |
Based on this information, the ERP system can pick up the Upload-files for each order specifically via SFTP.
Administration files
In addition to the Upload-files, there are 3 administration files directly below the upload directory. These are:
finished.sync (Completion-file)
upload.log (Log-Dateifile)
fileinfo.dat (Info-Dateifile)
Datei „finished.sync“
...
File "finished.sync"
Since the orderer can upload multiple files, he has to inform the Upload-module when he has finished uploading all files. For this purpose, the Upload-module creates a completion file named "finished.sync" in dem zur the upload directory associated with the Upload-ID gehörenden Upload-Verzeichnis an.In diese Datei wird eine einzige Zeile mit Datum und Uhrzeit des Abschlusses geschrieben. Das Format ist .
A single line with the date and time of completion is written to this file. The format is "YYYY/MM/DD<Leerzeichen>HHDD<space>HH:MM"
BeispielExample:
2013/03/27 18:57
Bitte beachten SiePlease note:
Ein ERP-System darf erst dann die Upload-Dateien per SFTP abholen, wenn die Datei finished.sync existiert, d. h. der Besteller die Uploads abgeschlossen hat. Zu diesem Zweck muss das ERP-System ein Polling-Verfahren für die Datei finished.sync implementieren.
Datei „upload.log“
Zusätzlich wird eine Log-Datei mit dem Namen "upload.log“ in dem zur Upload-ID gehörenden Upload-Verzeichnis geschrieben und die Log-Daten dem Besteller angezeigt. Die Datei wird im TSV-Format (Tab als Feldtrenner) gespeichert und enthält folgende Felder:
Die erste Zeile enthält die Spalten-Namen.
...
Spalten-Name
...
Beschreibung
...
Date
...
An ERP system is not allowed to collect the Upload-files via SFTP until the finished.sync file exists, i.e. the orderer has completed the uploads. For this purpose, the ERP system must implement a polling procedure for the finished.sync file.
File "upload.log"
In addition, a log file named "upload.log" is written to the upload directory associated with the Upload-ID and the log data is displayed to the orderer. The file is saved in TSV format (tab as field separator) and contains the following fields:
The first line contains the column names.
Column name | Description |
---|---|
Date | Date in the format DD.MM.YYYY |
Time | Uhrzeit im Format Time in the format HH:MM |
TypeBeschreibung | der Transaktion z. B. „Datei hochgeladen“Description of the transaction e.g. "File uploaded". |
TechTypeTechnische | , sprachunabhängige BezeichnungTechnical, language independent description |
File | Name der Datei |
...
of the file |
The following "types" of actions are currently supported by the internal Upload-module:
Type | TechType |
---|---|
Datei gelöschtFile deleted | delete |
Uploads abgeschlossencompleted | finishedDatei |
hochgeladenFile uploaded | uploadDatei bereits vorhanden |
File already exists | uploaddupfile |
Abschluss aufgehoben (wird derzeit nicht genutztUnlocked (not used at the moment) | unlocked |
Maximale Größe je Datei überschritten | filelimit |
Maximale Anzahl von Dateien je Bestellposition überschritten | poslimitcount |
Maximale Größe je Bestellposition überschritten | limitmb |
Unvollständiger Datenupload | uploaderror |
...
Maximum size per file exceeded | filelimit |
Maximum number of files per order item exceeded | poslimitcount |
Maximum size per order item exceeded | limitmb |
Incomplete data upload | uploaderror |
From the 2nd line on the data follows.
Example:Date Time Type TechType File Upload-ID Position-ID
12/19.12./2011 09:21 Datei hochgeladen File upload upload Vorderseitefront.pdf 0708D800 905B1908
12/19.12./2011 09:21 Datei gelöscht File delete delete Vorderseitefront.pdf 0708D800 905B1908
19./12./2011 09:22 Datei hochgeladen File upload upload Vorderseite1front1.pdf 0708D800 905B1908
19.12.2011 2011/12/19 09:22 Datei hochgeladen File upload upload Rueckseite1back1.pdf 0708D800 905B1908
19.12.2011 2011/12/19 09:23 Uploads abgeschlossen completed finished 0708D800 905B1908
Datei „fileinfo.dat“
Der Besteller kann je Upload-Datei den Inhalt der Datei über eine Select-Box auswählen.
Die Datei wird im TSV-Format (Tab als Feldtrenner) gespeichert und enthält folgende Felder:
Die 1. Zeile enthält die Spaltennamen.
...
Spalten-Name
...
Beschreibung
...
File
...
Name der Upload-Datei
...
ID
...
File "fileinfo.dat"
The customer can select the content of the file via a select box for each Upload-file.
The file is saved in TSV format (Tab as field separator) and contains the following fields:
The 1st line contains the column names.
Column name | Description |
---|---|
File | Name of the Upload-file |
ID | Integer Value. Position of the entry in the select box, starting from 0. |
Type | Sprachabhängiger Eintrag in der Select-Box. Z. BLanguage dependent entry in the select box, e.g. |
PosID | PositionID |
...
Position-ID |
Starting from the 2nd line, the data follows.
Example:
File ID Type PosID
Datei1File1.pdf 0 Bitte wählen Sie Please select 696EE098
Datei2File2.pdf 1 Alles All in einem Dokument 696EE098
Beispiel-Verzeichnis nach einem abgeschlossenen Upload:<Upload-Root-Verzeichnis>
one document 696EE098
Example directory after a completed upload:<upload root directory>
0708D800 (Upload-ID)
905B1908 (Position-ID)
Vorderseite1Front1.pdf (Upload-Dateifile)
Rueckseite1Back1.pdf (Upload-Dateifile)
finished.sync (AbschlussFinishing-Dateifile)
upload.log (Log-Dateifile)
fileinfo.dat (Info-Dateifile)
Bitte beachten SiePlease note:
Nachdem das ERP-System die Upload-Dateien per SFTP abgeholt hat, muss das komplette Upload-Verzeichnis vom ERP-System per SFTP-Befehl gelöscht werden. Zusätzlich werden von der WEBSALE AG alle Upload-Verzeichnisse gelöscht, die älter als 6 Wochen sind. (Aufräumfunktion von Verzeichnis-“Leichen“)After the ERP system has fetched the Upload-files via SFTP, the complete upload directory must be deleted by the ERP system via SFTP command. In addition, WEBSALE AG will delete all upload directories older than 6 weeks (clean up function of directory "corpses").
Include Page | ||||
---|---|---|---|---|
|