Autor Thema: Wieviel Arbeitstage liegen zwischen zwei Kalendertagen  (Gelesen 6865 mal)

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Habe von dieser Seite im Internet
http://www.sns1.de/partner/flamme/wflamme.nsf

ein Script. Allerdings wir mir jetzt in meinem Formular die Formel angezeigt. Vielleicht habe ich das Script an der falschen Stelle eingebaut. Kann mir da jemánd helfen???

Siehe biegefügtes jpg
Gruss Arnd

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #1 am: 13.12.02 - 11:53:42 »
Hi aba,

ich konnte das ganze nicht richtig nachvollziehen,
deswegen nur geraten :

Er schreibt da was von Spaltenformel, vielleicht hast Du recht und
es muss in eine Ansicht.

Also eine Ansicht erstellen oder öffnen
eine Spalte erstellen
und in Anzeige Formel einstellen und dann diesen Code da rein.

In der Ansichtsauswahl müssen aber die Urlaubsanträge selectiert sein

Select FORM = "UrlaubsantragFormular"

oder wie auch immer dein formular heissen mag.

ist aber nur ein tipp ins balue hinein

ciao

Don Pasquale

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #2 am: 13.12.02 - 13:25:29 »
Falscher Feldtyp!
Nimm "Zahl" und "berechnet" /"berechnet nur zur Anzeige" oder wie das im deutschen Designer heißt.
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #3 am: 13.12.02 - 13:55:10 »
Hallo Don Pasqual und wflamme,

also zum einen habe ich auch das mit "...Spalte" gelesen. Die habe ich allerdings nicht. Ich habe mir dann überlegt, das es evtl. auch in einem Feld funktionieren müßte.

Wenn ich jetzt aber dem Feld Typ "Zahl" verpasse und "berechnet" dann kommt folgende Fehlermeldung wenn man das Formular öffnet "Feld'Urlaubstage' falscher Dateityp für Operator oder @Function"

wat den nu?????
Gruss Arnd

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #4 am: 13.12.02 - 21:37:00 »
Am Anfang steht in den Beginn-/Ende-Feldern ja noch nichts drin  ;D

Versuchs mal mit:
ddiff:=1 + @Integer((EndDate - StartDate) / 86400); REM "Zeitdifferenz in Sekunden in ganze Tage umrechnen, 60s/min * 60min/h*24h/Tag = 86400s/Tag";
blocks:=@Integer(ddiff / 7); REM "Zahl der 7-Tage-Blöcke";
rest:=@Modulo(ddiff; 7); REM "Resttage ermitteln mithilfe 7-Tage-Divisionsrest";
swt:=@Weekday(StartDate);
ewt:=@Weekday(EndDate);

res:=blocks * 5 +
rest +
@If(swt > ewt; -2; 0) +
@If(swt = 1; -1; 0) +
@If(ewt = 7; -1; 0);

@If(@IsError(res); 0; res)

---------------

OHGOTTOGOTT  :-[  :-[  :-X
Hätt ich Klugscheisser nur meine Klappe gehalten... die Formel ist FALSCH!

S.h. http://www.sns1.de/partner/flamme/wflamme.nsf/Shortcut/Arbeitstage#Eselsmuetze

Freitag der 13.
Und ich dachte, gestern wäre schon ein schlimmer Tag gewesen...
« Letzte Änderung: 13.12.02 - 22:56:25 von wflamme »
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #5 am: 14.12.02 - 11:11:55 »
... mit Formel kann ich nicht dienen, aber in Lotus Script habe ich meine Lib dahingehend erweitert, daß für einen bestimmten Zeitraum je nach Bundesland auch die Feiertage berücksichtigt werden - denn die sind ja keine Urlaubstage/Arbeitstage...

Die Berechnung findet jahresübergreifend statt...

... zu finden unter:

http://www.anton-tauscher.de/download/DateHandling.zip - 93 KByte

ata  ;)
Grüßle Toni :)

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #6 am: 16.12.02 - 07:41:28 »
Hab das hier auf notes.nst gefunden

startDate := @Text(@Date(date));
endDate := @Text(@Today);
holidayList := [01/01/2002]:[01/21/2002]:[02/18/2002]:[05/27/2002]:[07/04/2002]:[09/02/2002]:[10/14/2002]:[11/11/2002]:[11/28/2002]:[12/25/2002]:[01/01/2003]:[01/20/2003]:[02/17/2003]:[05/26/2003]:[07/04/2003]:[09/01/2003]:[10/13/2003]:[11/11/2003]:[11/27/2003]:[12/25/2003];
range := @TextToTime(startDate+" - "+endDate);
dateList := @TextToTime(@Trim(@Replace(@Text(@Explode(range)); @Text(holidayList);
dayListTemp := @Text(@Weekday(dateList));
dayList := @If(dateList="-1";"";dayListTemp);
businessDayList := @Trim(@Replace(dateList;"1":"7";""));
businessDays := @Elements(businessDayList);
days = businessDays - 1;
days

eknori
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #7 am: 16.12.02 - 08:15:47 »
Vielen Dank für die vielen Antworten.

Ich habe mich für eknoris Variante entschieden, allerdings meckert der jetzt eine Stelle in der Formel an.

Habe mal nen Anhang beigefügt. Kann da jemand was zu sagen??

Gruss Arnd

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #8 am: 16.12.02 - 09:35:31 »
Hallo aba,
ich bekomme den gleichen Fehler (ist auch nichts wildes)
bin aber in Formel nicht bewandert.
Du könntest Dir und anderen künftig arbeit ersparen, wenn
Du den Sourcecode gleich hier reinkopierst.
probier´s mal :-)

Ciao
Don Pasquale

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #9 am: 16.12.02 - 11:03:35 »
... die Fehlermeldung kommt, weil in der Anweisung zuvor sehr viele Klammern auf gehen, aber weniger zu...

ata
« Letzte Änderung: 16.12.02 - 11:16:26 von ata »
Grüßle Toni :)

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #10 am: 16.12.02 - 12:32:27 »
Also mit eknoris Lösung bin ich nicht weiter gekommen. Das liegt aber wohl an mir. Ich habe den Fehler mit der fehlenden oder überflüssigen Klammer nicht gefunden.

Allerdings die von wflamme gepostete Lösung sieht jetzt schon ganz gut aus. ZUmindest steht in dem Feld jetzt wenn ich das Formular öffne ein "0" aber er rechnet nicht. Als Feldtyp habe ich "Zahl" mit Option "berechnet".

Vielleicht ist jetzt nur etwas an dem Typ oder der Option verkehrt!
Gruss Arnd

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #11 am: 16.12.02 - 13:58:30 »
Also mit eknoris Lösung bin ich nicht weiter gekommen. Das liegt aber wohl an mir. Ich habe den Fehler mit der fehlenden oder überflüssigen Klammer nicht gefunden.

Allerdings die von wflamme gepostete Lösung sieht jetzt schon ganz gut aus. ZUmindest steht in dem Feld jetzt wenn ich das Formular öffne ein "0" aber er rechnet nicht. Als Feldtyp habe ich "Zahl" mit Option "berechnet".

Vielleicht ist jetzt nur etwas an dem Typ oder der Option verkehrt!

Bei meinem Vorschlag (aktualisiert auf meiner HP) liegt's wahrscheinlich am Eingangsfeldtyp für Start/Ende, der nicht vom Typ Datum/Zeit ist, der Feldreihenfolge (berechnete Felder *nach*Angabe v. Start/Ende) bzw. was passiert bei Ctrl+S (Speichern), wird's dann aktualisiert?

Bei eknori ist's wahrscheinlich diese Zeile:
dateList := @TextToTime(@Trim(@Replace(@Text(@Explode(range)); @Text(holidayList))));
Ich hab's noch nicht getestet, der Vorteil seines Lösungsvorschlags sollte aber sein, daß die in der Liste eingetragenen Feiertage berücksichtigt werden.
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #12 am: 16.12.02 - 14:18:09 »
Hallo Wolfgang,

also bei eknoris Lösung lag es nicht an den Klammern. Wenn die so alle setze kommt immer die Meldung "zu wenig Argumente".

Zu Deiner Lösung kann ich sagen, daß meine Start bzw. Ende Felder vom "Datum/Zeit" Typ sind. Auch wenn ich speicher wird die Zahlnicht berechnet.

Gruss Arnd

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #13 am: 16.12.02 - 23:13:00 »
Hier Muster.
Bei eknoris Vorschlag muß ich noch mal gucken, neben den Klammern ist's wohl auch das Datumsformat. Und unten fehlt noch ein days :=
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #14 am: 17.12.02 - 00:45:51 »
So, ich habe eknoris Formelvorschlag mal aufgedröselt, bei mir funkt es so.  Sein Vorschlag hat natürlich den Vorteil, daß auch Feiertage, die auf Werktage fallen, berücksichtigt werden (sofern sie in der Liste holidayList angegeben sind):

REM "Feiertagsliste";
holidayList := [01.01.2002]:[21.01.2002]:[18.02.2002]:[27.05.2002]:[04.07.2002]:[02.09.2002]:[14.10.2002]:[11.11.2002]:[28.11.2002]:[25.12.2002]:[01.01.2003]:[20.01.2003]:[17.02.2003]:[26.05.2003]:[04.07.2003]:[01.09.2003]:[13.10.2003]:[11.11.2003]:[27.11.2003]:[25.12.2003];

REM "Feiertagsliste nach Textliste wandeln";
hl:=@Text(holidayList);

REM "Datumsteil Start/Ende extrahieren und nach Textliste wandeln";
startDate := @Text(@Date(Anfang));
endDate := @Text(@Date(Ende));

REM "Aus Start/Ende DateRange im Textformat montieren";
range := @TextToTime(startDate + "-" + endDate);

REM "Auflösen des Start/Ende-Range in Datumswerte";
r2:=@Explode(range);

REM "Datumswerte in Textliste wandeln";
r3:=@Text(r2);

REM "Feiertage in Textliste durch leere Elemente ersetzen, diese entfernen";
r4:=@Trim(@Replace(r3;hl;""));

REM "Textliste in Datumswerte wandeln";
r5:=@TextToTime(r4);

REM "Datumswerte in Wochentagsnummern wandeln, diese in Text wandeln";
r6:=@Text(@Weekday(r5));

REM "Wochentagsnummern Sa und So durch leere Elemente ersetzen, diese entfernen";
r7:=@Trim(@Replace(r6;"1":"7";""));

REM "Zahl der verbleibenden Tage bestimmen";
res:=@Elements(r7);

REM "Resultat ausgeben";
res
« Letzte Änderung: 17.12.02 - 00:51:40 von wflamme »
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #15 am: 17.12.02 - 00:58:06 »
Mit ein wenig Hingabe und der folgenden Osterformel für bewegliche Feiertage kann man die Feiertagsliste vermutlich auch dynamisch, ohne DBLookup erstellen...

So, Gute Nacht!
........................


REM "This formula returns the date of Easter day for the year of a given date D";
REM "Is valid until year 4000";
REM "Contributed from billingt@online.no";

D:=[30.07.97];
Year:=@Year(D);

c:=@Integer(Year/100);
n:=Year-19*@Integer(Year/19);
k:=@Integer((c-17)/25);
i:=c-@Integer(c/4)- @Integer((c-k)/3)+19*n+15;
ii:=i-30*@Integer(i/30);
iii:=ii-@Integer(ii/28)*(1-@Integer(ii/28)*@Integer(29/(ii+1))*@Integer((21-n)/11));

j:=Year+@Integer(Year/4)+iii+2-c+@Integer(c/4);
jj:=j-7*@Integer(j/7);
l:=iii-jj;
EasterMonth:=3+@Integer((l+40)/44);
EasterDay:=l+28-31*@Integer(EasterMonth/4);
@Date(Year;EasterMonth;EasterDay);
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #16 am: 17.12.02 - 10:30:42 »
@wflamme

... danke, danach habe ich schon eine Weile gesucht...

 ;D ;D ;D

ata
Grüßle Toni :)

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #17 am: 17.12.02 - 14:00:09 »
@wflamme

