Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: braincrusha am 30.03.04 - 13:44:29

Titel: Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 13:44:29
Guten Tag liebes Forum,

ich hab ein Feld in dem nummerische Inhalte gespeichert werden. Dort darf aber nur eine Zahl eingefügt werden wenn in einem anderen Feld ein Inhalt gegeben ist?

Was trag ich jetzt wo ein?  ???
Titel: Re:Bedingung für Feldinhalt
Beitrag von: Driri am 30.03.04 - 13:53:54
Du könntest das Feld ja einfach per Hide/When verbergen, wenn das andere Feld leer ist oder nicht einem bestimmten Wert entspricht. Ist natürlich keine Sicherheit, aber für den Normaluser reichts.
Titel: Re:Bedingung für Feldinhalt
Beitrag von: Glombi am 30.03.04 - 13:56:37
Ich würde eine Eingabevalidierung in dem Zahlfeld machen.

Andreas
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 13:57:41
ne Fehlermeldung wenn man etwas ins eine Feld einträgt und im anderen nicht steht wäre um einiges praktischer da man sonst das Dokument erst schliessen muss und dann wieder öffnen um das Feld zu bearbeiten und genau dies soll umgangen werden
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 13:58:37
Ich würde eine Eingabevalidierung in dem Zahlfeld machen.

Andreas
ja genau das probier ich aber was muss ich dort eintragen?
Titel: Re:Bedingung für Feldinhalt
Beitrag von: Glombi am 30.03.04 - 14:07:22
Eingabevalidierung im Feld Zahlfeld:
@If(
 FeldInhalt = "" & Zahlfeld != "";
    @Failure("Sie dürfen keine Zahl eingeben!");
  @Success
)

Andreas
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 14:13:02
okay die Formel funktioniert bis auf einen kleinen Schönheitsfehler.... wenn ich jetzt in das numerische Feld eine 1 eintrag und in dem anderen Feld nix steht und ich versuche zu speichern kommt die meine Fehlermeldung einmal dann kommt noch eine Fehlermeldung von Notes

Titel: Lotus Notes
Notes Error - Feld hat Valiedierungsformel nicht entsprochen

und dann nochmals meine Fehlermeldung
Titel: Re:Bedingung für Feldinhalt
Beitrag von: Glombi am 30.03.04 - 14:24:10
Dann hast Du irgendwo ein Script (evtl. im QuerySave) folgendes
call uidoc.Save oder Call Source.Save

Das muss man dann abfangen.
On Error Goto ErrorSave
...
call Source.Save

Ende:
Exit Sub

ErrorSave:
Resume Ende
Exit Sub

Andreas

P.S.: Du kannst natürlich auch die Validierung in Script machen.
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 15:44:09
Dann hast Du irgendwo ein Script (evtl. im QuerySave) folgendes
call uidoc.Save oder Call Source.Save

Das muss man dann abfangen.
On Error Goto ErrorSave
...
call Source.Save

Ende:
Exit Sub

ErrorSave:
Resume Ende
Exit Sub

Andreas

P.S.: Du kannst natürlich auch die Validierung in Script machen.
Okay Scriptmässig kenn ich mich so gut wie gar nicht aus... noch nie machen müssen.

das Script Querysave gibt es mal gar nicht. call uidoc.Save oder Call Source.Save gibt es auch in keinem Script.

Irgendjemand ne Idee wie ich rausbekomm wo ich da jetzt abfangen soll?
Titel: Re:Bedingung für Feldinhalt
Beitrag von: koehlerbv am 30.03.04 - 15:48:13
Das Event QuerySave gibt es immer, in jeder Maske. Dagegen kannst Du gar nichts tun.
Es könnte leer sein - aber dagegen spricht die von Dir gepostete Fehlermeldung.
Ist das eine Anwendung, die zu 100% auf Deinem Mist gewachsen ist oder bohrst Du da etwas "Fremdes" auf ?
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 15:49:29
ich bohr nur in fremden Sachen rum... deshalb ja soviele Fragen..

also okay ich hab mal en bisschen tiefer "gebohrt" es gibt Querysave`s aber mit f und s etc davor.

alle ändern oder wie?
Titel: Re:Bedingung für Feldinhalt
Beitrag von: koehlerbv am 30.03.04 - 15:59:00
Code
aber mit f und s etc davor
Was soll das sein ?

Alle ändern - nein, nur das in der betreffenden Maske. Und da sollte man dann wissen, was man tut (und ebenso und insbesondere, wenn man fremden Code ändern muss).
Gerade bei fremden Code würde ich ohne LS-Kenntnisse die Finger davon lassen.

Bernhard
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 16:05:27
ein fQuerySave und ein sQuerysave gibt es dort...

es ist so eine Standarddatenbank von Intraware (falls das jemand was sagt).

Kaputt machen kann ich nicht wirklich was. Ist alles auf nem Testserver. Also macht es glaub ich auch wenig aus wenn ich sie abschiess... deshalb fummel ich an fremden Codes rum...

die betreffende Maske? Es ist eine nur eine Teilmaske und ich bin mal davon ausgegangen dass hier von den Scriptbibliotheken redet welche nicht für die Maske sondern für die ganze Datenbank gelten.

Titel: Re:Bedingung für Feldinhalt
Beitrag von: Driri am 30.03.04 - 16:19:29
Also ehrlich gesagt, würde ich von solchen Dingen lieber die Finger lassen, vor allem dann, wenn ich von LotusScript keine Ahnung habe. IntraWare arbeitet extrem viel mit Script und eigenen Klassen etc., da Änderungen vorzunehmen, dürfte in den meisten Fällen ins Auge gehen, denn wenn man die Anwendung nicht wirklich kennt, weiß man ja gar nicht was davon evtl. alles beeinflußt wird.
Titel: Re:Bedingung für Feldinhalt
Beitrag von: koehlerbv am 30.03.04 - 16:23:11
... und vor allem, wenn man nicht weiss, welches QuerySave denn nun greift (es ist das der Maske, nicht der Teilmaske) ...

Bernhard
Titel: Re:Bedingung für Feldinhalt
Beitrag von: braincrusha am 30.03.04 - 16:47:13
ja klar jetzt hab ich es... auch wenn ich noch nicht weiß was ich jetz genau machen muss ... hab nur Script gelesen und dachte an die Scriptbibliotheken...

naja wenn ihr meint.. und ihr schiebt dann Intraware die Kohle in Hintern und ich hab hier gar nix zu tun oder wie? Warum nicht wenn man Zeit hat sich reinarbeiten wenn man eh nix kaputt machen kann... nun ja vielleicht zwei verschiedene Denkweisen

trotzdem mal danke
Titel: Re:Bedingung für Feldinhalt
Beitrag von: koehlerbv am 30.03.04 - 16:58:28
Zitat
und ihr schiebt dann Intraware die Kohle in Hintern und ich hab hier gar nix zu tun oder wie?

Nein, völlig falsch: Wir wissen, wie man sowas anfassen muss und können das selber machen bzw. für andere Anpassungen vornehmen. Damit verdienen wir unser Geld  ;)

Bernhard