Jump to content
xt:Commerce Community Forum

Attributpreise global ändern


engelleik

Recommended Posts

Hallo.

Auch nach tagelangem Durchsuchen des Forums und Google habe ich keine entsprechenden Hinweise für meine Frage gefunden. Falls es eine gibt, bitte ich um Nachricht.

Es haben bestimmt einige das Problem, wenn viele Artikel mit immer wiederkehrenden Attributen (Optionen) im Shop vorhanden sind, bei einem Preisupdate diese bei jedem Artikel einzeln ändern zu müssen. Und wenn noch viele Attribute vorhanden sind, wird es schnell zu einer viel zu zeitaufwendigen Aufgabe.

Wäre es nicht relativ einfach - oder überhaupt - damit zu lösen, wenn die Angabe des Preises und der Lagermenge direkt und fest über die Artikelmerkmale mit anzugeben?

Wer nimmt dafür Aufträge entgegen?

Gruss, engelleik

Link to comment
Share on other sites

Hallo.

Ich möchte meine Anforderung noch etwas genauer beschreiben.

Ich plane einen Shop mit vielen Artikeln, die alle die gleichen Optionen (Attribute) zur Auswahl haben. Wenn sich jetzt ein Preis für eine Option ändert, dann müsste man diesen für jeden einzelnen Artikel von Hand abändern.

Im Forum fand ich einen Vorschlag, der zwar möglich ist, aber nicht wirklich komfortabel. Und zwar mittels eines SQL-Befehl die Preise direkt in der Datenbank zu ändern.

UPDATE `products_attributes` SET `options_values_price` = '<neuer Betrag(netto)>' WHERE `options_values_id` =<ID des zu ändernden Optionswertes> ;

ich benötige eine Maske (Formular) das ein Suchfeld für die Artikelmerkmale hat, zusätzlich ein Drop-Down-Feld in dem die Artikelmerkmale auswählbar sind. - Dann werden die Artikelmerkmale aufgelistet. - Hier hat man dann ein Eingabefeld für den Preis dieses Merkmals und ein Eingabefeld für den Lagerbestand des Merkmals.

Mittels der Funktion dieses SQL Befehls, der natürlich in php formuliert werden muss, werden alle Preise und der Lagerbestand in der Tabelle products_attributes geändert, die die options_values_id haben, des Merkmals, bei dem man den Preis und den Warenbestand ändern will.

Vielleicht auch mit der Berücksichtigung, ob Netto oder Brutto-Admin eingestellt ist, wäre aber nicht ganz so wichtig.

Hat jemand hierzu vielleicht eine Meinung?

Gruß, engelleik

P.S. war mir nicht sicher, ob ich das hier poste oder lieber im Entwickler-Forum.

Link to comment
Share on other sites

Hi engelleik,

ich hatte auch schon mal dieses Problem. Habe das dann gelöst, in dem ich Attribute von sogenannten "Masterartikeln" nutze.

Bedeutet:

Attributverwaltung funktioniert wie bekannt. Zusätzlich kann ich bei jedem beliebigen Artikel sagen "nutze die Attribute von Artikel XY mit".

So brauche ich die Preise / Bestände nur einmal zu pflegen.

Ist das eine Lösung für Dich?

Ben

Link to comment
Share on other sites

Hallo Ben!

Du schlägst also einen "Dummy-Artikel" vor, um die entsprechenden Daten aus der Datenbank auszulesen und dann abändern zu können? Man bräuchte nur die Attributpreise des Dummy-Artikels zu ändern und *peng* wären alle Attributpreise angeglichen...

Das - ob Super-Idee oder nicht - habe ich schon einmal von einem Profi-Unternehmen prüfen lassen.

Die Antwort kann ich nicht wahrheitsgemäß wiedergeben, war aber negativ.

Wenn Deine Lösung Erfolg bringt, dann bitte ich um eine Nachricht, um diese Super Idee und deren Umsetzung entsprechend würdigen zu können.

