Domino 9 und frühere Versionen > ND6: Entwicklung

Fehler bei PicklistCollection (Mit Lösung)

<< < (2/2)

Axel:
Zum Beispiel so:

Dim db As NotesDatabase
Set db = New NotesDatabase( "NameDesServers", "NameDerDatenbank" )

oder etwas kürzer so:

Dim db As New NotesDatabase ( "NameDesServers", "NameDerDatenbank" )


Axel

RalfK:
Hallo,

ein kleines Problem habe ich noch. Wenn ich nun ESC drücke oder Abbrechen, dann bekomme ich die Fehlermeldung "Object Variable not set". Das passiert wahrscheinlich, weil beim Aufruf von "Item1" ja kein Wert zurück geliefert wird.

Mit einer IF Schleife kann ich diese Fehlermeldung nicht abfangen. Welche Möglichkeit hätte ich sonst?

Grüße
Ralf

pete_bla:
Hi , wenn das noch dein code ist:

--- Zitat von: RalfK am 09.10.07 - 12:27:07 ---   Set col = ws.PickListCollection(1, False, db.Server, db.FilePath , "export",
        "Auswahl erstellen", "Bitte auswählen:")
   
   Set doc = col.GetFirstDocument

--- Ende Zitat ---
dann bau vor dem
set doc=col.getfistdocument

--- Code: ---if col.count = 0 then
    messagebox "nix gewählt"
    exit sub ' oder function oder wasauchimmerdudahast
end if

--- Ende Code ---
ein.

Gruss, Pete(r)

RalfK:
Ah super. Klappt ausgezeichnet. Dankeschön an alle. So, dann hier mal das komplette Script mit kleiner Beschreibung, falls jemand auch auf diese Problematik stösst.

Problemstellung:
In einem Dokument sollen Felder gefüllt werden. Die Werte werden aus einer Ansicht entnommen.

Voraussetzung in diesem Fall:
Es existiert ein Dokument (Maske1)mit den Feldern "Name" und "Strasse". Es existiert eine Schaltfläche (Dokument aus Maske2), in der das Script aufgerufen wird. Es existiert eine Ansicht "export" in der 2 Spalten sind, deren Feldwerte ebenfalls "Name" und "Strasse" heissen. (bezogen auf Maske1). Wir befinden uns jetzt in einem Dokument (Maske2)


Lösungsansatz:


   Dim db As NotesDatabase
   Dim session As New NotesSession
   Dim ws As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim currdoc As NotesDocument
   Dim doc As NotesDocument
   Dim col As NotesDocumentCollection
   Dim item1 As NotesItem
   Dim item2 As NotesItem
   
   Set db = Session.CurrentDatabase
   Set uidoc = ws.CurrentDocument
   Set currdoc = uidoc.Document

   ' Zuweisung der Felder im aktuellen Dokument zu den Items

   Set item1 = currdoc.GetFirstItem("Name")
   Set item2 = currdoc.GetFirstItem("Strasse")
   
   ' Aufruf der Dialogliste (PICKLIST_Custom, 1 Dokument maximal, gleicher Server, gleiche Datenbank, Ansicht "export")

   Set col = ws.PickListCollection(1, False, db.Server, db.FilePath , "export",_
        "Auswahl erstellen", "Bitte auswählen:")
   
   ' Schleife zum abfangen einer Fehlermeldung, wenn der Benutzer nichts wählt/ ESC drückt

   if col.count = 0 then
    messagebox "Keine Auswahl getroffen"
    exit sub
   end if

   
   ' Zuweisung der Werte aus der Dialogliste zu den Items im aktuellen Dokument
   Set doc = col.GetFirstDocument
   Call item1.AppendToTextList(doc.Name(0))
   Call item2.AppendToTextList(doc.Strasse(0))


Grüße
Ralf

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln