Jump to content
MarcoSch

[erledigt]Bei Produktupdate Kategorie ignorieren?

Recommended Posts

Ich habe bei einem Produktupdate mal testweise bei einem Artikel die Kategorie weggelassen und beim Import dann 'Diese Feld ignorieren' gewählt.

Aber offenbar ist es egal ob in der Feld irgendetwas steht (habe auch mal versucht eine Kategorie anzugeben die noch nicht existiert) oder es leer bleibt. Sobald es beim Import ignoriert werden soll wird der Artikel in die Kategorie 'Start' verschoben.

Bei Update möchte ich doch aber lediglich Quanatity und eventuell den Preis aktualisieren. Wieso wird meine Auswahl das Feld zu ignorieren, also es in der DB so zu belassen wie es ist, nicht berücksichtigt?

Kann man das irgendwie/irgendwo abschalten das der das bei 'ignoriere' verschiebt?

Die ID wird ja auch nicht geändert (obwohl das Feld aktivert sein muss) wenn ich die Artikelnummer als Referenz verwende.

 

Der Grund ist nämlich das ich täglich meine CSV vom Dropshipper erhalte und dort sind die Artikel immer etwas anders angeordnet. Dann die Artikel jedesmal der richtigen Kategorie zu zuordnen ist sehr aufwendig.

 

Edit:

In der AdminImportController.php habe ich das folgende gefunden

 

// Will update default category if category column is not ignored AND if there is categories that are set in the import

// this if will avoid ereasing default category if category column is not present in the CSV file (or ignored)

 

 

Ist da vielleicht eine Möglichkeit das ähnlich zu handhaben wie bei der Quantity?

                // Will update default category if category column is not ignored AND if there is categories that are set in the import file row.
                if (isset($product->id_category[0])) {
                    $product->id_category_default = (int)$product->id_category[0];
                } else {
                    $defaultProductShop = new Shop($product->id_shop_default);
                    $product->id_category_default = Category::getRootCategory(null, Validate::isLoadedObject($defaultProductShop)?$defaultProductShop:null)->id;
                }
            }

            // Will update default category if there is none set here. Home if no category at all.
            if (!isset($product->id_category_default) || !$product->id_category_default) {
                // this if will avoid ereasing default category if category column is not present in the CSV file (or ignored)
                if (isset($product->id_category[0])) {
                    $product->id_category_default = (int)$product->id_category[0];
                } else {
                    $defaultProductShop = new Shop($product->id_shop_default);
                    $product->id_category_default = Category::getRootCategory(null, Validate::isLoadedObject($defaultProductShop)?$defaultProductShop:null)->id;
                }
            }
Edited by MarcoSch (see edit history)

Share this post


Link to post
Share on other sites

Hat denn keiner eine Lösung? 

Wenn ich die Kommentare in AdminImportController.php der richtig verstehe, dann wird einmal geprüft ob die Spalte 'Kategorie' NICHT ignoriert werden soll UND ob es Kategorien gibt die in der CSV definiert sind. 

Wenn dann keine Kategorie festgelegt ist in der CSV wird der Artikel in die Start-Kategorie verschoben.

So weit verständlich.

Der 3. Kommentar verwirrt mich dann ein wenig. Denn hier wird offenbar ja dafür gesorgt das die Standardkategorie gelöscht wird falls die Spalte Kategorie nicht vorhanden oder ignoriert wird? Aber wenn die Spalte nicht vorhanden ist, was ist dann die Standardkategorie? 'Home'?

Und letztendlich vermisse ich was passieren soll wenn die Spalte 'Kategorie' ignoriert werden soll. Oder übersehe ich das?

Weil dann nämlich sollen ja nur die Spalten in der Datenbank aktualisiert werden die zugeordnet wurden beim Import und der Rest bleibt halt wie er ist. Bei allen anderen Spalten scheint das auch zu klappen. Nur die Kategorie will er nicht ignorieren, selbst wenn ich 'Diese Spalte ignorieren' auswähle. Und dabei scheint es dann halt egal zu sein ob en Wert in der Spalte steht oder nicht. 

In meinem Fall soll er halt nur die Preise und Mengen Updaten anhand des Artikelnummer. Das klappt ja auch wie gesagt, aber es wird halt IMMER die Kategorie beim Import mit berücksichtigt, selbst wenn die eigentlich ignoriert werden soll.

Und das ist ja eigentlich nicht erforderlich wenn man nur die Produktmengen und/oder Preise aktualisieren will, was ja meist der Fall ist.

 

Oder mache ich einfach nur noch irgendwo was falsch?

Edited by MarcoSch (see edit history)

Share this post


Link to post
Share on other sites

Ok, hat sich erledigt. Ich habe meine CSV-anpassungen mit PHP scripte gelöst.

Minimiert mir nun die Arbeit von Stunden auf Minuten :D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More