coolzero
Goto Top

Power Automate farbliche markierung von Werten

Hallo, ich habe in Power Automate einen Flow der mir per Email eine HTML Tabelle schickt, mit verschiedenen Werten, nun wollte ich wenn in einer Spalte ein Datum größer des Tagesdatums ist das dieses rot markiert wird. Allerdings klappt das nicht korrekt, ich bekomme dann in der Email in der Tabelle diesen eintrag angezeigt
<span style="color:red">2022-10-28T10:00:00Z</span>2022-10-28T10:00:00Z  
in dem Fall hätte normal nur das Datum 28-10-2022 rot dort stehen sollen.

Der Code mit dem ich versucht habe das zu erreichen ist dieser hier:

if
(
  greater(if(equals(item()?['dueDateTime'], null), '', formatDateTime(item()?['dueDateTime'],'dd-MM-yyyy')), utcNow()),   
  concat('<span style="color:red">', item()['dueDateTime'], '</span>', item()['dueDateTime']),  
  if(equals(item()?['dueDateTime'], null), '', formatDateTime(item()?['dueDateTime'],'dd-MM-yyyy'))  
)

Wo könnte mein Fehler sein?

Danke

Content-ID: 4439759248

Url: https://administrator.de/contentid/4439759248

Ausgedruckt am: 24.11.2024 um 10:11 Uhr

zaphod88
zaphod88 29.10.2022 aktualisiert um 09:55:54 Uhr
Goto Top
Moin, ich hab mir mal erlaubt, die Expression etwas umzuschreiben:

if(
	equals(item()?['dueDateTime'], null),  
		'',  
		if(
			greater(
				formatDateTime(item()?['DueDateTime'],'MM/dd/yyyy'),  
				utcNow('MM/dd/yyyy')  
			),
			concat('<span style="color:red">', formatDateTime(item()['dueDateTime'],'dd-MM-yyyy'), '</span>'),  
                       formatDateTime(item()['dueDateTime'],'dd-MM-yyyy')  
		)
)

In Deinem Code hast Du m.E. das formatDateTime() in der dritten Zeile vergessen (also für das Datum in HTML) und hast das Datum nach dem geschlossenen Code-Tag auch nochmal drin. Musst außerdem darauf achten, dem utcNow() die entsprechende Formatierung mitzugeben, sonst klappt der Vergleich nicht.

Ob das dann wie gewünscht angezeigt wird, kommt natürlich auch auf den Mailclient an. Ich habe bei Outlook bessere Erfahrungen damit gemacht, um die eigentliche Tabelle bzw. Mail einen Head und darin den Style-Tag zu positionieren und dann dort entsprechende CSS-Klassen zu definieren.
Coolzero
Coolzero 01.11.2022 um 14:27:14 Uhr
Goto Top
Hi,
vielen Dank für deine Antwort, leider wird es damit auch nicht besser, bzw. das was rot sein sollte, wird nicht normal als Datum dargestellt. (rot markiert), alle anderen werden mit den Code Tags dargestellt.
Ich glaube an der stelle liegt es nicht am Mailclient(Outlook), da es auch im Power Automate schon so dargestellt wird

Anbei mal eine Übersicht wie mein Flow insgesammt aussieht, vielleicht siehst du da meinen Fehler, bzw. wie würde das funktionieren mit CSS-Klassen was du meinst, in den Outlook Einstellungen habe ich es wie im Anhang angegeben.

Danke
bild_2022-11-01_142133147
bild_2022-11-01_142542559
bild_2022-11-01_142707990
bild_2022-11-01_142012858
Coolzero
Coolzero 06.11.2022 um 13:52:20 Uhr
Goto Top
Zitat von @zaphod88:

Moin, ich hab mir mal erlaubt, die Expression etwas umzuschreiben:

if(
	equals(item()?['dueDateTime'], null),  
		'',  
		if(
			greater(
				formatDateTime(item()?['DueDateTime'],'MM/dd/yyyy'),  
				utcNow('MM/dd/yyyy')  
			),
			concat('<span style="color:red">', formatDateTime(item()['dueDateTime'],'dd-MM-yyyy'), '</span>'),  
                       formatDateTime(item()['dueDateTime'],'dd-MM-yyyy')  
		)
)

In Deinem Code hast Du m.E. das formatDateTime() in der dritten Zeile vergessen (also für das Datum in HTML) und hast das Datum nach dem geschlossenen Code-Tag auch nochmal drin. Musst außerdem darauf achten, dem utcNow() die entsprechende Formatierung mitzugeben, sonst klappt der Vergleich nicht.

Ob das dann wie gewünscht angezeigt wird, kommt natürlich auch auf den Mailclient an. Ich habe bei Outlook bessere Erfahrungen damit gemacht, um die eigentliche Tabelle bzw. Mail einen Head und darin den Style-Tag zu positionieren und dann dort entsprechende CSS-Klassen zu definieren.

@zaphod88 hast du noch einen Tip für mch?

Danke