Domino 9 und frühere Versionen > ND6: Entwicklung

Replace ohne Ergebnis

(1/1)

bikerboy:
Hi Leute, hatte gerade ne schöne Idee wie ich meine Anwendung dazubringe sich nicht von dusseligen Usern aus dem Konzept bringen zu lassen.

Habe dazu folgende Function geschrieben :


--- Code: ---Function getFieldValue(doc As NotesDocument, Fieldname As String)As getFieldValueAsBool
' Diese Funktion soll Feldwerte auslesen und diese als Boolischen wert wieder rausgeben

' doc = das Dokument mit aus dem der Feldwert ausgelesen werden soll
' Fieldname = der Name des Feldes aus dem ausgelesen werden soll

On Error Goto ErrorGetFieldValue

Dim replaceValue As Variant

Dim arFind(3) As String
Dim arReplace(3) As String

arFind(0) = ""
arFind(1) = "-1"
arFind(2) = "1"
arFind(3) = " "

arReplace(0) = "0"
arReplace(1) = "0"
arReplace(2) = "0"
arReplace(3) = "0"

If doc.HasItem(fieldName) Then
replaceValue = doc.GetItemValue(fieldName)
replaceValue  = Replace(replaceValue, arFind,arReplace)
getFieldValue.Value = Cbool(replaceValue(0))
getFieldValue.Error = False
Else
getFieldValue.Value = False
getFieldValue.Error = True
End If

Finally :

Exit Function


ErrorGetFieldValue :

getFieldValue.Value = False
getFieldValue.Error = True

End Function



--- Ende Code ---

Und hier die Declaration meiner ersten Klasse :


--- Code: ---
Public Class getFieldValueAsBool
Public Value As Boolean
Public Error As Boolean
End Class


--- Ende Code ---


So wenn meine Funktion aus einem Textfeld nun einen leeren Wert zurück bekommt "" wandelt er ihn nicht um ! Ich kann mir aber nicht erklären warum das so ist.

Ich hoffe ihr könnt mir weiterhelfen

dirk_2909:
Warum so viel Code?

--- Code: ---function getFieldValue(doc As NotesDocument, Fieldname As String) As Boolean
' Diese Funktion soll Feldwerte auslesen und diese als Boolischen wert wieder rausgeben

' doc = das Dokument mit aus dem der Feldwert ausgelesen werden soll
' Fieldname = der Name des Feldes aus dem ausgelesen werden soll

On Error Goto ERROR_ME

if Fulltrim( cstr( doc.GetItemValue( Fieldname )( 0 ) ) ) = "" Then
     getFieldValue = false
else
     getFieldValue = true
end if

....
--- Ende Code ---


bikerboy:
Ja ich wollte mit der Funtion schon mehr abfangen als eine leeres Feld

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln