Domino 9 und frühere Versionen > ND8: Entwicklung

Illegal function call mit der Funktion "Len"

(1/1)

Brocki:
Hallo Zusammen,

ich habe eine kleine Unterroutine geschrieben mit der ich auf den gefüllten Inhalt von Feldern prüfe:

Sub transferValues(sourceDoc As NotesDocument, sourceFieldName As String, newDoc As NotesDocument, destFieldName As String)
   If Len( sourceDoc.Getitemvalue(sourceFieldName)(0) ) > 0 Then
       Call newDoc.ReplaceItemValue(destFieldName, sourceDoc.GetItemValue(sourceFieldName)(0))
   End If
End Sub

Das Feld bei dem die Fehlermeldung erscheint ist vom Typ "768" also Number oder NumberList.
In der Hilfe steht, das bei "numberExp" die Bytegröße zurückgegeben wird, wenn es gefüllt ist.
Aber wie gesagt es knallt mit der genannten Fehlermeldung und das verstehe ich nicht.

Hat dies jemand schon mal gehabt? Welche Erfahrungen habt Ihr mit dieser Funktion erlebt?

Grüße Stefan

ascabg:
Hallo,

Soweit ich mich erinnere, bezieht sich dieses aber darauf, wenn mit Len eine numerische Variable abgefragt wird.

Dim lngTest As Long

lngTest = 1900
Len(lngTest)


Andreas

Brocki:
Hallo,

hier mein Workaround:

Sub transferValues(sourceDoc As NotesDocument, sourceFieldName As String, newDoc As NotesDocument, destFieldName As String)
    Dim item As NotesItem
    Set item = sourceDoc.GetFirstItem(sourceFieldName)
    
    If Not (item Is Nothing) Then
        If Len( item.Text ) > 0 Then
            Call newDoc.ReplaceItemValue(destFieldName, sourceDoc.GetItemValue(sourceFieldName))
        End If
    End If    
End Sub

Evtl. geht es auch eleganter.
Für meine Zecke geht es.

Grüße Stefan

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln