Discussions

Commerce Feeds creating Duplicate product display types

Hello

I've been importing products and product display types for a long time with no problems.

On the last import i've have tried to do there seem to be some kind of problem with the Product reference import i do, however.
It creates duplicates of some of my product display types, and from what i can see it is only the 22 newest product display types. I've tried all kinds of settings, but it still does it.

Furthermore when i want to reference the display items to the products it creates duplicates of the same 22 referenced products.

I know it sounds very strange, and it's probably my doing something wrong. I really hope however that somebody may have experienced similar behaviour and can guide me to a solution?

Thanks
Mads

Posted: Feb 29, 2012

Comments

smash on February 29, 2012

Here is an export for the product importer:

$feeds_importer = new stdClass;
$feeds_importer->disabled = FALSE; /* Edit this to true to make a default feeds_importer disabled initially */
$feeds_importer->api_version = 1;
$feeds_importer->id = 'product_importer';
$feeds_importer->config = array(
'name' => 'Product Importer',
'description' => 'Grab books from CSV and turn them into products',
'fetcher' => array(
'plugin_key' => 'FeedsFileFetcher',
'config' => array(
'allowed_extensions' => 'txt csv tsv xml opml',
'direct' => FALSE,
),
),
'parser' => array(
'plugin_key' => 'FeedsCSVParser',
'config' => array(
'delimiter' => ',',
'no_headers' => 0,
),
),
'processor' => array(
'plugin_key' => 'FeedsCommerceProductProcessor',
'config' => array(
'product_type' => 'product',
'author' => '1',
'mappings' => array(
0 => array(
'source' => 'CAT',
'target' => 'sku',
'unique' => 1,
),
1 => array(
'source' => 'KUNSTNER',
'target' => 'title',
'unique' => FALSE,
),
2 => array(
'source' => 'LABEL',
'target' => 'field_label',
'unique' => FALSE,
),
3 => array(
'source' => 'FORMAT',
'target' => 'field_format',
'unique' => FALSE,
),
4 => array(
'source' => 'PRIS',
'target' => 'commerce_price:amount',
'unique' => FALSE,
),
5 => array(
'source' => 'TITEL',
'target' => 'field_albumtitel3',
'unique' => FALSE,
),
6 => array(
'source' => 'STREGKODE',
'target' => 'field_stregkode',
'unique' => FALSE,
),
7 => array(
'source' => 'LAGER',
'target' => 'commerce_stock',
'unique' => FALSE,
),
),
'update_existing' => '2',
'input_format' => NULL,
'tax_rate' => '',
),
),
'content_type' => '',
'update' => 0,
'import_period' => '-1',
'expire_period' => 3600,
'import_on_create' => 1,
'process_in_background' => 0,
);

smash on February 29, 2012

$feeds_importer = new stdClass;
$feeds_importer->disabled = FALSE; /* Edit this to true to make a default feeds_importer disabled initially */
$feeds_importer->api_version = 1;
$feeds_importer->id = 'product_reference_importer';
$feeds_importer->config = array(
'name' => 'Product Reference Importer',
'description' => 'Pull the CSV feed in and make it into nodes',
'fetcher' => array(
'plugin_key' => 'FeedsFileFetcher',
'config' => array(
'allowed_extensions' => 'txt csv tsv xml opml',
'direct' => FALSE,
),
),
'parser' => array(
'plugin_key' => 'FeedsCSVParser',
'config' => array(
'delimiter' => ',',
'no_headers' => 0,
),
),
'processor' => array(
'plugin_key' => 'FeedsNodeProcessor',
'config' => array(
'content_type' => 'product_type',
'expire' => '-1',
'author' => '1',
'mappings' => array(
0 => array(
'source' => 'CAT',
'target' => 'guid',
'unique' => 1,
),
1 => array(
'source' => 'KUNSTNER',
'target' => 'title',
'unique' => FALSE,
),
2 => array(
'source' => 'FORMAT',
'target' => 'field_format',
'unique' => FALSE,
),
3 => array(
'source' => 'LABEL',
'target' => 'field_label',
'unique' => FALSE,
),
4 => array(
'source' => 'CAT',
'target' => 'field_produktreference:sku',
'unique' => FALSE,
),
5 => array(
'source' => 'TITEL',
'target' => 'field_albumtitel3',
'unique' => FALSE,
),
6 => array(
'source' => 'STREGKODE',
'target' => 'field_stregkode',
'unique' => FALSE,
),
),
'update_existing' => '1',
'input_format' => 'full_html',
),
),
'content_type' => '',
'update' => 0,
'import_period' => '-1',
'expire_period' => 3600,
'import_on_create' => 1,
'process_in_background' => 0,
);

commercestudy on March 1, 2012

I think, under the node processor options, you should choose replace existing nodes instead of update existing nodes, then see if your duplicating problem goes away, as in you no longer get duplicates coming through. You will of course have to delete the duplicates that have already been made, database backup?

smash on March 4, 2012

Yeah i'm doing backups all the time, then trying to do an import and when it fails restore to the state before the import.
I already have checked the field that says "Update existing nodes" and it doesn't help.

I really can't see where the problem is, though it propably is something i have done wrong at some point (usually is!) But i guess i'll just keep on trying untill it works out....

commercestudy on March 4, 2012

Hi, not update existing nodes, don't use that, but use "replace existing nodes" I think you will find selecting "Update existing nodes" is your actual problem.