Über die Funktion können Importdaten von Client oder Subsystemen an z. B. die Zentrale übertragen werden.
Die Funktion wird über das Kommando "sogerpconsole -sendimport ZielUrl" eingeleitet. Siehe auch: sogerpconsole
Im Falle einer Anbindung im Bereich von Mobil-Systemen kann die Funktion in den allgemeinen Ablauf der Aktualisierung und Datenübertragung mit eingebunden werden.
Während der Übertragung entsteht ein Statusdatensatz in der Tabelle dataexchange der über das Programm k830 - Datenaustausch externe Syteme (dataus) angesehen und ggf. verwaltet werden kann.
Konfiguration des Web-Dienstes auf dem Server
In der Konfigurationsdatei des http-WebServer müssen die "DataExchange" Dienste aktiviert werden.
Siehe ausgeliefert Beispieldatei config.basis\httpservice_cfg.xml
Der Datenaustausch eines einzelnen Importvorgangs finden in folgenden Phasen statt:
Beginnt die Kommunikation | Client exportiert einen Importvorgang in eine ZipDatei. | InitDone |
Sendet Daten | Client sendet ZipDatei an den Server. | InitDone mit hochgeladenen Daten |
Client stößt den Import an | Importvorgang wird auf dem Server mit Status "DatenEmpfangen" importiert. | Import |
FinalizeServer | ImportKopf wird auf dem Server in Status "Erfolgreich" gesetzt, Server löscht die ZipDatei. | FinalizeServer |
FinalizeClient | Client löscht lokale ZipDatei. Lokaler Status des Vorgangs wird in Status "UebertragungBeendet" gesetzt. | FinalizeClient |
Beendet den Vorgang | Importdaten auf dem Client werden gelöscht. | Statusdatensatz wird gelöscht |
Sollte der Vorgang abbrechen, kann er jederzeit über den Client wieder erneut gestartet werden.
Es wird dabei sichergestellt, dass keine Daten verloren gehen, und das ImportDaten nicht doppelt verarbeitet werden.
Bei endgültigem Verlust des Clients
Sollte ein Client während einer Übertragung unwiederbringlich verloren gehen (z. B. durch Diebstahl), muss der Vorgang ggf. manuell zuende geführt werden.
Bis zur Beendigung der Datenübertragung an den Server, sollte der Kontrolldatensatz einfach gelöscht werden.
Ggf. kann die entstandene Server ZipDatei im Verzeichnis ${SPOOLDIR}\Proj\${hhproj}\${hhfirm}\DataExchange ebenfalls gelöscht werden.
Nach vollständiger Datenübertragung und bei Fehlern während des Imports kann ggf. der ImportVorgang über die Funktion k830 manuell neu durchgeführt werden.
In der Finalisierungsphase kann der importierte Vorgang ggf. in den Status "0 Erfolgreich" versetzt werden, und die Übertragungsdatei im Spoolverzeichnis manuell gelöscht werden.
Achtung: Diese Aktionen wirklich nur durchführen, wenn der Client wirklich nicht wieder an das Netz geht, da es ansonsten zu einer erneuten Übertragung und einem erneuten Import von Daten kommen würde.
Aufräumen von abgebrochenen Übertragungsvorgängen
Sollte ein Übertragungsvorgang im Status "FinalizeClient" abbrechen, und durch erneutes Anstoßen vom Client nicht automatisch gelöscht werden, kann dieser nach angemessener Zeit manuell gelöscht werden. Dies kann in dem unwahrscheinlichen Fall passieren, dass die Verbindung zwischen Client und Server genau in dem Moment abbricht, in dem der Client zwar seine lokalen Daten löscht, er dies aber nicht mehr dem Server mitteilen kann.
Stellen Sie dabei aber sicher, dass der entsprechende ImportVorgang auf dem Client tatsächlich gelöscht wurde, da diese ansonsten im Status "UebertragungBeendet" auf dem Client verbleiben.