Welchen Feldtyp müssen die drei nun beteiligten Felder den haben. Also bei mir sind "startDate und endDate" "Datum/Zeit bearbeitbar" und das Feld mit der Formel  ist "Zahl berechnet zur Anzeige". Aber es werden immer noch nicht die Zwischentage ausgerechnet.  :-[

@ata auf nochmal vielen Dank für Deinen Vorschlag ;)
Gruss Arnd

Offline wflamme

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 690
  • Geschlecht: Männlich
  • Irgendwie geht das schon...
    • wflamme
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #18 am: 17.12.02 - 15:25:07 »
@wflamme

Welchen Feldtyp müssen die drei nun beteiligten Felder den haben. Also bei mir sind "startDate und endDate" "Datum/Zeit bearbeitbar" und das Feld mit der Formel  ist "Zahl berechnet zur Anzeige". Aber es werden immer noch nicht die Zwischentage ausgerechnet.  :-[

@ata auf nochmal vielen Dank für Deinen Vorschlag ;)

???
Kapier ich nicht, wieso die Arbeitstage.nsf bei Dir nicht funktioniert.
Grüße,
Wolfgang

"I love deadlines. I love the whooshing sound they make as they pass by..."
DOUGLAS ADAMS

wflamme@mainz-online.de
http://www.sns1.de/partner/flamme/wflamme.nsf

Offline aba

  • Aktives Mitglied
  • ***
  • Beiträge: 228
  • i want to be a bigger tigger
Re:Wieviel Arbeitstage liegen zwischen zwei Kalendertagen
« Antwort #19 am: 17.12.02 - 16:01:02 »
@wflamme

alles klar jetzt funktionierts. Wer lesen kann ist klar im Vorteil!!!

Ich habe bei lesen gar nicht gesehen, das Du einen Anhang dran gehängt hattest.

Nächste Frage wäre jetzt natürlich, wie ich das hinbekomme, wenn jemand nur einen halben Tag Urlaub möchte oder z.B. 8,5 Tage. Muß ich wohl noch ein extra Feld einbauen. Hinter dem Start Datum noch eins mit Uhrzeit, da es dann ab 12:00 Uhr ist.
Beispiel: Erster Urlaubstag 17.12.2002   12:00. Dann darf das Feld mit der Formel für den ersten Tag nur o,5 berechnen. Problematisch sind z.B. auch der 24.12.2002 und der 31.12.2002, da es dafür auch nur halbe Tage gibt!!! Ich hoffe ich nerve nicht. Aber vielleicht kann ja der ein oder andere diese Lösung dann auch gebrauchen!!

 ;D
Gruss Arnd

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz