Autor Thema: UI - Änderung eines Feldwertes erkennen ohne Exiting des Feldes  (Gelesen 2523 mal)

Offline AC

  • Senior Mitglied
  • ****
  • Beiträge: 366
  • Geschlecht: Männlich
Hallo,

nach langer Zeit mal wieder eine Frage von mir.

Vielleicht habe ich auch gerade ein Brett vor dem Kopf oder sehe den Wald vor lauter Bäumen nicht.

Es geht darum ein Feld abzugreifen, welches im UI von "extern" gefüllt wird.
Die Notesmaske ist offen, der Curser ist im Feld. Dort kommt automatisch ein String rein ( von einem USB Device deshalb ohne Benutzeraktion im Notes) . Dies kann ca. im Sekundentakt  jeweils ein Code sein.
Wenn ein Code da reinlief, wird er gleich ausgewertet und das Feld für den nächsten Eintrag wieder gelöscht.

Umgebung: Noteclient Lotus Script auch mit lokaler Replik. .
Sobald in dem Feld was steht, soll es ausgelesen werden ( danach laufen andere Dinge im Backend die jetzt nicht das Problem sind)
und dann das Feld wieder geleert werden bevor der nächste Eintrag erfolgt.

Das ganze kann wie schon erwähnt quasi im Sekundentakt erfolgen.
Es findet keine Userinteraktion am PC bzw. im Notes statt (deswegen auch kein ENTERING oder EXITING des Feldes wo man ansetzen könnte).

Mir fällt jetzt nur die Timerklasse ein, dass ich jede Sekunde nachgucken lasse, ob das Feld gefüllt ist oder nicht und wenn ja, greift dann mein Scriptcode.  
Dies funktioniert auch mit der Timerklasse aber so ganz glücklich bin ich damit nicht und frage ob es was besseres gibt.

Gibt es noch andere Ansatzpunkte ausser dem sekündlichen Nachgucken ?
Gibt es ein Event, welches ich nicht kenne, welches mitbekommt, dass das Feld gefüllt wird? ( OnChange hat mich nicht in das galobte Land geführt oder ich mache was verkehrt)  

Ich hoffe ich habe es verständlich ausgedrückt.


Danke, Alexander
« Letzte Änderung: 12.11.15 - 11:29:53 von AC »
Microsoft Certified Technology Specialist Microsoft Dynamics NAV 5.0 C/Side Introduction
Microsoft Certified Technology Specialist Microsoft Dynamics NAV 5.0 C/Side Solution Development

"...Glücklich ist, wer vergisst, was doch nicht zu ändern ist..."

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Also ich habe was ähnliches mal mit einer Barcode- Scanner- Pistole gemacht, und da habe ich die einfach so programmiert, dass sie nach dem Scan einen Tab mitsendet... Dieser Tab veranlasst ein Feld- Exiting. Kannst Du u.U. Dein USB Device auch so konfiguieren?

Wenn nein, dann ist der Timer das einzige, was Dir bleibt...
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline AC

  • Senior Mitglied
  • ****
  • Beiträge: 366
  • Geschlecht: Männlich
Also ich habe was ähnliches mal mit einer Barcode- Scanner- Pistole gemacht, und da habe ich die einfach so programmiert, dass sie nach dem Scan einen Tab mitsendet... Dieser Tab veranlasst ein Feld- Exiting. Kannst Du u.U. Dein USB Device auch so konfiguieren?

Wenn nein, dann ist der Timer das einzige, was Dir bleibt...

Hallo Torsten,

danke für die Antwort. Ahh guter Ansatz, da wäre ich nicht draufgekommen
Das USB Device ist nur ein uraltes zum Test und ich habe das noch nicht genauer untersucht, weil ich nicht auf Deine Idee gekommen bin.

Ok, anschliessend muss man im UI den Cursor wieder ins Urspungsfeld nach dem Tab setzen, aber ich denke, das sollte kein Problem sein.

Ansonsten, wenn ich kein TAB vom Gerät mit übergeben kann, bleibt also wirklich nur die Timerklasse und ich muss hier dann alle Evantualitäten abfangen.
 
Danke. Alexander
Microsoft Certified Technology Specialist Microsoft Dynamics NAV 5.0 C/Side Introduction
Microsoft Certified Technology Specialist Microsoft Dynamics NAV 5.0 C/Side Solution Development

"...Glücklich ist, wer vergisst, was doch nicht zu ändern ist..."

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Der Rücksprung zum Feld ist ja kein Akt, das kannst Du ja als Finale Deiner Orgien im Exiting mit einem NotesUIWorkspce.CurrentDocument.GotoField abhandeln.

Bernhard

Offline AC

  • Senior Mitglied
  • ****
  • Beiträge: 366
  • Geschlecht: Männlich
Der Rücksprung zum Feld ist ja kein Akt, das kannst Du ja als Finale Deiner Orgien im Exiting mit einem NotesUIWorkspce.CurrentDocument.GotoField abhandeln.

Bernhard

Danke Bernhard !

Ich verfeinere nun meinen Code erstmal endusertauglich für die Kollegen und werde dann untersuchen , ob Torstens Idee bei uns funktionieren könnte.

Schönen Abend noch allen Mitlesern und Ratgebern.
Alexander
« Letzte Änderung: 12.11.15 - 11:29:15 von AC »
Microsoft Certified Technology Specialist Microsoft Dynamics NAV 5.0 C/Side Introduction
Microsoft Certified Technology Specialist Microsoft Dynamics NAV 5.0 C/Side Solution Development

"...Glücklich ist, wer vergisst, was doch nicht zu ändern ist..."

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz