|
Stringübernahme in Schirmmaske ... wie programmiere ich die F4 Taste :-)
Ist es möglich einen String in die Schirmmaske zu übernehmen?
Beispiel: Nach erfolgloser Suche in "DOC" soll die suche in "VERTRAG" ausgeführt werden. Die "Vertragsnummer" aus "VERTRAG" soll dann übernommen werden. local str v=VERTRAG.Vsnr new docdaten keys enter docdaten with DOC !!! und dann Übernahme - DOC.Vsnr = v |
|
Nicht bei ENTER nur mit KEYS GET !
Das heisst du mußt entsprechend folgendes machen: Code:
view daten = from datenbank |
|
Also ein wenig habe ich mich versucht, hat nicht geklappt, jedoch glaube ich nicht, dass das die Lösung für mein Problem ist.
Beim testen ist mir dann aufgefallen, dass es vermutlich etwas umfangreicher mit keys list sein muss. Folgendes möchte ich lösen: In meinem Dokumentenarchiv gebe ich das gespeicherte Dokument ein. Nun möchte ich es dem Vertrag zuordnen. Dazu habe ich in der Schirmmaske ein Feld mit VERTRAGSNUMMER (DVTR#) und Übereinstimmung zu VERTRAG.VERTRAGSNUMMER (VVTR#). Hier ist ja das bekannte OA-Problem, dass ich nicht noch einmal die Suchenfunktion nutzen kann. Folglich hätte ich nun gerne mit F4 ein kleines Untermenü aufgerufen, das letztlich die Suche in VERTRAG vornimmt und mit TASTE x oder auch RET die VERTRAG.VERTRAGSNUMMER (VVTR#) in die Spalte DOC.VERTRAGSNUMMER (DVTR#) übernimmt. Alternativ habe ich mir überlegt genügt die Suche in einen seperatem Fenster, um die korrekte Schreibweise der VERTRAG.VERTRAGSNUMMER zu finden. Mit Verlassen des Feldes DOC.VERTRAGSNUMMER könnte dies dann wieder geschlossen werden. Da hier die F4-Taste schlecht sein dürfte, da ja damit die Suche in den Übereinstimmungsfeldern vorgenommen wird dachte ich die Auswahl gleich mit einem Menü beim Einfügen eine neuen Dokumentes zu integrieren. Die Lösung für die fehlende F4-Taste bei Übereinstimmungen wäre ggf. die Bessere. |
|
Du kannst aber innerhalb der Maske natürlich entweder F4 neu belegen oder einfach eine alternative Funktionstaste (F5,F6 etc...) innerhalb der Schirmmaske nützen um weitere Eingaben zuzulassen und damit neue Abfragen machen ?
|
|
Das ist nicht das Problem, nicht ganz klar ist mir wie ich die Variable vom einen view ins andere bekomme.
Habe als Haupt"VIEW" VIEW docdaten = FROM doc USE docdaten KEYS LIST docdaten ... :K_CHANGE: put in FENST1 at 1,1 KEYS display docdaten with doc :K_MENU: ... put in FENSTHILFE at 1,1 MENU VERTICAL "Suche Vertragsnummer in Vertragstabelle" VIEW vtrdaten = FROM vtr USE vtrdaten Code:
Hier hätte ich jetzt gerne ein Feld, um in der VERTRAG.VSNR :K_UNDO: break end menu |
|
Hallo Rainer,
Dein "Such-View" lässt Du mit KEYS LIST anzeigen. Nun kann der Anwender blättern. Hat er den gewünschten Datensatz gefunden, kann er mit z.B. :K_DO: dies signalisieren. Dann musst den Wert aus VTRDATEN.VSNR nach DOCDATEN.D_VTR# übertragen. Da das VIEW DOCDATEN noch aktiv ist, kann die Übertragung direkt erfolgen. Dass müsste dann in etwa so aussehen: Code:
VIEW vtrdaten = FROM vtr |
|
Schande,
habe gerade bemerkt, dass ich in meiner Erläuterung vom 25.04. das Einbinden in :K_Change: angegeben hatte. Vom Grundsatz her ja kein Problem, nur Übernimmt mir OA die VSNR nicht, sondern schließt die Schirmmaske und geht wieder auf LIST DOCDATEN Bis dato habe ich jetzt: HTML-Code:
:K_INS: Allerdings habe ich mal K_SELECT getestet, mit dem der Vorgang ebenfalls abgebrochen wird. Dann würde ich vorher gerne noch eine SUCHVORGABE für die vtrdaten.vsnr machen. |
|
Nein, der Fehler liegt an dem ENTER.
Code:
:K_INS: |
|
display ist doch aber für die Darstellung der aktuellen Zeile.
Ich möchte jedoch einen neuen Datensatz in der Tabelle DOC anlegen. In der Schirmmaske habe ich DOC.VSNR (docdaten.vsnr) als Übereinstimmungsfeld zu VTR.VSNR (vtrdaten.vsnr). Hier möchte ich nun das bekannte OA-Problem (fehlende Suchfunktion mit F4 bei Übereinstimmungsfeldern) lösen. Folglich habe ich zwei view's und innerhalb des view's docdaten möchte ich nun bei der Eingabe eines neuen Datensatzes das eine Suche im view vtrdaten verwenden. |
|
KEYS DISPLAY und KEYS ENTER machen beide das Gleiche - der einzige Unterschied besteht darin, daß KEYS ENTER die Schirmmaske leert. KEYS DISPLAY hingegen übernimmt sämtlichen Inhalt aus der aktuellen Zeile. KEYS ENTER leert jedoch beim ENTER bereits nochmals die Eingabemaske (ähnlich dem NEW DATEN) selbst wenn ich vorher einen bestimmten Inhalt definiert habe.
|
| Alle Zeitangaben in WEZ +1. Es ist jetzt 17:07 Uhr. |
Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.