Domino 9 und frühere Versionen > Administration & Userprobleme

Eintrag in ein Feld ändert ein anderes mit ab!

<< < (7/7)

TMC:
Volltreffer, Thomas mit dem Call.

Das kommt davon, wenn man hier Script nur reinschribt ohne zu testen :-)
Habe schon mehrmals die Hochkomma und Klammern gecheckt.....

Matthias

animate:

--- Zitat von: TMC am 23.01.04 - 21:56:08 ---Thomas, danke für die Bestätigung.

hmmm, jetzt bin ich leicht verwirrt. Ist auch schon länger her die Problematik, aber ich bin mir sicher ich kam damals auf einen Fehler.

So hatte ich das damals dann in Script umgesetzt:
szChecker = doc.Quantity(0) + doc.Quality(0) + doc.A(0)
If szChecker = ""  Then
   Messagebox "You must enter at least one finding!" & Chr(10) & Chr(10) & "The document has not been saved ....." , 16, db.title
   Continue = False
   Exit Sub
Else
End If

In Formelsprache kam ich da nicht weiter im Feld-Event.

Die Felder sind Checkboxen, wenn nicht mindestens 1 Checkbox angehakt ist, dann soll Fehlermeldung kommen.

--- Ende Zitat ---

das was du da machst, ist die Eingabevalidierung.
Wenn du das mit Formeln realisierst, dann benutzt du dazu @Failure und @Success
Das funktioniert nicht, wenn du es in die InputTranslation schreibst
Aber in der InputValidation - und nur da! - funktioniert das - auch mit Prüfen mehrer Felder
im Feld X:
@If(X = "" & Y = "" & Z = ""; @Failure("Fehler");@Success)

Die Prüfung in der InputValidation ist aber manchmal unangenehm, z. B. dann, wenn du dein Frontend-Dokument "refreshst", um dem Benutzer irgendwelche neuen Erkenntnisse anzuzeigen. Denn dann wird validiert, obwohl man das eigentlich gar nicht möchte. Außerdem kann man Titel und Symbol der Msgbox nicht ändern

TMC:
Logisch, danke für den Hint, ich hatte hier Input Validation mit Translation vertauscht.

Habe hier echt falsch kombiniert. Beim ersten Lesen des ersten Postings kam mir "hmm, eigentlich wäre ein Feld Event angebracht, aber da kam es ja mal bei mir zu Problemen. Also gleich im QuerySave machen".

Wie auch immer:

Bell kann sich es nun aussuchen: Entweder er erweitert sein Querysave per Script, oder aber er macht eine simple Input Translation.

Matthias

Irgendwie bestätigt mir aber auch dies wieder, dass man zentral wo ein Dok bräuchte "Known Bugs" oder so. Denn oftmals stosse ich auf Fehler die wirklich welche sind im Client, oft sind dies aber auch nur von mir verursachte. Werde dies im Rahmen des neu geplanten "Best Practices" Teils mal angehen...

Bellerophon:
*greetz* @ ALL!

Danke für Eure schnelle Hilfe. Habe Hier einige Anregungen bekommen. Von der "Eingabeumsetzung / -validierung" bin weg gegangen.
Ist nun alles im "Querysave" der Datenbank! Oben bereits beschriebenes Script wurde wie folgt ergänzt:


' Setze Intresse aus   
   If uidoc.fieldgettext("fldImportSKA") = "2" Then
      Call uidoc.fieldsettext("Dialog_Bera_DatHerkunft" , "Datenspeicher SKA")
   End If
' ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------   
' Setze Status
   If uidoc.fieldgettext("Dat_Bera_II_BewerbUnterlab") +uidoc.fieldgettext("Dat_Bera_II_perPost") <> "" Then
      Call uidoc.fieldsettext("fldKategorie" , "Bewerbung abgegeben")
   End If   
   If uidoc.fieldgettext("Dat_Bera_IV_BewerbAbgAM") +uidoc.fieldgettext("Dialog_Bera_IV_BewerbWeiterAN") <> "" Then
      Call uidoc.fieldsettext("fldKategorie" , "Abgabe der Bewerbung an ZNwG/OPZ")
   End If
   If uidoc.fieldgettext("Dialog_Bera_V_EingBewbei") <> "" Then
      Call uidoc.fieldsettext("fldKategorie" , "Eingang der Bewerbung bei ZNwG/OPZ")
   End If
   If uidoc.fieldgettext("Dialog_VorlVerwPla") <> "" Then
      Call uidoc.fieldsettext("fldKategorie" , "Vorläufige Einplanung")
   End If
   If uidoc.fieldgettext("Dat_Bera_V_Einpl_zum") <> "" Then
      Call uidoc.fieldsettext("fldKategorie" , "Eingestellt")
   End If
   If uidoc.fieldgettext("Dat_Bera_V_RücknBewer") + uidoc.fieldgettext("Dialog_AblehnungGrund")<> "" Then
      Call uidoc.fieldsettext("fldKategorie" , "Abgelehnt")
   End If
   If uidoc.fieldgettext("Opt_Bera_V_Abgeschl") = "Ja" Then
      Call uidoc.fieldsettext("fldKategorie" , "Abgeschlossen")
   End If
' ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------   
' Kontollabfrage Weitergabe
   
   If uidoc.FieldGetText("Dat_Bera_IV_BewerbAbgAM") <> "" Then
      If uidoc.fieldgettext("Dialog_Bera_IV_BewerbWeiterAN") = "" Then
         Messagebox "Sie müssen angeben, an wen die Unterlagen abgegeben wurden !" , MB_OK + MB_ICONINFORMATION , "Eingabe vergessen !"
         uidoc.gotofield("Dialog_Bera_IV_BewerbWeiterAN")
         continue = False
         Exit Sub
      End If
   End If   
   If uidoc.FieldGetText("Dialog_Bera_IV_BewerbWeiterAN") <> "" Then
      If uidoc.fieldgettext("Dat_Bera_IV_BewerbAbgAM") = "" Then
         Messagebox "Sie müssen angeben, wann die Unterlagen abgegeben wurden !" , MB_OK + MB_ICONINFORMATION , "Eingabe vergessen !"
         uidoc.gotofield("Dat_Bera_IV_BewerbAbgAM")
         continue = False
         Exit Sub
      End If
   End If
   
End Sub

Das klappt auch ganz gut! ;-) Vielen dank nochmal..........

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln