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?
5 Antworten
-
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 :)
-
Moin,
das gleiche Thema habe ich auch gerade hier, Berufsschule würde ich gerne mit einem icon anzeigen lassen.
let title := if days(item.'Erster Tag', item.'Letzter Tag') <= 1 then
icon(item.Art)
else
text(item.Art)
end;Leider gibt es dort nur ein in Klammern angezeigtes [object ?
Hat da jemand eine Idee.
Grüße Mirko
-
Moin,
schade, dass das nicht geht...oder keiner weiß wie es geht!
Werde wohl dann auch mit Kürzeln arbeiten. Ferien habe ich auch noch vor einzufügen.
Grüße Mirko
Content aside
-
2
„Gefällt mir“ Klicks
- vor 3 WochenZuletzt aktiv
- 5Antworten
- 99Ansichten
-
3
Folge bereits