Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Don Pasquale am 20.09.02 - 14:23:51

Titel: Script: Isempty(Feld) immer False
Beitrag von: Don Pasquale am 20.09.02 - 14:23:51
Hi Folks,

Ich will eine Abfrage, ob das Feld eines Dokuments
leer ist oder nicht.
isempty(Feldname) ergibt bei mir aber immer ein
false, egal ob da was drin steht oder nicht.

Wo ist mein Denkfehler ?

Don Pasquale

Code

     Dim ws As New NotesUIWorkspace  
     Dim session As New NotesSession
     Dim db As NotesDatabase
     Dim collection As NotesDocumentCollection
     Dim doc As NotesDocument  
     Dim stringArray As String  
     Dim composed As String  
     Dim idx As Integer
     Dim temp As Variant                  
     Dim Anzeigetext As String
     Set db = session.CurrentDatabase
     Set collection = db.UnprocessedDocuments  'Alle markierten Docs in die Kollection
     
     For idx = 1 To collection.Count
           Set doc = collection.GetNthDocument(idx)
           
           If Isempty(doc.pe_Identnummer(0)) Then
                 Messagebox "Es ist empty"
           Else
                 Messagebox Isempty(doc.pe_Identnummer(0))
           End If

next
Titel: Re: Script: Isempty(Feld) immer False
Beitrag von: manuel am 20.09.02 - 14:39:26
Probiers besser mit

If doc.pe_Identnummer(0) = "" Then ...


Schönen Gruß
Manuel
Titel: Re: Script: Isempty(Feld) immer False
Beitrag von: manuel am 20.09.02 - 14:46:51
Noch ein Tipp, verwende statt deiner For-Schleife eine While

...

Set collection = db.UnprocessedDocuments  'Alle markierten Docs in die Kollection  
Set doc = collection.GetFirstDocument
 
While Not (doc Is Nothing)

 
 If Isempty(doc.pe_Identnummer(0)) Then
  Messagebox "Es ist empty"
 Else
  Messagebox Isempty(doc.pe_Identnummer(0))
 End If

Set doc = collection.GetNextDocument(doc)
Wend



Begründung: http://217.160.137.156/html/cgi-bin/yabb/YaBB.pl?board=R5TIP;action=display;num=1018593291
Titel: Re: Script: Isempty(Feld) immer False
Beitrag von: Don Pasquale am 20.09.02 - 15:04:19
Hallo Manuel,

Vielen Dank für Deine Tipps,

Mit Doc.Identnummer(0)="" bekam ich immer ein : "Type Mismatch"

Ich hab´s es so gelöst :

Dim Inhalt As String
Inhalt = ""
Inhalt =doc.pe_Identnummer(0)
If Inhalt ="" Then
           Messagebox "Leer"
End If

Das andere schau ich mir gleich an

Gruß
Pascal
Titel: Re: Script: Isempty(Feld) immer False
Beitrag von: manuel am 20.09.02 - 15:11:46
Könnte das "Type Mismatch" vielleicht daran liegen, dass du bei Doc.Identnummer(0)="" etwas vergessen hast. Beim Inhalt =doc.pe_Identnummer(0) hast du es wieder richtig gemacht.
Titel: Re: Script: Isempty(Feld) immer False
Beitrag von: Don Pasquale am 20.09.02 - 15:22:08
Öhm, nein bestimmt nicht.  :-/
hüstel
Danke für den Tipp  ;)

Ich hätte da noch eine Frage :

Ich versuche das aktuelle Dokument in der Schleife
mit          temp = ws.folder("Register",True)
zu verschieben, erhalte aber ein
Variant does not contain object, oder aber
es werden alle selektierten Dokumente verschoben.

mit temp = doc.folder("Register",True)
erhalte ich ein Wrong Number of Array subscripts


don