Reputation: 1
I am currently working on a calendar that will display the vacation booked for each employee in a calendar as a button. Each employee can book more than one vacation. This means that each employee can have more than one button.
At the moment, however, it looks like you can only book one vacation per employee. Which is of course an absolute disaster.
So what needs to be done to change this?
The entire code for one vacation booking per employee works. So I'll list it here.
Gallery. Item:
AddColumns(
SortByColumns(
Filter(
Mitarbeiter_3,
Gruppe.Value = Dropdown2.Selected.Value && Gewerblich = true
),
"Title",
SortOrder.Ascending
) As MO,
'Abwesenheitsgrund',
LookUp(
SortByColumns(
Filter(
ProbePowerApp,
ID_Mitarbeiter in
Filter(
Mitarbeiter_3,
Gruppe.Value = Dropdown2.Selected.Value && Gewerblich = true
).ID
),
"Title",
SortOrder.Ascending
),
Value(ID_Mitarbeiter) = MO.ID
)
)
Label Employee: Text:
If(
IsBlank(ThisItem.Abwesenheitsgrund.Name),
ThisItem.Name,
ThisItem.Abwesenheitsgrund.Name
)
Label Holiday: Fill:
Switch(
ThisItem.Abwesenheitsgrund.Abwesenheitsgrund.Value,
"Krank", RGBA(255, 99, 71, 1),
"Urlaub", RGBA(70, 130, 180, 1),
"Weiterbildung", RGBA(60, 179, 113, 1),
"Freistellung", RGBA(255, 215, 0, 1),
Blank(), RGBA(70, 130, 180, 1),
RGBA(70, 130, 180, 1)
)
Height:
If(DateDiff(ThisItem.Abwesenheitsgrund.'Startdatum ', ThisItem.Abwesenheitsgrund.'Enddatum ') < 0,
0,
Parent.Height*50%)
Hover Fill:
Switch(
ThisItem.Abwesenheitsgrund.Abwesenheitsgrund.Value,
"Krank", RGBA(255, 99, 71, 1),
"Urlaub", RGBA(70, 130, 180, 1) ,
"Weiterbildung", RGBA(60, 179, 113, 1),
"Freistellung", RGBA(255, 215, 0, 1)
)
Text:
If(
IsBlank(ThisItem.Abwesenheitsgrund.Abwesenheitsgrund.Value),
Blank(),
ThisItem.Abwesenheitsgrund.Abwesenheitsgrund.Value
)
Width:
If(
Or(
DateDiff(ThisItem.Abwesenheitsgrund.'Startdatum ', ThisItem.Abwesenheitsgrund.'Enddatum ') <= 0,
IsBlank(ThisItem.Abwesenheitsgrund.'Startdatum '),
IsBlank(ThisItem.Abwesenheitsgrund.'Enddatum ')
),
0,
(Parent.Width / LookUp(TageProMonatCollection, Monat = Month(ThisItem.Abwesenheitsgrund.'Startdatum ')).Tage * DateDiff(ThisItem.Abwesenheitsgrund.'Startdatum ', ThisItem.Abwesenheitsgrund.'Enddatum ', TimeUnit.Days)) + 2 * (Datum_1.Width)
)
X:
(Parent.Width/LookUp(TageProMonatCollection, Monat = Month(ThisItem.Abwesenheitsgrund.'Startdatum ')).Tage)*DateDiff(FirstDayOfMonth,ThisItem.Abwesenheitsgrund.'Startdatum ',TimeUnit.Days)-1.5*(Wochentag_1.Width)
Y:
(Parent.Height-Self.Height)/2
Upvotes: 0
Views: 19