Autor Thema: Problem mit Userroles + Reservierung :(  (Gelesen 3643 mal)

Offline FideL

  • Frischling
  • *
  • Beiträge: 44
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Problem mit Userroles + Reservierung :(
« am: 07.02.05 - 11:21:33 »
Hallo Spezis,
ich habe da ein kleines Problem mit einer Reservierungsdatenbank.
Und zwar sollen nicht alle Personen Firmenwagen reservieren dürfen.
Deswegen habe ich eine Rolle Cars angelegt. Nun möchte ich das beim Speichern (Speichernbutton klicken) abgefragt wird, ob das Feld Ressource ausgefüllt ist, ob sonst noch Fehler auftreten, ob der User in der Rolle Cars ist und die Firmenwagen als Reservierung eingetragen wurden.

Code:

REM {Notes only};
@If(ResourceName="" ;@Return(@Prompt([Ok];"Fehler";"Sie müssen vor dem Speichern die Reservierung vollständig ausfüllen."));!@IsValid; @Return(@Prompt([Ok];"Fehler";"Sie müssen vor dem Speichern alle Fehler korrigieren."));

@IsNotMember("[cars]";@UserRoles)) & RessourceName="Firmenwagen1" OR "Firmenwagen2" OR "VW Transporter" Then Msgbox"Sie dürfen keine Firmenwagen reservieren!" exit;

@Do(@PostedCommand([FileSave]); @PostedCommand([FileCloseWindow])))

Der mittlere Teil soll halt die neue Abfrage ergeben. Er soll immer abfragen, ob der Benutzer in der Gruppe cars ist und ob ein Firmenwagen ausgewählt wurde. Wenn etwas anderes reserviert wurde soll er dennoch Problemfrei die Ressource reservieren. Bin aber leider nicht so bewandert mit der Notes Programmierung :(
Ich hoffe mir kann jemand weiterhelfen :)
Vielen Dank für Antworten und Tipps.
Gruß Fidel

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Problem mit Userroles + Reservierung :(
« Antwort #1 am: 07.02.05 - 11:35:47 »
Diese Kurznotation

RessourceName="Firmenwagen1" OR "Firmenwagen2" OR "VW Transporter"

geht nicht.

Muss so sein:

RessourceName="Firmenwagen1" OR RessourceName="Firmenwagen2" OR RessourceName="VW Transporter"
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline FideL

  • Frischling
  • *
  • Beiträge: 44
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Problem mit Userroles + Reservierung :(
« Antwort #2 am: 07.02.05 - 11:50:06 »
Hallo, habe den Rat befolgt. Nun bekomme ich allerdings die Fehlermeldung " Ein Operator oder Semikolon wurde erwartet, aber nicht gefunden: 'OR' "  ???
gruß fidel

klaussal

  • Gast
Re: Problem mit Userroles + Reservierung :(
« Antwort #3 am: 07.02.05 - 12:05:30 »
.. sollte so gehen :

RessourceName="Firmenwagen1" | RessourceName="Firmenwagen2" | RessourceName="VW Transporter"

und die runden Klammern beachten bei "and" und "or" Verknüpfungen !

klaus

Offline Thomator

  • Senior Mitglied
  • ****
  • Beiträge: 353
  • Geschlecht: Männlich
Re: Problem mit Userroles + Reservierung :(
« Antwort #4 am: 07.02.05 - 12:19:04 »
Hi,

nur so als Ergänzung:

Die logischen Oder-Abfragen im @If kann man der Übersichtlichkeit halber auch als Liste übergeben.

z.B:

@If(Wert = "Vergelichswert1":"Vergelichswert2":"Vergelichswert3"; dann so; sonst so)

Ist etwas kürzer und übersichtlicher, find ich...

Thomas
+++To be human is more important than to be important!+++

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Problem mit Userroles + Reservierung :(
« Antwort #5 am: 07.02.05 - 12:22:41 »
Ach so, das ist ja Formel, da ist der OR Operator | (pipe-Zeichen) und nicht ausgeschrieben
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline FideL

  • Frischling
  • *
  • Beiträge: 44
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Problem mit Userroles + Reservierung :(
« Antwort #6 am: 07.02.05 - 13:20:19 »
Vielen Dank schon mal für eure Hilfe, nun ist mir einiges schon klarer.
Der Code läuft nun zwar, aber nicht korrekt. Wenn ich jetzt eine andere Ressource reservieren möchte, geht das nicht mehr...
Wie kann ich das machen, das er erst abfragt, ob in dem Feld Firmenwagen steht, und wenn ja, dann soll er die Role überprüfen, wenn dort kein Firmenwagen, sondern was anderes drin steht, solll er normal abspeichern.

Hier der bisherige Code...

@If(ResourceName="" ;@Return(@Prompt([Ok];"Fehler";"Sie müssen vor dem Speichern die Reservierung vollständig ausfüllen."));!@IsValid; @Return(@Prompt([Ok];"Fehler";"Sie müssen vor dem Speichern alle Fehler korrigieren."));
@IsNotMember("[cars]";@UserRoles)) & RessourceName="Firmenwagen1" |  RessourceName="Firmenwagen2" | RessourceName="VW Transporter"; @Return(@Prompt([Ok];"Warnung!";"Sie sind nicht berechtigt einen Firmenwagen zu reservieren!!";
@Do(@PostedCommand([FileSave]); @PostedCommand([FileCloseWindow]))))

Bin für jeden Tipp dankbar... gruß fidel

Offline Thomator

  • Senior Mitglied
  • ****
  • Beiträge: 353
  • Geschlecht: Männlich
Re: Problem mit Userroles + Reservierung :(
« Antwort #7 am: 07.02.05 - 13:37:40 »
Ich glaub, Du musst die ganzen Firmenwagenbezeichnungen, also die Oder-Bedingungen noch einklammern.

Sonst wird auch, wenn der User die Rolle Cars hat, aber "Firmenwagen2" ausgewählt ist, nicht gespeichert.

Thomas
+++To be human is more important than to be important!+++

klaussal

  • Gast
Re: Problem mit Userroles + Reservierung :(
« Antwort #8 am: 07.02.05 - 13:45:11 »
Zitat
Ich glaub, Du musst die ganzen Firmenwagenbezeichnungen, also die Oder-Bedingungen noch einklammern.

Das ist sogar so  ;D Siehe meinen Beitrag weiter oben. AND hat eine stärkere Verknüpfung als OR.

klaus

Offline animate

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.540
  • Uh, I'm just gonna go find a cash machine.
    • LA2
Re: Problem mit Userroles + Reservierung :(
« Antwort #9 am: 07.02.05 - 13:51:54 »
AND hat eine stärkere Verknüpfung als OR.

wie bitte?
Thomas

Fortunately, I'm adhering to a pretty strict, uh, drug, uh, regimen to keep my mind, you know, uh, limber.

Offline FideL

  • Frischling
  • *
  • Beiträge: 44
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Problem mit Userroles + Reservierung :(
« Antwort #10 am: 07.02.05 - 13:56:21 »
Hm, hab ich nun mal in Klammern gesetzt, falls ihr das so:

@If(ResourceName="" ;@Return(@Prompt([Ok];"Fehler";"Sie müssen vor dem Speichern die Reservierung vollständig ausfüllen."));!@IsValid; @Return(@Prompt([Ok];"Fehler";"Sie müssen vor dem Speichern alle Fehler korrigieren."));
@IsNotMember("[cars]";@UserRoles)) & (RessourceName="Firmenwagen1") |  (RessourceName="Firmenwagen2") | (RessourceName="VW Transporter"); @Return(@Prompt([Ok];"Warnung!";"Sie sind nicht berechtigt einen Firmenwagen zu reservieren!!";
@Do(@PostedCommand([FileSave]); @PostedCommand([FileCloseWindow]))))

meintet. Leider ist es nun so: egal welche Rolle der User besitzt,
er kann nichts mehr reservieren. Ich bekomme immer das Fenster:
Sie sind nicht berechtigt einen Firmenwagen zu reservieren!!
Weiß noch jemand einen Rat? gruß fidel

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Problem mit Userroles + Reservierung :(
« Antwort #11 am: 07.02.05 - 14:00:05 »
Das ist schon richtig, Thomas, wenn auch nicht das richtige Wort dafür :)

Precedence of Operators heisst das und die Tabelle dazu gibts in der Designer-Hilfe, hier die Uebersichtstabelle:


Arithmetic
   ^   Exponentiation
   -   Unary negation (unary minus)
   *, /   Multiplication, floating-point division
   \   Integer division
   Mod   Modulo division (remainder)
   -, +   Subtraction, addition

Concatenation
   &   String concatenation

Relational (Comparison)
   =, <>, ><, <, <=, =<, >, >=, =>, Like   

Object reference comparison (Same precedence as Relational)
   Is, IsA   Tests object type, refers to the same object

Logical
    Not   Logical negation or one's complement
   And   Boolean or bitwise And
   Or   Boolean or bitwise Or
   Xor   Boolean or bitwise exclusive Or
   Eqv   Boolean or bitwise logical equivalence
   Imp   Boolean or bitwise logical implication

Assignment   =   Assignment
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re: Problem mit Userroles + Reservierung :(
« Antwort #12 am: 07.02.05 - 14:01:06 »
Fidel: Schnapp Dir dringend mal ein Buch über formale Logik, sonst wirst Du mit solchen Konstrukten nie fertig.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Thomator

  • Senior Mitglied
  • ****
  • Beiträge: 353
  • Geschlecht: Männlich
Re: Problem mit Userroles + Reservierung :(
« Antwort #13 am: 07.02.05 - 14:51:36 »
Hi fidel,

das war so gemeint:

@IsNotMember("[cars]";@UserRoles)) & (RessourceName="Firmenwagen1" |  RessourceName="Firmenwagen2" | RessourceName="VW Transporter"); ...

Unabhängig davon solltest Du den Rat mit dem Buch über formale Logik wirklich befolgen, sonst bekommst Du in der Entwicklung von Software keinen Fuß auf den Boden  8)

Thomas
« Letzte Änderung: 07.02.05 - 15:24:07 von Thomator »
+++To be human is more important than to be important!+++

Offline FideL

  • Frischling
  • *
  • Beiträge: 44
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Problem mit Userroles + Reservierung :(
« Antwort #14 am: 07.02.05 - 15:18:54 »
Hallo alle zusammen!
Vielen Dank erst mal für eure Hilfe.
Ich habe nun eine Lösung die weitaus simpler
ist als etwas zu programmieren. Es gibt in der
Ressourcen DB die Möglichkeit auf dem Reiter Besitzeroptionen
die Personen einzutragen, die das Recht zu buchen bekommen
sollen.
Trotzdem noch mal vielen Dank an alle die mir hier Ratschläge gegeben haben. Wird mir sicher noch weiterhelfen. Den Ratschlag werde ich befolgen ;)
Gruß Fidel

Offline Roalf

  • Junior Mitglied
  • **
  • Beiträge: 65
  • Geschlecht: Männlich
  • Ich bin ein speicherrenitentes Programm!
Re: Problem mit Userroles + Reservierung :(
« Antwort #15 am: 07.02.05 - 16:59:12 »
noch'n kleiner Tipp:

beim Vegleichen von mehreren Varianten bietet sich tätsächlich die Liste an.

also:
compare_lst := "a" : "b" : "c";
tst := "a"
@if( tst = compare_lst; ...tue was; ...tue was anderes);


diese Beispiel funktioniert solange wie tst nicht selber eine Liste ist.
Wenn tst aber selber eine Liste ist, muss der "Permutativvergleichsoperator" her (  *= ). Und da der beim o.g. Beispiel funktioniert empfehle ich ihn einfach "default" zu benutzen....es kann einem später böse überraschungen ersparen.

also immer  "tst *= compare_lst"  statt "tst = compare_lst".


* <Ironie> ich liebe solche Wortungetüme wie "Permutativvergleichsoperator"....wie anders kann ein Profi effektiver einen Laien beeindrucken als durch solche erfurchtgebietenden Wortpanzer </ironie>
« Letzte Änderung: 07.02.05 - 17:05:50 von Roalf »
Notes: Unbegreifliche Lösungen für unlösbare Probleme

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz