Variant mutiert zum String

  • Hallo!


    Ich habe in meinem Script ein kleines Phänomen, das ich mir nicht erklären kann:
    Im ersten Durchlauf ist eine als Variant definierte Variable auch Variant, also var(0). Im Zweiten Durchlauf bekomme ich die Meldung "Variant enthält keinen Container". Wenn ich im LS-Debugger nachsehe, dann steht bei var zwar der String, aber nicht in der Form var(0) (siehe Bild).

    LG Lotusfee
    Domino 9.0.1/ Notes 8.5.2 :-o


    "Wenn man keine Ahnung hat, einfach mal Fresse halten" (Dieter Nuhr)
    ... oder Jemand fragen, der sich mit sowas auskennt. (Gelbe Seiten)

  • Hängt einfach davon ab was in der entsprechenden Spalte drinsteht.
    Stehen dort mehrere Werte drin wird ein Array zurückgeliefert, steht nur ein Wert dann wird nur der eine Wert zurückgeliefert.

  • Hi!


    Ich habe der Spalte aber eigentlich die Info "Mehrfachwerte getrennt anzeigen" mitgegeben, weil ich das vermeiden wollte.


    Ergänzung: Die Variable ist explizit als Variant definiert!

    LG Lotusfee
    Domino 9.0.1/ Notes 8.5.2 :-o


    "Wenn man keine Ahnung hat, einfach mal Fresse halten" (Dieter Nuhr)
    ... oder Jemand fragen, der sich mit sowas auskennt. (Gelbe Seiten)

  • Ich will doch nur die Entsprechung von
    @Unique(@dbcolumn(...))) :-?

    LG Lotusfee
    Domino 9.0.1/ Notes 8.5.2 :-o


    "Wenn man keine Ahnung hat, einfach mal Fresse halten" (Dieter Nuhr)
    ... oder Jemand fragen, der sich mit sowas auskennt. (Gelbe Seiten)

  • Ich dachte, ViewEntries representieren immer ein Dokument...


    Übrigens: Das Script macht den selben Fehler bei ViewEntries:


    Dim se As New NotesSession
    Dim vc As NotesViewEntryCollection
    Dim i As Integer
    Dim count As Integer
    Dim SBList () As String
    Dim CurrentSB As Variant
    Dim entry As NotesViewEntry

    Set db = se.CurrentDatabase

    '* Extrahiere eine Liste aller Bearbeiter *
    Set view = db.GetView( "(Bearbeiter)" )
    view.AutoUpdate = False
    i = view.EntryCount

    ReDim SBList(0 To i-1)As String
    Set vc = view.AllEntries

    count = 0
    Set entry = vc.GetFirstEntry()
    While Not ( entry Is Nothing )
    CurrentSB = entry.ColumnValues(0)
    SBList(count)= CurrentSB(0)
    count = count +1
    Set entry = vc.GetNextEntry(entry)
    Wend

    LG Lotusfee
    Domino 9.0.1/ Notes 8.5.2 :-o


    "Wenn man keine Ahnung hat, einfach mal Fresse halten" (Dieter Nuhr)
    ... oder Jemand fragen, der sich mit sowas auskennt. (Gelbe Seiten)

  • Das hängt unter anderem auch von View Einstellungen und Spalteneinstellungen ab wie Werte in ColumnValues drin sind.


    Aber wie ich schon sagte: Wieso keine kategorisierte Ansicht. Ist definitiv performanter als so wie du es gerade machst

  • Ok!


    Ich habe eine Ansicht, in der die erste Spalte eine Kategorie ist und den Namen beinhaltet, den ich suche.


    Der Ansatz ist so:


    Set view = db.GetView( "100_110_Bearb")
    view.AutoUpdate = False
    Set vc = view.AllEntries
    Set entry = vc.GetFirstEntry()


    und dann???

    LG Lotusfee
    Domino 9.0.1/ Notes 8.5.2 :-o


    "Wenn man keine Ahnung hat, einfach mal Fresse halten" (Dieter Nuhr)
    ... oder Jemand fragen, der sich mit sowas auskennt. (Gelbe Seiten)

  • Jetzt gehts!!!!


    Dim se As New NotesSession
    Dim nav As NotesViewNavigator
    Dim vc As NotesViewEntryCollection
    Dim entry As NotesViewEntry
    Dim i As Long
    Dim count As Integer
    Dim CurrentSB As String

    Set db = se.CurrentDatabase
    Set view = db.GetView( "100_110_Bearb")
    view.AutoUpdate = False
    Set nav = view.CreateViewNav
    Set vc = view.AllEntries

    i= vc.Count
    ReDim SBList(0 To i-1) As String

    Set entry = nav.GetFirst
    count = 0
    While Not ( entry Is Nothing )
    CurrentSB = entry.ColumnValues(0)
    SBList(count)= CurrentSB
    count = count +1
    Set entry = nav.GetNextCategory(entry)
    Wend
    .....

    LG Lotusfee
    Domino 9.0.1/ Notes 8.5.2 :-o


    "Wenn man keine Ahnung hat, einfach mal Fresse halten" (Dieter Nuhr)
    ... oder Jemand fragen, der sich mit sowas auskennt. (Gelbe Seiten)