Das Notes Forum

Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: HH am 31.10.18 - 17:14:00

Titel: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 31.10.18 - 17:14:00
Hallo zusammen,

diese (Fehler-) Meldung erscheint, wenn in einem Datums-/Zeitfeld (Notes Schnittstelle) neben dem korrekten Datum z.B. ein Zeilenvorschub steht. Kann man die Meldung irgendwie unterdrücken und durch eine eigene Meldung ersetzen? Möglichst in LotusScript.

Habe bislang onBlur und querysave Events probiert. Leider ohne Erfolg.

Gruß
Hubert
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: Ralf_B am 31.10.18 - 17:40:41
Welche Meldung wird denn angezeigt?
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 31.10.18 - 17:44:12
"Nicht erkannte Zeichen hinter Zeit/Datum"

HH.
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: Ralf_B am 31.10.18 - 18:00:36
Es wäre schon hilfreich zu erfahen wie das ganze abläuft und bei welcher Aktion die Meldung erscheint.
Ist da ein Lotus Script welches Daten importiert und die Meldung bringt oder der Notes Client selbst eine App einer Firma oder LEI / DECS / Notrix / LSX / ODBC / SAP Connector / JDBC DIIOP/ Java  ? ... und was es alles noch gibt.
Ohne weitere Info sehe ich hier keinen Ansatz.
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 31.10.18 - 18:10:50
Hallo Ralf_B,

nichts kompliziertes. Einfach nur ein Datum/Zeitfeld in einer Maske im Notes Client. Die Meldung erscheint beim Versuch zu speichern (Strg-S) bzw. beim Verlassen des Feldes, wenn onBlur eingebaut ist.

Gruß
Hubert
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: Gutierrez am 02.11.18 - 13:37:03
Hallo,

warum steht denn da überhaupt ein Zeilenvorschub drin? Ich würde eher diesen beseitigen, als die Meldung anzupassen. Oder spricht etwas dagegen?

Beste Grüße
Gutierrez
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 02.11.18 - 14:00:20
Hallo Gutierrez,

das ist auch mein Plan, aber die Meldung wird bereits vor dem onBlur oder querysave Event geworfen.

Gruß
Hubert
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: jBubbleBoy am 02.11.18 - 14:18:18
Es handelt sich hierbei um eine Notes-Fehlermeldung. Wenn du der Beschreibung "Nicht erkannte Zeichen hinter Zeit/Datum" nachgehst und den Zeilenumbruch entfernst, dann verschwindet auch diese Meldung.
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: jBubbleBoy am 02.11.18 - 14:20:19
Du kannst den Feldtyp auch von Datum/Zeit auf Text ändern, so verschwindet auch diese Fehlermeldung ;)
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 02.11.18 - 15:45:38
Hallo Erik,

das versuche ich z.B. im onBlur Event des Feldes, ausgelagert in einer Script Lib:

Code
	Sub onBlurBirthday()
		On Error GoTo fehler

		MsgBox "onBlur"
		
		Dim birthday As String
		birthday = me.m_uiDoc.Fieldgettext("birthday")
		birthday = FullTrim(StringUtils.trimLineBreaks( birthday ))
		Call me.m_uiDoc.Fieldsettext("birthday", birthday )

weiter:
		Exit Sub
fehler:
		Call ErrorHandler.handleError( Error, Erl, Err, CURRENT_LIB_NAME, me.m_className, "onBlurBirthday" )
		Resume weiter
	End Sub

Das event wird allerdings nicht gefeuert (MsgBox erscheint nicht). Statt dessen die genannte Fehlermeldung.

Das als Textfeld zu deklarieren halte ich aus verschiedenen Gründen eher für unglückglücklich.

Gruß
Hubert
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: jBubbleBoy am 02.11.18 - 16:02:55
Wie kommt denn dieser Zeilenumbruch in das Datumsfeld?
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 02.11.18 - 16:10:14
Der DAU hat Enter nach dem Datum eingetippt.
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: jBubbleBoy am 02.11.18 - 16:17:55
Und du kannst deinem User das nicht erklären?
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: ronka am 02.11.18 - 20:22:31
Im eingabe validierung einen @Trim() rein machen
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 02.11.18 - 21:45:32
Hallo ronka,

wenn @Trim, dann bereits in der Eingabe Umsetzung:

Code
@If( !@IsTime( @ThisValue ) ; 
	@Date( @Trim( @Text( @ThisValue ) ) );
@ThisValue )

Und in der Eingabe Validierung dann die Prüfung:

Code
@If( !@IsTime( @ThisValue ) ; 
	@Failure( "Fehler" ) ;
@success ) ;

Funktioniert aber auch nicht. Meldung bleibt.

Ich hatte auch nach einer Script Lösung gefragt, weil ich bestrebt bin, alle Events in Script Bibliotheken auszulagern.

Gruß
Hubert
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: jBubbleBoy am 02.11.18 - 22:51:08
Es gibt diese "Get Error Codes v1.52" Datenbank, mit der können Fehlermeldungen angepasst werden. Das ganze geht, soweit ich das verstanden habe, über notes.ini Einträge welche wiederum über Desktop Policies verteilt werden. Da die Datenbank im Web nicht mehr zu finden ist, bzw. nur noch tote Links existieren, würde ich dir diese auf Wunsch per Mail zusenden.

Ein Lotusscript Error-Eventhandler gibt es nicht, du kannst über ein Textfeld und der programmiertechnischen Umwandung in ein Datum/Zeit Wert die Fehlerausgaben in deine Hände legen - machbar ist das schon!
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: ronka am 03.11.18 - 09:25:43
Tja, den @IsTime(@ThisValue) würde meiner meinung nach den Fehler bereits provozieren.

den @Trim, ohne jegliche schnickschnack würde den doppelte und leere einträge entfernen und damit den Leere Zeile und damit den Fehlermeldung.
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: jBubbleBoy am 03.11.18 - 14:25:44
@ronka: das ist zu einfach ;) Die Überprüfung auf "korrekte Zeichen im Datumsfeld" erfolgt vor der Eingabeumsetzung.

Aber es gibt doch 2 recht einfache Möglichkeiten den Fehler zu umgehen:
1. man ändert den Stil von Notes auf Kalender/Uhrzeit Steuerelement, dann kann der User gar keinen Zeilenumbruch eingeben oder
2. man lässt Mehrfachwerte zu, muss aber dann dafür sorgen das nur ein Wert gespeichert wird
Titel: Re: Nicht erkannte Zeichen hinter Zeit/Datum
Beitrag von: HH am 03.11.18 - 17:37:06
Hallo Erik,

danke für die Klarstellung und die Hinweise.

Pkt. 1 wäre nun auch mein Favorit gewesen (obwohl ich finde, dass das Steuerelement eher zum klicken verführt).

Auch Danke bzgl. "Get Error Codes v1.52", aber damit würde ich ja letztlich nur den Text der Meldung ändern, aber nicht das Verhalten des Clients (...spring in das entsprechende Feld). Auch die Verteiltung ist wieder aufwendig und damit fehleranfällig.

Es war für mich auch eher eine grundsätzliche Frage.

Gruß
Hubert