Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Silver am 04.04.02 - 10:37:00

Titel: Formularprobleme
Beitrag von: Silver am 04.04.02 - 10:37:00
Hi Ihr!

Könnt Ihr mir noch bei zwei Problemchen helfen?

1. Wie kann ich bei einer Schaltfläche, die eine Aktion zum Versenden des aktuellen Dokuments enthält, noch eine Anweisung einbinden, die nach Klick eine Antwortseite im selben Frame öffnet.  :-/

2. Weiss vielleicht doch noch jemand, wie ich meine Formularfelder auf eine bestimmte Anzahl von einzugebenden Zeichen beschränken kann, bzw. nur Zahlen oder nur Text eingabefähig. Die Prüfung soll gleich nach Eingabe bzw. Sprung ins nächste Feld erfolgen, nicht erst beim Speichern oder Verlassen.  ::)

Wäre echt toll, wenn mir jemand weiterhelfen könnte. Da ich ein totaler Anfänger bin, bitte leicht verständlich antworten.  ;) Vielen Dank!
Titel: Re: Formularprobleme
Beitrag von: manuel am 04.04.02 - 11:43:39
Zu 2. hätte einen Vorschlag. Im Exiting-Event könntest du folgenden Code platzieren:

Sub Exiting(Source As Field)
     Dim ws As New NotesUIWorkspace
     Dim this As NotesUIDocument
     Set this = ws.CurrentDocument
     
     If Not Isnumeric(this.FieldGetText("newfield")) Then            'Überprüfung auf Zahl
           Msgbox "Bitte nur Zahlen ins Feld schreiben"
     End If
     
     If Len(this.FieldGetText("newfield")) > 10 Then                        'Überprüfung der Länge
           Msgbox "Bitte max. 10 Zeichen"
           Call this.FieldSetText("newfield", Left$(this.FieldGetText("newfield"), 10))            'Feldlänge wird gekürzt
     End If
End Sub


Grüsse
Mani
Titel: Re: Formularprobleme
Beitrag von: Silver am 04.04.02 - 14:02:28
Vielen Dank!
Hat mir sehr weitergeholfen.;D

Bleibt nur noch das Problem mit der Rückmeldung für die Absendung des Formulars, bzw. Einblendung einer Antwortseite im selben Frame!
Titel: Re: Formularprobleme
Beitrag von: manuel am 04.04.02 - 14:11:51
Was stellst du dir unter einer Rückmeldung bzw einer Antwortseite vor? Beschreib es ein wenig, ich kann mir nämlich nicht's konkretes darunter vorstellen.
Titel: Re: Formularprobleme
Beitrag von: Silver am 04.04.02 - 14:30:13
Ich suche den Befehl, um nach einem Klick auf die Schaltfläche in eine andere Seite mit z. B. Inhalt "Die Daten des Formulars wurden an die zuständige Stelle weitergeleitet" zu wechseln. Es kann auch eine Dialogbox mit entsprechendem Hinweis geöffnet werden. Besser wäre natürlich ein (Link) auf die Antwortseite!
Hoffe Du kannst mir weiterhelfen...
Muss mich nochmal entschuldigen, bin totaler Anfänger! :-[
Titel: Re: Formularprobleme
Beitrag von: manuel am 04.04.02 - 15:39:25
Die Dialogbox:

Syntax: @Prompt( [ Stil] : [ NoSort ] ; Titel ; Eingabeaufforderung ; Vorgabe ; Auswahlliste  ; Dateityp )

Beispiel:
@Prompt([OK]; "Dokument gesendet"; "Die Daten des Formulars wurden an die zuständige Stelle weitergeleitet")



Oder die Seite wird geöffnet mit

@Command( [OpenPage] ; Seite )



Jetzt passt es glaube ich oder, ich habe mich nämlich zuerst nicht ausgekannt was du mit Antwortseite meinst.

Grüsse
Manuel
Titel: Re: Formularprobleme
Beitrag von: Silver am 05.04.02 - 14:39:18
Vielen, vielen Dank!
Hat alles bestens geklappt.
Gruß
Silver
;D ;D ;D ;D ;D ;D ;D
Titel: Re: Formularprobleme
Beitrag von: Silver am 06.04.02 - 20:42:57
Uuuupsss... leider doch noch eine Verbesserung notwendig!

Hoffentlich kann mir noch einer von Euch den @-Befehl zum schliessen der Maske, die das ausgefüllte und versendete Formular beinhaltet, nennen.  ??? Wäre sehr nett.
Vielen Dank!
Titel: Re: Formularprobleme
Beitrag von: manuel am 08.04.02 - 07:14:42
Das geht mit @Command([FileCloseWindow])
Titel: Re: Formularprobleme
Beitrag von: Silver am 08.04.02 - 12:15:31
Hi Manuel!

Wenn ich diesen Befehl in meine Schaltfläche einbinde, öffnet er mir zuerst die Rückmeldungsseite, schliesst die aber gleichzeitig wieder, sodass ich das selbe ausefüllte Formular wieder vorliegen habe. Ich habe aber den Namen des ausgefüllten Formulars in der Formel angegeben, dass nach Klick geschlossen wird. Was mache ich falsch?

Kannst Du mir nochmals helfen?

Silver
Titel: Re: Formularprobleme
Beitrag von: manuel am 08.04.02 - 12:25:08
Ui, das Problem ist glaube ich, dass

Zitat
Dieser Befehl wird nur nach der Auswertung der gesamten Formel ausgeführt, unabhängig davon, ob @Command oder @PostedCommand verwendet wird.



Versuche die Seite mit @PostedCommand( [OpenPage] ; Seite ) zu öffnen. Sonst wüsste ich eigentlich auch nicht wie das funktionieren könnte.
Titel: Re: Formularprobleme
Beitrag von: deepsee3 am 08.04.02 - 12:37:54
Wenn das vom manuell nicht klappen sollte ...
Keine schöne Lösung , hat mir aber mal bei einer alter 4er DB geholfen.

Den Befehl "@Command([FileCloseWindow])" zweimal ausführen , also
@Command([FileCloseWindow]);@Command([FileCloseWindow]) und eventuelle das ganze in @do() einbinden.
Wie gesagt , halt ne Krücke

cu
Titel: Re: Formularprobleme
Beitrag von: Silver am 08.04.02 - 13:22:23
Vielen Dank ! Alles bestens... hoffe, dass ich Euch nicht mehr belästigen muss.
;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D
Silver
Titel: Re: Formularprobleme
Beitrag von: Silver am 10.04.02 - 13:38:45
Kaum habe ich meine Formulardatenbank auf den Notes-Server gestellt, findet der Rechner nach drücken des Absenden-Buttons

(Hier die verwendeten Befehle:
@Do(@Command([FileCloseWindow]);@Command([FileCloseWindow]))

sowie

@PostedCommand( [OpenPage] ; "Rückmeldung" )

und eine Empfängerfunktion das Antwort-Formular nicht. Wie kann ich das lösen??? Hat jemand eine Idee??? :-[

Wenn ich die Datenbank von meinem PC aus aufmache und das Formular absende klappt es aber, woran liegt das? Ich bin am verzweifeln!
Titel: Re: Formularprobleme
Beitrag von: Silver am 10.04.02 - 13:40:24
Noch zur Info - den Befehl:
@Do(@Command([FileCloseWindow]);@Command([FileCloseWindow]))
habe ich benutzt, da ich will, dass das Antwort-Formular nicht in einem extra-Fenster erscheint, sondern sich praktisch auf das abgesendete Formular im selben Fenster legt.
Titel: Re: Formularprobleme
Beitrag von: manuel am 10.04.02 - 13:49:29
Du meinst als Antwortformular die Seite "Rückmeldung", oder?

Ist die Datenbank nach dem Schließen der Maske noch offen - ich hatte das Problem als die Maske alleine geöffnet war und diese dann geschlossen wurde. Also hat er auch die Seite nicht mehr finden können, weil nichts mehr von der Datenbank offen war.
Titel: Re: Formularprobleme
Beitrag von: Silver am 10.04.02 - 13:53:24
Genau das Problem habe ich auch. Die Datenbank ist dann geschlossen, deshalb kann er die Antwortseite "Rückmeldung" nicht finden. Nehme ich den Close-Befehl raus, wird die Rückmeldung aber in einem eigenen Fenster geöffnet. Das ausgefüllte Formular liegt noch im Hintergrund und muss selbst auch noch geschlossen werden. Wie hast Du das gelöst?
Titel: Re: Formularprobleme
Beitrag von: manuel am 10.04.02 - 14:02:31
Ich habe nun folgenden Code verwendet:

@PostedCommand([FileCloseWindow]);
@PostedCommand([OpenPage]; "seite1")
Titel: Re: Formularprobleme
Beitrag von: Silver am 10.04.02 - 14:14:02
hmmmmm.... hab trotzdem noch das Problem! Denn mit dem Befehl zum schliessen des Fensters ist die komplette Datenbank zu und somit die Antwortseite nicht zu finden!
Titel: Re: Formularprobleme
Beitrag von: Silver am 10.04.02 - 14:15:36
Gibt es nicht einen Befehl zum Öffnen einer Datenbank in einem bestimmten Rahmen und eine bestimmte Seite!
Titel: Re: Formularprobleme
Beitrag von: eknori am 10.04.02 - 14:48:01
Soo, dann gebe ich jetzt auch noch meinen Senf dazu.
Ich gehe mal davon aus, daß du den Button zum Senden_und_Schliessen_und_pop_ein_Fenster_auf in deiner MASKE hast. ?!?
Diese Button ist aber nur solange existent, wie das Dokument in UIWorkspace sichtbar ist. Danach werden alle Handles auf diesen Button "zerstört".
Notes arbeitet alle Befehle in dem Button ab BEVOR das Dokument geschlossen wird. Daher wird auch deine Seite oder auch @Prompt vor dem Schließen des Dokuments angezeigt.
Also mit einem Button in der Maske wird das nie funktionieren.
Auch mit Script und den Form Events kommst du nicht weiter, da es NACH Schließen des Dokuments keine Möglichkeit mehr gibt, Code auszuführen. Das erklärt auch, warum es keinen POSTCLOSE Event in einer Maske gibt.

Daher ist euer Vorhaben auf diesem Wege nicht von Erfolg gekrönt, sorry  ;D

Leider kann ich euch aber auch keine brauchbare Lösung anbieten.

Ulrich
Titel: Re: Formularprobleme
Beitrag von: Silver am 10.04.02 - 15:13:39
Vielen Dank an alle Helfer!
Hab´s jetzt mit nem Dialogfenster gelöst.
Titel: Re: Formularprobleme
Beitrag von: Silver am 17.04.02 - 13:26:59
:o :o :o :o
Sorry, habe doch noch ein Problem. Chef verland die Umsetzung der Felder mit Datum auch bei Eingabe ohne Punkt in tt.mm.jjjj!
Wie kann ich das realisieren? Hab das Feld als Datum/Uhrzeit als bearbeitbar deklariert. Nun brauche ich höchstwahrscheinlich noch die Eingabeumsetzungsformel. Also bei Eingabe von z. b. 01.01.02 soll umgesetzt werden in 01.01.2002 - bei Eingabe von 01.01.2002 - bleibt dies so und bei Eingabe von 010102 oder 01012002 soll in 01.01.2002 umgewandelt werden. Wie stelle ich das an?
Wäre toll, wenn Ihr mir nochmals weiterhelfen könntet!
Titel: Re: Formularprobleme
Beitrag von: manuel am 17.04.02 - 14:15:08
Für die Umsetzung von zB 01.01.02 in 01.01.2002 musst du dein Datumsfeld richtig konfigurieren, dann geht's automatisch beim Refreshen.

Eigenschaften: Feld -> Register Steuerung -> Anzeigeoptionen Datum/Spezial: "Jahr immer 4stellig anzeigen"

Das zweitere ist eher schwieriger, vielleicht hat jemand anderes eine Idee ...

Manuel
Titel: Re: Formularprobleme
Beitrag von: eknori am 17.04.02 - 14:44:48
Hallo, ich schon wieder

habe da etwas, was ich in meinen Datenbanken verwende um die Eingabevalidierung flexibel zu gestalten. Hier kannst du über ein Konfigurationsdokument für jedes Feld eine Validierungsregel hinterlegen

Du hast folgende Möglichkeiten

NOBLANK - test to see if the field has a value
  ISNUMBER - test to see if the field has a numeric value(s)
  ISDATE - test to see if the field has date or time values
  ISLIKE - Tests field against pattern string (see the Like operator in the LotusScript documentation)
  LENGTHBETWEEN - Test the length of the field's value to be between a specified range.
  NOBLANKNUM - tests to see if the value in the field is not blank and that it is a number (combines NOBLANK and ISNUMBER)
  NUMRANGE - test to see if the value in the field is between a specified range

Du kannst also prüfen, ob ein Feld numerish ist (ISNUMBER) und of der Inhalt eine bestimmte Lönge hat / nicht überschreitet (LENGTHBETWEEN)

Ich stell eine Demo mal auf meinen Server; allerdings weiß ich nicht, ob ich das heute noch schaffe  ;D
Titel: Re: Formularprobleme
Beitrag von: eknori am 17.04.02 - 15:29:46
Hallo Silver,

hab dir hier mal eine ganz simple Lösung erstellt


Sub Exiting(Source As Field)
     On Error Goto notNumeric      
     Dim workspace As New NotesUIWorkspace
     Dim uidoc As NotesUIDocument
     Dim account As String
     Set uidoc = workspace.CurrentDocument
     account = uidoc.FieldGetText( "Account" )
     If Len(account) = 0 Then
     Else
           tmp% = Cint(account)
     End If
     
     ' Feldlänge abfragen
     If Len(account) > 3 Then
           Msgbox "falsche feldlänge"
     End If
                    ' ende feldlänge prüfen
     Exit Sub
notNumeric:
     Msgbox "nicht numerisch"
     Resume Next
End Sub

Im Code überprüfe ich beide Sachen NUMERISCH und die FELDLÄNGE. Musst nur eins von beiden weglassen.

zur Erläuterung:

Prüfung auf nicht numerisch; beim verlassen lese ich den Wert des Feldes "Account" ein und speichere den Wert in einer Textvariable. Dann wandle ich den String mittels CInt in einen numerischen Wert um. Enthält der Wert einen Buchstaben, erzeugt der Code einen fehler und verzweigt in die Fehlerbehandlung.

Feldlänge; hier prüfe ich mit len() die Länge. liegt diese über einen bestimmten Wert, gebe ich eine Fehlermeldung aus.

Titel: Re: Formularprobleme
Beitrag von: Silver am 17.04.02 - 16:49:47
Habe ich wirklich nur die Möglichkeit, den Feldwert auf Länge und numerische Zahl zu prüfen. Kann ich nicht angeben, dass nach den ersten zwei ziffern - die eingegeben wurden, ein Punkt gesetzt wird. Ebenso nach dem Monat (zwei Stellig)???
Titel: Re: Formularprobleme
Beitrag von: eknori am 17.04.02 - 17:02:45
Hallo Silver,

doch du kannst natürlich auch solche Sachen prüfen.
Mit dem Validierungstool geht das sogar vorzüglich ( und einfach, wenn man die Designelemente einmal eingebunden hat ) Auch im Exiting Event kannst du das realisieren. Du kanns sogar dem User die Eingabe in einer beliebeim Format gestatten und dann in der "Eingabeübersetzung" dei gewünschtes Format generieren.

Also zunächst prüfst du vielleicht, ob der User 6 Zeichen eingegeben hat, die auch alle numerisch sind und dann formatierst du die Eingabe so, wie du willst ( z.B. 12.34.56)

Alles kein Problem.

Aber dann solltest du mal genau posten, WAS du in WELCHER Form in deinem Feld stehen haben willst.
Ohne diese Angaben philosophieren wir hier noch bis zum St. Nimmerleins Tag.

eknori
Titel: Re: Formularprobleme
Beitrag von: Silver am 17.04.02 - 17:31:37
Da ich (noch) nicht so viel Plan von der ganzen Materie habe wäre ich Dir dankbar, wenn Du mir den jeweiligen Code aufzeigen könntest.

Wenn beispielsweise jemand 311202 eingibt, soll ausegeben werden: 31.12.2002
Wenn beispielsweise jemand 100599 eingibt, soll aber 10.05.1999 erscheinen. Muss ich hier ne Grenze setzten, wo 19.. und 20.. auftauchen muss? Wenn ja dann ab ..50 auf 20..!

Wir eingegeben 15042002 sollen eben nur noch die Punkte dazwischen gestellt weren (15.04.2002).

Mehr nicht! Ich bringe es aber einfach nicht hin.
Titel: Re: Formularprobleme
Beitrag von: eknori am 17.04.02 - 18:02:44
Nun denn, damit kann man doch was anfangen:

Kopiere diese Formel in die Eingabeumsetzung des Feldes, das du prüfen willst

fldValue:=@Trim(@ReplaceSubstring(Test;".";""));
tmp99:=@if(@Right(fldValue;2)="99";"1999";@Right(fldValue;4));
First2:=@Left(fldValue;2);
Next2:=@Middle(fldValue;2;2);
Period:=".";
First2+Period+Next2+Period+tmp99

damit sollte dein Problem zu lösen sein.
erstetze "Test" in der ersten Zeile durch den Namen deines Feldes.

Du kannst dann eingeben 010199 und es erscheint 01.01.1999
oder

01.01.2002 und es bleibt bei der Eingabe

auch 01.0199 ist möglich

eknori

Titel: Re: Formularprobleme
Beitrag von: Silver am 18.04.02 - 09:00:09
;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D
VIELEN DANK! Hat mir sehr weitergeholfen.
;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D
Titel: Re: Formularprobleme
Beitrag von: Silver am 18.04.02 - 16:31:23
:-/ So... hoffe das ist jetzt wirklich das letzte Mal, dass ich Euch nerven muss.
Habe jetzt den Befehl von eknori mit mehreren Wenn - Dann - Sonst - Anweisungen im Einsatz zur Datumsformatierung. Funktioniert auch wunderbar. Brauche jetzt nur noch ne Formel, die mir - falls nichts eingegeben wird - auch ein leeres Feld hinterlässt. D. h. die zwei Punkte aus der Formel sollen nur erscheinen, wenn auch wirklich eine Eingabe vorgenommen wurde. Wie bringe ich das hin.... bitte nochmals um eine allerletzte Hilfe - SORRY
Titel: Re: Formularprobleme
Beitrag von: manuel am 18.04.02 - 16:35:07
Du könntest vor den anderen Anweisungen abbrechen, wenn nichts im Feld steht. Das geht mit Return.

@If (FELDNAME = ""; @Return(""); @Success);
Titel: Re: Formularprobleme
Beitrag von: Silver am 19.04.02 - 08:10:46
hi manuel!

Bekomme aber immer noch die zwei Punkte. Hier die Formel, die ich in der Eingabeumsetzung stehen habe:fldValue:=@Trim(@ReplaceSubstring(Duplikat1von;".";""));

tmp:=@If(@Right(fldValue;2)="14";"2014";
           @If(@Right(fldValue;2)="13";"2013";
           @If(@Right(fldValue;2)="12";"2012";
           @If(@Right(fldValue;2)="11";"2011";
           @If(@Right(fldValue;2)="10";"2010";
           @If(@Right(fldValue;2)="09";"2009";
           @If(@Right(fldValue;2)="08";"2008";
           @If(@Right(fldValue;2)="07";"2007";
           @If(@Right(fldValue;2)="06";"2006";
           @If(@Right(fldValue;2)="05";"2005";
           @If(@Right(fldValue;2)="04";"2004";
           @If(@Right(fldValue;2)="03";"2003";
           @If(@Right(fldValue;2)="02";"2002";
           @If(@Right(fldValue;2)="01";"2001";
           @If(@Right(fldValue;2)="00";"2000";
           @If(@Right(fldValue;2)="99";"1999";
           @If(@Right(fldValue;2)="98";"1998";
           @If(@Right(fldValue;2)="97";"1997";
           @If(@Right(fldValue;2)="96";"1996";
           @If(@Right(fldValue;2)="95";"1995";
           @If(@Right(fldValue;2)="94";"1994";
           @If(@Right(fldValue;2)="93";"1993";
           @If(@Right(fldValue;2)="92";"1992";
           @If(@Right(fldValue;2)="91";"1991";
           @If(@Right(fldValue;2)="90";"1990";
           @If(@Right(fldValue;2)="89";"1989";
           @If(@Right(fldValue;2)="88";"1988";
           @If(@Right(fldValue;2)="87";"1987";
           @If(@Right(fldValue;2)="86";"1986";
           @If(@Right(fldValue;2)="85";"1985";
           @If(@Right(fldValue;2)="84";"1984";
           @If(@Right(fldValue;2)="83";"1983";
           @If(@Right(fldValue;2)="82";"1982";
           @If(@Right(fldValue;2)="81";"1981";
           @If(@Right(fldValue;2)="80";"1980";
           @If(@Right(fldValue;2)="79";"1979";
           @If(@Right(fldValue;2)="78";"1978";
           @If(@Right(fldValue;2)="77";"1977";
           @If(@Right(fldValue;2)="76";"1976";
           @If(@Right(fldValue;2)="75";"1975";
           @If(@Right(fldValue;2)="74";"1974";
           @If(@Right(fldValue;2)="73";"1973";
           @If(@Right(fldValue;2)="72";"1972";
           @If(@Right(fldValue;2)="71";"1971";
           @If(@Right(fldValue;2)="70";"1970";
           @If(@Right(fldValue;2)="69";"1969";
           @Right(fldValue;4)))))))))))))))))))))))))))))))))))))))))))))));
First2:=@Left(fldValue;2);
Next2:=@Middle(fldValue;2;2);
Period:=".";
First2+Period+Next2+Period+tmp

Muss ich Deinen Vorschlag in Exciting setzten???
MfG
Titel: Re: Formularprobleme
Beitrag von: manuel am 19.04.02 - 08:16:34
Du setzt es einfach in die erste Zeile der Eingabeumsetzung, vor deinem Code:

@If (FELDNAME = ""; @Return(""); @Success);
fldValue:=@Trim(@ReplaceSubstring(Duplikat1von;".";""));
...


d.h. wenn das Feld leer ist, wird der restliche Code nicht mehr durchgeführt.
Titel: Re: Formularprobleme
Beitrag von: Silver am 19.04.02 - 08:33:13
Na, auch schon wieder am werkeln Manuel?
Hat funktionert! Habe mich wirklich wieder blöd angestellt. Naja... war auch wieder ne lange Nacht.  ;)

Kennst Du ne Möglichkeit, meine ausgefüllten Formulare, die wie Du bereits weisst, mit einem "Absenden" Button an die zuständige Stelle geleitet werden in den jeweiligen Ordner "Gesendete Objekte" des Mitarbeiters zu verschieben? Im Moment wird nach Absenden das Formular zwar verschickt, die Kollegen haben aber keinerlei "Beweise", dass Sie dieses ausgefüllt und abgesendet haben.

Den Versand nehme ich über eine einfache Funktion "Mail senden" mit vorgegebenen Verw.-Zweck und "Kopie dieser Mail mitversenden" vor!
Titel: Re: Formularprobleme
Beitrag von: eknori am 19.04.02 - 08:35:58
und damit du dich in deinem eigen Code nicht verirrst  ;D, hier noch eine kleine Verbesserung

fldValue:=test;
Year:=@Right(fldValue;2);
tmp:=@If(@TextToNumber(Year) >15;"19" + Year ;"20" + Year) ;
tmp

Alle Jahre ab 15 bekommen eine 19 vorangestellt; alle Jahre ab 00 eine 20.

Damit hast du erts einmal bis 2015 Ruhe, danach können wir uns ja was anderes überlegen  ;D ;D
Titel: Re: Formularprobleme
Beitrag von: manuel am 19.04.02 - 09:00:49
Das Verschieben in einen Ordner würde so funktionieren:

@AddToFolder(Zielordner ; Quellordner)

Zitat
Entfernt das aktuelle Dokument aus einem Ordner und fügt es einem anderen hinzu. Für jeden der Parameter kann auch eine leere Zeichenfolge angegeben werden, um die Aktion zu überspringen.



Ich habe mich mit Ordnern noch nicht so auseinandergesetzt. Vielleicht kennt sich jemand anderes besser aus.


lg, Manuel
Titel: Re: Formularprobleme
Beitrag von: Silver am 19.04.02 - 09:06:49
Sorry Manuel!
Mir ist jetzt erst aufgefallen, dass ich nach Einfügen Deiner Formel in meinen scheiss :o :o Datumsfeldern auch bei Eingabe eines Datums ein leeres Feld angezeigt bekomme. Woran kann das liegen? Also auch bei Eingabe wird der Inhalt wieder gelöscht!
Titel: Re: Formularprobleme
Beitrag von: manuel am 19.04.02 - 09:12:36
Hast du eh in dieser Formel ...

@If (FELDNAME = ""; @Return(""); @Success);  

... FELDNAME mit deinem richtigen Feldnamen ausgetauscht (ich glaube fldValue) ?
Titel: Re: Formularprobleme
Beitrag von: Silver am 23.04.02 - 08:56:21
Servus!

Meine DB steht jetzt kurz vor der Vollendung...
Könnt Ihr mir noch mitteilen, ob es eine Möglichkeit gibt, die Meldung zur Wahl der Quelle als Vertrauenswürdig beim Öffnen durch einen anderen Benutzer zu unterdrücken?
Titel: Re: Formularprobleme
Beitrag von: eknori am 23.04.02 - 09:08:29
du kannst in der Notes.ini den Parameter ECLSetup von DEFAULT 3 auf 0 setzen.

Einzelheiten hier

http://domino-8.prominic.com/A55711/ref/notesini.nsf/all/FFB9575228D8F88E862569A5006148BC

eknori
Titel: Re: Formularprobleme
Beitrag von: Silver am 23.04.02 - 09:29:08
Habe in einem Feld für die Kontonummer folgendes im Exiting stehen:

Sub Exiting(Source As Field)
     Dim ws As New NotesUIWorkspace
     Dim this As NotesUIDocument
     Set this = ws.CurrentDocument
     
     If Not Isnumeric(this.FieldGetText("Kontonummer")) And Len(this.FieldGetText("Kontonummer")) >0  Then  'Überprüfung auf Zahl
           Msgbox "Bittte nur Zahlen ins Feld schreiben"
     End If
     
     If Len(this.FieldGetText("Kontonummer")) > 10 Then    'Überprüfung der Länge
           Msgbox "Bitte max. 10 Zeichen"
           Call this.FieldSetText("Kontonummer", Left$(this.FieldGetText("Kontonummer"), 10))  'Feldlänge wird gekürzt
     End If
     
     If Len(this.FieldGetText("Kontonummer")) < 8 Then    'Überprüfung der Länge
           Msgbox "Bitte geben Sie eine gültige Kontonummer an"
           Call this.FieldSetText("Kontonummer", Left$(this.FieldGetText("Kontonummer"), 10))  'Feldlänge wird gekürzt
     End If
     
End Sub

Die Überprüfung funktioniert auch soweit: Werden mehr als 10 Zeichen eingegeben wird auf 10 Stellen abgeschnitten. Werden 7 Stellen eingegeben bekommt der Benutzter die Meldung eine gültige Kto.-Nr. einzugeben. Die Kto.-Nr. dar 8-10 Stellen betragen. Möchte aber, dass der Cursor nach eingabe einer siebenstelligen (oder weniger) Kontonummer nicht ins nächste Feld springt, sondern noch im selben verweilt.

Kennt jemand eine Lösung?
Titel: Re: Formularprobleme
Beitrag von: eknori am 23.04.02 - 09:33:17
Na klar  ;D

Call notesUIDocument.GotoField( fieldName$ )

eknori
Titel: Re: Formularprobleme
Beitrag von: Silver am 23.04.02 - 09:49:44
Sorry... wo muss ich das eintragen??? ???
Titel: Re: Formularprobleme
Beitrag von: eknori am 23.04.02 - 09:55:15
überall da, wo du eine msgbox anzeigen läßt

Titel: Re: Formularprobleme
Beitrag von: Silver am 23.04.02 - 09:55:36
Bekomme Meldung:

"not a sub or function name: NOTESUIDOCUMENT

??? :-[
Titel: Re: Formularprobleme
Beitrag von: eknori am 23.04.02 - 09:57:40
LOGISCH, dein NotesUIDocument heißt ja auch "this" und nicht NOTESUIDOCOMENT, also

call this.GotoField ...

;D
Titel: Re: Formularprobleme
Beitrag von: Silver am 23.04.02 - 10:01:04
Sorry... Bin Dir wirklich dankbar. Hat jetzt alles bestens geklappt!