Autor Thema: SelectionFormula wird geändert, View updated nicht  (Gelesen 5393 mal)

Offline masseur81

  • Junior Mitglied
  • **
  • Beiträge: 90
Hallo,

ich habe in einem Formular eine Liste, die Daten per DbColumn aus einer View ausliest. Diese Ansicht soll aber abhängig von der UID des geöffneten Dokuments sein. Deshalb muss beim Öffnen des Dokumentes die SelectionFormula der View geändert werden.

Diese Formel wird nun auch gespeichert, ist auch korrekt, nur im View werden immer noch die gleichen Dokumente angezeigt.
Wenn ich den View dann im ND öffne, und den View erneut speichere, dann klappt es. Was muss ich tun, damit der View es gleich rafft? Die Methode Refresh der Klasse NotesView hat nicht geholfen.

Offline masseur81

  • Junior Mitglied
  • **
  • Beiträge: 90
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #1 am: 28.07.06 - 15:05:37 »
Kleine Ergänzung noch: @DbLookup geht hier sicher nicht, weil ich eine exklusive Abfrage habe, d.h. ich möchte alle Einträge anzeigen, die einen bestimmten Wert nicht haben.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #2 am: 28.07.06 - 15:42:22 »
WIE veränderst Du die view selection formula?
Verwendest Du @dbColumn mit dem NoCache-Parameter?

Bernhard

Offline ata

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #3 am: 28.07.06 - 23:26:11 »
... das hört sich ja spannend an. Du änderst die Selection-Formel einer Ansicht und erwartest, daß der Index sofort neu gebildet wird, bzw. möchtest wissen, wie du den Index auf einen Refresh bekommst...

... wäre vielleicht ein privater Odner das bessere Instrument?

Toni
Grüßle Toni :)

Offline masseur81

  • Junior Mitglied
  • **
  • Beiträge: 90
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #4 am: 31.07.06 - 07:11:01 »
Also ich führe vor dem Öffnen eines Formulars ein kleines LotusScript aus, welches per

Code
view.SelectionFormula = "..."

die Selektionsformel ändert. So wie ich das lt. Doku und internetquellen verstanden habe, sollte das schon reichen.

Dann wird das Formular geöffnet, und eine Listbox soll die Einträge dieses Views verwenden. Oder gibt es ne andere Möglichkeit?

Zusatzinfo über die Selektion: Es sollen nur bestimmte Dokumente angezeigt werden, die die UID des zu öffnenden Dokumentes in einem Multivalue-Feld nicht enthalten.

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #5 am: 31.07.06 - 09:07:02 »
Das ist hundsmiserable Bescheidene Mist Programmierung.

Tschuldigung aber das musste mal gesagt werden.

Erstens, was machst du denn wenn zwei Leute gleichzeitig die Maske öffnen. Zweitens, fehlt da nach der Änderung noch ein Refresh, damit der Indexer auch losläuft, schließlich muss der Index ja jedesmal neu gebildet werden. Und Drittens, was glaubst du was diese Art der Programmierung mit deiner Performance anstellt, wenn du mal mehr als ein paar hundert Dokumente in deine Datenbank hast.

Wenn schon dann macht man sowas mit einem DB.Search und steckt die Ergebnisse so wie man sie braucht in ein verstecktes Feld aus dem man dann die Auswahl zieht.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline masseur81

  • Junior Mitglied
  • **
  • Beiträge: 90
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #6 am: 31.07.06 - 12:55:11 »
Danke für den Tip, DB.Search könnte auch klappen, wobei ich dann den View, also diese eine Spalte auch simulieren muss (Wiederverwendbarkeit?).

Entschuldige die Bemerkung, aber bislang ist alles in Lotus Notes "hundsmiserable Bescheidene Mist Programmierung".

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #7 am: 31.07.06 - 13:03:51 »
Nein ist es nicht.
Du arbeitest nur einfach GEGEN das System. Das ist vermutlich das Kardinalproblem.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline masseur81

  • Junior Mitglied
  • **
  • Beiträge: 90
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #8 am: 31.07.06 - 14:05:12 »
Da stimme ich dir zu. Ich bin in Notes-Entwicklung absoluter Newbie und habe längst noch nicht alle Konzepte verstanden.

Allerdings lässt die Usability für den Entwickler auch stark zu wünschen übrig. Aber schweifen wir nicht vom Thema ab. Ich habe es mit DB.Search realisieren können, dein Tip war also sehr hilfreich.

Danke!

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #9 am: 31.07.06 - 15:37:07 »
Mit der Usability für den Entwickler stimme ich dir zu.

Der Rest ....

Gerade bei Domino/Notes Datenbanken ist es enorm wichtig, das man die darunterliegenden Konzepte und Strukturen, die sich von einer relationalen Datenbank grundlegend unterscheiden, verstanden hat, um brauchbare Anwendungen zu entwickeln. Dieser Lernprozess ist häufig mit ziemlichen Schmerzen für den Entwickler verbunden.

Der DB.Search funktioniert in Prinzip wie der Indexer für die Views und hat bei großen Datenbeständen auch die gleichen Probleme was die Performance angeht. Ist also nichts für Datenbanken mit zigtausenden von Dokumenten.
Was ich noch nie probiert habe ist ob ein NOT "!" vor einer Keyangabe in einem DBLookup wirkt. Damit wäre dein Problem nämlich schnell und effizient gelöst.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #10 am: 31.07.06 - 15:50:13 »
Was ich noch nie probiert habe ist ob ein NOT "!" vor einer Keyangabe in einem DBLookup wirkt.

Das Konzept sagt, dass genau dies eben nicht funktioniert: Der Suchbegriff muss exakt mit dem Wert übereinstimmen, gesehen vom 1. Zeichen her (bei Zahlen / Daten der komplette Wert). Damit ist ein NOT ausgeschlossen.

Bernhard

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #11 am: 31.07.06 - 15:50:40 »
"!" NOT vor dem Key geht nicht. Steht zwar auch so in der Hilfe, war aber einen Versuch wert.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #12 am: 31.07.06 - 15:53:58 »
Bernhard war schneller. Wobei das wieder so eine Lücke ist ...

Eigentlich wäre genau das logisch und vermutlich relativ einfach in die Formel mit einzubauen. Es ist ja nichts anderes als geh mit dem Key auf den View los und dreh anschließend das Ergebnis um.  ::)

Naja irgendwann mach ich doch noch ein Blog auf. "Die verpassten Gelegenheiten", oder "Wie man die Entwicklung von Notes Datenbanken unnötig erschweren kann" ......
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Glombi

  • Gast
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #13 am: 31.07.06 - 15:55:42 »
Also ich würde zuerst ein @DbColumn machen und dann denn @DbLookup und dann mit @Trim(@Replace.... das herausfiltern. Übrig bleibt alles ausser die Treffer.

Andreas

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #14 am: 31.07.06 - 15:58:04 »
Vorausgesetzt, dass @dbColumn knackt nicht die 64k-Grenze, Andreas  ;)

Bernhard

Glombi

  • Gast
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #15 am: 31.07.06 - 16:00:47 »
Das ist das Berufsrisiko  ;D
Mal sehen, wann IBM endlich diese dusselige Grenze kappt.

64K ist schon eine Menge. Die erste Spalte muss natürlich kategorisiert sein, damit gleiche Einträge nicht doppelt gezählt werden.

Andreas

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #16 am: 31.07.06 - 16:06:48 »
Andreas das hab ich mir auch schon überlegt, aber das geht nicht, weil du damit die Multivalue Dokumente nicht erwischt.

Zusatzinfo über die Selektion: Es sollen nur bestimmte Dokumente angezeigt werden, die die UID des zu öffnenden Dokumentes in einem Multivalue-Feld nicht enthalten.

Du müsstest eine Liste von Dokumenten rauskriegen und keine Liste von Werten, dann könnte es mit der Formelsprache funktionieren.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Glombi

  • Gast
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #17 am: 31.07.06 - 16:11:12 »
Das kapiere ich nicht. Warum soll das nicht gehen, wenn die erste Spalte kategorisiert ist  ???

Liste1 := @DbColumn("";"";"Ansicht";2);
Liste2 := @DbLookup("";"";"Ansicht";DocID;2);
@Trim(@Replace(Liste1;Liste2;""))

Andreas

Offline Thomas Schulte

  • @Notes Preisträger
  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #18 am: 31.07.06 - 16:19:47 »
Wenn ich mich micht komplett täusche dann hast du da immer noch die Daten drin von den Dokumenten wo die UNID des anderen als Mehrfachwert gespeichert ist

Doc 1
UNID1
UNID2
UNID3
UNID4
Doc 2
UNID1
UNID4
Doc 3
UNID2
UNID3

Ergibt als ersten dbcolumn
UNID1 (doc1)
UNID2 (doc1)
UNID3 (doc1)
UNID4 (doc1)
UNID1 (doc2)
UNID4 (doc2)
UNID2 (doc3)
UNID3 (doc3)
als zweites durch den Lookup
UNID4

Bleibt beim Trim immer noch:
UNID1 (doc1)
UNID2 (doc1)
UNID3 (doc1)
UNID1 (doc2)
UNID2 (doc3)
UNID3 (doc3)

stehen obwohl der Masseur (doc 1) und (doc2) nicht mehr in der Liste haben will.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Glombi

  • Gast
Re: SelectionFormula wird geändert, View updated nicht
« Antwort #19 am: 31.07.06 - 16:32:50 »
Die Ansicht muss nach UNID kategorisiert sein und der Key für den Lookup muss die UNID des Dokuments sein, welches herausgefiltert werden soll.
Zurückgegegen werden dann die Werte der 2. Spalte, die auch Mehrfachwerte enthalten können.

Durch das Replace werden dann alle Werte entfernt.

Es kann aber auch sein, dass ich die Aufgabenstellung völlig missverstanden habe...
Wie man mit einem DBColumn/DBLookup "Dokumente" zurückbekommen will versteh ich eh nicht.

Andreas

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz