Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Ryan.Rueckl 4 posts 24 karma points
    Jul 16, 2014 @ 23:59
    Ryan.Rueckl
    0

    Shipping method issue

    I am using the (kitten) example site from version 1.1 for building my site, but using the version 1.2 code.  I'm trying to reproduce the single page checkout so this was just easier.  Even though I have a shipping provider set up in the backoffice, I can not get it to show on the site (in the checkout process).  I've come across some errors in the log file:

    ERROR Merchello.Core.Strategies.Packaging.ShippableProductVisitor - [Thread 347] ProductVariant marked as shippable was not assoicated with a WarehouseCatalog.  Product was: 7c4c4b0a-6d8a-47ad-9ef0-d90b120a88d3 -  WRJ Rhinestone Hoodie - S   System.IO.InvalidDataException: Found invalid data while decoding.

    ERROR Merchello.Core.Gateways.Shipping.ShippingGatewayProviderBase - [Thread 347] ShipMethods could not be determined for Shipment passed to GetAvailableShipMethodsForDestination method. Validator returned: ErrorNoCatalogFound   System.ArgumentException: merchWarehouseCatalogKey

    ERROR Merchello.Core.Gateways.Shipping.ShippingGatewayProviderBase - [Thread 347] ShipMethods could not be determined for Shipment passed to GetAvailableShipMethodsForDestination method. Attempt message: No CatalogKeys found in Shipment Items   System.ArgumentException: merchWarehouseCatalogKey

    I tried to debug the issue and the only thing that I could seem to find that wasn't working correctly was in the file - \src\Merchello.Core\Strategies\Packaging\DefaultWarehousePackagingStrategy.cs.  In line 66 it is requesting "variant.CatalogInventories" but it is always coming out as null.  I also noticed a comparison that wasn't working 3 lines before it:

    var variant = variants.FirstOrDefault(x => x.Key.Equals(lineItem.ExtendedData.GetProductVariantKey()));.

    In the debugger, I could see that the 2 guids being compared were different. x.Key was getting set to the ProductAttribute (DB table) primary key, and the lineItem.ExtendedData.GetProductVariantKey() was getting the ProductVariant (DB table) primary key.

    Has anyone come across any of those 3 errors, or have any idea how to get this shipping provider options working?

    Thanks!

  • Rusty Swayne 1655 posts 4993 karma points c-trib
    Jul 17, 2014 @ 01:23
    Rusty Swayne
    0

    Hi Ryan,

    What is happening there is the catalog key is for some reason is not being serialized with the basket line item so the basket packaging routine can't determine a shipping origin.

    Do you have inventory set for the products you are adding to the basket or do you not tracking inventory?

    I'd be happy to help trouble shoot this - would you mind setting up a Skype call?

  • Ryan.Rueckl 4 posts 24 karma points
    Jul 17, 2014 @ 01:49
    Ryan.Rueckl
    0

    I am not tracking any inventory.  I don't currently use Skype at work, but I can look into installing it.  I assume afternoon/evening are the best times for you?

    In the meantime, do you have any suggestions for me to try or any specific code to look into to see where the issue is?

    Thanks

  • Rusty Swayne 1655 posts 4993 karma points c-trib
    Jul 17, 2014 @ 02:10
    Rusty Swayne
    0

    What is happening is the shipping gateway method (the thing responsible for quoting a shipment rate) cannot find the "warehouse catalog key" in the line item. It needs this so that it can figure out the origin address of the shipment which is the warehouse address.

    What should happen, even if your not tracking inventory, record in the merchCatalogInventory table providing the relationship between the product variant and the warehouse catalog (and thus the warehouse).

    Can you confirm that there are records in that table? I'm not sure why there wouldn't be but if not, we need to record a bug in issues.merchello.com and I will look into it.

    So that your not stuck, try setting inventory on one or two of your products and see if you can get shipping rates with those.

  • Alex Lindgren 159 posts 356 karma points
    Feb 24, 2015 @ 03:57
    Alex Lindgren
    0

    Not sure why, but we were missing records for products with multiple variants. But inserting like the following fixed it:

    insert into merchCatalogInventory (catalogKey, productVariantKey, [count], lowCount, updateDate, createDate) values ('B25C2B00-578E-49B9-BEA2-BF3712053C63', 'E3AFE15C-46E6-42FD-B2E1-CF589B3F02A9', 0, 0, getdate(), getdate())

    We are running Merchello 1.5

  • Rusty Swayne 1655 posts 4993 karma points c-trib
    Feb 25, 2015 @ 23:09
    Rusty Swayne
    0

    Alex, there was some refactoring in 1.6.0 and again in 1.7.0 relating to inventory issues. Is this happening to only products with variants after you manipulate something on a variant or futz with the options again?

  • Alex Lindgren 159 posts 356 karma points
    Feb 25, 2015 @ 23:34
    Alex Lindgren
    0

    It's only products with variants but I think just when we add the variants - because we tried recreating the product. It appears to be the same problem Ryan reported back in July (same project), but not sure why it reappeared. I don't think they are adding more products for a while, so for now, we will just run the SQL insert if we run into the problem again but I suppose we should upgrade to the latest Merchello.

  • Rusty Swayne 1655 posts 4993 karma points c-trib
    Feb 25, 2015 @ 23:40
    Rusty Swayne
    0

    In 1.6.0 we added some assertions that all variants were created for each possible option choice and also added an availability toggle. I have not seen the problem resurface since that time. There was some additional refactoring done in 1.7.0 which mainly had to do with inventory and multi-catalog functionality. Let's chat about the upgrade at uWestFest when I see you.

  • Dacre 3 posts 72 karma points
    Feb 22, 2018 @ 09:17
    Dacre
    0

    I was having the same issue: "ProductVariant marked as shippable was not assoicated with a WarehouseCatalog.". In the end I found a solution here:

    https://our.umbraco.org/projects/collaboration/merchello/merchello/84535-merchello-inventory-count-is-resetted-to-zero#comment-271147

    My problem was to do with my product importer - as products were being created programmatically, it was necessary to have products added to my default inventory catalog.

    Hope that is of some help to anyone experiencing this issue

Please Sign in or register to post replies

Write your reply to:

Draft