Many Greets, engelleik

Link to comment
Share on other sites

Hi engelleik,

ich hatte auch schon mal dieses Problem. Habe das dann gelöst, in dem ich Attribute von sogenannten "Masterartikeln" nutze.

Bedeutet:

Attributverwaltung funktioniert wie bekannt. Zusätzlich kann ich bei jedem beliebigen Artikel sagen "nutze die Attribute von Artikel XY mit".

So brauche ich die Preise / Bestände nur einmal zu pflegen.

Ist das eine Lösung für Dich?

Ben

das wäre ein Lösung für mich, nur ganz verstanden habe ich das nicht, den so etwas hats ja in veränderter Form ja in der Attributverwaltung, also das ich ein benenne, dessen Attribute auf den anderen übertragen werden.

Wenn es etwas ist, das einfacher geht, denn in dem was ich meine, muss man erst mit DropDown hin und her scrollen, dann bitte kontaktieren. Ich suche etwas einfacheres, mit dem ich die Attribute auf einen Artikel einfacher übernehmen kann, da ich nur zwei Attributarten habe. Danke.

Link to comment
Share on other sites

Hi yuecel,

bei meiner Lösung geht es nicht darum, Attribute zu kopieren, sondern direkt zu nutzen.

Ein Beispiel:

Der Masterartkel A hat die Attribute x,y und z.

Nun können beliebige andere (natürlich selektierbar welche) Artikel genau die Attribute des Artikels A nutzen. Alle Preise, Bestände etc dieser Attribute werden (auch in der Datenbank) nur einmal geführt und verwaltet. Das macht bei vielen Artikeln mit identischen Attributen dann schon Sinn, diese nicht ständig kopieren zu müssen und getrennt zu pflegen...

Ist die Idee / Funktionsweise ungefähr rübergekommen?

Ben

Link to comment
Share on other sites

Hallo Ben.

Ich habe vor kurzem - als Laie, der ich nun mal bin - einem kommerziellen Unternehmen einen ähnlichen Lösungsvorschlag unterbreitet. B.z.w. war es vielmehr ein Vorschlag um die Probleme zu beseitigen, die man mir mit der Umsetzung der Problematik erklärte.

Bei Deinem Lösungsvorschlag hüpfe ich geradezu, wenn Du verstehst was ich meine.

Ich bin sehr daran interessiert.

Guß, engelleik

Link to comment
Share on other sites

Hi yuecel,

bei meiner Lösung geht es nicht darum, Attribute zu kopieren, sondern direkt zu nutzen.

Ein Beispiel:

Der Masterartkel A hat die Attribute x,y und z.

Nun können beliebige andere (natürlich selektierbar welche) Artikel genau die Attribute des Artikels A nutzen. Alle Preise, Bestände etc dieser Attribute werden (auch in der Datenbank) nur einmal geführt und verwaltet. Das macht bei vielen Artikeln mit identischen Attributen dann schon Sinn, diese nicht ständig kopieren zu müssen und getrennt zu pflegen...

Ist die Idee / Funktionsweise ungefähr rübergekommen?

Ben

angekommen

und was muss ich tun, damit ich das nutzen kann?

Link to comment
Share on other sites

das wäre ein Lösung für mich, nur ganz verstanden habe ich das nicht, den so etwas hats ja in veränderter Form ja in der Attributverwaltung, also das ich ein benenne, dessen Attribute auf den anderen übertragen werden.

Wenn es etwas ist, das einfacher geht, denn in dem was ich meine, muss man erst mit DropDown hin und her scrollen, dann bitte kontaktieren. Ich suche etwas einfacheres, mit dem ich die Attribute auf einen Artikel einfacher übernehmen kann, da ich nur zwei Attributarten habe. Danke.

Hallo.

Das mit dem Kopieren der Attribute finde ich eigentlich schon komfortabel genug. Wie soll das denn einfacher gehen, was stellst Du dir vor?

Link to comment
Share on other sites

Hallo.

Das mit dem Kopieren der Attribute finde ich eigentlich schon komfortabel genug. Wie soll das denn einfacher gehen, was stellst Du dir vor?

bei der Standard xtc haben wir eine Kopierfunktion der Attribute, aber eine sehr mühsame. Diese Option erscheint z.B. wenn man einen Artikel erstellt und abspeichert. Die Seite die danach kommt, erlaubt einem, von einem bestehendem Artikel die Attribute zu übernehmen. Nur, wenn du hunderte Artikel hast, kann man ewig scollen, bis man diesen "Masterprodukt" gefunden und ausgewählt hat. Es sind ausserdem drei Schritte notwendig und auch jeweils nur ein Artikel, zumindest kenne ich es so und versuche damit über die Runden zu kommen.

Es gibt zwar XAJAX Module, aber für einen Anfängershop immer noch zu teuer, das wäre interessant, wenn der Laden auch läuft.

Link to comment
Share on other sites

Hi yuecel,

bei meiner Lösung geht es nicht darum, Attribute zu kopieren, sondern direkt zu nutzen.

Ein Beispiel:

Der Masterartkel A hat die Attribute x,y und z.

Nun können beliebige andere (natürlich selektierbar welche) Artikel genau die Attribute des Artikels A nutzen. Alle Preise, Bestände etc dieser Attribute werden (auch in der Datenbank) nur einmal geführt und verwaltet. Das macht bei vielen Artikeln mit identischen Attributen dann schon Sinn, diese nicht ständig kopieren zu müssen und getrennt zu pflegen...

Ist die Idee / Funktionsweise ungefähr rübergekommen?

Ben

Ben,

kann man bei deiner Lösung die Preise und den Lagerbestand der *gleichen* Attributmerkmale so abändern, dass sie für alle Artikel gelten, die dieses Attribut haben?

Ich glaube, der oben genannte SQL-Befehl ist ursprünglich von Dir.

Kann man dafür nicht einfach per php eine Maske für den Admin erstellen?

cheers

Link to comment
Share on other sites

bei der Standard xtc haben wir eine Kopierfunktion der Attribute, aber eine sehr mühsame. Diese Option erscheint z.B. wenn man einen Artikel erstellt und abspeichert. Die Seite die danach kommt, erlaubt einem, von einem bestehendem Artikel die Attribute zu übernehmen. Nur, wenn du hunderte Artikel hast, kann man ewig scollen, bis man diesen "Masterprodukt" gefunden und ausgewählt hat. Es sind ausserdem drei Schritte notwendig und auch jeweils nur ein Artikel, zumindest kenne ich es so und versuche damit über die Runden zu kommen.

Es gibt zwar XAJAX Module, aber für einen Anfängershop immer noch zu teuer, das wäre interessant, wenn der Laden auch läuft.

In der Standard-Version fvon XTC 3.0.4SP2.1 wird beim Kopieren der Attribute auf einen anderen Artikel die Sortierreihenfolge nicht übernommen. Das bremst unheimlich aus. Das kann man aber schnell lösen. Wenn das stimmt, dann geht das Kopieren der Attribute auf andere Artikel ziemlich rasch.

Dein Problematik wäre optimal gelöst, wenn beim duplizieren eines Artikels auch die Attribute übernommen würden.

Ob das für die momentan verfügbaren Versionen umsetzbar ist bezweifle ich.

Wäre wirklich optimal.

Link to comment
Share on other sites

kann man bei deiner Lösung die Preise und den Lagerbestand der *gleichen* Attributmerkmale so abändern, dass sie für alle Artikel gelten, die dieses Attribut haben?

Da die Attribute nicht nur die *gleichen* sondern die *selben* sind, geht das natürlich.

Wie gesagt: da ist nur ein Attributsatz für den Masterartikel in der Datenbank. Die Artikel, die Attribute eines Masterartikels nutzen, machen das nur über eine Referenz, nicht über eigene Datenbankeinträge.

Ben

Link to comment
Share on other sites

In der Standard-Version fvon XTC 3.0.4SP2.1 wird beim Kopieren der Attribute auf einen anderen Artikel die Sortierreihenfolge nicht übernommen. Das bremst unheimlich aus. Das kann man aber schnell lösen. Wenn das stimmt, dann geht das Kopieren der Attribute auf andere Artikel ziemlich rasch.

Dein Problematik wäre optimal gelöst, wenn beim duplizieren eines Artikels auch die Attribute übernommen würden.

Ob das für die momentan verfügbaren Versionen umsetzbar ist bezweifle ich.

Wäre wirklich optimal.

stimmt, habe ich vergessen zu erwähnen. Aber ob man damit ziemlich rasch ist, zumindest bei der Erstpflege, bezweifle ich.
Link to comment
Share on other sites

Die Anforderung ist doch schon fast trivial. Da braucht's doch nicht mehr als ein, zwei Datenbankabfragen.

Ben

lange rede kuzer Sinn, ich möchte deine Lösung sehen, probieren, kaufen oder was auch immer, an die DB traue ich mich nicht, bzw. nicht ohne anleitung bzw. Script

danke.

Link to comment
Share on other sites

Da die Attribute nicht nur die *gleichen* sondern die *selben* sind, geht das natürlich.

Wie gesagt: da ist nur ein Attributsatz für den Masterartikel in der Datenbank. Die Artikel, die Attribute eines Masterartikels nutzen, machen das nur über eine Referenz, nicht über eigene Datenbankeinträge.

Ben

Ben,

Interesse. Bitte um Donation-Daten.

Auch die Lösung für die Übernahme der Attribut-Daten beim Kopieren eines Artiklels.

engelleik

Link to comment
Share on other sites

Welche? Die mit dem Masterartikel für Attribute, oder die Erweiterung um Attribute gleich mit Artikeln zu kopieren?

Oder wohlmöglich gleich beides???

Ben

die Kopierfunktion (duplizieren) hat einen entscheidenden Fehler, zumindest im Moment mit meiner. Es werden keine neuen ArtNr. angelegt. Ich habe eine automa. ArtNr. Vergabe und bei diesem duplizieren wird die ArtNr des vorhandenen Artikels einfach übernommen.

Mich würde die Masterlösung interessieren,

Link to comment
Share on other sites

	// duplicates a product by id into specified category by id

function duplicate_product($src_products_id, $dest_categories_id) {
if(!$pInfo->products_model) {
$product_id_query = xtc_db_query("SELECT MAX(products_id)
AS products_id
FROM " . TABLE_PRODUCTS . "
");

$product_id = xtc_db_fetch_array($product_id_query);
$product_id = $product_id["products_id"] + 1;
$pInfo->products_model = "100-".$product_id; // 100- kann editiert werden
}[/PHP]

das habe ich verbaut, aber null funktion, ich bekomme keine Nummer zugewiesen

Link to comment
Share on other sites

Hi ,

versuch's doch mal hiermit:


 // duplicates a product by id into specified category by id

 function duplicate_product($src_products_id, $dest_categories_id) {

  $product_query = xtDBquery("SELECT *

                                          FROM ".TABLE_PRODUCTS."

                                         WHERE products_id = '".xtc_db_input($src_products_id)."'");

  $product = xtc_db_fetch_array($product_query);

  if ($dest_categories_id == 0) { $startpage = 1; $products_status = 1; } else { $startpage= 0; $products_status = $product['products_status'];}


  // <neu>

  $model_query = xtc_db_query("SELECT MAX(products_id) AS products_id FROM " . TABLE_PRODUCTS ); 

  $model_id = xtc_db_fetch_array($model_query); 

  $product['products_model'] = '100-' . strval( intval ($model_id['products_id']) + 1); 

  //</neu>

...

Ben

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...