Uhrzeit der Datenänderung in Datei wird nicht aktualisiert.

Status
Für weitere Antworten geschlossen.

KlauMeiDadde

Benutzer
Mitglied seit
02. Jul 2014
Beiträge
41
Punkte für Reaktionen
0
Punkte
0
Hall ich habe hier 2 Systeme (Test und live) mit jeweils einer DS-414j und diversen Win7 PCs.
Die DS414j betreibe ich mit einer alten und einer aktuellen DSM Version.
Die Software die ich verwende ist auf der NAS und wird dort aus einer Freigabe per Netzlaufwerk von den PCs aufgerufen und ausgeführt.

Im wesentlichen ist es eine über die Jahre von DOS nach Win gewachsene Branchenlösung.
Klappt alles bis auf das automatische Update zwischen den Stationen bzgl einer Vorgangsliste.

Mein Problem in beiden Konfigurationen auf beiden getrennt laufenden Systemen:
Ich habe eine DBF Datenbankdatei in die fortlaufend an einer Station Eintragungen erstellt werden.
Die anderen Stationen fragen Updates nur ab wenn sich der Zeitstempel der Datei ändert.

Manuell kann ich das Auslesen der DBF veranlassen indem ich das App Fenster zu und wieder auf mache dann sind alle neuen Einträge da.
Es kommt nur kein Autu-Update weil der Zeitstempel nicht neu gesetzt wird wenn sich etwas ändert ...

Egal wie ich es mache und wie lange ich warte - auch nach einer Stunde und etlichen Neueintragungen ist der Zeitstempel der DBF noch der selbe.

Wo kann ich bei Windoof oder meiner Synology den Hebel ansetzen und in der Konfiguration schrauben?

Danke schon vorab.

Gruß

Michael


PS:
gerne auch ein CronJob der einfach alle 10-15 Sekunden die Datei auf das aktuelle Zeitstempel bringt.
Muss mir nur jmd sagen wie ich das mache
 
Mitglied seit
10. Jan 2014
Beiträge
393
Punkte für Reaktionen
0
Punkte
0
Wenn du alle paar Sekunden die Datei updatest, kannst du sie doch auch lesen, eine Checksumme bilden und damit rausbekommen, ob sich was geändert hat, oder?

Wie wäre es, wenn du stattdessen mit einer zusätzlichen Steuerdatei arbeitest?
Vorausgesetzt, du kannst die SW anpassen?

Persönlich halte ich wenig davon, wenn ein Netzwerkclient ständig den -Server pollt, um solche Informationen ständig zu aktualisieren.
Auf der anderen Seite...man kommt ja leider auch nicht ohne aus...

M.E. müsste das in Windows auch aktualisiert werden, wenn du mit dem Explorer auf das Share gehst und dort die Ansicht aktualisierst, oder?
Diese Funktion müsste man dann irgendwie auf den Clients abbilden....
Eigentlich müsste das auch passieren, wenn die Clients selbst zyklisch eine Steuerdatei auf dem Share schreiben.
 

KlauMeiDadde

Benutzer
Mitglied seit
02. Jul 2014
Beiträge
41
Punkte für Reaktionen
0
Punkte
0
hallo Micky und danke für deine Ausführungen denen ich gerne zustimmen würde.

Die Software ist leider nicht anpassbar sondern eben vom Hersteller aus der Zeit von MSDOS zu Windoof herüber gerettet worden.
Ein schicker bunter Überbau für ein eher weniger tolles Konstrukt unter der Haube.

Ich kann daher weder die Software verändern noch deren Verhalten beeinflussen.
Grundsätzlich ist es ja eine nette Idee nur dann ein PULL/Push zu verursachen wenn sich eine Datei ändert.

Der Ansatz über den Zeitstempel ist eine halbwegs elegante Lösung muss ich zugeben da wenige Ressourcen benötigt werden.


Aber mein Problem ist noch offen:
Warum wird der Zeitstempel der Änderung nicht aktualisiert?
Wie kann ich ggf per Cronjob einfach alle 1-2 Minuten den Zeitstempel einer Datei auf der NAS neu setzen?
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
auf der Konsole könntest du mit "touch dateiname" das Datum auf das jeweils aktuelle Datum ändern. Zum cronjob steht was im wiki, der Neustart müsste aber mit "crond restart" funktionieren...

Stefan
 

KlauMeiDadde

Benutzer
Mitglied seit
02. Jul 2014
Beiträge
41
Punkte für Reaktionen
0
Punkte
0
Hallo Stefan,

danke da bin ich auch gerade dran.
Per Konsole schon erfolgreich gemacht und auch aus Fehlern gelernt.

Falls mal wer in die gleiche Situation kommt "touch -c DateiName" um die Datei nicht als Root zu erzeugen ...
in meinem Fall wird die vom System sporadisch gelöscht und wäre sonst nimmer Schreibbar :)

@ WIKI: muss ich mal lasen, mein Selbstversuch mit Cron war ohne das nicht erfolgreich
 

KlauMeiDadde

Benutzer
Mitglied seit
02. Jul 2014
Beiträge
41
Punkte für Reaktionen
0
Punkte
0
So nur zur Info das Problem steht noch offen.
Synology's BusyBox hat einen stark vereinfachten touch befehl
somit ist es nicht möglich das Datum per touch zu ändern....
 
Mitglied seit
10. Jan 2014
Beiträge
393
Punkte für Reaktionen
0
Punkte
0
Es gibt für die DS ein perl.
Wie wäre es mit einem kleinen perl script?
Vllt. könnte man darin auch noch die tatsächliche Veränderung der Datei abprüfen und nur dann den Zeitstempel ändern
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
verstehe ich nicht... "touch dateiname" ändert bei mir das Dateidatum auf das aktuelle Datum, auch der Besitzer bleibt erhalten....

Stefan
 

KlauMeiDadde

Benutzer
Mitglied seit
02. Jul 2014
Beiträge
41
Punkte für Reaktionen
0
Punkte
0
Hallo Stefan,

ja und nein.

Touch ändert das Datum - aber nur eines von 3en die es gibt.
Erstellungsdatum Änderungsdatum, Zugriffsdatum werden wohl getrennt gesichert.
Und Irgendwie frat windoof das falsche der 3 ab - das Datum/Zeit im Explorer bei Windoof bleibt gleich.

Also ändert touch wohl nicht alles an Datumsinfo oder zumindestz nicht das was Windows auslesen kann.

... zumindest habe ich das hier so auf meinem DS414j und mit Win7x64 (beides aktueller Stand)

Michael
 

stefan_lx

Benutzer
Mitglied seit
09. Okt 2009
Beiträge
2.766
Punkte für Reaktionen
74
Punkte
88
wenn ich mir unter win7/64 das Datum anschaue, dann ist das Erstelldatum 3 Minuten älter als das Änderungsdatum, also so halbwegs identisch.. :confused:
Könnte deine Anwendung das Datum wieder überschreiben, die du gerade gesetzt hast? Bei DBFs wäre ich mir nicht so sicher, wann das Datum geschrieben wird...

Stefan
 

KlauMeiDadde

Benutzer
Mitglied seit
02. Jul 2014
Beiträge
41
Punkte für Reaktionen
0
Punkte
0
... ich gestehe dass ich selber nicht ganz blicke warum es nicht mehr funktioniert.
Bis vor 2-3 Monaten lief die Software (DS WIN Dampsoft, Praxissoftware für Zahnärzte) reibungslos auf der DS414j.
Das für über 6 Monate und durch alle Updates hindurch die es für die DSM, WIN7 und die DSWIN gab.

Seit 2-3 Monaten will die Wartezimmerliste nicht mehr wie sie soll.
An einer Station wird erfasst und eingepflegt auf den anderen wird bei geänderem Zeitstempel der Datei auf dem Server aktualisert und angezeigt.
Das lief wie gesagt bis zum Tag X - nun geht nur noch manuelles neu Einlesen der Liste was aber nicht komfortabel ist.

Rücksprache mit dem Herstller von DSWIN ergab:
NAS'en sind immer schlecht. Kaufen Sie einen WIN Server und machen Sie da eine Verzeichnisfreigabe.
Das es 6 und mehr Monate lief hat keine Bedeutung....

Ein Nachbau der Lieferkonfiguration mit einer zweiten DS414j mit altem DSM und aktuellem DSWIN und WIN7x64 bringt den selben Fehler.

Rückfrage beim DSWIN Hersteller ergab dass es eben über den Zeitstempe der Datei läuft.
Der sollte sich alle paar Minuten ändern wann immer ich einen neuen Listeneintrag hinzufüge.

Und diese Änderung ist im Explorer nicht (mehr) sichtbar .... also auch nicht für DSWIN.

Ich muss mal Screenshots der Dateininformation auf der DS und in Win7 machen.
Dann ist sichtbar was ich meine.... bisher weiss ich nur dass 'touch' eigentlich 3Datumswerte setzen könnte.
Und das ist in der DSM nicht implementiert....

Mein Gedanke war schon per touch eine Datei erstellen. Dann per cat > neueDatei den Inhalt umzuleiten und die datei neu zu benamen.
Aber das wäre die unschönste Version (abgesehen von einem registry Hack das wäre auch noch denkbar)

Gruß

Michael
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat