Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Wilhelm Weber am 23.01.09 - 12:24:24

Titel: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 12:24:24
Hallo zusammen,

bin neu hier und habe bisher kaum berührungspunkte mit Notes.

Mein Problem ist folgendes:

Es soll ein Dienstpaln erstellt werde. Die Mitarbeiter können angeben, dass sie an gewissen Tagen diesen Dienst nicht wahrnehmen wollen ( z.B. Sa ).

Nun suche ich nach einer Formel, die es ermöglicht dass zu einem geissen Datum nur die MA ausgewählt werden können, die auch verfügbar sind.

Bsp: MA A kann samstags nicht, desahlb darf sein Name nicht in der Auswahlbox für den Dienst am 07.Februar erscheinen.

Verschiedene Ansätze mit @ Weekday passen momentan alle nicht.

Hat da jemand einen Ansatz ?

Grüße

Wilhelm

 
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: klaussal am 23.01.09 - 12:32:57
Die Angaben sind sehr spärlich, um etwas genaues zu sagen.
In der Tendenz würde ich eine Maske (in der man den WoTag auswählen kann) mit eingebetteter Ansicht vorschlagen.
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: eknori am 23.01.09 - 12:48:36
Aus der Designer Hilfe

Syntax
@Weekday( time­date )

Parameters
time-date
Time-date or time-date list. The date having the weekday value you want.

Return value
weekdayNumber
Number or number list. Weekday numbers are 1 through 7, with Sunday = 1, Monday = 2, and so on.

Usage
If the parameter is a list, the function operates on each element of the list, and the return value is a list with the same number of elements.
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 13:31:04
Hallo,

erstmal danke für das feedback..

habe michnicht so wirklich gut ausgedrückt.

Ich habe im Prinzip eine Zeit datumsliste mit den werten von z.B. 01.02.2009 - 28.02.2009.

Aus dieser liste will ich alle Tage eliminieren, die z.B auf einen samstag fallen ( also 07.02. 14-02- usw)
Soltem auch andere tage wie z.B montag nicht zur Verfügung stehne, müssen diese auch aus der Liste raus.

Grüße

Wilhelm
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: koehlerbv am 23.01.09 - 13:34:25
@BusinessDays
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 13:58:13
Hallo,

damit kriege ich aber doch nur die Anzahl der Samstage zurück..
Also für februar 4
hatte ich schion probiert
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: koehlerbv am 23.01.09 - 14:05:57
@BusinessDays war auch Blödsinn, sorry.

Bau Dir doch eine Schleife über Deine Datumsliste und übernimm nur die gewünschten Tage in eine neue Liste.

Bernhard
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 14:37:30
so ich habs probiert...

temp := "";
@For(n := 1; n <= @Elements(tp1); n := n + 1;
@If(@Weekday(tp1[n])!=7;
temp := tp1[n];""));
temp

tp1 ist das Feld wo die Datumswerte stehen..

das ergebnis ist das nur noch der 27.02. , also der letzte Tag der kein Samstag ist im Feld steht..
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: koehlerbv am 23.01.09 - 14:53:40
Das ist doch auch logisch, dass das passiert - Du bildest ja auch ausdrücklich einen skalaren Wert.

Eine Liste bekommst Du mit
temp := temp : tp1[n]

Bernhard
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 14:57:53
das ist wirklich logisch..

jetzt erscheint aber eine Fehlermeldung:
Falscher Datentyp für Operator oder @Funktion: Text erwartet

tp1 ist ja ein Daumsfeld, muss es ja auch sein um @Weekday zu berechnen, oder ?
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: koehlerbv am 23.01.09 - 15:03:12
Das macht Dein einleitendes
temp := "".
Damit ist das eine Textvariable.

Das muss und kann weg.

Bernhard
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 15:08:47
der fehler bleibt leider..

vorher gibt es noch die beiden Codezeilen..

tp :=@Explode(@TextToTime("01.02.2009" + "-" + "28.02.2009"));

tp1:=@TextToTime(tp);

@For(n := 1; n <= @Elements(tp1); n := n + 1;
@If(@Weekday(tp1[n])!=7;
temp := temp :tp1[n];""));
temp
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Axel am 23.01.09 - 15:56:34
So sollte es funktionieren:

tp :=@Explode([01.02.2009 - 28.02.2009]);

@For(n := 1; n <= @Elements(tp); n := n + 1;
           @If(@Weekday(@TextToTime(tp[n])) != 7; temp := temp:tp[n]; ""));

@Trim(temp);


Axel
Titel: Re: Datumswerte als Wochentage bestimmen
Beitrag von: Wilhelm Weber am 23.01.09 - 17:19:33
Hallo Axel,

danke das war der letzte Baustein. !!

Danke auch an die anderen und bist demnächst..

Wilhelm