AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
24.04.19 - 20:09:58
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Lotus Notes / Domino 8
| |-+  ND8: Entwicklung (Moderatoren: Axel, Thomas Schulte, koehlerbv)
| | |-+  Set view = uiview.View (object variable not set)
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Set view = uiview.View (object variable not set)  (Gelesen 596 mal)
booltrue
Frischling
*
Offline Offline

Beiträge: 30


« am: 14.02.19 - 14:40:36 »


Wenn ich den folgenden Code im Queryopen Event oder Queryclose Event aufrufe, bekomme ich immer
die Fehlermeldung "object variable not set", d.h. uiview ist null.
Die Fehlermeldung kommt immer, wenn zwischen Views gewechselt wird.

Im Postopen Event kommt die Fehlermeldung nur ab und zu, dann aber beim Starten der DB.

In einem dieser Events benötige ich aber den Code.
Wo kann uiview noch initialisiert werden, oder woran liegt es?


Dim view As NotesView
Dim uiview As NotesUIView
Set uiview = uiworkspace.CurrentView
Set view = uiview.View

Gespeichert
Klafu
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 1899


Remember the Cookies!


« Antworten #1 am: 14.02.19 - 15:36:29 »

Wenn du beim öffnen einer Datenbak schon die CurrentView willst, dann ist die ja sicher bekannt, welche Notes öffnen wird.
Hol sie doch lieber gleich direkt.

Code:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Set db = session.CurrentDatabase
Set view = db.GetView( "Authors" )


P.S. Ist es Absicht, dass in deinem Codeschnippsel das Dim uiworkspace As New NotesUIWorkspace fehlt?

Chris
Gespeichert

„Der einzige Mensch, der sich vernünftig benimmt, ist mein Schneider. Er nimmt jedesmal neu Maß, wenn er mich trifft, während alle anderen immer die alten Maßstäbe anlegen in der Meinung, sie paßten auch heute noch...“
booltrue
Frischling
*
Offline Offline

Beiträge: 30


« Antworten #2 am: 15.02.19 - 11:04:15 »


Ja, da hast du ganz recht.
Ich mach' das immer ziemlich generisch, ist aber nicht immer angebracht bei Notes  Smiley
Die View ist ja schon bekannt, habe das nun auch so umgesetzt.

Dim uiworkspace As New NotesUIWorkspace hat es wohl nicht mitkopiert  Ahnungslos
das sollte da aber schon stehen.

Der Code steht im Queryopen event.
Am Schluß rufe ich Call uiworkspace.ViewRebuild auf.
Bekomme hier aber immer beim Öffnen(und nur beim Öffnen) der Datenbank folgenden Fehler:
"Der angegebene Befehl ist vom Arbeitsbereich aus nicht verfügbar"

Woran liegt das?

Gespeichert
Peter Klett
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 2586



« Antworten #3 am: 15.02.19 - 12:08:21 »

Das ist vermutlich zu früh, ist ja QueryOpen, also vor dem Öffnen. Prüfe mal, ob Du das Rebuild überhaupt brauchst, ansonsten ins PostOpen verlagern

EDIT: ist vermutlich Quatsch. Im welches QueryOpen handelt es sich? Das der Ansicht oder des Dokuments?
« Letzte Änderung: 15.02.19 - 12:12:27 von Peter Klett » Gespeichert
booltrue
Frischling
*
Offline Offline

Beiträge: 30


« Antworten #4 am: 15.02.19 - 13:12:22 »


Es handelt sich um das QueryOpen Event der Ansicht und ja, es scheint dafür zu früh zu sein.
Ich habe den Code nun ins QueryClose Event verschoben, sollte aber auch im Postopen Event laufen, ja

Was ich mache:
Ich habe im View 3 Buttons zum Filtern der Ansicht,
dort wird folgender Code ausgeführt, der die Ansichtsauswahl-Formel ändert:
NewViewFormula = |SELECT Form = "form" & Spalte1 = "x" & Spalte2 ="y"|
view.SelectionFormula = NewViewFormula
Call uiworkspace.ViewRebuild

Der gleiche Code wird im QueryClose Event aufgerufen, um die Ansichtsauswahl-Formel wieder in den Ursprungszustand zu ändern.
Wenn ich dort kein .ViewRebuild mache, dann bleibt der Filter beim Wechsel der Ansicht und beim Neustart der Datenbank erhalten.


« Letzte Änderung: 15.02.19 - 13:13:54 von booltrue » Gespeichert
umi
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 2041


one notes to rule'em all, one notes to find'em....


WWW
« Antworten #5 am: 15.02.19 - 14:49:20 »

Moin

Ist das eine Private Ansicht ? oder hat da jeder Benutzer Designer Rechte ?
Gespeichert

Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>
booltrue
Frischling
*
Offline Offline

Beiträge: 30


« Antworten #6 am: 18.02.19 - 09:48:52 »


Wie ist das gemeint:
Code:
oder hat da jeder Benutzer Designer Rechte ?

Die Ansicht ist als Ansichtstyp "Gemeinsam" angelegt.




Gespeichert
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: