Seltsames Phänomen bei listview type="object" mit rows=""

Fragen zum Erstellen von Templates für webEdition.
mediavantis
Senior Member
Beiträge: 238
Registriert: Do 16. Feb 2012, 12:51

Seltsames Phänomen bei listview type="object" mit rows=""

Beitragvon mediavantis » Sa 25. Aug 2018, 14:54

Hallo zusammen,

bei einer Object LV habe ich in der WE 8.0.3 ein seltsames Phänomen bezüglich der Anzahl der auszugebenden Objekte, und zwar werden immer weniger als die 12 in "rows" angegebenen Objekte ausgespielt, obwohl in den 3 Workspaces insgesamt über 60 Objekte vorhanden sind, die in die Selektion fallen. Mal sind es 8 Objekte, mal 9, aber niemals 12

Code: Alles auswählen

<we:listview type="object" name="muc" classid="2" workspaceID="215,302,462" order="random()" rows="12">
  <we:repeat>
    <we:field name="we_creationdate" nameto="FirstSetup" to="global" />
      <?php 
	$Erstellung = $FirstSetup + 864000;	//zaehlt 10 Tage hinzu
	$DateAktuell = time();	 //Holt das aktuelle Datum
	if($DateAktuell <= $Erstellung){ $new = 1;}else{$new = 0;}; //Vergleicht Anlagedatum mit jetzigem Datum
	?>
    <we:ifVar name="new" type="global" match="1">
      :::::
    </we:ifVar>	
  </we:repeat>		
</we:listview>
Hat jemand schon ähnliches beobachten können? Ist das evtl. ein Fall für die Bugbase?

Benutzeravatar
blickfang
webEdition Partner
webEdition Partner
Beiträge: 812
Registriert: Mo 15. Dez 2003, 16:00
Kontaktdaten:

Re: Seltsames Phänomen bei listview type="object" mit rows=""

Beitragvon blickfang » So 26. Aug 2018, 21:06

Hi,

zählst du die Ausgabe vor deiner if Abfrage oder davor? Wenn Du nicht alle Treffer der LIste anzeigts wenn du die mit ifVar klammerst, könnte das ja durchaus sein, dass zwar mehrere Treffer vorliegen, aber aus den 12 Treffern drei nicht auf die Abfrage im Repeat zutreffen?

Evtl. könntest du die Abfrage auch direkt in einer condition abbilden, dann bekommst du wirklic h12 zutreffende Ergebnisse?
Viele Grüße
Timo
webEdition Partner - https://www.blickfang-media.com
Ehemals im Vorstand des webEdition e.V.

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Seltsames Phänomen bei listview type="object" mit rows=""

Beitragvon mokraemer » So 26. Aug 2018, 23:43

Die Zeile

Code: Alles auswählen

$DateAktuell = time();	 //Holt das aktuelle Datum
sollte auch nicht innerhalb der Schleife stehen. Mag zwar bei 12 Zeilen keine echte Rolle spielen, aber time() ist ein Systemaufruf der nicht gechacht wird und damit unnötig CPU Takte ohne Mehrwert kostet.
webEdition-Kern-Entwickler

mediavantis
Senior Member
Beiträge: 238
Registriert: Do 16. Feb 2012, 12:51

Re: Seltsames Phänomen bei listview type="object" mit rows=""

Beitragvon mediavantis » Mo 27. Aug 2018, 10:13

Hallo,

@Timo
die Anzahl habe ich vor der if-Abfrage gezählt und das "if" nach dem repeat eingefügt. Alles andere hatte gar keine Ausgabe zur Folge. Dennoch hatte ich das noch einmal umgestellt - leider ohne Erfolg.

@Marc
Volltreffer! Als ich $DateAktuell = time(); herrausgenommen und in den Master gesteckt habe, funktionierte es. Im Nachhinein ist mir das jetzt auch klar. Bei meine Konstrukt hatte er die Abfrage ja zigfach wiederholt.

Vielen Dank Euch beiden.

mokraemer
Senior Member
Beiträge: 3619
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: Seltsames Phänomen bei listview type="object" mit rows=""

Beitragvon mokraemer » Mo 27. Aug 2018, 10:34

Hmm,
ganz logisch finde ich das trotzdem nicht, das die Zuweisung hierauf solche Auswirkungen haben sollte. Denn die Query liefert ja max. 12 Zeilen. Also wird der Zeitaufruf auch "nur" 12 mal gemacht. Das sollte eigentlich keine echten Auswirkungen haben. Mir fällt sowas immer nur auf, weil ich schon auf Optimierung schaue - und das ein typischer Fehler ist, der sogar negative Seiteneffekte haben kann (wenn die Zeit um 1s voranschreitet).
webEdition-Kern-Entwickler


Zurück zu „webEdition Templates erstellen (we:Tags)“

Wer ist online?

Mitglieder in diesem Forum: Ahrefs [Bot] und 13 Gäste