Autor Thema: input validation feld voll feld leer  (Gelesen 3565 mal)

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
input validation feld voll feld leer
« am: 26.06.02 - 15:54:26 »
hallo,

ich moechte gerne folgendes erreichen:

wenn im feld "customer" was drin steht, aber im feld "cell availab" nix drinsteht, dann soll eine fehlermeldung kommen.

hab in die validierung eingegeben:
@If( customer !="" & cell_availab="";@Failure("you must type cell availability !");@True)

aber das haut so nicht hin. es steht im feld customer was drin, und trotzdem besteht er drauf, dass im feld cell_availab auch was reingeschrieben wird !!!

grund:
zwei user fuellen die maske. der eine erstellt sie, schreibt in das feld customer was rein, aber nicht ins feld cell availab. das soll erstmal leer bleiben.
der zweite user muss dann das dok oeffnen, und der muss in das feld cell availab aber was eintragen. das feld customer ist beim zweiten user aber immer gefuellt. weil der hat auch eine validierung, dass er im feld customer was eingeben muss (der erste user).

was mach ich falsch?

danke und gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: input validation feld voll feld leer
« Antwort #1 am: 26.06.02 - 17:08:30 »
Hi luna,
versuchs mal so rum

@If(customer !="" & cell_availab="";@True; @Failure("you must type cell availability !"))

allerdings hat es einen Schönheitsfehler wenn der 2. User das 2te Feld ausfüllt haut die Formel nicht mehr hin.


Gruss
Bubble
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #2 am: 27.06.02 - 07:49:50 »
hallo bubble,

vielen dank, aber so nuetzt mir die formel leider nix. weil wenn jetzt der erste user das dok anlegt, kriegt er zwar keine fehlermeldung mehr, aber wenn jetzt der zweite user das feld cell_availab ausfuellt (wie du schon sagtest), dann kriegt halt der die fehlermeldung, obwohl er das feld ausgefuellt hat.

noch ein anderer vorschlag? vielleicht sowas in der richtung:

wenn der user die rolle X hat und nur dann das feld Y nicht ausfuellt oder so? weil fuer jeden bereich gibt es eine rolle.

gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: input validation feld voll feld leer
« Antwort #3 am: 27.06.02 - 08:27:25 »
Hallo luna,

ich könnte mir vorstellen, dass man über LS die Sache abfängt (neues Doc, bestehendes Doc oder mit einem Zähler) - so als Gedankengang  ::)

Gruss
Bubble
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #4 am: 27.06.02 - 10:32:21 »
hallo bubble,

also, vielen dank fuer deine hilfe, aber das hilft mir jetzt so nix, weil ich von LS ungefaehr soviel ahnung hab wie von der weltraumforschung.

ich dachte halt, ich koennte die validierung um die rolle erweitern, dann waere das problem im prinzip geloest.
schade, dass das nicht geht.

tja, dann kann ich mir nur noch vorstellen, dass ich das ganze evtl. ueber subforms regeln muss. weiss zwar noch nicht genau wie und ob das dann ueberhaupt funzt. und die DB ist halt schon live: "never touch a running system".

ich werd mir halt jetzt einfach was ueberlegen, oder vielleicht hat ja noch jemand einen tip, wie es doch noch mit der validierung gehen koennte, ohne LS.

gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Trust

  • Frischling
  • *
  • Beiträge: 4
  • I love YaBB 1G - SP1!
Re: input validation feld voll feld leer
« Antwort #5 am: 27.06.02 - 19:21:57 »
hi luna

wie ich das verstehe muss das feld "cell availab" erst nach dem anlegen des dokumentes valediert werden!?

wenn das so ist dann machs so !

@If(@IsNewDoc ; @True ;@If( customer !="" & cell_availab="";@Return(@Failure("you must type cell availability !"));@True))

hoffe es hilft  :-/
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #6 am: 28.06.02 - 08:58:27 »
Zitat

@If(@IsNewDoc ; @True ;@If( customer !="" & cell_availab="";@Return(@Failure("you must type cell availability !"));@True))

hoffe es hilft  :-/

hallo trust,

vielen dank fuer deine hilfe. wenn ich das recht verstehe, sagt die formel, gib mir die fehlermeldung NUR dann aus, wenn das dokument nicht gerade neu erstellt wird, sondern wenn das bereits bestehende dokument im editiermodus geoeffnet wird. das macht in diesem fall auf jeden fall sinn. aber bevor ich die formel ausprobiere, doch noch eine frage:

ich hab in dieser maske ungefaehr 5 sektions. das heisst, jede sektion hat mehrere felder, deren bearbeitung ueber rollen geregelt ist. wenn nun der ersteller feld1 ausfuellen MUSS und der naechste bearbeiter feld2 ausfuellen MUSS, aber nur, wenn nicht neues dok, was mach ich dann mit feld3, 4 und 5?

ich meine, der naechste muss dann das feld3 ausfuellen, sonst kriegt er eine fehlermeldung. wenn ich dann aber deine formel im feld3 wiederum auch eingebe, dann kriegt ja der, der feld2 ausfuellen muss, auch wiederum die meldung, oder? weil dann waere es ja in beiden faellen kein new doc.

gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Trust

  • Frischling
  • *
  • Beiträge: 4
  • I love YaBB 1G - SP1!
Re: input validation feld voll feld leer
« Antwort #7 am: 28.06.02 - 10:54:19 »
Zitat

hallo trust,

vielen dank fuer deine hilfe. wenn ich das recht verstehe, sagt die formel, gib mir die fehlermeldung NUR dann aus, wenn das dokument nicht gerade neu erstellt wird, sondern wenn das bereits bestehende dokument im editiermodus geoeffnet wird. das macht in diesem fall auf jeden fall sinn. aber bevor ich die formel ausprobiere, doch noch eine frage:

ich hab in dieser maske ungefaehr 5 sektions. das heisst, jede sektion hat mehrere felder, deren bearbeitung ueber rollen geregelt ist. wenn nun der ersteller feld1 ausfuellen MUSS und der naechste bearbeiter feld2 ausfuellen MUSS, aber nur, wenn nicht neues dok, was mach ich dann mit feld3, 4 und 5?

ich meine, der naechste muss dann das feld3 ausfuellen, sonst kriegt er eine fehlermeldung. wenn ich dann aber deine formel im feld3 wiederum auch eingebe, dann kriegt ja der, der feld2 ausfuellen muss, auch wiederum die meldung, oder? weil dann waere es ja in beiden faellen kein new doc.

gruss,
daniela



hi

hier meine Vorstellung der Abarbeitung im Dokument:

1. Erstellung des Dokumentes
Valedierung für Feld1
( @If (Feld1 = "" ; @Return(@Failure("Bitte eingeben!")) ; @True )

2. Bearbeitung durch ersten Bearbeiter
@If(@IsMember("[ROLLE1]";@UserRoles);@True;@Return(@True));
@If (@IsNewDoc ; @True ;
@If (Feld1 != "" & Feld2 = "" ; @Return(@Failure("Bitte eingeben!")) ;@True ))

2. Bearbeitung durch zweiten Bearbeiter
@If(@IsMember("[ROLLE2]";@UserRoles);@True;@Return(@True));
@If (@IsNewDoc ; @True ; @If (Feld1 != "" & Feld2 != "" & Feld3 = "" ; @Return(@Failure("Bitte eingeben!")) ; @True ))

usw......

gilt nur für eine section mit der bestimmten Rolle

gruss trust





« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #8 am: 28.06.02 - 11:00:29 »
hallo trust,

GENAU so hab ich mir das ganze vorgestellt. wusste nur nicht, wie man sowas angeht.

ich werd mich jetzt in ruhe hinsetzen, und das gleich mal ausprobieren. ich melde mich mit dem ergebnis.

vielen lieben dank fuer deine hilfe,
gruss,
daniela  :D
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
input validation mit rollen
« Antwort #9 am: 01.07.02 - 15:54:03 »
hallo trust,

leider haut das nicht so hin.

ich hab jetzt folgendes drin:

im orangen bereich:


@If(customer ="";@Failure("you must type in a customer name !");@True)



im blauen bereich:


@If(@IsMember("[blau]";@UserRoles);@True;@Return(@True));@If (@IsNewDoc ; @True; @If (customer !="" & cell_availab = "" ; @Return(@Failure("Please enter text in field cell availability!")) ;@True ))



im rosa bereich:


@If(@IsMember("[pink]";@UserRoles);@True;@Return(@True));@If (@IsNewDoc ; @True; @If (customer !="" & cell_availab != "" & production ="" ; @Return(@Failure("Please enter text in field production!")) ;@True ))



wenn ich das dokument mit der rolle orange neu anlege, dann kommt die fehlermeldung, wenn ich ein feld nicht ausfuelle.

wenn ich dann von orange auf blau wechsle, und fuelle das feld "cell_availab" einfach nicht aus, dann laesst er mich das dokument ganz normal abspeichern, ohne zu meckern.

das gleiche gilt fuer das feld "production" mit der rolle "pink" im rosa bereich.

er gibt also fuer die beiden naechsten editoren keine fehlermeldungen aus. irgendwas ist da noch falsch in der formel. magst du sie dir nochmal anschauen?

vielen dank und gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Wipe

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 873
  • Geschlecht: Männlich
Re: input validation feld voll feld leer
« Antwort #10 am: 01.07.02 - 16:24:42 »
Hi,

ist vielleicht simpel könnte aber gehen. luna Du sagtest derjenige der das Doc erstellt soll in Feld 1 was reinschreiben jedoch Feld 2 nicht.

habe in der hide wenn Option einfach Feld 2 verstecken wenn @IsNewDoc
Wenn Doc besteht dann zeigt er halt alles an.

Vielleicht ein Ansatz.

Gruss
Bubble
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #11 am: 01.07.02 - 17:02:23 »
hallo bubble,

vielen dank fuer deine hilfe, aber das ist leider nicht so einfach. nochmal zum ganzen konzept, aber sehr vereinfacht:

1.) in dieser DB haben 3 leute zugriff, jeder aber nur in seinem bereich (orange, blau, pink).
person 1 sieht per hide/when alle editierbaren felder im bereich orange, alle felder im bereich pink und blau sind per hide/when versteckt, dort sieht er nur die computed for display felder.
person 2 sieht per hide/when computed for display felder im bereich orange, im bereicht blau sieht er editierbare felder, die er eben editieren kann, und im bereich pink sieht er wieder nur computed for display felder.
person 3 sieht computed for display felder fuer orange und blau, im bereich pink hat er editierbare felder.

was ich will:

person 1 soll im bereich orange validierungsfehler bekommen, wenn er seine orangen felder nicht ausgefuellt hat. soweit klappt ja alles.

person 2 soll im bereich blau fehler bekommen, wenn er die felder im bereich blau nicht ausgefuellt hat. aber nur die !

person 3 soll im bereich pink eine fehlermeldung kriegen, wenn er in diesem bereich ein feld leer laesst.

person 2 soll aber keine fehlermeldung kriegen, wenn ein feld im bereich pink leer ist, das interessiert ihn in diesem moment noch nicht. aber die felder im bereich pink werden ihm ja eh nur computed for display angezeigt.

und alle personen sollen im feld "action history" reinschreiben, was sie getan haben. ist ueber lotus script geregelt.

also, person 1 krieg ich hin, aber person 2 und 3 nicht.

gruss,
daniela  :P
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: input validation feld voll feld leer
« Antwort #12 am: 02.07.02 - 08:36:20 »
Hi Daniela,

versuch doch mal die Validierung im QuerySave-Event der Maske.

Zur Erkennung welche Rolle gesetzt ist habe ich vor einiger Zeit diese Funktion erstellt:

Function RoleEnabled(sRole As String) As Integer
     
     Dim vResult As Variant
     
     vResult = Evaluate(|@IsMember("| & sRole & |"; @UserRoles)|)
     
     If vResult(0) = 1 Then
           RoleEnabled = 1
     Else
           RoleEnabled = 0
     End If  'If vResult(0) = 1
     
End Function

Binde diese mit ein und versuch dann mal folgenden Code im QuerySave-Event:

...

If RoleEnabled("[Orange]") Then
 If Source.FieldGetText("Feld1") <> "" Then
   Messagebox "Feld1 darf nicht  leer sein"
   Exit Sub
 End If

' Hier können weitere Validierungen stehen

End If


If RoleEnabled("[Blau]") Then
 If Source.FieldGetText("Feld2") <> "" Then
   Messagebox "Feld2 darf nicht  leer sein"
   Exit Sub
 End If

' Hier können weitere Validierungen stehen

End If


If RoleEnabled("[Pink]") Then
 If Source.FieldGetText("Feld3") <> "" Then
   Messagebox "Feld3 darf nicht  leer sein"
   Exit Sub
 End If

' Hier können weitere Validierungen stehen

End If

...

Ist aus dem Kopf entstanden sollte aber funktionieren. Ich führe meine Validierungen in der Regel im Querysave-Event durch, da ich hier mit Script mehr Möglichkeiten habe.


Gruss

Axel






« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #13 am: 02.07.02 - 13:49:02 »
hallo axel,

vielen dank fuer deine formel.

ich hab das jetzt bei mir implementiert, aber ich kenn mich halt leider zuwenig aus, dass ich das gross veraendern koennte.

ich habs so:


hab ein RoleEnabled object mit dieser formel:
Function RoleEnabled(sRole As String) As Integer
     
     Dim vResult As Variant
     
     vResult = Evaluate(|@IsMember("| & sRole & |"; @UserRoles)|)
     
     If vResult(0) = 1 Then
           RoleEnabled = 1
     Else
           RoleEnabled = 0
     End If  'If vResult(0) = 1
     
End Function


und im query save steht drin:
Sub Querysave(Source As Notesuidocument, Continue As Variant)
     If RoleEnabled("[orange]") Then
           If Source.FieldGetText("customer") <> "" Then
                 Messagebox "Feld1 darf nicht  leer sein"
                 Exit Sub
           End If
           
' Hier können weitere Validierungen stehen
           
     End If
     
     
     If RoleEnabled("") Then
           If Source.FieldGetText("cell_availab") <> "" Then
                 Messagebox "Feld2 darf nicht  leer sein"
                 Exit Sub
           End If
           
' Hier können weitere Validierungen stehen
           
     End If
     
     
     If RoleEnabled("[pink]") Then
           If Source.FieldGetText("production") <> "" Then
                 Messagebox "Feld3 darf nicht  leer sein"
                 Exit Sub
           End If
           
' Hier können weitere Validierungen stehen
           
     End If
End Sub




da hab ich jetzt aber schon das erste problem:

wenn ich mir die rolle "orange" gebe, und alle felder im bereich orange ausfuelle, dann das dokument abspeichere, krieg ich diese fehlermeldung:

"feld1 darf nicht leer sein".

feld1 ist bei mir das feld "customer". hab ich ja auch so definiert, im script.

problem ist nur, dass ich ja im feld1 (customer) was reingeschrieben hab. er schliesst und speichert mir das dokument zwar, aber trotzdem gibt er diesen fehler aus. das macht er uebrigens jedesmal, wenn ich das dokument dann wieder oeffne und schliesse.

gebe ich mir die rolle "blau" ohne die rolle orange, dann ist es noch komischer:

ich editiere das bestehende dokument, schreibe in das feld2 (cell_availab) nix rein, er laesst mich ohne probleme speichern (auch ohne die obige meldung). sobald ich aber in das feld2 was reinschreibe, und nochmal speichere, dann krieg ich die meldung:
feld2 darf nicht leer sein.

also irgendwas scheint da noch verkehrt rum zu sein.

wie gesagt, ich kenn mich mit script leider ueberhaupt nicht aus, drum ist das fuer mich ziemlich kompliziert. das mit der formel haette mir schon besser gefallen, waere einfacher gewesen. geht halt nur leider nicht.

vielleicht findest du ja noch einen fehler in dem script?

danke und gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: input validation feld voll feld leer
« Antwort #14 am: 02.07.02 - 13:57:48 »
Hi Daniela,

ich heut auf beiden Augen taub und beiden Ohren blind.  :-/

