Autor Thema: Anzahl Tage berechnen  (Gelesen 1458 mal)

Offline deepsee3

  • Senior Mitglied
  • ****
  • Beiträge: 426
  • Geschlecht: Männlich
  • Notes ... be back on track ;)
    • Baustelle
Anzahl Tage berechnen
« am: 07.06.02 - 09:51:42 »
Hat jemand ne Idee wie man die Anzahl der Tage aus zwei Datumsfelder berechnet ohne die Samstage und Sonntage zu berücksichtigen ?

Also Problem :
Anfangsdatum Urlaub : 01.01.02 ( Eingabefeld )
Enddatum Urlaub : 02.02.02 ( Eingabefeld )
Anzahl Arbeitstage : xx ( berechnet )

Ich komm da mit meiner @formular irgendwie nicht weiter ... :-[

Client   : notes 9.0.1 fx4
Server : notes 9.0.1 fx4 - 2012 R2

Offline fritandr

  • Global Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 742
  • Geschlecht: Männlich
  • Höre nie auf besser zu werden...
    • KAMMACHI Consulting GmbH
Re: Anzahl Tage berechnen
« Antwort #1 am: 07.06.02 - 10:16:17 »
Hallo,

ich habe so was in Formelsprache.

--------
tab:=@Char(9);
nl:=@Char(10);
FIELD StartDate:=vom;
FIELD EndDate:=bis;

diffDays := (EndDate - StartDate) / 86400 + 1;
strtDay := @Modulo(@Weekday(StartDate); 7);
endDay := @Modulo(@Weekday(EndDate); 7);
result := (diffDays - endDay + strtDay - 8) * 5 / 7 - @Max(-2; -strtDay) - @Min(1; endDay) + 5 - strtDay + endDay;
@SetField("TageUrlaub"; result)

--------

Achtung! Feiertage werden hier leider nicht berücksichtigt.

Ciao
Andreas
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Andreas Fritz

Offline Gulliver

  • Junior Mitglied
  • **
  • Beiträge: 75
  • Geschlecht: Männlich
  • Das hat's alles früher teilweise gar nicht gegeben
Re: Anzahl Tage berechnen
« Antwort #2 am: 07.06.02 - 10:44:02 »
Hallo,

ich hab' da was aus LS; ist aber nicht auf meinem Mist gewachsen  ::), ist aus 'nem Lehrgang (c by R. Krappweis)

Sub Set_CalendarDateTime_HDays (uidoc As NotesUIDocument)
     
     Dim doc As NotesDocument
     Set doc = uidoc.Document
     
     Dim DateList () As Variant
     
     Dim Tag As Variant
     Dim AnzahlTage As Integer
     Dim i As Integer
     Dim j As Integer
     
     AnzahlTage = doc.EndDate(0) - doc.StartDate(0)
     
     Dim tmpDate As Variant
     Dim wd As Integer
     
     For i = 0 To AnzahlTage
           tmpDate = doc.StartDate(0) + i
           wd = Weekday(tmpDate)
           If (wd > 1) And (wd < 7) Then   '-- Falls Wochentag (Mo - Fr)
                 Redim Preserve DateList(j)              
                 DateList(j) = tmpDate
                 j = j + 1
           End If
     Next
     
     doc.CalendarDateTime = DateList
     doc.HDays = j
     
End Sub
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »

Offline deepsee3

  • Senior Mitglied
  • ****
  • Beiträge: 426
  • Geschlecht: Männlich
  • Notes ... be back on track ;)
    • Baustelle
Re: Anzahl Tage berechnen
« Antwort #3 am: 07.06.02 - 11:35:48 »
Hi

8) fritandr  = funzt

:( Gulliver = nö

Danke euch beiden ... werde mal versuchen ob ich das mit dem Script noch hinkriege ...

thx
« Letzte Änderung: 01.01.70 - 01:00:00 von 1034200800 »
Client   : notes 9.0.1 fx4
Server : notes 9.0.1 fx4 - 2012 R2

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz