Giter VIP home page Giter VIP logo

Comments (3)

nozzlegear avatar nozzlegear commented on July 30, 2024

Hey @BasitBulbulia! I think the problem is the LocationService.ListAsync does not return a list directly, instead it returns this ListResult<Location> object, so you can't do locations(0).Id.

You should be able to fix that error by using locations.Items(0).Id.

from shopifysharp.

BasitBulbulia avatar BasitBulbulia commented on July 30, 2024

I tried that this is the errors in IDE
error-two

from shopifysharp.

nozzlegear avatar nozzlegear commented on July 30, 2024

Oh I see, which version were you using before @BasitBulbulia? It looks like you're using the older method for creating fulfillments that Shopify has deprecated and removed. They require apps to use a new "Fulfillment Order" based approach for fulfilling line items and entire orders, we're not allowed to create fulfillments with the old API anymore.

I don't know much VB unfortunately, so this may not be entirely correct. I think you want something like this:

Try
    Dim fulfillmentOrderService As New FulfillmentOrderService(domain, accessToken)
    Dim fulfillmentService As New FulfillmentService(domain, accessToken)

    Dim policy As New LeakyBucketExecutionPolicy()

    fulfillmentOrderService.SetExecutionPolicy(policy)
    fulfillmentService.SetExecutionPolicy(policy)

    ' Find open fulfillment orders for this order
    Dim openFulfillmentOrders = Await fulfillmentOrderService.ListAsync(orderId)
    openFulfillmentOrders = openFulfillmentOrders.Where(Function(f) f.Status = "open").ToList()

    ' Fulfill all line items across all open fulfillment orders in this Shopify order
    Dim lineItems = openFulfillmentOrders.Select(Function(o) New LineItemsByFulfillmentOrder With {
        .FulfillmentOrderId = o.Id.Value
        ' Optionally specify a list of line items if you're doing a partial fulfillment
        ' .FulfillmentRequestOrderLineItems = ...
    })

    ' Fulfill the line items
    Dim fulfillment = Await fulfillmentService.CreateAsync(New FulfillmentShipping With {
        .Message = "items are shipping!",
        ' Set to true to send an email to the customer that their items have shipped
        .NotifyCustomer = False,
        ' You can leave the tracking info out if you have no tracking info
        .TrackingInfo = New TrackingInfo With {
            .Company = "UPS",
            .Url = "...",
            .Number = "..."
        }
    })
Catch ex As Exception
    If DoAllStockUpdate = False Then MsgBox("SetOrdersAsComplete-->" & ex.Message)
    Return False
End Try

Check this thread here for more info on the Fulfillment Orders workflow: #828

from shopifysharp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.