Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Xantox am 02.02.05 - 08:43:37

Titel: Umfrage DB - Ansatz richtig?
Beitrag von: Xantox am 02.02.05 - 08:43:37
Schönen Guten Morgen Zusammen,

ich bastle grad an einer Umfrage DB und wollte mal fragen, wie ihr folgendes im Ansatz lösen würdet:

Es ist momentan eine reine Notes-Client Lösung. Ein Notes-User soll die Datenbank per Link öffnen und eine Antwort auf die Umfrage geben.

Jetzt habe ich mir das so vorgestellt, das ich per Agent(?!) in das DB-Profildokument und dort wiederrum in ein Feld alle User eintragen lasse, die eine Umfrage Ordnungsgemäss abgespeichert haben.

Wenn jetzt ein User, der schon gevoted hat, wieder voten möchte (d.h. Maske öffnen oder beim speichern) soll das Profil-Dokument mit dem Feld der schon gewählten Personen abgefragt werden und wenn dies der Fall ist, dann erhält er eine Fehlermeldung und das Dok lässt sich nicht speichern.

Würdet ihr den Weg so gehen?
Wenn nein, habt ihr Tipps wie ich das mit Formelsprache erreichen kann?

Viele Grüße,
Stefan
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Thomas Schulte am 02.02.05 - 09:29:34
Nein, den Weg würde ich so nicht gehen, weil du dann nämlich mit den Caching Mechanismen der Profildokumente zu kämpfen haben wirst.
Trag doch einfach alle user die gevotet haben in ein verstecktes Feld in deiner Umfrage ein und prüfe beim Speichern ab ob bereits ein Eintrag für diesen Benutzer vorhanden ist.
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Xantox am 02.02.05 - 09:39:01
Hallo Thomas,

danke für den Tipp - ich probier das gleich mal aus. Nebenbei bau ich mir noch eine View und frage die schon gewählten User per dblookup dann ab.

Grüße,
Stefan
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: animate am 02.02.05 - 10:11:06
noch cooler ist -IMHO- wenn die Benutzer Autorzugriffsrechte haben, du alle, die voten sollen in ein Autorenfeld schreibst und den jeweiligen Voter aus diesem Feld beim Speichern rausschmeißt. Dann musst du nix mehr prüfen, das macht dann Notes.
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Thomas Schulte am 02.02.05 - 11:47:19
@thomas

Ja das ist auch eine Möglichkeit, allerdings muss dann bei jeder Umfrage erst einmal der Kreis der berechtigten Benutzer festgelegt werden. Bei 50 MA ja kein Problem. Bei 500 schon eher.
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Xantox am 02.02.05 - 13:05:25
Es sind ca. 260 User, die an dieser Umfrage teilnehmen ;-)

Bastle grad an Thomas Schultes Vorschlag und sieht bis jetzt ganz gut aus :-)
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Xantox am 14.02.05 - 15:02:53
Hallo Zusammen,

@thomas: dein vorschlag war sehr gut - so habe ich es hinbekommen.

Ich habe jetzt leider noch ein kl. Problem, auf das ich einfach nicht komme. Vielleicht kann mir jemand mit geübten Programmierblick einen Hinweis geben, was an meiner folgenden Formel falsch ist.

Die Formel steckt in einem Button und das Feld "closed" ist ein Textfeld(editable) mit Defaultvalue "0".

FIELD closed := closed;
@If(
    @IsNotMember(
                 @Name([CN];@UserName);
                 @DbColumn("":"recache"; ""; "config"; 1))
    & closed = "0";
    @Do(
        @SetField("closed"; "1") +
        @Command([FileSave]) +
        @Command([FileCloseWindow]));
    @Prompt(
            [Ok];"Warnung";"Sie haben bereits an dieser Umfrage teilgenommen! Die Umfrage wird nun geschlossen und nicht gespeichert ") +
            @Command([CloseWindow])
)

Das Dokument wird gespeichert und auch sonst funktioniert die Formel anscheinend, nur leider bekomme ich nach dem Speichern des Dokumentes folgende Fehlermeldung:

"Incorrect Data type for Operator or @Funktion: Text expected"

Für einen Hinweis bin ich sehr dankbar.
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: umi am 14.02.05 - 15:06:54
Hallöchen
was machen die "+" im @do(@setfield()+@command()+...)
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Driri am 14.02.05 - 15:07:56
Bei @Do werden die einzelnen Ausdrücke nicht mit "+", sondern mit ";" getrennt.

Da "+" ein Textoperator ist, kommt da vermutlich auch die Fehlermeldung her.
Titel: Re: Umfrage DB - Ansatz richtig?
Beitrag von: Xantox am 14.02.05 - 15:10:20
Bei @Do werden die einzelnen Ausdrücke nicht mit "+", sondern mit ";" getrennt.

Da "+" ein Textoperator ist, kommt da vermutlich auch die Fehlermeldung her.

DANKE euch beiden! Genau das war mein Fehler! Jetzt kommt keine Fehlermeldung mehr :)