When orders are fulfilled in CRM the status of the order is changed and an order close activity is created.
Complete an order using Fulfill Order on the ribbon
In the web interface, orders can only be fulfllled one at a time using Fulfill Order on the ribbon in an order form. This button is not shown in lists of orders.
When an order is fulfilled the following changes are made:
- The status of the order is changed to fulfilled
- An order close activity is created (activity type 4209)
- The Date Fulfilled field is set to the date selected in the order close dialog
- The time on the Date Fulfilled field is set to midnight in the time zone of the user that fulfills the order
Fulfill orders using workflow
To fulfill more than one order at a time, create a workflow to run on demand. Add a single step to the workflow that changes the status to fulfilled. The workflow can then be run on one or more orders (up to a maximum of 250).
The same changes are made to an order as when using Fulfill Order on the ribbon but the time on Date Fulfilled is set to the time that the workflow ran (in the timezone of the user running the workflow) instead of midnight.
Fulfill orders programmatically
To fulfill more than 250 orders consider writing a program that fulfills orders. The program will use the CRM SDK and must first identify (perhaps using a query) the set of orders to be fulfilled.
Fulfilling orders and time zones
When an order is fulfilled the Date Fullfilled is set to midnight in the time zone of the user that fulfills the order. If all users are in the time zone this is not an issue, but if multple time zones are in use the issues described in this article where users may see different fulfilled dates might apply. The technique described in the article to adjust the time part of the day to noon UTC cannot be used because there is no way to include JScript in the Order Close dialog box.
The available ways to resolve this seem to be to either use a custom field for the date an order is fulfilled and use JScript to set the time or develop a plug-in to alter the time at the platform level.
Making an order active
An order that has been fufilled cannot be set to active in the application but a workflow can change the status to active (or indeed another status). In this case, the order close activity created when the order was fulfilled is not removed and the value of Date Fulfilled is not changed.