Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Sese am 12.06.03 - 13:31:57

Titel: Problem mit der Eingabevalidierung
Beitrag von: Sese am 12.06.03 - 13:31:57
Hallo zusammen.

Ich habe ein Problem mit der Eingabevalidierung in einem Feld.

Und zwar will ich erzwingen, daß in einer Maske das Feld "Deadline" (Format : Datum) gefüllt sein muß.

Ich hab dafür folgende Formel in der Eingabevalidierung eingebaut:
Code
@If(Deadline="" & @IsDocBeingSaved;@Failure("Please enter the Deadline !");@Success)

Jedoch erscheint nach der gewollten Fehlermeldung "Please enter..." noch die folgende Fehlermeldung :
Notes Error - Feld hat Validierungsformel nicht entsprochen

Hat jemand eine Idee wie ich die Fehlermeldung unterdrücken kann ?

Nach Möglichkeit will ich die Überprüfung nicht in das Ereignis QuerySave  o.a. einbauen.

Danke im voraus.
Gruß
Sebastian
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: Till_21 am 12.06.03 - 13:34:40
@if(@text(Deadline)="";.....

gruss
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: Sese am 12.06.03 - 13:43:14
@if(@text(Deadline)="";.....

gruss

Das funktioniert auch nicht.

Die Fehlermeldung ist die gleiche.

Trotzdem Danke.

Gruß
SESE
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: klaussal am 12.06.03 - 13:44:32
....@if(@trim(@text(Deadline))="";.....

ist besser, sonst genügt ein druck auf die leertaste, und die validierung stimmt  ;D

die fehlermeldung "Feld hat.... nicht entsprochen" kann man nicht unterdrücken (soweit mir bekannt ist)  :'(
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: Sese am 12.06.03 - 13:52:26
Auch danke dafür.

Also werd ich wohl doch den Weg über QuerySave gehen müssen.
 :( :( :(


Gruß
SESE
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: Glombi am 12.06.03 - 13:56:46
Wird das Dokument evtl. durch ein Script gespeichert? Diese Meldung kenne ich bspw., wenn ich

call Source.Save

und hinter diesem Code noch was anderes kommt.

Gruß
Andreas
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: Sese am 12.06.03 - 14:02:44
Du hast recht.

Das Dokument wird über folgende Aktion gespeichert:

Code
Sub Click(Source As Button)
   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Set uidoc = workspace.CurrentDocument
   
   Call uidoc.refresh
   Call uidoc.save
End Sub


Nachtrag : Hab es jetzt über QuerySave gelöst.
                  War anders leider nicht möglich.


Gruß
SESE
Titel: Re:Problem mit der Eingabevalidierung
Beitrag von: Sese am 13.06.03 - 09:07:41
Unglaublich.

Jetzt hatte ich das Problem Gestern gelöst (halt mit QuerySave) und nun bekomme ich schon wieder eine zusätzliche Meldung.

Wenn ich QuerySave mit :     Continue = False

abbreche, dann bekomme ich noch diese Meldung :
"NotesUIDocument: Save cancelled"

----

Diese Meldung kam Gestern definitiv nicht.


Hier der Code:

Code
Sub Querysave(Source As Notesuidocument, Continue As Variant)
   
   Dim session As New NotesSession
   Dim user As String
   user = session.CommonUserName      
   
   Dim Dead As String
   Dead = source.fieldgettext("Deadline")
   
   If Dead = "" Then
      Msgbox ("Please enter the Deadline before you save !")
      Call source.GotoField( "Deadline" )
      continue = False
   Else   
      Call source.refresh
      Call source.fieldsettext("ChangedBy",user)

      Print "Document saved by " + user + " on " +dateV +" !"
   End If 
   
End Sub

Wäre für Hilfe echt dankbar.

Gruß
SESE