Das kann auch so nicht gehen. >:(


Sub Querysave(Source As Notesuidocument, Continue As Variant)
If RoleEnabled("[orange]") Then  
 If Source.FieldGetText("customer") = "" Then  
  Messagebox "Feld1 darf nicht  leer sein"
  Continue = False
  Exit Sub  
 End If  
 
' Hier können weitere Validierungen stehen  
 
End If  
 
 
If RoleEnabled("") Then  
 If Source.FieldGetText("cell_availab") = "" Then  
  Messagebox "Feld2 darf nicht  leer sein"  
  Continue = False
  Exit Sub  
 End If  
 
' Hier können weitere Validierungen stehen  
 
End If  
 
 
If RoleEnabled("[pink]") Then  
 If Source.FieldGetText("production") = "" Then  
  Messagebox "Feld3 darf nicht  leer sein"  
  Continue = False
  Exit Sub  
 End If  
 
' Hier können weitere Validierungen stehen  
 
End If  
End Sub

Der Vergleichsoperator war falsch. Ausserdem hab ich noch    "Continue = False" eingefügt. Das verhindert, wenn das Feld leer ist, ein Speichern. Den Text bei der Messagebox musst du deinen Gegebenheiten anpassen.


Probier's jetzt mal.

Axel
 



« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
input validation feld voll feld leer
« Antwort #15 am: 02.07.02 - 14:58:50 »
hallo axel,

vielen lieben herzlichen dank. jetzt geht das ganze so wie es ist. hat wunderbar funktioniert.

aber leider ist das ganze noch nicht abgeschlossen, denn mir ist grad aufgefallen, dass ich user hab, die mehere rollen haben koennen (z.b. orange und blau zusammen), die aber einerseits dokumente nur anlegen sollen (orange) und andererseits aber auch dokumente von anderen usern editieren koennen sollen (blau). die kriegen dann aber beim nur anlegen eine fehlermeldung.

denkst du, das kann man auch irgendwie loesen? oder woll ich lieber ganz neue, andere rollen anlegen fuer solche user?

gruss,
daniela
im moment in mutterschutz

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: input validation feld voll feld leer
« Antwort #16 am: 02.07.02 - 15:17:46 »
Hi Daniela,

ich glaube neue Roolen sind hier einfacher zu realiseren.



Axel
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #17 am: 02.07.02 - 15:47:59 »
hallo axel,

ich war grad beim manager dieser datenbank, und wir haben uns auf je eine rolle geeinigt. jeder user hat nun noch eine rolle. falls mal einer doch mehrere brauchen wuerde, muesste ich mir was anderes einfallen lassen. dann muesste ich halt in der hide/when formel der rolle eine dritte rolle definieren, dann geht aber dein script nicht mehr. ich weiss jetzt noch nicht genau, wie ich das dann realisieren soll. und ich glaube, das kommt bestimmt. aber egal jetzt.

jetzt hab ich an dich noch zwei fragen:

1.) du schreibst in deinem script:
' Hier können weitere Validierungen stehen  

nachdem ich mit script nicht auskenne, muesste ich jetzt GENAU wissen, an welcher stelle ich anfangen und aufhoeren muesste, um bei den einzelnen rollen mehrere felder zu nehmen.
muss ich dann hier:

If RoleEnabled("[orange]") Then
If Source.FieldGetText("customer") = ""
Then  Messagebox "enter a customer !!!"  
Continue = False  
Exit Sub  
End If  

nochmal ganz von "If Role...." bis zu "End If" alles schreiben? oder nur dazwischendrin was hinzufuegen? koenntest du mir das nochmal gaaanz genau erklaeren?

2.) in der error message steht oben im blauen teil vom fenster kein text drin. wie kann ich da einen kurzen text reinkriegen? sowas wie: fehlermeldung oder so?

danke und gruss,
daniela
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re: input validation feld voll feld leer
« Antwort #18 am: 02.07.02 - 16:24:47 »
Hi Daniela


Zitat

1.) du schreibst in deinem script:
' Hier können weitere Validierungen stehen    


Wenn du für eine Rolle weitere Felder prüfen willst braucht dur nur diese vier Zeilen pro zu prüfendes Feld

If Source.FieldGetText("customer") = ""  
Then  Messagebox "enter a customer !!!"  
Continue = False  
Exit Sub    

Natürlich musst du hier dann den Feldnamen und den Fehlertext anpassen.

Für die Rolle Orange würde das dann so aussehen:

If RoleEnabled("[orange]") Then  
 If Source.FieldGetText("customer") = "" Then  
  Messagebox "Feld1 darf nicht  leer sein"  
  Continue = False  
  Exit Sub  
 End If  

 If Source.FieldGetText("weiteres Feld1") = "" Then
   Messagebox "enter a customer !!!"  
   Continue = False  
   Exit Sub    
 End If

 If Source.FieldGetText("weiteres Feld2") = "" Then
   Messagebox "enter a customer !!!"  
   Continue = False  
   Exit Sub
 End If    
   
' Hier können weitere Validierungen stehen  
   
End If  

Zitat
2.) in der error message steht oben im blauen teil vom fenster kein text drin. wie kann ich da einen kurzen text reinkriegen? sowas wie: fehlermeldung oder so?


Für die Messagebox gibt es eine Reihe von Parametern

MessageBox Fehlertext, buttons + icon + default + mode, Titel

Für die Parameter buttons, icon, default, mode kannst du Zahlen einsetzen oder wenn du unter dem (Options)-Abschnitt %Include "LSCONST.LSS" auch Bezeichner eintragen. Das alles hier zu beschreiben wäre zu viel. Schau dafür in der Designerhilfe unter "MessageBox function and statement" nach.

Beispiel:  Messagebox "Fehlertext", 16, "Datenbank"  
Zeigt die Meldung "Fehlertext" mit einem weißen Kreuz im roten Kreis und dem Text "Datenbank" in der Titelzeile.

Ich hoffe ich habs einigermaßen verständlich formuliert.

Axel


« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline luna

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.362
  • Geschlecht: Weiblich
  • mein name ist hase...
    • sixtnix homepage
Re: input validation feld voll feld leer
« Antwort #19 am: 02.07.02 - 17:29:56 »
Zitat

Für die Rolle Orange würde das dann so aussehen:

If RoleEnabled("[orange]") Then  
 If Source.FieldGetText("customer") = "" Then  
  Messagebox "Feld1 darf nicht  leer sein"  
  Continue = False  
  Exit Sub  
 End If  

 If Source.FieldGetText("weiteres Feld1") = "" Then
   Messagebox "enter a customer !!!"  
   Continue = False  
   Exit Sub    
 End If

 If Source.FieldGetText("weiteres Feld2") = "" Then
   Messagebox "enter a customer !!!"  
   Continue = False  
   Exit Sub
 End If    
   
' Hier können weitere Validierungen stehen  
   
End If  



hallo axel,

vielen dank auch dafuer, das hat geklappt, habs gleich ausprobiert. jetzt kommen immer an der richtigen stelle die richtigen fehlermeldungen. super.

Zitat

Für die Messagebox gibt es eine Reihe von Parametern

MessageBox Fehlertext, buttons + icon + default + mode, Titel

Für die Parameter buttons, icon, default, mode kannst du Zahlen einsetzen oder wenn du unter dem (Options)-Abschnitt %Include "LSCONST.LSS" auch Bezeichner eintragen. Das alles hier zu beschreiben wäre zu viel. Schau dafür in der Designerhilfe unter "MessageBox function and statement" nach.

Beispiel:  Messagebox "Fehlertext", 16, "Datenbank"  
Zeigt die Meldung "Fehlertext" mit einem weißen Kreuz im roten Kreis und dem Text "Datenbank" in der Titelzeile.

Ich hoffe ich habs einigermaßen verständlich formuliert.



das mit den ganzen % und tralala ist mir eh zu kompliziert. ich hab jetzt einfach dein beispiel mit 16 und text genommen. und das sieht jetzt super aus. hat also auch geklappt. sieht viel schoener aus als vorher !!! so reicht es mir voll und ganz. danke.

und du hast dich uebrigens SEHR verstaendlich ausgedrueckt !!!




so, und nun noch eine frage:

ich hab in dem script eine zeile drin, die muesste mir 2 felder abfragen, und zwar die:

If Source.FieldGetText("mail_sent_3") = "" Then  
Messagebox "send document to next or close document with close button !!!"  
Continue = False  
Exit Sub  
End If  

da sollte jetzt stehen: wenn mail_sent_3 oder mail_sent_2 leer ist, dann mach den fehler. wenn eins der beiden felder einen inhalt hat, dann nicht.

geht das ueberhaupt? weil in diesem stadium wird der call entweder geschlossen (mail_sent_2) oder er geht eine stufe weiter zu pink (mail_sent_3).

falls das nicht geht mit oder, dann muessten wir uns halt was anderes einfallen lassen.

ich bin jetzt 3 tage nicht da (auf lotus script schulung, hoffentlich hilfts was), also pressiert das nicht.

vielen vielen lieben herzlichen dank inzwischen fuer deine geduldige hilfe,

gruss,
daniela  ;D
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
im moment in mutterschutz

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz