2

Abwesenheitsmodul optisch verfeinern

Hallo zusammen, 

ich hab nach Vorbild des Abwesenheitsmoduls in unsere eigene Datenbank die Kalenderformeln übernommen. Funktionierte Tippi toppi.

Allerdings gehen die Verfeinerungen jetzt los.

Anforderung 1: ein Abwesenheitsgrund hat keine Zeitspanne mehr, sondern jeder Tag einzeln erhält eine Abwesenheit

Vorher Lesbar => der Grund der Abwesenheit im Dia NACHHER: Da das Feld zum abbilden des Textes zu klein ist.. erkennt man nichts mehr

 mein Gedanke war jetzt, dass dort nur das von mir vergebene Icon angezeigt wird

 Auswahl dynamisch hat jeweils seine eigene Farbe und sein eigenes Icon

daher dacht ich .. just as simple, ich ersetze den Text (=> let title) durch das icon und Fertig ... aber nein :) ich weiß nicht wie .

function Bar(item : Anwesenheiten_PLAN,y : number) do
    let day0 := days(date0, max(date0, item.'Erster Tag')) + 1;
    let day1 := days(date0, min(date1, item.'Letzter Tag')) + 1;
    let capLeft := item.'Erster Tag' < date0;
    let capRight := item.'Letzter Tag' > date1;
    let class := if capLeft then
            " nxp-timeline-bar-cap-left"
        else
            ""
        end +
        if capRight then
            " nxp-timeline-bar-cap-right"
        else
            ""
        end;
    let mychoice := text(item.'Auswahl (dynamisch)');
    let color := (select 'Abwesenheitsgründe' where text('Erläuterung_Zeitgründe') = mychoice).Farbe;
    let border := (select 'Abwesenheitsgründe' where text('Erläuterung_Zeitgründe') = mychoice).Farbe;
    let title := text(item.Status) + "_" + text(item.'Auswahl (dynamisch)');
    let firstHalf := if item.'Dauer erster Tag' = 2 or item.'Dauer-Gesamt' = 3 then
            15
        else
            0
        end;
    let lastHalf := if item.'Dauer letzter Tag' = 2 or item.'Dauer-Gesamt' = 2 then
            15
        else
            0
        end;
    let left := (day0 - 1) * 40 + 256 + number(not capLeft) * 4 + firstHalf;
    let width := (day1 - day0 + 1) * 40 - (number(not capLeft) + number(not capRight)) * 4 -
        firstHalf -
        lastHalf;
    let top := y * 36 + 4;
    ---
<div class="nxp-timeline-bar{ class }" data-nid="{ item.Nr }" style="left:{ left }px;top:{ top }px;width:{ width }px;background-color:{ color };border-color: { border }" onclick="ui.popupRecord('{ item.Nr }')">

<div class="nxp-timeline-bar-tooltip">{ tooltip(item) }</div><div class="nxp-timeline-bar-title">{ title }</div></div>
    ---
end; 
 

 

Kann mir jemand helfen bitte?

1 Antwort

null
    • Schu_Mel
    • vor 1 Monat
    • Gemeldet - anzeigen

    Anforderung 2:

    es gibt eine Anwesenheitsliste in der sollen später Tagesbuchungen stattfinden, und immer wenn eine Tagesbuchung erfolgt die Kommen heißt => soll in dem Formelfeld oben unter gleichem Namen ein Block " Anwesend" für den Tag entstehen. 

    Sodass man später erkennen kann, was war für den Mitarbeiter geplant  bspw Früh für Frühschicht und direkt drunter ist dann ebenfalls ein Feld "Anwesend" zur Kontrolle für die Führungskraft, dass der Mitarbeiter wirklich da war.

    im Bild mal simuliert in der gleichen Datentabelle, die Schwierigkeit für mich ist jetzt eher die Darstellung, wenn es in den zwei verschiedenen Tabellen ist. =>plus das Icon von Anforderung 1 wäre halt für die Darstellung deutlich simpler fürs Auge

    Geht sowas? wenn ja wie :)

Content aside

  • 2 „Gefällt mir“ Klicks
  • vor 1 MonatZuletzt aktiv
  • 1Antworten
  • 43Ansichten
  • 1 Folge bereits