Variantenpreise

Hi,

nach dem Import unserer Artikeldaten aus einem alten 3-er OXID hab ich gerade noch das Problem, dass bei allen Artikeln mit Varianten “0,00 EUR” als Preis in der Listenansicht steht.

Der Grund sind die nicht gefüllten Felder VARMINPREIS und VARMAXPREIS beim Vater (da es die Felder im 3er noch nicht gab).
Sobald ich den Artikel im Admin einmal speichere, werden die Felder gefüllt und alles ist ok.

Bevor ich das aber nun bei jedem Artikel einzeln mache, wollte ich fragen, ob ich das nicht auch irgendwie direkt in der Datenbank für alle Artikel auf einmal anstoßen kann.

Ach ja - was anderes hatte ich in einem anderen Thread schon mal gefragt - leider ohne Antwort.
Gibt es wirklich keine Möglichkeit mehr aus einer Variante zurück zum Vater zu linken. Was in älteren 4er-Versionen noch ging ( [{$oView->getParentUrl()}] ) klappt nicht mehr und ich hab auch trotz längerem rumprobieren keine Möglichkeit mehr gefunden.

Folgender Befehl sollte das tun, was Du willst. Kleiner Obulus zu Pfingsten :wink:

[B]Achtung: Vorher Datenbank sichern!![/B]


UPDATE oxarticles B
				,(
	SELECT
		 oxparentid
		,MIN( oxprice ) AS min 
		,MAX( oxprice ) AS max
	FROM
		oxarticles
	GROUP BY
		oxparentid
) AS A
SET
oxvarminprice = A.min,
oxvarmaxprice = A.max
WHERE
    B.oxid = A.oxparentid

dankedankedankedankedanke :slight_smile:
(uff - tausende Klicks erspart)

Falls das sonst noch jemand mal braucht - hier noch eine kleine Korrektur, damit auch nur die Preise von aktiven Varianten genommen werden.


UPDATE oxarticles B
				,(
	SELECT
		 oxparentid
		,MIN( oxprice ) AS min 
		,MAX( oxprice ) AS max
	FROM
		oxarticles
	WHERE  `OXACTIVE` = 1
	GROUP BY
		oxparentid
) AS A
SET
oxvarminprice = A.min,
oxvarmaxprice = A.max
WHERE
    B.oxid = A.oxparentid

Bitteschön. :wink: