0

Urlaubsangabe (von - bis) nach beinhalteten Kalenderwochen filtern um alle Mitarbeiter anzuzeigen welche in KW 01 Urlaub haben

Hallo liebes Forum, 

da wir unsere einsatzplanung nach Kalenderwochen gestallten, würde ich gern den eingegebenen Urlaub unserer Mitarbeiter (von - bis ) nach Kalenderwochen filtern. Sodas bei der Auswahl "KW 01" und Jahr "2020" alle Mitarbeiter und seine Urlaubsangabe in einem Berechnungsfeld ausgegeben wird wenn sein angegebener Urlaub in dies Kalenderwoche fällt. 

Ist das realiesierbar ? und wenn ja wie, hab keine Ahnung wie ich das realisieren kann.

Bildschirmfoto 2020-08-05 um 14.54.42

8 Antworten

null
    • Michi.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    über "yearweek" bekomm ich die KW und das Jahr vom anfang und ende des Urlaubs, doch was ist wenn es über 3 / 4 Kalenderwochen verteilt ist?  

    • mirko3
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Hi Zub, so geht es bei mir. Leg in Deiner Urlaubstabelle ein verstecktes Terminfeld "Urlaub" an. Schreib in das Datumsfeld "Urlaub bis" unter "nach Änderung folgendes Script ausführen":

    let T := time(23, 0);

    let myBeginn := datetime('Urlaub von');

    let myEnde := datetime('Urlaub bis', T);

    Urlaub := appointment(myBeginn, myEnde)

    Vorhandene Einträge müssen aktualisiert werden. Dann das Funktionsfeld, wenn "Jahr" und "KW Auswahl" Textfelder sind:

    let Q := Jahr;

    let P := 'KW auswahl';

    join(for i in (select URLAUBSTABELLE)[year(Urlaub) = Q and week(Urlaub) = P] do

    i.Name

    end, "

    ")

    Name der Urlaubstabelle und die i-Ausgabe anpassen. Gruß. Mirko

    • mirko3
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Mh. Geht doch nur für die erste Woche im Terminfeld. Nicht für mehrwöchigen Urlaub. War etwas voreilig. M

    • Michi.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Danke für deinen Versuch. Kann man nicht irgendwie eine Schleife bauen die den Zeitraum von Anfang des Urlaubs bis Ende durchläuft in tagesschritten 

    • Leonid_Semik
    • vor 4 Jahren
    • Gemeldet - anzeigen

    So als Berechnungsfeld:

    ---

    let myYW := text(Jahr) + "/" + text('KW Auswahl');
    join((select DEINEURLAUBSTABELLE)[contains(concat(unique(for i in range(days('Urlaub von', 'Urlaub bis')+1) do
    yearweek(date(year('Urlaub von'), month('Urlaub von'), day('Urlaub von') + i))
    end)), myYW)].(Name + " " + 'Urlaub von' + "-" + 'Urlaub bis'), "
    ")

    ---

     

    Leo

    • mirko3
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Wow. Sehr cool. Funktioniert tadellos. Danke, Leo. Habe es gleich bei mir eingebaut, da ich diese Idee von Zub auch gebrauchen konnte. Mirko

    • Michi.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Vielen dank für deine hilfe Leo. Funktioniert toll

    • Michi.1
    • vor 4 Jahren
    • Gemeldet - anzeigen

    Jetzt muss ich nur noch die Abrechnung für die lohnbuchhaltung hin bekommen. Das läuft immer noch über excel mit "x" , "k" usw. Was auf der einen art nervt auf der anderen Zeit kostet. 

    Ich würde die Arbeitstage,  kranktage, Urlaub, Kindkrank Tage und unentschuligtes fehle benötigen für den jeweiligen Monat.

    Unsere Mitarbeiter sind hierbei zum Teil am Wohnort eingesetzt zum Teil auf Montage deutschlandweit. Gehen mal am Samstag arbeiten.

    Ist das irgendwie möglich die festen Feiertage zu berücksichtigen, die anderen müssen bestimmt eingegeben werden. Auch sollen nur die bestimmten Fehlzeiten eingegeben werden. Krank und Urlaub von bis existiert ja schon müssen aber auf den Monat gerechnet werden.

    Habt ihr ne Idee wie ich das für über 100 Mitarbeiter hin bekommen kann. Soll dann per  PDF raus gehen. Ausgabe ist dann nur personalnummer Name und die Anzahl der jeweiligen tage mit einem Textfeld für hinweise

    Hab dafür viel zu wenig wissen für, möchte aber gerne mal voran kommen und die wichtige Zeit besser nutzen. Auch passieren da weniger Fehler was besser für das Klima ist, da ja beim Geld die Freundschaft aufhört. 

     

    Währe super wenn ihr Vorschläge hättet

    Danke und das Forum hier ist spitze