Autor Thema: XPages & @DbLookup  (Gelesen 5461 mal)

Offline Tobias211

  • Frischling
  • *
  • Beiträge: 15
  • Geschlecht: Männlich
XPages & @DbLookup
« am: 15.08.13 - 22:53:56 »
Guten Abend zusammen,

hier kommt leider eine Anfängerfrage, aber ich weiß mir nicht mehr anders zu helfen.  :-[

----------------------------------------

In einer DB bzw. XPage vorhanden: Eingabefeld: "inputText2" / ComboBox-Feld: "Auswahl" / Ansicht: "Maßnahmen_Zugriff_Abläufe"

Vorhaben: InputText2 wird mittels einer PickUp-Funktion mit einem Wert gefüllt, und gibt damit die Vorgabe für das ComboBox-Feld, welches mit einem
                  @DbLookup auf die Ansicht "Maßnahmen_Zugriff_Abläufe" schaut und mir die möglichen Werte aus Spalte 3 der
                  Ansicht zur Auswahl in der ComboBox gibt.

-----------------------------------------------------------------------------------

Zum Problem:

Ich schaffe es nicht der ComboBox beizubringen, den Wert aus dem Eingabefeld als Vorgabe für den @DbLookup zu übernehmen.
Die Box bleibt nach befüllen des Eingabefeldes einfach leer.

Wenn ich aber z. B. "einen möglichen Wert" aus der Ansicht fest in dem @DbLookup-Befehl der ComboBox verdrahte....

@DbLookup("","Maßnahmen_Zugriff_Abläufe","Umbaumaßnahmen zur Schaffung des Bereiches Marktfolge-IK", 3)

....dann klappt es. Die Ansicht ist also richtig aufgebaut (1. Spalte keine Kategorie etc....) und der Syntax des Befehls scheint somit auch richtig zu sein,
aber wenn ich den Suchwert wieder flexibel gestalten will (also auf den Inhalt des Eingabefeldes beziehe):

@DbLookup("","Maßnahmen_Zugriff_Abläufe", 'inputText2', 3)

habe ich nur wieder meine leere ComboBox. Ich habe jetzt echt lange überlegt und ausprobiert (Feldname mit Anführungszeichen / ohne Anführungszeichen,
Refresh der ComboBox über das OnChange-Event des Eingabefeldes (ich vermutete, die ComboBox bekommt die Eingabe einfach nur nicht mit) / Auslesen des Eingabefeldes, um den Wert als Variable weiterzugeben:

var Eingabe = getComponent("inputText2").getValue();
@DbLookup("","Maßnahmen_Zugriff_Abläufe", 'Eingabe', 3)

und und und......aber ich bekomme es einfach nicht hin.

Ich habe natürlich bereits dieses Forum nach einer passenden Lösung durchsucht, aber in Bezug auf die Xpages nichts passendes
gefunden. Die Designerhilfe hat mir leider auch nicht weitergeholfen:

http://www-10.lotus.com/ldd/ddwiki.nsf/xpDocViewer.xsp?lookupName=IBM+Domino+Designer+9+XPages+Reference#action=openDocument&res_title=DbLookup_JavaScript_dd9xr&content=pdcontent

Hier ist z. B. in den Beispielen (unter der Tabelle) auch immer nur die Rede von "einem bestimmten Wert" der fest verdrahtet gesucht wird, nicht aber von dem Bezug auf ein Feld, welches flexible Inhalte haben kann.

Könnte mir bitte jemand sagen, was ich im Syntax falsch mache, oder in wie fern ich bei den Feldern auf weitere
Dinge achten muss?

Vielen Dank im Voraus

Gruß Tobias
- Tobias -

>Irgendwie muss es gehen.....Geht nicht....Gibt`s nicht!<

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: XPages & @DbLookup
« Antwort #1 am: 16.08.13 - 02:02:40 »
Machst Du ein partial Refresh auf die Combobox, wenn sich das inputText2 Feld geaendert hat? Wenn nicht, dann bekommt die Combobox natuerlich nix mit.
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

Offline Tobias211

  • Frischling
  • *
  • Beiträge: 15
  • Geschlecht: Männlich
Re: XPages & @DbLookup
« Antwort #2 am: 16.08.13 - 22:20:58 »
Hallo m3,

Danke für den Hinweis, allerdings hatte ich das bereits berücksichtigt. Irgendwo muss der Fehler in der ComboBox gesteckt haben. Ich habe heute nochmal sauber von Vorne angefangen und nun klappt es.

Falls jemand anderes auch einmal vor dieser Fragestellung steht, hier meine "nun" funktionierende Lösung:

Vorgehensweise:

1. Eingabefeld anlegen (hier....inputText2)

2. eine ComboBox anlegen (hier....ComboBox1)

3. Entsprechende Ansicht anlegen ((hier.....Maßnahmen_Zugriff_Abläufe) / Gewünschte Werte stehen in der
    Spalte 3 der Ansicht)

4. im OnChange - Event des Eingabefeldes einen partial Refresh auf die ComboBox1 hinterlegen

5. die Werte-Auswahl der ComboBox mit folgendem Code versehen:

              // Variable namens "Eingabe" übernimmt den Wert aus dem Feld "inputText2"
              var Eingabe =  getComponent("inputText2").getValue();
             
              // Variable key wird mit dem Wert aus der Variablen "Eingabe" definiert
              var key  =  Eingabe

             // Es wird ein @DbLookup innerhalb der selben DB auf die Ansicht "Maßnahme....." mit dem
             // Kriterium "key" auf die Spalte 3 der Ansicht durchgeführt.
              @DbLookup(@DbName(),"Maßnahmen_Zugriff_Abläufe",key,3);

Fertig!

Gruß Tobi
- Tobias -

>Irgendwie muss es gehen.....Geht nicht....Gibt`s nicht!<

Offline m3

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: XPages & @DbLookup
« Antwort #3 am: 18.08.13 - 15:37:42 »
Fein. Und danke fuers Posten der Anleitung.  :D
HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz