17. Mai 2006 20:32
Jetzt brauch ich mal Eure Hilfe:
Ich habe in der Tabelle 168 ein zusätzliches Feld namens Index eingefügt, und mit der Job No´. zusammen einen Key erstellt, damit man in der Form 212 danach sortieren kann.
In der Form ist dieses Feld an erster Stelle zu sehen.
Wenn man nun in dieses Feld als erstes was einträgt, wird der Datensatz mit leeren Primärschlüsselfeldern angelegt. Da ein umbenennen in dieser Tabelle nicht möglich ist, kommt man nicht weiter, ohne den Arbeitsfluss zu stören.
Abhilfe ist die Eigenschaft delayed insert, die erst beim verlassen des Datensatzes speichert.
Nur wenn der Kunde aus Versehen auf die Cursor Up oder down Taste drückt, kann er wieder von vorne anfangen.
Aus diesem Grund hab ich im OnNewRecord Trigger eine InputForm für die Primärschlüsselfelder und das Indexfeld mit
- Code:
if inputform.runmodal=action::OK then inputform.getrecord(rec)
gestartet und dieser auch schon die Jobnummer übergeben.
In dieser Form muss der Kunde zwar nochmal f3 drücken um einen neuen Datensatz anzulegen, aber das ist noch nicht so tragisch.
Jetzt mein Problem:
Wenn diese Form mit OK geschlossen wird, wird der Datensatz in die Tabelle eingefügt, gleichzeitig erscheint an Cursorposition der gleiche Datensatz nochmal, mit der *-Anzeige eines neuen Datensatzes, wo nur die Schlüsselfelder gefüllt sind.
wenn man nun die Zeile verläßt kommt die Meldung mit dem Rename.
Wenn man ESC drückt, ist man auf der Zeile, von der aus man F3 gedrückt hatte.
Wie bekomme ich nun den Cursor in den neuen Datensatz?
darin dann auf das erste zu editierende Feld zu springen ist mit currform.description.activate kein Problem, aber die richtige Zeile ist das Problem.
ein getrecord ist genausowenig erfolgreich wie ein get(Feld1,feld2, usw....)
der Cursor bleibt einfach in der Zeile wo er war.
Ein currform.update im Trigger führt zu einem internen Fehler 101 in Modul 60 (ist sogar in der doku als erste Ursache für diesen Fehler angegeben). Ein currform.update(false) also ohne speichern, führt zum völligen Absturz von Navision.
HILFE!!!
mein Chef braucht das morgen mittag um die Lösung dem Kunden zu zeigen..... ich befürchte, das wird nix, ....