Biztalk Catalog Integration

Is it possible to setup the Biztalk integration with the Catalog Manager to delete variants when importing with Incremental changes. I have tried creating the XML file with the variant I no longer want not present in the file but if I go into catalog manager I can still the variant after import.

Please Advise.



Answer this question

Biztalk Catalog Integration

  • Inferno986

    Hey

    The Deletion of variants works in Transactional Mode. I can't repro your scenario with the catalog supplied. Your syntax and format needs to match the below for deletions (of course the specifics will change if you are deleting a product versus a product variant).

    < xml version="1.0" encoding="utf-8" >
    <MSCommerceCatalogCollection2 version="3.0">
    <Catalog languages="en-US" name="base" variantUID="UPC" productUID="FulfillmentStyleNumber" DefaultLanguage="en-US" ReportingLanguage="en-US">
    <Product FulfillmentStyleNumber="TempWinterCatalog">
    <ProductVariant UPC="CATHA2" Action="Delete" />
    </Product>
    </Catalog>
    </MSCommerceCatalogCollection2>

    Here are the settings that I used with your catalog.

    Error Threshold 100

    Import Mode - Incremental

    Import Schema Changes - False

    Overwrite Relationships - False

    Set Export Ready - False

    Transaction Mode - Transaction (tried both with success)

    Can you try with the above settings When it fails - do you get any error content in the response message

    Thanks

    Alan



  • Alastair Q

    I have used following xml to import using catalog send adapter, still it did not delete the variant from catalog. This works if i import through catalog manager.

    < xml version="1.0" encoding="utf-8" >

    <MSCommerceCatalogCollection2 version="3.0">

    <Catalog languages="en-US" name="base" variantUID="UPC" productUID="FulfillmentStyleNumber" DefaultLanguage="en-US" ReportingLanguage="en-US">

    <Product FulfillmentStyleNumber="Test20">

    <ProductVariant UPC="40001234567890" Action="Delete" />

    </Product>

    </Catalog>

    </MSCommerceCatalogCollection2>

    I have set send adpater setting to "Import schema changes= True"..


  • Babalicious

    That should work

    Can you send me your catalog Email is: alanf at microsoft dot com

    Thanks!

    Alan



  • DanInNewWest

    Hi,

    I have tried this on over different box as well and it doesn't work.

    First i loaded service catalog with schema changes then i loaded base catalog with schema changes. Still i got same results. Can you please send me the port settings for this I believe something is correct on send port settings.

    Thanks,
    CSQ


  • zeeshanSami

    The format you used to represent the deleted variants might be an issue.

    One thing I would suggest is delete a variant from catalog manager, export the catalog and choose the "Export deleted items" checkbox

    Check the format of the deleted variants and create your xml which confirms to this format


  • Juan Carlos Ruiz Pacheco

    Hi Alan,

    I am getting this issue. When I am using the message with following then it does not delete the variant.

    <ProductVariant UPC="40001234567890" Action="Delete" > </ProductVariant>

    but if change this to <ProductVariant UPC="40001234567890" Action="Delete" />

    the commerce server able to delete the message.

    The mapping always returns <productvariant UPC="..." Action="Delete" > </productvariant>

    Not sure why this could be the issue

    Can you please check
    Thanks,


  • Ghanshyam Singh

    Thank you - that is what I needed to know.


  • beechum1

    Alan,

    I am experiencing the same problem as CSQ above.

    Can you comment on the above change - I am hesitant to change the mode to Non-Transactional - when I believe the webinar I watched specifically stated to set it to Transactional.

    For Reference here is my code:

    <MSCommerceCatalogCollection2 version="3.0">
    <Catalog name="HP" id="HP1/19/2007" variantUID="ServiceLevel" productUID="SKU" currency="USD" weight_measuring_unit="lbs" DefaultLanguage="en-US" ReportingLanguage="en-US" languages="en-US">
    <Product Definition="Parts" SKU="C2001-67912" UseCategoryPricing="0" ListPrice="0.00" LastModified="2006-01-16T14:00:00" ItemNmbr="HP0004-KIT" Manufacturer="HP" ManufacturerNmbr="2001-67912/C2001-67914 /C2001-67915/C2001-69012/C2001-69013" Category="FUSER" Description="HP 4/4M Maintenance Kit" ProductWeight="8" Image_filename="Images/HP0004-KITS.jpg" Image_height="250" Image_width="225" ID="XSID_C2001-67912">
    <DisplayName Value="HP 4/4M Maintenance Kit" Language="en-US" />
    <ParentCategory Rank="0">4550</ParentCategory>
    <ProductVariant ServiceLevel="EXCHANGE" action="Delete">
    </ProductVariant>
    </Product>
    </Catalog>
    </MSCommerceCatalogCollection2>

    Please Advise

    XCEL


  • Eric H.

    Hey

    I was able to import your catalog and delete a variant through the adapter using the below xml.

    < xml version="1.0" encoding="utf-8" >
    <MSCommerceCatalogCollection2 version="3.0">
    <Catalog languages="en-US" name="base" variantUID="UPC" productUID="FulfillmentStyleNumber" DefaultLanguage="en-US" ReportingLanguage="en-US">
    <Product FulfillmentStyleNumber="TempWinterCatalog">
    <ProductVariant UPC="CATHA2" Action="Delete" />
    </Product>
    </Catalog>
    </MSCommerceCatalogCollection2>

    I changed the Product and Variant as I didn't find the original ones in your base catalog.

    Thanks

    Alan



  • CurlyHaze

    Hi,

    The variant delete worked after changing the Transaction Mode to "Non Transaction" on Send Port. Not sure, why it has to be Non Transactional..


  • bzoli

    Hey

    I'll take a look - can you send me your catalog again

    Thanks

    Alan



  • wiyosaya

    Hey

    I tried your above scenario using the below xml files and couldn't reproduce your problems with the given catalog.

    <MSCommerceCatalogCollection2 version="3.0">
    <Catalog languages="en-US" name="base" variantUID="UPC" productUID="FulfillmentStyleNumber" DefaultLanguage="en-US" ReportingLanguage="en-US">
    <Product FulfillmentStyleNumber="TempWinterCatalog">
    <ProductVariant UPC="CATHA2" Action="Delete"></ProductVariant>
    </Product>
    </Catalog>
    </MSCommerceCatalogCollection2>

    < xml version="1.0" encoding="utf-8" >
    <MSCommerceCatalogCollection2 version="3.0">
    <Catalog languages="en-US" name="base" variantUID="UPC" productUID="FulfillmentStyleNumber" DefaultLanguage="en-US" ReportingLanguage="en-US">
    <Product FulfillmentStyleNumber="TempWinterCatalog">
    <ProductVariant UPC="CATHAN" Action="Delete" />
    </Product>
    </Catalog>
    </MSCommerceCatalogCollection2>


    Both of them work correctly. You might want to perform a Sql trace to see what commands the catalog system is sending to Sql.

    Hope this helps and let me know if you have additional questions.

    Alan



  • Biztalk Catalog Integration