Comments (10)
Just to update this issue, I found that removing the store
column from the CSV results in the products being updated correctly. However, we have a magento multistore setup, so this issue is still problematic for us. Any ideas as to the issue?
from magmi-git.
1 . I suppose your color attribute is a dropdown or a multiselect
In Magento , Attribute values for dropdown/multiselect are not bound to items, they are bound to attributes themselves.
All items will share the same value list , but each different item will store only a reference on the one(s) they use in the list.
Then attibutes have a scope (meaning that values can be associated to a given store or be available for all stores)
All this is configured Magento side, at the attribute level.
Magmi only reads the attribute metadata & imports according on scope & existing values.
If you want to present different values on different stores for the same multiselect/select attribute, you need to define attribute scope to "store view".
Then, if you want values to be removed from existing "shared" value list , magmi has utility plugins one of which is able to remove "orphan" values (ie values that are not used by any existing product)
from magmi-git.
@dweeves thanks for the response. Maybe I don't understand what you mean but let me see if I can be a bit more clear with my example.
I have a product named product 100
. This product is in store1
. This product has a color of blue|green
(2 colors - using multiselect).
When I want to change the colors for product 100
in store1
I update blue|green
to have the values of red|orange
and import the new CSV. Currently, this produces a color selection of blue|green|red|orange
, when it should not associate colors blue|green
with product 100
but only colors red|orange
.
I noticed that this issue is not only for multiselect or, in my case, the color
field. I've also noticed this happens for other fields too.
For example, if I have a product named product 500
in store2
and I want to change it to store3
, after import of the CSV with the change, Magento shows product 500
in store2
and store3
rather than just store 3
.
Is that more clear or maybe I just don't understand your response?
from magmi-git.
Ok, so i'll elaborate:
1st import:
blue|green
are created if not existing into color available "value list" . (independently from item 100
, since magento binds only "current values" to items for multiselect, Magmi binds the `blue&
green``values from the "color" attribute value list to``item 100``.
2nd import:
red|orange
are created if not existing into color available value list (independently from item 100
) . So the "value list" for color has indeed 4 values now. Magmi binds the red
and orange
values from the "color" attribute value list to item 100
The reason is the one i explained earlier : value list for a select or multiselect attribute are "shared" by store (or globally depending on attribute scope) among all items having this attribute. This is how MAGENTO (not magmi) works, magmi only manipulates the magento data model a bit more efficiently using direct SQL and enabling "on the fly" value creation for select/multiselects.
Then , if no other product has blue nor green,and you are sure they will never be used , you might use the magmi "Custom SQL" advanced utility to apply the "remove orphan option values" script to remove the blue & green (and all other unused values) from the the available color list.
My guess is you misused magento datamodel, you'd rather create configurable products, using color as a pivot field , and define one product for each color; then magento will check "color" availablity based on stock of child products.
Another option for "per item" color availability would be to use "custom options" , which magmi is able to import.
But my guess is that "standard" attribute is not the right tool for you to express your need.
For "store" assignation, magmi is not currently able to change product "store scope", it can only set values for the store scope you set (ie : it only relies on CSV input data).
So importing item 500 in store 2 , then put item 500 with store 3 in a secondary import only tells :
First import : i want item 500 in store 2
Second import: i want item 500 in store 3
A then end of the 2 imports, magmi did what you told : putting item 500 in store 2, then in store 3. and it ends in both stores.
There is ,no easy way of distinguishing "add it in store 2, add it in store 3" from "move it from store 2 to store 3". i may enhance magmi to support "reset_store" column to force store reassigment however. this may be a good suggestion
from magmi-git.
I'm sorry, this is a custom attribute, not a standard attribute built into magento, its code is color_2 with global scope.
Am I correct is stating that Magmi doesn't work in such a way as magento's replace existing complex data
import option? The option in magento's importer does exactly what I need, except it doesn't accept pipe delimited values.
from magmi-git.
custom attribute <> custom option.
custom option is a "per item" specific field. custom attribute is a attribute defined by the user and is "somehow" what i call a "standard attribute" in term of magento & magmi processing.
So as i said, attributes values for "select/multiselect" are shared by default among all items. Magmi has no "replace" default behaviour since it's a very peculiar need.
If you want "per item" color choice, then you'd better use configurable items with subitems having their own color choice. doing this, you'll be able to filter based on subitem stock availabliity.
Other possible choice is "custom option" (not attribute), which is a "per item" custom field , in the latter case, magmi redefines the option list for a custom option each time.
The behaviour you want to have is a bit weird. it would replace all possible "color" values FOR ALL ITEMS for each new imported item.
Say :
Item 1 , color : blue,green
Item 2 , color, red,yellow
With "reset" behaviour, you'll end with item 1 possible color choice reset to "red, yellow" (forgetting the initial blue green" since the blue,green,red, yellow values are bound to "color" INDEPENDENTLY from item. resetting them would reset them for all other items with a color attribute.
from magmi-git.
I am trying to append via MAGMI and I am having an issue with one field not changing. I use a shipping program that calcuates the box for the item to fit in. It is a multiple select global attribute. ARe you saying that I cannot change this field with MAGMI? I am able to change it with the regular import tool but it takes forever and would love to use MAGMI. right now, I cannot get it to change at all. I have even just put one item in the field (as opposed to multi) and still no change
any help would be appreciated
from magmi-git.
Currently , magmi handle only "standard" multiselect attributes. It seems
that many extensions define multiselect atrributes using their own storage
model that is quite different from magento standard option storage.
To make it short : magento uses a double indirection storage for
select/multiselect option, defining the attribute itself has an int and
using xxx_option_value table to make the mapping.
Magmi handle those natively.
However, some extension use a "simpler" storage model, defining the storage
directly as varchar, thus "fooling" magmi . i'll may add some code to
"detect" those attributes & test they are supported or not, but fill their
value is another story since each extension may define its own storage
model.
I plan to have soon enhancements on select/multiselect processing in magmi,
since some issues have been reported on other aspects like translation of
configurable attributes.
thanks for spotting this.
2014-11-06 17:33 GMT+01:00 ValerieS [email protected]:
I am trying to append via MAGMI and I am having an issue with one field
not changing. I use a shipping program that calcuates the box for the item
to fit in. It is a multiple select global attribute. ARe you saying that I
cannot change this field with MAGMI? I am able to change it with the
regular import tool but it takes forever and would love to use MAGMI. right
now, I cannot get it to change at all. I have even just put one item in the
field (as opposed to multi) and still no change
any help would be appreciated—
Reply to this email directly or view it on GitHub
#20 (comment).
from magmi-git.
Thank you for responding! I really love MAGMI and would love to use it
all the time. Guess I have to go back to the SLOW painful way of
importing product. Any idea when the select/multiselect attribute
processing might be available?
Is there anyway around this problem? Can I put the double direction in
the field (you can tell I have no idea what I am talking about, right
;) )??
Val
On 11/6/14, 11:39 AM, Sebastien Bracquemont wrote:
Currently , magmi handle only "standard" multiselect attributes. It seems
that many extensions define multiselect atrributes using their own
storage
model that is quite different from magento standard option storage.To make it short : magento uses a double indirection storage for
select/multiselect option, defining the attribute itself has an int and
using xxx_option_value table to make the mapping.
Magmi handle those natively.However, some extension use a "simpler" storage model, defining the
storage
directly as varchar, thus "fooling" magmi . i'll may add some code to
"detect" those attributes & test they are supported or not, but fill
their
value is another story since each extension may define its own storage
model.I plan to have soon enhancements on select/multiselect processing in
magmi,
since some issues have been reported on other aspects like translation of
configurable attributes.thanks for spotting this.
2014-11-06 17:33 GMT+01:00 ValerieS [email protected]:
I am trying to append via MAGMI and I am having an issue with one field
not changing. I use a shipping program that calcuates the box for
the item
to fit in. It is a multiple select global attribute. ARe you saying
that I
cannot change this field with MAGMI? I am able to change it with the
regular import tool but it takes forever and would love to use
MAGMI. right
now, I cannot get it to change at all. I have even just put one item
in the
field (as opposed to multi) and still no change
any help would be appreciated—
Reply to this email directly or view it on GitHub
#20 (comment).—
Reply to this email directly or view it on GitHub
#20 (comment).
from magmi-git.
What is an example of a "Standard" multiselect attribute?
from magmi-git.
Related Issues (20)
- Error with attribute set association
- Attributes Options needs resaving
- can't check Magmi Magento Reindexer v1.0.3a
- Optimize Magmi HOT 2
- Weee Tax
- Is Magmi compatible with PHP 7.2?
- Magmi stalls on the first line, only sometimes errors HOT 3
- Datapump Ingest returning empty value for [ok]
- PHP Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/cl_prod/vendor/dweeves/magmi/magmi/inc/magmi_mixin.php on line 28
- password stripped of capitals/uppcase
- Magmi Login fails after SUPEE-11219 update? HOT 3
- PHP Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/clients/client2/web2/web/magmi/plugins/extra/itemprocessors/valuetrim/valuetrimmer.php on line 37
- If the image title is the same, it doesn't replace the old image when imported. HOT 5
- Magmi keeps asking for login (M 1.9.4.4) HOT 1
- Products Salable Quantity Remains '0' While Importing New Products.
- Magmi - Imageattribute processor is not working with WEBP images
- Magmi don't work in magento 2.3.7 and php 2.4 HOT 2
- Installation issues Nginx HOT 1
- unable to download image from external URL
- Not updated inventory in the inventory_source_item table while importing Magmi HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from magmi-git.