Autor Thema: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen  (Gelesen 8765 mal)

TY

  • Gast
Hallo,

ich habe ein Problem bei der Werteübernahme aus einem Kombinationsfeld in ein anderes Textfeld. Die beiden Felder sind in einer Teilmaske. Im Kombinationsfeld lasse ich mir Werte aus einer View anzeigen. Das funktioniert auch. Jetzt möchte ich je nach Auswahl die Werte in ein weiteres Textfeld innerhalb der Teilmaske übernehmen. Dazu habe ich im Kombinationsfeld "KSTZusatz" in den Eigenschaften beim Reiter "Steuerung" -> "Formel für Auswahl verwenden" folgenden Code:

_KST := @GetField("Kostenstelle");
_Bezug1 := @GetField("Bezug1");
FIELD KSTZusatz:=KSTZusatz;       -> wird vermutlich nicht mehr benötigt
FIELD VersandText:=VersandText; -> wird vermutlich nicht mehr benötigt

_liste := @DbLookup("":"NoCache"; "":""; "vwKSTZusatz"; _KST; "Kostenstelle");
_Zusatz := @DbLookup("":"NoCache"; "":""; "vwKSTZusatz"; _KST; 2);
_RaumNr := @DbLookup("":"NoCache"; "":""; "vwKSTZusatz"; _KST; 3);

@SetField("KSTZusatz"; _RaumNr);  -> Das funktioniert

@SetField("VersandText"; _Zusatz); -> funktioniert nicht

Das Feld VersandText wird nicht aktualisiert und je nachdem welches @SetField ich zuerst setze wird nur das Kombinationsfeld KSTZusatz mit entsprechenden Werten gefüllt.
Kann man überhaupt ein anderes Feld aus den Eigenschaften heraus füllen?

Danke schonmal und
Gruß Jürgen


« Letzte Änderung: 08.04.13 - 11:17:33 von JS »

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Hallo,

Schon mal nachgesehen, was die einzelnen LookUps zurueckliefern?


Andreas

Offline dnotes

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
Natürlich wird nur das Kombinationsfeld KSTZusatz mit entsprechenden Werten gefüllt und die zuletzt eingegebene Formel überschreibt alle anderen Formeln bei Dir.
Die Formel ist ja auch dafür gedacht die auswählbaren Werte in dem Feld zu berechnen.
Und nur dafür.

*Da muss man erst mal drauf kommen, an dieser Stelle so eine Formel einzugeben.
Da ist es dann auch ziemlich egal was die @DBLookups zurück geben.

TY

  • Gast
@Andreas: Die LookUps geben die Werte so zurück, wie sie in der Ansicht stehen.

@dnotes: Mh, wie kann ich anders die Werte aus dem Feld KSTZusatz in das Feld VersandText übernehmen?

Offline dnotes

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
Indem Du im Feld  VersandText die Formel - Achtung -  KSTZusatz eingibst.
*Ich vermute mal, das Feld VersandText ist berechnet?
Ha, ein Dreher war drin
« Letzte Änderung: 08.04.13 - 12:33:12 von dnotes »

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
OK.

Koenne wir das Ganz nochmal von vorne aufloesen.

KSTZusatz ist ein Kombinationsfeld. Die waehlbaren Werte, werden wie 'eingelesen'?
Das Feld "VersandText" ist was fuer ein Feld? (Textfeld, Kombinationsfeld)

Welche Werte sollen in diesses Feld VersandText und wann uebernommen werden?


Andreas

TY

  • Gast
Das Feld KSTZusatz ist ein Kombinationsfeld, Bearbeitbar. Hier lese ich über @DBLookup Werte aus einer Spalte einer Ansicht ein.
Das Feld VersandText ist ein Textfeld. Hier soll je nach Auswahl im Kombinationsfeld der entsprechende Text aus dem Kombinationsfeld rein. Das Feld VersandText habe ich auf Berechnet eingestellt.
Sobald sich die Auswahl in "KSTZusatz" ändert, soll sich auch der Text im Feld "VersandText" ändern.

Offline dnotes

  • Aktives Mitglied
  • ***
  • Beiträge: 106
  • Geschlecht: Männlich
Dann musst Du noch bei KSTZusatz einstellen "Refresh Fields on keyword change" oder wie das in Deutsch heisst.

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Dann sei mir die folgende Frage gestattet.

Was wolltest Du dann mit der Formel, die Du zuerst geposted hast?

Mit der von dnotes beschriebenen Einstellung im Feld "KSTZusatz" und der Formel

@If(@Trim(KSTZusatz) != ""; KSTZusatz; "")

im berechneten Feld VersandText, solltest
Du doch das Ergebnis erhalten, welche Du willst. Im Feld VersandText wird der aktuell gewaehlte Wert aus dem
Feld KSTZusatz angezeigt.


Andreas

TY

  • Gast
In dem Feld "VersandText" habe ich die Eigenschaften "Berechnet", "Berechnet zur Anzeige" und "Berechnet beim Anlegen" getestet. Aber es ändert sich nichts. "Refresh Fields on keyword change" würde ich gerne verwenden, aber wo stelle ich das ein?? Ich hatte auch die Formel aus KSTZusatz in VersandText eingegeben (mit der Wertzuweisung @SetField nach VersandText). Dann zeigt er mir in dem Feld den kompletten Inhalt des Kombinationsfeldes an und nicht nur den aktuell ausgewählten.
Und wenn ich einfach nur als Wert KSTZusatz eingebe oder @If(@Trim(KSTZusatz) != ""; KSTZusatz; ""), wird nichts mehr angezeigt. Mehr kann ich nicht eingeben, da es ein berechnetes Feld ist.
Die Werte in dem Kombinationsfeld kann ich beliebig auswählen, es ändert aber nicht den Wert im Feld "VersandText"  :(

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #10 am: 08.04.13 - 14:12:42 »
Na in den Eigenschaften des Feldes KSTZusatz.
(siehe Screenshot)


Andreas

TY

  • Gast
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #11 am: 08.04.13 - 14:27:43 »
Ja super. War etwas blind ..... Auf jeden Fall funktioniert es jetzt. Allerdings wird beim ersten Aufruf im Feld "VersandText" noch nichts angezeigt, obwohl in KSTZusatz schon ein Wert steht. Gibt es da auch noch eine Einstellung?

TY

  • Gast
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #12 am: 08.04.13 - 14:55:35 »
Die letzte Anforderung ist erst mal nicht ganz so wichtig.
Danke Euch für die Unterstützung

Gruß Jürgen

Offline ascabg

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.697
  • Geschlecht: Männlich
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #13 am: 08.04.13 - 15:15:20 »
Wo kommt denn der Wert her, der beim Erstellen eines neuen Dokumentes im Feld "KSTZusatz" bereits angezeigt wird?


Andreas

TY

  • Gast
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #14 am: 08.04.13 - 16:02:44 »
Das Ganze ist eine Teilmaske, die als DialogBox aufgerufen wird sobald ein bestimmter Button gedrückt wird. In der Teilmaske ist ein Wert schon vorbelegt (Kostenstelle). Zu diesem Wert kann es mehrere Zusatzwerte geben, die in einer Ansicht aufgeführt sind. Mit Wert von "Kostenstelle" geht "KSTZusatz" über @DBLookup in die Ansicht und holt sich die dazugehörigen Zusatzwerte in das Kombinationsfeld. Noch zur Info: In der Ansicht ist die Spalte "Kostenstelle" kategorisiert.

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #15 am: 08.04.13 - 16:34:01 »
In welcher Reihenfolge stehen die Felder? Notes rechnet, wie man liest, von links nach rechts und von oben nach unten.

TY

  • Gast
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #16 am: 08.04.13 - 16:48:58 »
Die Felder stehen in der Reihenfolge: Kostenstelle -> kategorisiert und aufsteigend sortiert, KSTZusatz -> aufsteigend sortiert.
Beim Aufruf der DialogBox steht im Kombinationsfeld KSTZusatz bereits der richtige Wert. Aber erst beim erneuten Auswählen wird das Feld "VersandText" gefüllt. Es wäre schön, wenn schon direkt beim Aufruf der DialogBox "VersandText" mit dem Wert aus "KSTZusatz" gefüllt würde.

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #17 am: 08.04.13 - 16:57:21 »
Ich meinte nicht die Reihenfolge in der Ansicht, sondern in der Teilmaske. Ich vermute, das KSTZusatz unterhalb von VersandText steht und daher gerechnet wird, bevor KSTZusatz befüllt wird.

Wenn Du die Reihenfolge in der Teilmaske nicht ändern kannst / willst, aktualisiere das Dokument im PostOpen (in Formelsprache sowas wie @Command ([ViewRefreshFields]), in Script NotesUIDocument.Refresh)

TY

  • Gast
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #18 am: 08.04.13 - 17:13:45 »
Ach so, danke  :) Nee, das Feld "VersandText" steht ganz unten in der Teilmaske. Werde aber die Formel im PostOpen testen.

TY

  • Gast
Re: Werte eines Kombinationsfeldes in ein anderes Feld übernehmen
« Antwort #19 am: 08.04.13 - 17:23:08 »
Ah, wenn ich in PostOpen folgendes eingebe:

@SetField("VersandText"; @GetField("KSTZusatz"));
@Command([ViewRefreshFields])

Dann funktioniert es.

Vielen Dank nochmal :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz