Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: tabama am 03.02.04 - 14:06:41

Titel: Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: tabama am 03.02.04 - 14:06:41
Hallo,

Problem:
ist das Feld leer, ist es vom Type "STRING"
ist es gefüllt, ist es vom Type "Double"

meine Prüfung:
dim doc set doc usw.
if doc.feld(0) = "" then
print falsch
endif

solange das Feld leer ist, ist alles ok.
wenn aber eine Zahl eingegben wird, kommt natürlich der Fehler "Typemismath", was ja auch richtig ist.

wenn ich aber
if doc.feld(0) = 0 then

dann gibt es ein Fehler, wenn das Feld leer ist.

Eine Umwandlung mit cstr() oder val() bringt auch nichts.

Also:
Wie kann ich prüfen, ob ein Zahlenfeld leer ist??

Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: sloe am 03.02.04 - 14:44:22
Hi,
probier es mal so...
if Len(doc.feld(0)) = 0 then
print "falsch"
endif
Gruß
sloe
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: koehlerbv am 03.02.04 - 14:55:00
@sloe:
Das ist doch das gleiche - Len wirkt auf String, nicht auf Zahlen.

@tabama:
Und sollte Cstr nicht funktionieren ? Das tut es nämlich ... Du brauchst nur auf Cstr (doc.Feld (0)) = "" zu prüfen.

Bernhard
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: Axel am 03.02.04 - 14:57:00
Hi,

ich hab das mal so gelöst:

...
If Datatype(doc.Karte(0)) = 5 Then
    Print "Feld ausgefüllt"
Else
    Print "Feld ist leer"
End If
...


Axel
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: tabama am 03.02.04 - 14:57:25
Nur zu Hälfte OK

funkt bei keiner Eingabe und bei Zahleneingabe.

Bringt aber Fehler bei Texteingabe "Varaint does not contain a container"
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: koehlerbv am 03.02.04 - 14:58:49
Das ist etwas unverständlich, was Du da schreibst. Werde mal genauer ...
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: tabama am 03.02.04 - 15:05:29
es ist schnuppe, ob ich mit len() oder datatype() oder cstr() arbeite.

wenn im Feld ein text eingegeben wird, kommt der Fehler "Variant does not contain a container"
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: Axel am 03.02.04 - 15:17:10
Hi,

poste mal den Code, damit wir uns ein Bild machen können.


Axel
Titel: Re:Prüfen ob Feld (Typ Zahl) leer ist
Beitrag von: koehlerbv am 03.02.04 - 15:32:35
Das Verhalten ist insofern klar, als das Notes kein Item anlegt, wenn ein falscher Datentyp für die Eingabe im Frontend verwendet wird. Spätestens beim Speichern beschwert sich er Client dann: "Falscher Datentyp - Zahl erwartet !".
Du prüfst aber bereits vorher. Du must daher das betreffende Item instantiieren (Set NotesItem = NotesDocument.GetFirstItem ("...") )
und dann erstmal dessen Existenz prüfen. Geht das bereits in die Hose -> Ausgang. Ansonsten kannst Du mit Cstr weitermachen.

HTH,
Bernhard