Neues Thema starten

#0 statt Processdata im TSE-Store bei Command $91$00 (High Speed Mode)

Wir haben feststellen müssen, dass auf der TSE nur #0 anstatt der von uns gesendeten Prozessdaten gespeichert werden!


Dies geschieht wenn wir den Datenimport mit dem Befehl "Data Import Initialize" Command #90#00 (High Speed Mode Transactions) einleiten  in ca. 80% der Fälle. Verwenden wir stattdessen den Befehl #91#00 (Simple Mode Transactions), werden die Prozessdaten immer korrekt gespeichert.


Das Problem tritt bei uns reproduzierbar mit verschiedenen TSEs an unterschiedlichen Rechnern mit Windows 7 und Windows 10 auf. Es sollte mit der Positionierung (SEEK) in die TSE_TAR.xxx-Datei beim DATA IMPORT TRANSFER zu tun haben, da der einzige Unterschied zwischen Command #90 und #91 in der von der TSE zurückgegebenen Schreibposition (OFFSET) liegt.


Da die Prozessdaten manchmal korrekt geschrieben werden, kann es kein grundsätzlicher Programmfehler sein. Die Zeit zwischen dem Schreiben der Prozessdaten und dem abschließenden Befehl #95 Data Import Finalize haben wir von 0 bis > 10 Sekunden (beim Debuggen) variiert. Dies hat keinen Einfluss. Ebenso wenig wirkt es sich aus, ob man die Prozessdaten byteweise, blockweise, gepuffert oder ungepuffert in die TSE_TAR.xxx-Datei schreibt.


Wir sprechen die TSE über die sog. "dateibasierte Schnittstelle" direkt an, die im Dokument "swissbit_TSE_ADV_FSP1.2.11.pdf" als "Functional Specification Swissbit TSE SMAERS Firmware, Version 1.2.11" beschrieben ist. Das machen wir in Delphi so, wie es Günter Schäfer hier bereits für VB6 beschrieben hat und mit Ausnahme des hier beschriebenen Problems funktioniert das auch gut.


Gibt es hier jemanden, der ebenfalls den Befehl #90#00 Data Import Initialize im High Speed Mode nutzt und funktioniert das Speichern der Prozessdaten damit? 


Anmelden oder Registrieren um einen Kommentar zu veröffentlichen