Html Darstellung macht Leerzeile
Hat einer ne Idee wie man die Leerzeilen bei mehreren Ergebnissen in einer Zelle vermeiden kann? ( DB Anwesenheit ist die Vorlage)
function Row(row : Team) do
let yMax := 0;
let items := (row.'Aufträge'['Liefertermin von' <= date1 and 'Liefertermin bis' >= date0] order by 'Liefertermin von');
let yPositions := "";
let bars := join(for item in items do
let items2 := items['Liefertermin von' <= item.'Liefertermin von' and
'Liefertermin bis' >= item.'Liefertermin von' and
Nr != item.Nr];
let y := 0;
for item2 in items2 do
let y2 := number(extractx(yPositions, number(item2.Nr) + "=([0-9]+)", "$1"));
y := max(y, y2 + 1)
end;
yPositions := yPositions + " " + number(item.Nr) + "=" + y;
"let y := count(items['Erster Tag' < item.'Erster Tag' and 'Letzter Tag' >= item.'Erster Tag'])";
yMax := max(y, yMax);
Bar(item, y)
end, "");
---
<div class="nxp-timeline-row" style="height:{ (yMax + 1) * 36 + 6 }px">
<div class="nxp-timeline-cell nxp-timeline-name" onclick="ui.popupRecord('{ row.Nr }')"style="background-color:{ color(row.Farbe) }">>{ row.Teamauswahl }</div>{ for day from 0 to days do Cell(row, date(date(number(aa), 1, 4) - weekday(date(number(aa), 1, 4)) + number(bb) * 7 - 7 + 1)) end }{ bars }
</div>
---
end;
Ich glaube es hat irgendwas mit der variable y zu tun. Aber ich komm trotzdem nicht auf eine Lösung.
Bei nur einem Ergebnis für die Zelle ist die Ausgabe ganz oben. Doch ab 2 Ergebnissen für eine Zelle, ist die erste Zeile leer. Als ob hier " y := max(y, y2 + 1)" schon eine Anzahl größer 0 hinterlegt ist. Vielleicht liege ich ja aber auch komplett falsch in meiner Annahme mangels wissen.
Läßt mir aber keine Ruhe, trübt einfach die Optik
2 Antworten
-
wenn ich die variable y in der Funktion Bar() ändere bekomm ich die Richtige anfangsposition (höhe) in den zellen wenn diese meherer einträge haben. Beginnend bei 4px.
(let top := y * 36 + 4 - 36;
<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 }')" >)wenn ich sie normal belasse und meherer einträge habe, so ist die anfangsposition bei 40px.
(let top := y * 36 + 4 )
Wie kann man das denn abändern?
Hab es mit: let top:= if number(y) >1 then y * 36 + 4 - 36 else y * 36 + 4 probiert geht aber nicht .
Falsche Anzeige:
Content aside
- Status Answered
- vor 1 JahrZuletzt aktiv
- 2Antworten
- 93Ansichten
-
1
Folge bereits