Stunden ermitteln und summieren
Guten Morgen.
Ich brauche mal wieder eure Hilfe.
Ich habe eine Tabell Arbeitsprofile. Dort habe ich Felder mit den Namen Montag, Dienstag usw., bis Sonntag.
In den Feldern stehen die Arbeitstunden.
In einer zweiten Tabelle Einsatzplanung gibt es zwei Datumsfelder Von und Bis.
Ich würde jetzt gerne mit dem Zeitraum (Einsatzplanung [Von - Bis] die dazugehörigen Arbeitstunden im Arbeitsprofil abfragen und addieren.
Habt Ihr eine Lösung für mich?
Ich Danke euch schonmal im Vorraus.
VG
Yves
4 Antworten
-
Hallo Yves,
Ein Jahr hat etwa 52 Montage, Dinstage usw. Gibt es in der Tabelle Arbeitsprofile einen Hinweis auf Kalenderwoche und Jahr? Ist diese Tabelle nur für Eine Person uder sollten mehrere Personen berücksichtig werden?
Leo
-
Hi Leo.
Die Tabelle Arbeitszeitprofile enthält mehrere Profile (z.B. Standard, Montage usw.) die ich jedem Mitarbeiter (ca. 100) zuordenen kann. Sollten sich die Arbeitszeiten mal ändern, so muss ich nur das Profil ändern und muss nicht jeden einzelnen Mitarbeiter anpassen.
Wenn ich jetzt die Mitarbeiter für ein Projekt plane, kann es sein, daß der Mitarbeiter 1 3 Tage vor Ort ist und der Mitarbeiter 2 5 Tage. Jeder dieser Mitarbeiter kann ein unterschiedliches Profil haben und in dem die Arbeitstunden unterschiedlich sind (z.B. Profil 1 - Mo - 8 Stunden; Profil 2 - Mo - 10 Stunden).Bei der Einsatzplanung möchte ich sehen, wieviele Stunden der Mitarbeiter Vor Ort ist. Diese Stunden würde ich gerne für weiter Planungen (Aufgaben) nutzen. In dem Profil gibt es kein Jahr oder eine KW. Eine KW kommt erst in der Einsatzplanung.
-
Oh je,
ich würde es so versuchen:
---let myArr:=first(select Arbeitszeitprofile where DEINE BEDINGUNGEN (Person Art ec.)).[number(Montag),number(Dienstag),number(Mittwoch),...,number(Sonntag)]
let myHours:=for i range(days(Von,Bis) do
let myDate := date(year(Von),month(Von),day(Von)+i);
item(myArr,weekday(myDate))
end;
sum(myHours)/1000/60/60
---
Leo
-
Wow. Läuft.
Ich habe bei der Zeile
let myHours:=for i in
range (days(Von,Bis) + 1)
ergänzt.Ohne
+ 1
fehlte beim Ergebnis ein Tag in der Summe.DANKE Leo. Top Leistung.
Content aside
- vor 4 JahrenZuletzt aktiv
- 4Antworten
- 602Ansichten