Quantcast
Channel: Dynamics 365 Blog
Viewing all 312 articles
Browse latest View live

WMS in Microsoft Dynamics® AX 2009. Shipping Process Overview

$
0
0

Introduction

The WMS (Warehouse Managements System) encompasses the core components within average Microsoft Dynamics AX installations that are implemented to manage and run world class warehouses.

The WMS functionality is enabled by the configuration keys LogisticsAdvanced, WMSBasic, and WMSAdvanced. Formal training is available with the courses “Trade and Logistics I in Microsoft Dynamics® AX 2009” and “Trade and Logistics II in Microsoft Dynamics® AX 2009”. The training material covers main flows and processes, but there is still plenty of room for discussions on this exiting subject.

Please welcome the first post of a WMS series on this blog.

Why should I continue reading this post?

This post describes core Microsoft Dynamics AX 2009 outbound shipping process components, such as output order and shipment, and it provides an overview of the outbound process in general. We would definitely recommend that you continue reading this post to:

·         Get a clear overview of outbound shipping processes with WMS in AX2009

·         Learn more about new features in the shipping process, such as consolidated picking

Let’s get started.

Outbound process

In Microsoft Dynamics AX 2009 outbound shipping via warehouse management is processesed through a shipment [Inventory management > Common Forms > Shipments].

A shipment is a collection of items that are packed in the same container for transport by, for example, ship, rail, truck, or plane. A shipment includes an entire order, a part of an order, or a consolidation of multiple orders.

Based on the contents of the shipment, one or more picking routes, one or more pallet transports, or both are created.

An output order is a request for a picking requirements and it forms the basis of a shipment. From the shipment you can activate a pallet transport, a picking route, or both. The shipment status is based on the lowest denominator of the shipment lines’ status.

When, for example, a sales order line is created in Microsoft Dynamics AX 2009 an inventory transaction is created with a negative quantity to control an expected issue of inventory. To control the process of issuing the physical inventory, an output order is used in the warehouse management area. The output order [Inventory management > Inquiries > Output orders] is created when the reference order is released (Posting of the picking list).

The output orders are associated with a shipment, and in that process Microsoft Dynamics AX 2009 creates shipment lines. When shipment reservation is run, the program creates picking routes and/or output pallet transports based on predefined settings. The following activation of the picking process makes it possible to pick and deliver picked inventory to the shipment staging areas where the shipment is staged and loaded before it is sent.

 

As shown below, the outbound process can be set up to include only part of the existing stages.

Output orders

In Microsoft Dynamics AX 2009, the warehouse management outbound processes use output orders [Inventory Management > Inquiries > Output orders].

 

The output order [Inventory management > Inquiries > Output orders] is created when the reference order is released (Posting of the picking list), or when a manual output is requested from the issue reference line.

The output order holds information about the status of the outbound process and it is linked to the detailed information of the issue reference line.

 

 

Relation to inventory transactions

When the output order is created, it takes “ownership” of corresponding issue inventory transactions. This relationship is maintained by two dedicated fields on the InventTrans table (TransChildType and TransChildTypeRef). All related inventory transactions are marked consistently against an output order. Consider the following code example of output order creation.

AOT/Classes/WMSOrderCreate/updateCreateWmsOrder()

inventTrans.TransChildType  = InventTransChildType::WMSOrder;

inventTrans.TransChildRefId = wmsOrder.OrderId;

Shipment

A shipment consists of a shipment header and lines, and the information relates to output orders which, again, relate to the different reference order lines. Note, that when using advanced warehouse management in AX, a shipment can contain references to multiple issue orders, and these orders can even be of different order types.

The shipment status is based on the lowest denominator of the shipment lines’ status. A shipment can be in one of the following statuses:

Status

Description

Registered

The shipment has been created but not yet reserved or, if just one shipment line exists, without being part of a route.

Reserved

The shipment has been reserved and picking routes and/or pallet transports have been generated, but they have not yet been released for picking.

Activated

Both picking routes and pallet transports have been released, but not all of them have been completed.

Note that picking can start even when all items for the shipment cannot be reserved.

Picked

At least one line of the shipment line is still at the picked stage.

Staged

At least one line of the shipment line is still at the staged stage.

Loaded

At least one line of the shipment line is still at the loaded stage.

Sent

The shipment has been sent and the shipment has been fully expedited.

Canceled

The shipment has been canceled.

Shipment template

A Shipment template available from Inventory management > Setup > Distribution > Shipment templates, is used as the basis of a shipment.

A shipment template is required only if features such as automatic shipment creation, automatic creation of output orders, or creation of shipments via a wizard are applied, otherwise a shipment can be created manually. When a shipment template is applied, output orders can automatically be assigned to a shipment – and then a shipment need not be created manually.

Picking

Microsoft Dynamics AX 2009 supports three outbound picking processes:

·         Consolidated picking

·         Order picking

·         Inventory transaction picking (for example, Accounts receivable > Common Forms > Sales Order Details (Lines) > Inventory > Pick)

The order picking and consolidated picking processes use the same framework, called output orders, but the consolidated picking method has much more functionality and it requires a license to Advanced Warehouse Management.

If consolidated picking is not applied, Microsoft Dynamics AX 2009 automatically creates a shipment and a picking route when, for example, a picking list is posted from the Sales orders form.

We do not recommend using inventory transaction picking in combination with one of the other picking methods since inventory transaction picking does not update output order related information.

The following example illustrates the possibilities of controlling the outbound warehouse management processes utilizing output orders in Microsoft Dynamics AX.

Consolidated picking implies that multiple orders can be combined into one picking list. The orders can potentially be of different types, for example sales orders or transfer orders.

Consolidated picking uses advanced shipment functionality such as reservation via shipment, activate picking, activate pallet transport, and guided picking routes.

For flexibility of use, the consolidated picking method can be set up in a hierarchy of levels:

-          Inventory model group

-          Warehouses

-          Warehouse items

-          Picking list posting

Unpick and cancelation of pick

In Microsoft Dynamics AX 2009 inventory can be unpicked and returned to a different inventory dimension as, for example, a location and/or pallet. The inventory transactions are returned to the original status after an unpick operation has been performed. The reference to the output order still exists, and the picking line can be updated to Picked again right after unpicking. When a picking line is canceled, the output order reference is moved to the issue reference line and the output order, therefore, needs to be released again from the issue order. Alternatively, the reference line or the “deliver remainder” quantity on the issue reference line can be canceled.

The unpicking and cancelation methods can be found on the picking list registration [Inventory management > Periodic > Picking list registration], lines – Functions. All the picking lines can also be canceled in one operation via Functions on the picking route header.

 

 Note that after the unpick action it is still possible to pick the same inventory again and again. Since the historical information is not stored in the system, the final inventory transactions are marked against the latest selected picking route, and the original reference using inventory transactions (TransChildType, TransChildTypeRef) is not valid anymore which means that these fields are empty on related inventory transactions. This aspect should be considered by every partner, who is planning to customize functionality in this area.

Data model

Please look at the following data model which represents the relationships between all entities in the scope of this blog post.

  

Per Lykke Lynnerup & Ievgenii Korovin, Inventory Management, Microsoft Dynamics AX. 


WMS related Question and Answers on Dynamics AX

$
0
0

A number of questions have been asked thought this blog about shipments and the shipment reservation logic. Some of the answers to these questions include information about aspects of these key system components that might be of general interest to our readers.

Shipment reservation for consolidated picking and activation essentials

Question #1 – Shipment activation

When a shipment is activated (Inventory management > Common forms > Shipments > Functions > Activate), the system will reserve the stock first, even though you do not have the “Reservation required” check box selected for the shipment. Is this design logic for consolidated picking shipments? And why is the logic designed in this way?

Answer #1

Activation of a shipment basically means that all picking routes and transports related to a shipment will be activated, and this status indicates that the state of all routes (picking and transports) allows operators to start working.

In order to utilize WMS for picking, picking routes are created based on picking areas and sorted based on, for example, the inventory locations sort codes. If the items were not reserved by the system before the shipment was activated, the picking location cannot be identified and the routes cannot be optimized.

So for activation, without reservation, the operator could end up being sent back and forth in the warehouse by the system and the items to be picked might not even be there.

The same goes for transports. If the items that are going to be transported were not reserved on the system, it would not be possible to identify where the transport should come from, which again would make it pretty hard to even create a transport.

The WMS shipment logic has not been designed for planning of shipments – this is actually more of a “grouping logic” for the warehouse picking operations.

Ordered reservation can be performed for the item picking location if this is defined in the shipment reservation combination.

Regarding the “Reservation required” option, please refer to question #2

Question #2 – “Reservation required”

Please explain why the shipping template which has to be used in conjunction with the consolidated picking method has the “Reservation required” check box if reservations are required whether or not it is selected.

Answer#2

First of all, the Shipment template is not required for a consolidated picking shipment. You can create a shipment manually. But it is really not the Shipment template that is the most interesting part here. This logic just copies the parameter settings to the shipment and controls if output orders should be assigned to shipments automatically. Please consider the following information on the ”Reservation required” logic:

- If activated, it will not be possible to reserve/activate the shipment and thereby create picking routes and output pallet transports unless all shipment lines can be reserved. The shipment status will remain ”Registered”.

- If not activated, it will be possible to reserve/activate the shipment and thereby create picking routes and output pallet transports for the shipment lines that can be reserved. The shipment status will remain ”Registered” (logically this is the lowest line state), if just one of the shipment lines cannot be reserved. This logic is typically used in x-docking scenarios. Instead of waiting to perform the picking operations for all the items that exist on-hand, the warehouse workers can go pick all inventory that is available on-hand. The inventory can be placed at the shipment staging area or loaded into a truck in a waiting position. As soon as the last item gets registered into inventory, the inventory is added to a picking route by the shipment reservation batch job.

The above logic is applicable only for consolidated picking shipments.

Question #3 – InfoLog when running the shipment reservation

Why is the InfoLog message an ‘information only – no action required’ when a shipment reservation is run with the “Reservation required” check box cleared and when the shipment is run with the “Reservation required” check box selected, the InfoLog message is a critical stop.

Answer#3

We hope the above answers this. If you do not have enough on-hand inventory for all shipment lines and the parameter is activated, the shipment cannot process further in this state. But if the parameter is not activated, the shipment lines that can be reserved will be added to picking routes and pallet transports. The lines that do not have on-hand inventory will remain ”Registered” and you will be informed by an InfoLog message about a stock shortage.

WMS refill logic of an item picking location

Question#4 – Group more pallets from bulk locations to refill an item picking location

In our case, we would like the replenishment team to be able to group pallet transports in order to move several pallets in one time for replenishment of a picking location. Let's illustrate this by an example:

The picking location for item A is set for a minimum of 500 and a maximum of 1000. We use pallets to identify carton boxes in the warehouse and a full pallet contains 100 item A (maximum pallet quantity). The current available quantity in the picking location is 600. If we pick 300 in the picking location, the available quantity becomes 200 below the minimum, and a pallet transport is generated to transport only one pallet of 100 from storage to the picking location. It is only when we complete the transport that a second pallet transport of 100 is generated again to reach the minimum. Moreover, as long as a pallet transport to the picking location exists (that is to say, generated but not yet completed), any further picking will not generate automatic replenishment via new pallet transports.

The behavior above does not fit original requirement, and we find it surprising that AX does not allow multiple pallet transports for replenishments. What are the incentives for such a restriction? Is there a specific setting somewhere to override this?

Original source of the question

Answer #4

Historically, the functionality of automatic refill leverages big parts of the functionality from the manual refilling of a picking location.

When warehouse workers (pickers) manually request a refill of a picking location, they have no way of knowing if a colleague has just recently ordered a refill, which hasn’t been completed yet. For that reason the system allows only one refill transport to be active at a time

At the same time you can, of course, have more than one registered refill transport (but not more than one active refill transport).

We find this scenario fairly unique. Typically a much higher quantity than you mention here is stored in the bulk areas and you can refill picking location with one transport in one go.

Creation of output orders for reserved physical quantity only

Question#5 – Release to pick for only reserved physical inventory

How can we release to pick multiple sales order lines and at the same time only release what is physically available on hand?

Answer #5

This can be done by utilizing the “Release sales order picking” form where you can use the query that is available on the form and add a range on the inventory transaction status issue field.

If you only want to release order lines which are reserved physically, you can use the option “All orders that have status reserved physical” before you release the orders for picking.

Sales orders can have lines that are partially reserved (with some stock remaining on back order). Rather than transferring the entire sales order quantity, you only want to create output orders for items that are reserved. In this case, you must activate the ”Deduct released for picking” parameter on the Release sales order picking form under Order parameters. This option allows a transfer of partially reserved quantities on the output order and it can be applied with the consolidated picking method.

Production input location

Question #6 – Location type Production input location

When is a location of the type Production input location used?

Answer #6:

The Production input location type is used in conjunction with production and internal consolidated picking shipments for raw components that are picked to the production area.

The Production input location must be assigned on a resource. When a BOM line item, then, requests a production operation utilizing consolidated picking, a shipment can automatically be created from the shipment template logic to request delivery of picked items. The destination location for the picked items is the input location at the production line. With this functionality the warehouse picking is guided to deliver the picked raw components that are going to be consumed by the production line at the production input locations.

 

Hope this helps,

Ievgenii Korovin and Dynamics Ax SCM Team

WMS enhancements in Microsoft Dynamics AX 2012

$
0
0

This posting describes some of the enhancements of the WMS functionality that were added in Microsoft Dynamics AX 2012.

Storing and updating the requested ship date on shipments

The WMSShipment table now stores the latest date where the shipment must be delivered in order to meet the requested ship date. This information is displayed in the Requested ship date (RequestedShipDate) field and the date corresponds to the earliest date that occurs on the lines of the shipment.

Based on this new field, batch processing of shipments can be set up with a level of detail that allows you to prioritize shipments that are soon to be shipped. The requested ship date is displayed in the Shipments form and records can be filter by this date.

clip_image002

Automatic activation of shipments

You can now activate shipments when you run shipment reservation in batch. Select the Activate shipments parameter in the Shipment reservation form in Inventory and warehouse management under Periodic> Shipments> Shipment reservation.

clip_image004

 

Automatically create shipments that are unique for customers or orders

With the Joint shipping parameter in the Shipment templates form you can now specify if a shipment should be split when output orders are added. With this parameter you do not need a separate template per customer to define what orders can be added to a shipment.

clip_image006

The enhanced shipment template can help improve the process to automatically assign orders to shipments. Orders are added according to the value of the Joint shipping field and shipments are automatically created for unique values.

Tracking load on WMS locations.

In earlier versions only the numbers of pallets were tracked on locations.

In Microsoft Dynamics AX 2012, weight and volume of items and pallets are also tracked together with the pallet count. The load for a location can be seen in the Inventory locations (WMSLocation) form.

clip_image008

The tracking is based on records in a new table named WMSLocationLoad. Records are always created and they are never updated. This is to allow for better scaling. The load on a location can be determined from the sum of the records.

Transports now also store the total weight and the total volume of the transport. The values are stored in the TotalVolume and TotalWeight fields.

In order to reduce the number of records in the WMSLocationLoad table it is recommended to run the Summation of load adjustments job in Inventory and warehouse management under Periodic > Clean up on a regular basis.

By Bibi Christensen, Per Lykke Lynnerup and Lennart Conrad

Disclaimer

All the information about AX 2012 posted here is a pre-release. Any feature is a subject to be changed before the release without notice.
This disclaimer is applicable to all posts about AX 2012 in this blog.

Improved integration to warehouse management in process manufacturing AX2012

$
0
0

Process manufacturing adds multiple capabilities to ensure that the inventory that is reserved is the inventory that meets the customer criteria. This capability is useful for any enterprise irrespective of nature of manufacturing environment.

For instance customer could ask for an inventory batch of chocolate bars with cocoa content between 80 and 100. In addition of course, AX should not ship expired batches or batches that are currently unavailable for picking, shipping etc. In previous versions it was possible to apply these criteria of inventory reservation on sales orders and transfer orders but was not possible to apply these criteria if warehouse management was used to pick, ship, stage & load goods. However AX2012 will take all these requirements into consideration when doing warehouse reservations.

In this post, a brief scenario is used to show how warehouse management reservation now works to ensure that customer criteria are met just like as in case of inventory reservation system.

Consider this on-hand information for different batches of chocolate bars

On-hand info for item WMS:

WMS scenario

Create a sales order. Add a line for chocolate bars to the sales order with quantity of 1700. On-hand inventory is automatically reserved. You can see here that reservation is only done on batches that are available, is done in FEFO order and the batch outside attribute range (batch B2, requirement: cocoa content must be between 80 and 100) is not reserved.

Batch reservation on sales order

Release the sales order line and create an inventory order (output order) which is the basis for shipment.

Create a shipment, inventory order created above will automatically be added to the shipment.

Inventory order

Shipment status is registered at this point. If you look at the shipment lines, you will see 1500 reserved on B1 and 200 on B3. As you can see this is not correct according to the WMS reservation policy because we should first create output transports from bulk locations (location 001-01-3) and then pick the rest from the picking location (002-02-1)

Shipment

Click Functions-> reserve now, shipment will have reserved status now. If you look at the shipment lines now, you will notice that the shipment is reserving according to the WMS reservation principles (First output transport from bulk locations and the pick the rest on picking locations). So 1500 reserved on B3 and then 200 on B1.

Shipment lines

Activate the shipment, complete the pallet transport and picking route.
Key thing to note here is that just like inventory reservation, WMS reservation also picks batch B3 and not batch B2 as it did in previous versions.

Contributors: Johan Hoffman, Akshey Gupta

What’s New for Microsoft Dynamics AX 2012 R2 for WMS

$
0
0

This blog post describes some of the enhancements to the Warehouse management (WMS) functionality that have been implemented in the R2 release after the launch of Microsoft Dynamics AX 2012 (RTM).

Shipment list report printed in a batch job at shipment update

By using outbound rules for a shipment and by setting up automatic printing of the shipment list you can have the shipment list report sent to a batch job.

image

Make sure you assign a printer setting that uses a paper printer for the batch job printing.

You can define the printer setup from Inventory and warehouse management> Shipments> Printer setup> Shipment list:

image

New uses of the location type Picking location

The location type Picking location can now be used as part of the item arrival process and for pallet movements.

· Item arrival: Locations of the type Picking location are now available in the registration process and you can apply a picking location on a journal line in an item arrival journal even if the inventory item’s warehouse item setting does not use a picking location.

· Pallet movements: When you use the Move pallet functionality, you can now select a location type of Picking location even though the location is not an item picking location.

Relocation pallet transport

In AX 2012 R2 you can create a relocation pallet transport and then assign the actual pallet transport processing to a warehouse worker.

You can access the new functionality from the Move pallet menu item via Inventory and warehouse management> Setup> Inventory equipment> Pallets> Functions:

image

You can then process the pallet transport from Inventory and warehouse management> Common> Pallet transports:

image

Detailed blog post on the relocation transport

A detailed blog post about the implementation of the relocation pallet transport will follow.

Shipment template enhancements for joint shipping

An option called Grouping inventory reference has been added to the Joint shipping field in the Shipment templates form.

You can access the Shipment templates form from Inventory and warehouse management> Setup> Distribution> Shipment templates

When the Grouping inventory reference option is selected, output orders for withdrawal of kanbans are grouped based on the ID of the parent manufacturing kanban. If you use this option with output orders that do not reference kanbans, the grouping reference is the same as the reference for the output order.

image 

Tutorial: Configure and process an outbound ASN in the new Warehouse management module

$
0
0

Introduction

In my previous post I explained how to configure and process an advance shipping notice that was received from a vendor, or what I call the “inbound ASN”.

But what about notifying our customers whenever we ship something to them? We’d like to send them a shipping notice in advance as well. Well, this functionality has been present in AX for a while now, and can still be used today. You can read more about configuring and processing such an “outbound ASN” in the following blog post with a technical description available on MSDN.

But in this post I would like to describe how to configure and process an outbound ASN using the new Warehouse management solution data model and processes.

 

Configuring the ASN service

The ASN, as I mentioned before, is a standard service based on the AIF framework, so before we walk through the configuration of the data, we need to ensure that the AIF framework and the corresponding service is up and running. Same as before, if you aren’t familiar with the AIF in AX 2012, see TechNet. You can also take a short-cut and set up AIF automatically by using the tool that I recently posted in my blog.

The service that provides the outbound ASN capabilities is the same as for inbound and is called WHSShipmentASNService. The service operation that is used for generating the ASN is called WHSShipmentASNService.read.

Here is how the outbound port should look after configuring the service operations.

Outbound ports

XML schema

With documents being sent in the outbound direction it is important to control the information that is exposed in the document (for example, to avoid showing some of the internal identifiers like RecIds, InventDimIds, etc.), so let’s go ahead and customize the document through the Data policies button, enabling only some of the fields available through the service. Here’s how I’ve set mine up:

Document data policies

OK, now we are ready to activate the outbound port and move on to walking through the flow of sending an ASN in Dynamics AX.

 

Sending an ASN for a selected load

Configuring the customer

In order to be able to send an advance shipping note to a customer, we need to enable this on the customer, under the Warehouse management fast tab. This way you can clearly distinguish which customers need to receive an ASN when the shipment is being sent. Especially useful if you ship large loads which contain multiple shipments for multiple customers.

Customer details

Creating and processing the outbound load

Let us create a new sales order for the above customer, and add a few sales lines for WHS-enabled items to it. Ensure the lines are physically reserved, and then release the order to warehouse.

Sales order details

Execute the created work, so the items end up in the Final Shipping location. I am not going to walk through that part, as it has nothing to do with the ASN. Here’s how the work looks for the sales order in my example:

Work details

Now that the goods are picked and loaded onto the truck, we need to confirm the outbound shipment, print the packing slip and send the driver on his way. After that we will be able to send the advance shipping note to let the customer know the truckload is on its way. These steps can be done from a number of forms in Dynamics AX, and in this post I am just going to do it from the Load details.

Load details

Load details

OK, now that the packing slip is printed, we are able to send the ASN.

Note

The Send ASN button gets enabled earlier, before we have printed the packing slip. However, clicking it will not actually do anything. You need to print the packing slip first.

Note

If the selected load is part of Transportation management system route, all loads on that route will need to be in the Shipped state with packing slips printed, same as for the load above, before the ASN can be sent.

You can send the advance shipping note for more than one load at the same time, by multi-selecting the loads in the Load planning workbench or the AllLoads list page / details page. Same goes for shipments if that is where you are sending the ASN from.

Each shipment that is part of the load will have an individual ASN document, assuming that it is enabled for the corresponding customer, as described above.

There is no infolog message shown to the user to confirm that the ASN has been created successfully, but you can tell whether that happen if you look at the AIF document queue.

It is currently not possible to send the ASN a second time.

 

Processing the outbound AIF queue

Like with other AIF services, you would typically have a batch job that picks up all new outgoing documents and sends them. For the sake of simplicity, I will use the following method, which is part of the AIF configuration tool I mentioned above:

 

1publicstaticvoid processOutboundDocuments()2{3new AifOutboundProcessingService().run();4new AifGatewaySendService().run();5}

Result

Here is how the ASN document looks for my example. You can download the file here.

 

1<?xml version="1.0" encoding="UTF-8"?> 2 3<Envelope xmlns="http://schemas.microsoft.com/dynamics/2011/01/documents/Message"> 4 5<Header> 6 7<MessageId>{AE2B908D-68BB-4D59-99CF-FCDC879242A9}</MessageId> 8 9<Action>http://tempuri.org/WHSShipmentASNService/read</Action> 10 11</Header> 12 13<Body> 14 15<MessageParts xmlns="http://schemas.microsoft.com/dynamics/2011/01/documents/Message"> 16 17<WHSShipmentASN xmlns="http://schemas.microsoft.com/dynamics/2008/01/documents/WHSShipmentASN"> 18 19<WHSShipmentTable class="entity"> 20 21<AccountNum>1101</AccountNum> 22 23<Address>456 Black Road, Bothell, WA 98021, USA</Address> 24 25<DeliveryName>Forest Wholesales</DeliveryName> 26 27<DlvTermId>FOB_DS</DlvTermId> 28 29<InventLocationId>42</InventLocationId> 30 31<InventSiteId>4</InventSiteId> 32 33<LoadDirection>Outbound</LoadDirection> 34 35<LoadId>CEU-000008</LoadId> 36 37<OrderNum>SO-101269</OrderNum> 38 39<ShipmentId>CEU-000008</ShipmentId> 40 41<WHSUOMStructure class="entity"> 42 43<LicensePlateId>TLP_ASN_01</LicensePlateId> 44 45<WHSASNItem class="entity"> 46 47<ItemId>000148_202</ItemId> 48 49<Qty>150.00</Qty> 50 51<UOM>ea</UOM> 52 53<InventDim class="entity"> 54 55<InventLocationId>42</InventLocationId> 56 57<InventSiteId>4</InventSiteId> 58 59<InventStatusId>Available</InventStatusId> 60 61<LicensePlateId>TLP_ASN_01</LicensePlateId> 62 63<WMSLocationId>BAYDOOR</WMSLocationId> 64 65</InventDim> 66 67</WHSASNItem> 68 69<WHSASNItem class="entity"> 70 71<ItemId>000154_202</ItemId> 72 73<Qty>60.00</Qty> 74 75<UOM>Pcs</UOM> 76 77<InventDim class="entity"> 78 79<InventLocationId>42</InventLocationId> 80 81<InventSiteId>4</InventSiteId> 82 83<InventStatusId>Available</InventStatusId> 84 85<LicensePlateId>TLP_ASN_01</LicensePlateId> 86 87<WMSLocationId>BAYDOOR</WMSLocationId> 88 89</InventDim> 90 91</WHSASNItem> 92 93</WHSUOMStructure> 94 95<DirPartyPostalAddressView class="entity"> 96 97<City>Bothell</City> 98 99<CountryRegionId>USA</CountryRegionId>100101<State>WA</State>102103<Street>456 Black Road</Street>104105<ZipCode>98021</ZipCode>106107</DirPartyPostalAddressView>108109</WHSShipmentTable>110111</WHSShipmentASN>112113</MessageParts>114115</Body>116117</Envelope>118119

Technical details

Class WHSShipConfirm contains the majority of the business logic around sending the ASN, with sendASNAllLoads() being the main entry method for the procedure.

Method generateASN() takes care of creating the packing structure corresponding to the shipment. It loops through all the relevant work orders, creating a UOMStructure record for each new target license plate (which corresponds to the different pallets that are part of the shipment). It will then for each load line loop through the corresponding inventory transactions (With StatusIssue == Deducted) and create the ASNItem records for each of the load lines items, taking into consideration the inventory dimensions of each line. This happens in method createASNItems().

Once the data structure is populated for the shipment, the document is generated and processed in the method sendElectronically().

Note

It will never create a nested structure where multiple cases are put on the pallet; it will always be the individual items directly on the pallet.

 

Conclusion

As you can see, the current capabilities are rather limited, but it is a good start, and this functionality will hopefully be further extended in future versions of Dynamics AX to include things like:

  • Multi-level package structure
  • Closer integration with the container structure generated through manual packing and automatic containerization processes

You can also download this blog post as a Word document from here.

 

Over picking in Dynamics AX 2012 R3 CU10 for sales orders and transfer orders

$
0
0

In the recently released CU10 update we are introducing a new over picking feature. It is also available with KB 3107010 on LCS. This blog post will take you through the details of feature and for which scenarios it is aimed for.

Background.

In the warehouse operations we are handling goods in different ways and in different unit of measures.

Inventory can be stored in barrels, pallets, boxes, pieces and many other units. Same item can be stored in different handling units and can be picked from those handling units as requested in the quantities specified in source documents like sales orders and transfer orders.

What is important in warehousing processes is to be as fast and as lean as possible in order to save time and effort, when picking and shipping items.

So in a normal picking scenarios we can easily end in a situation where e.g. the sales order line tells us to pick 50 L of water due that customer requires that, but our packaging is maybe in 60 L barrels. In order to pick the 50 L, picker will need to open 60 L barrel and basically use time and effort to move 50 L in another barrel in order to be able to ship correct quantities.  That requires extra time and effort.

Same experience could be with pallets, as for example, where customer ordered 98 and the pallet contains 100, saving time will be to ship 100 instead of opening the pallet to restructure to 98 pieces.

The other example could be if the picker cannot define how much is picked until later in the process.

Let’s assume that we need to pick corn, customer ordered 30 Tons of corn, machinery will be used to fill the truck with the corn or bags might be loaded instead. Normal process is that when truck is loaded, it will go to the weight scale and employees might experience that measurements shown more than 30 T, let’s say 30 T and 500 Kg. if the customer needs to pay for delivered goods and not what is on order, there is a need to record over picked quantity. Going back with truck or unloading those extra 500 Kg is for many organizations not possible due to extra time and effort needed. You will just want to send that truck to customer as soon as possible with correct information but with no extra effort and time needed.

In many organizations this kind of situations can be avoided if the system supports possibility in the Warehouse for controlled over picking scenarios.

Functionality can be used, as for example, for following business scenarios in the warehouse:

  • Compensation for shrinkage during picking or shipment
  • Ability to avoid to unpack certain packaging material in picking process
  • Compensate for the item damages during transportation
  • Be able to ship quantity or unit of measure variance
  • Minimize breaking of quantities on License plates
  • Avoid material waste, scarcity of the expensive materials.
  • Post pick measurement of the picked quantity (example with a lorry weighting).

What was our goal?

In the new Microsoft Dynamics 2012 R3 CU10 update, we have introduced possibility to process controlled over picking on the mobile scanner during the picking work.

We have decided to do that for both Sales order and Transfer order picking and processing.

Our goal was to enable the possibility to choose if a customer should be invoiced for picked quantity or for the quantity specified on the source document line “The ordered quantity”.

Our goal was as well to be able to control who of the picking workers can do the over picking and if that is for both transfer and sales order to make system as flexible as possible.

At the same time, we wanted to enable visibility of the over picking feature on the bar code scanner to be configured separately for mobile device menus, regardless if the worker has permission to over pick or not.

Minimizing maintenance and keeping flexibility of the setup was the goal.

How did we do it?

We have used already existing functionality for over delivery on Sales order and Transfer order source documents, where we can define how much in percentage do we allow to be over delivered.

In order to enable over picking on the mobile device, we have added a check box on the menu item itself, to enable over picking for that particular menu item. However even if the worker has the barcode scanner menu that includes the menu item for sales order picking where we have enabled over picking, worker setup for over picking must be enabled same time on worker form as well.  Only if both enabled, over picking can be processed using the mobile device.

Please note that flexibility is kept in the sense that if we have many mobile device menus and we do not know exactly where we have enabled over picking, and we want to disable possibility for a certain worker to over pick, we can simply switch it off on the worker setup without changing the menus and menu items.

However, if we want to disable over picking for all, we can go to menu item for example sale order picking and disabling it there all of the workers who have that menu item in their menu setups for barcode scanners will not be able to over pick anymore.

Setup on the worker form:

Go to Warehouse management > Setup > Work users > Worker > Users.

Please note above that you can setup sales order and transfer order over picking separately on each worker setup.

Setup on the menu item:

Go to Warehouse management > Setup > Mobile Device > Mobile device menu items.

Please note: When over picking is enabled it will fully respect limits set for over delivery on the line level of the transfer orders and sales orders. If the limit is exceeded, employee will be notified on the mobile device that they are exceeding the limit.

Step by Step use:

When work has been generated, and above setup is enabled we are ready for over picking.

Here we will give an example of how we can over pick quantity on the sales order line respecting the limits for over delivery that are given.

We will create a sales order for item A0001 with a quantity of 10, and enable over delivery of 10 percent on the delivery tab on the sales order line itself.

We will then reserve and release quantity as we usually do and work to pick 10 will be generated.

After that we can start the sale order picking menu item on the RF gun (make sure that user that is logging on the mobile device is the one with enabled over picking configuration).

We enter work ID and we can see that we have a new button for over picking.

If we decide to over pick we will select “Over Pick” and following screen will show. Please note that we have entered 14 which exceeds over delivery limits set of 10%. Our limits allow us to over pick 1, so 11 in total.

If we try to do with 14, the system will generate a message on the RF gun that limits are exceeded:

Entering the right quantity of 11 we can proceed with over pick and later put.

If we look what was updated behind the scenes, we look first at the work line that is not closed. We can see that work has been updated to 11 pcs as that was the total quantity picked during over picking.

Looking at the shipment and load, we have updated line of 11 pcs as well.

However, if we are looking at the source document line itself, in this case sales order line, we can see that we still keep original quantity of 10. We do not update that on purpose in order to be able to invoice the customer on either ordered or picked quantity.

Please note, that if you invoice the ordered amount the “non-invoiced” quantity remains in a Deducted status (physical update, no financial update).

Please see below from another sample where we have ordered 3 ea, picked 5, and invoiced 3.

Thanks for reading, and if you have any comments or feedback about this feature, please leave a comment below.

Please note: Similar functionality for raw material picking called “Round up work for raw material picking” will be released with KB number 3120530. This feature will round to  the UOM, and thereby enable over picking for raw material picking through the rounding concept.

Change license plate, split quantity, skip and override location during inbound put away

$
0
0

Posted on behalf of Karina Normann Jakobsen.

Introduction

In Dynamics AX 2012 R3 CU10 we have introduced additional capabilities to change license plate, split quantity, skip or override location on the mobile device while doing inbound put away. These features can also be downloaded from LCS with KB 3103960.

Issues

The workflow used when performing inbound work had some limitations when it came to the ability to:

Split put quantity: When the warehouse worker walks down to a location and can visually see, that the item does not fit into this location, the warehouse worker cannot split the item onto multiple locations. This is especially an issue if the location directive does not resolve a specific location and the location of the put instruction on the work order is blank.

Consolidate items on license plate already on a location: When the warehouse worker walks down to a location with ½ a pallet of items and the location already contains ½ pallet, the warehouse worker cannot register the item on the pallet originally on the location.

Cancel button missing in flow: When executing inbound work, there were many places, where the user couldn’t cancel out of the flow. If the user wanted to cancel out, the only option was to end the flow from the rich client.

Skip: When executing inbound work for multiple items at different put locations, the user is forced to execute the put lines if a fixed order.

Mobile device menu item with Group put = true: When performing work using a mobile device menu item, where Group put = true, the warehouse worker could be lead into strange flows on the mobile device. The mobile device menu item parameter Group put was not available for work creation flow …and put away.

Use unique check digits: Scanning a check digit in the location field on the mobile device menu item would resolve the first location with that check digit independently if Use unique check digits on warehouse was Yes or No.

Disposition code: The mobile device disposition code was not used when suggesting a new location as part of executing a put. The reason was that the disposition code was not saved in the system.

Solution

The solutions described in this blog post about the above issues are implemented for the work order type Purchase order, Finished goods put away, Co-product and by product put away, Transfer receipt, Inventory movement, Return orders and Kanban put away using a mobile device menu item with the settings in the below table.

An exception is Work order of type Replenishment which has uptake only of the ability to consolidate items on an existing license plate and the missing cancel button.

The below table describes the supported flows on the mobile device where these solutions have been enabled.

Mode

Use existing work

 

Work

Yes

Directed by:

System directed.

User directed.

User grouping.

System grouping.

Validated user directed.

Work

No

Work creation method:

License plate receiving and put away.

Purchase order line receiving and put away.

Report as finished and put away.

Movement by template.

Purchase order item receiving and put away.

Transfer order line receiving and put away.

Kanban put away.

The next section of this blog post will present each issue and how the solution work.

 

Cancel button missing in flow

On the mobile device a Cancel button will be available in all steps of the flow. Click Cancel will interrupt the processing of the work order for the work order line in focus, when the Cancel button was clicked.

 

Split put quantity and override location

An open work order of work type Purchase order exists.

clip_image002

Mobile device flow

On the mobile device the user starts processing this work order.

clip_image004

When the user reaches the put instruction of the work order a new button named Split Put is presented.

Let’s say, the user cannot fit the content to the location proposed. So the user decides to split the put. The user does so by clicking the button Split Put.

clip_image006

When the user presses the Split Put button a new flow is presented to the user. The user is asked to enter the quantity to be split of the original quantity as well as the Target LP. This will put the entered quantity on the specified location, in this case FL-001.

The user can create a new License plate or add the quantity to a License plate already on this location in this warehouse.

clip_image008

User scan quantity and Target LP.

Then click OK.

clip_image010

The user is brought back to the put instruction. To change the location, the user needs to click Override Loc. button.

clip_image012

The user can choose to provide a work exception code or just click OK and Continue.

clip_image014

The user can manually scan a location or ask for the system to Suggest a location.

clip_image016

Then the user clicks OK.

clip_image018

The put validation screen is presented to the user with the new location.

User click OK.

clip_image020

Work completed is presented to the user.

clip_image022

As a result of changing the location, the work put transaction was split.

clip_image024

Pay attention to the fact that Split Put is NOT supported in combination with grouping of work lines of type put.

 

Consolidate items on license plate already on a location

When performing the work with a mobile device a new parameter on the mobile device menu item has to be configured. The name of the parameter is Override license plate during put.

clip_image025

An open work exists for item M9200. The put location in this example is Bulk-001.

clip_image027

Bulk-001 is a license plate controlled location. There is already ¾ pallet on Bulk-001 on license plate LP920001.

clip_image029

Mobile device flow

User execute put-away flow.

Validate the item is picked up.

clip_image031

Put instruction is presented to the user.

clip_image033

User wants to consolidate the quantity on the license plate already on the location. The user clicks Override LP. A new flow is presented to the user.

clip_image035

User scans Target LP.

And clicks OK.

clip_image037

Put away flow is completed.

The items have now been put on the existing license plate in the location.

clip_image039

 

Skip

Using the Skip button will mark the work order line as skipped and the next put operation will be presented to the user.

It works as following. A work order exists with multiple put lines.

clip_image041

Mobile device flow

User has performed the pick instruction and is brought to the first put instruction.

A new button Skip is presented in the flow.

This allows the user to skip this line and will bring the user to the next line.

The user does not want to perform this put as the first and clicks the Skip button.

clip_image043

Put instruction for the next open work order line is presented to the user.

User completes this line and clicks OK.

clip_image045

Put instruction for the skipped line is presented to the user again. Skip button is not shown, as there are no more applicable lines.

clip_image047

 

Mobile device menu item with Group put = true

Some unintended flows were observed when performing work using Mobile device menu items, where Group put was set to Yes.

Group put will function if the put location is resolved for all work order lines of type put and if the put location is the same for all work order lines grouped.

Here are a few examples to illustrate the above.

Example 1 – Multiple work orders are grouped – all work order lines of type put have blank Location

The previous behavior was inconsistent depending on the work flow and the work order.

The rule is now consistent. If the location is blank, work order lines of type Put will not be grouped.

If we have two work orders where location field on the last work order line for each work is blank.

Work order where location is blank:

clip_image049

You have a mobile device menu item that is configured to perform existing work.

Directed by = User grouping.

Group put away = Yes

clip_image051

Mobile device flow

User has performed the pick instruction and grouped the 2 work orders.

User will receive work put instruction for each line.

Blank locations will not be grouped.

clip_image053

Example 2 – Multiple work orders are grouped – some work order lines of type put has same location, some has not

The previous behavior was inconsistent depending on the work flow and the work order.

The rule is now consistent. The location on work order line of type put has to be the same for all work orders grouped.

First work order has 2 work order line of type put with 2 different locations.

Second work has 2 work order lines of type put with 2 different locations. It is the same 2 locations as on the first work order.

clip_image055

clip_image057

Mobile device menu item is configured to perform existing work.

Directed by = User grouping.

Group put away = Yes

clip_image058

Mobile device flow

User has performed the pick instruction and grouped the 2 work orders.

User will receive work put instruction for each line.

clip_image060

Example 3 – Multiple work orders are grouped – all work order lines of type Put have the same location

Two work orders exist.

First work order has 2 work order line of type put with location FL-001.

clip_image062

Second work order has 2 work order lines of type put with location FL-001.

clip_image064

Mobile device menu item is configured to perform existing work.

Directed by = User grouping.

Group put away = Yes

clip_image065

Mobile device flow

User has performed the pick instruction and grouped the 2 work orders.

User will receive one put instruction.

clip_image067

Pay attention to the fact that Split Put is NOT supported in combination with grouping of work lines of type put.

Example 4 – Group put away is now available on work creation flows …and put away

You can set Group put on all work creation processes that ends with … and put away.

For example:

clip_image069

 

Use unique check digits

The parameter Use unique check digits is found on the warehouse setup.

clip_image071

When Use unique check digit is No, this means that check digits on many locations can share the same check digits. When many locations shared the same check digit, scanning of check digits in scenarios where location was blank or the user was overriding a location was not supported. This didn’t function in all work flows. All inbound flows have been changed, so that scanning of a location check digit will not be accepted if Use Unique check digit is No.

Example 1 – Use unique check digit is No, user scans location check digit on mobile device

Use unique check digit = no on warehouse 24.

clip_image073

Warehouse 24 bulk locations has check digits.

clip_image075

Mobile device flow

User scans location check digit in field Loc.

clip_image076

User click OK

Scanning of location check digits is not accepted unless unique check digits is configured.

clip_image077

Example 2 – Use unique check digit is Yes, user scans check digit on mobile device

Use unique check digit = yes on warehouse 24.

clip_image079

Warehouse 24 bulk locations has check digits.

clip_image081

Mobile device flow

User scans location check digit in field Loc.

clip_image082

User click OK

Location is found via the unique check digit.

clip_image084

Disposition code

Mobile device disposition code is now saved on the work order header. The mobile device disposition code is used to find the correct location directive if user clicks Override Loc on the mobile device.


Additions to WMS Replenishment functionality in Microsoft Dynamics AX 2012 R3 CU10 update

$
0
0

In the recently released CU10 update we are introducing a few new replenishment features that will increase warehouse productivity and save effort and time. This blog post will take you through the details of the features and for which scenarios they are aimed for.

In this blog we will cover following:

  • Relation between replenishment work, demand, and cancelation of the demand.
  • Directive code capabilities on work template for replenishment

How did it work previously, and what was the challenge?

In Microsoft Dynamics AX 2012 R3, min/max replenishment and demand replenishment did not recognize one another, and both types of replenishment did not recognize existing replenishment work that was in progress or not started yet. Sales demand and existing replenishment work generated for the demand, did not know each other’s status.

That resulted in the following 3 problems and possible obsolete replenishment work transactions and waste of time in the warehouse facility:

  1. If we had let’s say sales demand work of 10 each, and demand replenishment setup has generated replenishment work of e.g. 1 Pallet (100 each) due to setup and that replenishment work is not yet processed. If new sales demand of 10 each comes, what will happen is that demand replenishment setup will again generate the new replenishment work of 1 Pallet (100 each) due that there is no increase in quantity. In this case we will end with 2 work with 1 pallet on each that in total is 200 each and in total sales demand is only 20. This tells us that second sales demand could have been covered with the first replenishment work due to that there was 90 each not yet reserve.
  2. Many customers will run min/max replenishment in the morning as a batch job, and generate a series of replenishment work to fill up their locations. Before CU10, what was happening is that if min/max replenishment work was not processed before demand is sent to the warehouse, demand replenishment as the exception management will create new replenishment work for the demand. Result will possibly be, that we will have two replenishment work generated using two different strategies, min/max and demand replenishment. However, if the demand replenishment was aware that there was the existing min/max replenishment not started with free unreserved quantities of item with same dimensions there would be no problem.
  3. The other problem was that if e.g. sales demand triggers generation of replenishment work, and replenishment work has not been processed, but sales demand work is cancelled and sales order line deleted, replenishment work will still stay open. This challenge potentially resulted in replenishment work being open that are not needed or even will not fit at the locations due to that demand being cancelled.
The first two challenges above resulted in that you needed to cancel unnecessary replenishment work manually and that was very time consuming and difficult. Or the result would be that if the extra replenishment work was not cancelled and the warehouse workers pick and bring items using both replenishment which then would over load the locations and the goods would need to be moved back manually. Problems with space on the target replenishment location could be experienced as well.

All of the above was potentially creating noise and unnecessary open work transactions, overload of the items on the target replenishment locations, or a huge manual workload to synchronize demand and open replenishment work. For any warehouse facility with large number of locations that are either being replenished with min/max or/and demand replenishment, the above challenges are not acceptable. 

What was our goal?

  • Create awareness and link between different types of open replenishment work.
  • Cancel the existing demand replenishment work that has not been started if the demand has been cancelled and there is no other demand work related to replenishment work.
  • Deduct new demands from existing min/max or demand replenishment work in order to minimize amount of work transactions, if there are unreserved quantities on the existing replenishment work. First after all available quantities is deducted new replenishment should be created.
  • Make setup flexible

How did we solve above challenges?

In the new CU10 update, the replenishment setup for both demand and min/max replenishment, we have added the ability to define if the replenishment template, from generated work, will allow unreserved quantities to be used and deducted from by new demand quantity.

In the same setup we have added the ability, to define if the replenishment work should be cancelled if the demand has been cancelled (please note that if there is any existing work that is related to that replenishment work it will not be cancelled).

 

In the above setup all of the replenishment work generated and not processed will include new demands if the unreserved quantity allows. After all is used and deducted, new replenishment work will be created if needed. 

In same way, if there is a min/max replenishment template that is configured to allow demand to use unreserved quantities, and has generated work, even if demand replenishment method is enabled it will first see if any of the quantity from existing work can be used.

This minimizes amount of the work lines created, where quantities can be deducted from existing replenishment work.

Please note that setup is template centric, which means that we can allow deduction and cancellation on one, but not the other template. 

Directive code enabled on work templates for replenishment work order type!

In CU10, we have also enabled configuration of the directive code for replenishment work order type.

Continue to second replenishment template sequence capability if put location is not resolved in previous sequence line!

Before the CU10 update, having several sequence lines in the Replenishment template lines where first one could not solve the demand, system was not continuing to another line sequence. This only counts if PUT location could not be resolved due to a location failure or stocking limits.

Now if the first sequence line fails to resolve put location and fulfil replenishment, next line in sequence will be processed.

Please note: In order to proceed to another replenishment template line, you need to setup Location directive failures to stop work on Replenishment failures,  as shown below. If not set, it will end with an empty put location, and will not proceed to next sequence line in Replenishment template.

 

This feature is useful if we e.g. have stocking limits on a locations or locations fail for some reason due to other restrictions or setup. In that case system will proceed to another template and use put from location directives connected, that could be as for example an overflow location.

New eLearning course: Working with AX 2012 R3 Warehouse Management for Retail Warehouses

$
0
0

The eLearning course 80739: Working with AX 2012 R3 Warehouse Management for Retail Warehouses is now available for partners on Dynamics learning portal. This L300 course is for Dynamics AX Warehouse Management (AX WM) solution architects and presales people who need to understand how to position AX WM to a retailer, and learn how to set up AX WM for retail.

This course also includes unique footage of a real life retail warehouse in action through various WM processes.

What are the goals for this course?

  • Understand the terminology and basic needs of retail warehousing.
  • Understand how AX Warehouse Management complies with the basic needs of retail warehouses.
  • Learn, at a high level, how to configure AX to meet the needs of a retail warehouse.
  • Understand how AX Warehouse Management can improve retail warehouse operations.
  • Help improve the sales efforts and implementations of AX Warehouse Management in retail industries.

This course is instructed by industry expert and logistics consultant Steve Mulaik from The Progress Group who has successfully run several workshops this past year on the same topic. We are very happy that those of you who have not had the opportunity to attend one of those workshops now can enjoy Steve’s experience in this area through this online content. If you have any feedback, just drop a comment below, or even better, evaluate the course on DLP.

Enable picking of sales serial number items with R3 warehouse management processes

$
0
0

As part of the planned enhancements around serial number functionalities, the capability of picking sales serial number items is now possible when using the AX 2012 R3 CU10 warehouse management processes. You can also find it on LCS with KB 3072929.

This functionality enables the process of capturing serial numbers during the mobile device sales order picking or packing process, without making unique inventory transaction records holding this information.

The benefit of this logic is that AX can handle many serial number records without needing to create the time consuming logic around the “inventory transaction framework”.

 

Conceptual data model for serial number registration

As it can be seen from this conceptual model, the sales serial number tracking will be linked to the inventory transaction origin and it is important to understand that the actual validation of unique sales serial numbers is done against this entity.

 

Picture1

 

Existing information regarding sales serial numbers in AX

The following blog post describes the overall concept of Sales serial number tracking:

Serial Number Tracking for Service and Warranty in Microsoft Dynamics AX R3

TechNet information about registration of serial numbers in AX2012 can be found here:

Register serial numbers for a sales order [AX 2012]

 

 

Enable the sales serial number tracking

Because the sales serial number tracking is not done at the inventory transaction level the released product will not use a reservation hierarchy with serial number tracking. For this blog post example, a new product is created using an Inventory reservation hierarchy as shown below:

image

The released product has been associated with a Tracking dimension group using the Active in sales process parameter for the Serial number dimension, and as it can be seen the Capture serial is now possible to specify. For the first example the Capture serial is set to “Picking”, which means that the actual registration of the sales serial number will be done during the mobile device picking process.

image

In case enabling the Capture serial to “Packing” the sales serial number recording will be requested done during the manual packing station process.

 

Recording of sales serial numbers during the picking process

The concept of using the sales serial number capability is that the recording of serial numbers only happens for the outbound sales process. So the inbound receive process and all internal transfers of inventory on-hand will be done as other released products without serial number tracking.

For this blog post example, a license plate of the quantity of 100 of the product has been received and put-away into the warehouse and the serial number dimension is not part of the inventory on-hand:

image

A sales order line has been created for the quantity of 3 and released to the warehouse and work has been created.

image

When processing the work, the mobile device will prompt for identification of each of the sales serial numbers because of the Capture serial set to “Picking” on the Tracking dimension group.

clip_image012

It is possible to access the sales serial recording done against the sales order line through the Load details form.

image

During the sales serial number recording, validation is done to ensure unique capturing of sales serial numbers against the sales line.

clip_image016

In case of a not readable serial number the function of using Not readable can be used which will register the serial number as not readable.

image

When all serial numbers have been registered and the inventory has been put on a final shipping location, the related inventory transactions for the sales line will get the status picked and the sales order packing slip can be processed.

 

Recording of sales serial numbers during the packing process

In case the released product is associated with a Tracking dimension group enabled for Capture serial at “Packing”, the mobile device picking process will behave as for products without serial numbers. Instead, the serial number will be registered when using the pack station.

image

Validation is run ensuring the correct quantity of unique sales serial numbers gets registered during the packing operation and it is possible to view and maintain the recorded serial numbers from the Containers form.

image

 

Recording of sales serial numbers during the sales order return process

Besides the outbound sales order serial number tracking, it is now supported to capture the serial numbers being part of a sales order return process through the mobile device.

clip_image024

The flow will request registration of the serial numbers being returned.

clip_image026

 

Recording of sales serial numbers via Picking list registration form

For simpler/small warehouses, it is also possible to record sales serial numbers during the warehouse picking process from the Picking list registration form, making it easier to record the serial numbers during the actual picking process.

image

Using WMS processes with project management activities in CU10

$
0
0

This blog post describes how to process warehouse management activities related to project management when having warehouses and products enabled to Use warehouse management processes in Microsoft Dynamics AX 2012 R3 CU10. This functionality is also available from LCS with KB 3096930.

 

Processing of item requirement sales orders

When using the item requirements form it is now possible to directly Release to warehouse and access the Load planning workbench form.

Item requirements sales order processing in the warehouse management area will be done the same way as for regular sales orders. Even the capability of mixing item requirement sales orders with regular sales orders on the same load is possible. The only differences seen will be as part of the physical cost updates done through the packing slip update process. Here the packing slips will be split and the updates related to the project transactions will be directly updated to Sold.

Let’s try looking into a quick example based on the demo data for the company USMF.

A new item requirements sales order has been created and via the new menu it is possible to Release to warehouse directly from the Item requirements form.

clip_image002[4]

After processing the outbound warehouse work, which will result in getting the inventory transactions updated to status Picked, and having done the confirmation of the Outbound shipment, it is time to process the sales order packing slip update.

clip_image003[4]

clip_image004[4]

During the actual posting, the related item requirements inventory transactions will be updated to Sold.

clip_image005[4]

 

Processing of purchase order related to project

When processing a purchase order registration for lines referencing a project, the project inventory transactions will become physically reserved with the same dimension values as registered for the purchase order line transactions. During the purchase order product receipt posting the project issue transactions will become updated to Sold.

Let’s look at an example based on the demo data for the company USMF.

A new purchase order line gets created with reference to a project.

clip_image006[4]

clip_image007[4]

Before processing the inbound registration, the related project issue transactions will be Reserved ordered.

clip_image008[4]

As soon as the inbound purchase order transactions gets Registered, the related issue transactions for the project will be updated with the same inventory dimension values and updated to physically reserved on all inventory dimension levels.

clip_image009[4]

It is important to note that inbound ‘put-away’ work will not be created when using the mobile device purchase order receive processes. The reason for this is that during the following purchase order product receipt update, the issue transactions will become Deducted and thereby immediately removed from the inventory and therefore internal transfers between locations within the warehouse cannot be done.

clip_image010[4]

 

Processing of production order related to project

When processing a production order linked to a project, conceptually the same will happen as in the previous scenario with the purchase order process. One key difference is with the mobile device inbound processing. When doing the Report As Finished process the receipt inventory transactions becomes updated to the status of Received and thereby the related project issue transactions will become Deducted. As for the purchase order inbound processing no ‘Put-away’ warehouse work will be created when using the RAF mobile device functionality for production orders referencing to projects.

clip_image011[5]

Using route schedules in TMS with CU10

$
0
0

Posted on behalf of Simon Juul.

Many companies have agreements with customers to deliver their orders on a regular basis, for example weekly deliveries. In order for TMS in AX to be able to support transportation routes executed regularly, a new feature for “scheduled routes” have been introduced with CU10 or separately from LCS with KB 3107317.

A scheduled route is a predefined route with predefined hubs (that being vendors, customers or warehouses) you execute regularly on a given schedule.

The new functionality for scheduled routes consists of:

  1. You can set up route plans on a defined schedule and build scheduled routes based on it.
  2. Use Load building workbench to propose loads based on the orders, using customer address and delivery date and the corresponding scheduled route.
  3. Use the Rate route workbench to manually assign loads to an existing scheduled route.

This blog post will take you through the necessary setup and how to create, process and use these route schedules.

Set up scheduled routes

First of all, we need to create a route plan starting from the warehouse where we ship from and with hubs that have the same zip code as the customers we are going to visit on the route:

Transportation management > Setup > Routing > Route plan

image

The route plan for scheduled routes is a bit different than normal route plans as you need to specify “Origin hub” and “Destination hub” on each segment, as this is a fixed route and the customers are found by the zip code match. The route plan starts from our warehouse 61 and stops at a customer in the first sequence. A hub master has been setup with the same zip code as the customer in question. In the next sequence it goes to the next customer hub and so on until all customer hubs have been visited.

For this route plan we then need to setup the schedule for when it’s going to take effect. You do this by clicking Create route schedule. A new form is opened where you can specify on which dates and time the route is visited and with what mean of transportation (load template):

Transportation management > Setup > Routing > Route plan > Create route schedule

image

On the Route schedule form, you have to specify the “actual start date and time” and “actual end date and time” as the period you want to have the scheduled routes generated for. You can specify the “Load template” which is being used as default on the Load building workbench and when you push the “Generate Routes” button a batch job will start generating routes based on the setup.

To be able to use scheduled routes a route guide has to be set up. For scheduled route plans you should use one Route guide and specify only the route plan, because the route plan used for scheduled routes is not open for any other criteria such as “Origin hub” and “Destination hub” as they are specified on all segments.

Transportation management > Setup > Routing > Route guide

image

 

Use Load building workbench with scheduled routes

In the Load building workbench you are now able to select a scheduled route and build a load with all sales orders matching the zip code in any of the destination hubs in the route plan.

Transportation management > Inquiries > Load building workbench

image

The Load building workbench has a new dropdown named Scheduled Route. You can only select scheduled routes that does not yet have any loads associated.

Selecting a scheduled route will disable the other criteria for Origin and Destination except the shipping from date, so you are able to find sales orders with an earlier ship date. You still have to select a load building strategy and have the possibility to use filter codes. The Load template will be defaulted to the one you selected on the route plan schedule or else you will have to specify one.

When proposing the load, the zip codes of each hub on the route will be matched to the zip codes of the Sales orders and the range of the “shipping date from” and “shipping date to” dates will be matched to the shipping date of the sales orders. There has been no change as to how selected load building strategy and load template will be used, it will work as in previous versions.

When pushing “Propose loads” you will see only one load with the sales orders matching the above criteria and the allowed quantity prescribed by the load building strategy and the assigned load template.

image

If you select to create the load it will be assigned to the already created scheduled route and the transport is planned.

If you have sales lines in the “Not included” you have to either choose a bigger truck (Load template) or arrange another transport (maybe use load planning workbench for the remaining lines).

image

 

Use Rate route workbench to manually assign loads to a scheduled route

If you want to manually assign a sales order to a scheduled route in the Load planning workbench, you can either create a new load if you want the first (date wise) Scheduled Route that does not have a load or you can “add to existing load” that already have a Scheduled Route assigned. When creating a new load and put it on a scheduled route:

Transportation management > Inquiries > Load planning workbench > Rating and routing > Rate route workbench

image

There is a new menu saying “Scheduled Route”, which will show the first Scheduled Route without a load and with the shipping date closest to the sales order ship date. You can use the “assign” button to pick the actual Scheduled Route with the rates calculated. But you can also select “Add to existing route” to choose a scheduled route further out in future.

Improve performance by running the Warehouse management on-hand entries cleanup job – for New AX and for AX2012 R3 CU10

$
0
0

 

Introduction

Calculation of the on-hand are used from many forms but also during many business processes, the latter being less obvious to end-users. Therefore, it is always of interest to us to improve the performance of these operations since the overall impact on many processes can be quite significant.

The nature of the queries used to calculate the on-hand involves joins and aggregation and the performance is affected by the number of records in the tables involved. One way to improve the performance of such operations is to reduce the number of records that SQL server has to consider.

In this posting we will cover the Warehouse management on-hand entries cleanup job which deletes records in the InventSum and WHSInventReserve tables. These tables are used to store on-hand information for items enabled for warehouse management processing (WHS items). Cleaning up these records can lead to significant improvements of the on-hand calculations.

The cleanup job is available for the new Dynamics AX and also for the in-market version of AX 2012 R3 with KB article 3063513 – Performance improvement of On-hand queries by running new clean up job for on-hand entries for WHS enabled items.

Running the clean up

The cleanup job is available under Inventory Management>Periodic tasks>Clean up>Warehouse management on-hand entries cleanup.

The cleanup job can be ran during normal business hours but it is recommended to run it outside of working hours to avoid collisions where a user is updating a record that is also being cleaned up. By setting the Delete if not updated for this many days parameter in the dialog to an appropriate value, the risk of deleting used on-hand entries can be reduced.

If the job ends up trying to delete a record for an item while it is used by another user, a deadlock error will be experienced by either the cleanup job or the user impacting the on-hand of the item.

The job is running with a commit size of 100 meaning it will try to commit for every 100 deletes. However, since some deletes are set-based, there might be scenarios where more than 100 records can be deleted in the same transaction, hence there is no guarantee that lock escalations will not occur.

 

What is the clean up job actually doing ?

That is a fair question that we were asked by our colleges in the field so we wanted to share the answer with you.

The overall idea is that the cleanup job is deleting records in the WHSInventReserve and InventSum tables where all the field values are 0, since these should not contribute to the on-hand. The job only deletes records below the Location level.

If negative physical inventory is allowed then we might not be able to delete all entries with all zeros, since we need to account for a special scenario where a license plate has multiple serial numbers and one serial number has gone negative.

For this special case we will do a breadth-first delete, trying to delete from lower levels first.

If we don’t allow negative physical inventory we will delete upwards the hierarchy. This approach means that for a scenario were we had serial number 1 and 2 on the same license plate and the job is stopped, we might still have a record in WHSInventReserve on the lowest level, e.g. for serial number 2 but not one on the level above that. This is ok, since no record, is semantically the same as “nothing available or reserved”.

If we should get on-hand again after records have been deleted, the records will just be re-created as part of the normal business logic.

 

Possible user impact

A possible user impact is that if we have deleted all records for e.g. the license plate level, then the functionality where we can see that we at some point had on-hand at a license plate does not work as expected, simply because we have no on-hand entries to represent that.

This is the functionality where Quantity <> 0 is checked in the Dimension Display settings when viewing on-hand.

We decided that this was an acceptable loss of functionality compared to the performance improvement that customers should experience from cleaning up the records.

Inventory on-hand movements/transfers using the mobile device menus

$
0
0

In this blog post you will be able to read about how to use mobile device menus to record physical movements of inventory on-hand, both within a warehouse as well as between warehouses.

The screen shots in this blog post are taken from the new Dynamics AX, but all the content applies to AX2012 R3 as well.

 

Mobile devices menu items

Conceptually three different mobile device menu item processes exist:

- Movement

- Movement by template

- Warehouse transfer

Below you can read about the difference between the three mobile device menu items.

Movement

When using the work creation process Movement (Use existing work = No), the warehouse worker will need to define what is going to be moved and from where, as well as specify where to put the inventory on-hand.

clip_image001

This process is designed for a manual movement of inventory on-hand between locations and/or license plates within a warehouse, and the movements must be processed immediately by the same warehouse worker.

Because the inventory on-hand gets updated via work, it will be possible to transfer the inventory on-hand between locations, even though the on-hand might be reserved on a higher level (e.g. by a sales order line on the warehouse level, or reserved inventory because of a blocked inventory status).

In this process the inventory status value can also be updated during the physical movement of the inventory. If movement functionality is used to update the inventory status within the same location the setup must allow for mixed inventory statuses as part of the Location profiles settings. If this is not the case the Inventory status change work creation process must be used.

In the example below a new inventory status value named QMS is used.

clip_image002

clip_image003

 

Movement by template

When using the work creation process Movement by template (Use existing work = No), more options exists than for Movement. The biggest difference is that both work templates and location directives will be used to find a put location when using this mobile device menu item.

The parameter Create movement can be enabled if the mobile device menu item only should create the movement work, but not process the actual movement. Another mobile device menu item that has the Use existing work option selected can then be used to process the actual movement work at a later point in time.

Because the inventory on-hand gets updated via work, it will be possible to transfer the inventory on-hand between locations, even though the on-hand might be reserved on a higher level (e.g. by a sales order line on the warehouse level, or reserved inventory because of a blocked inventory status).

In this process the inventory status value can also be updated during the physical movement of the inventory.

clip_image004

clip_image005

clip_image006

Please be aware, that with the current functionality the inventory status value will be updated at the point in time of the creation of the planned inventory movement work.

clip_image007

In order for the system to be able to create work, a work template must be defined for the work order type Inventory movement.

clip_image008

And before the system can find a valid put location during the work creation process, Location directives must also be defined for the work order type Inventory movement.

clip_image009

 

 

Warehouse transfer

The mobile device menu item for Warehouse transfer is designed for a manual movement of inventory on-hand between locations and/or license plates between two warehouses. As for the manual Movement option, this operation must be processed immediately by the same warehouse worker and the worker will need to define what is going to be moved and from where, as well as specify where to put the inventory on-hand.clip_image010

In order to be able to process this kind of transfer, the warehouse user must have access to both the from-warehouse and the to-warehouse.

clip_image011

Because the inventory on-hand does not get updated via work, but via the inventory transfer journal, it will not be possible to transfer on-hand which is reserved on a higher level (e.g. by a sales order line on the site level, or reserved inventory because of a blocked inventory status). The transfer journal issue transactions will be reserved on all inventory dimension levels.

When using the Warehouse transfer process, it will not be possible to change the inventory status value either – as it can be done when using the Movement and Movement by template functionality.


Set up work audit templates to automate the updating of warehouse process records

$
0
0

 In this blog post you can read about how to use the Work audit template functionality to automatically process an Outbound shipment confirmation for a Load as soon as all the related work has been processed.

The screenshots in this blog post are taken from the new version of Dynamics AX, but all the content applies to AX2012 R3 as well.

The scenario described below is used to illustrate the process and setup for using a work audit template.

Process

A load has been created containing two load lines that are going to be delivered.

clip_image001

The load will be outbound processed within the warehouse via two work headers.

clip_image002

After a mobile device has been used to complete the first work item, the status of the load is updated to In process. And as soon as the second work item is completed, the status of the load is changed to Loaded. And with the use of the Work audit template, the system will immediately update the load to the status of Shipped.

clip_image003

 

Setup

To enable the scenario above, a Work audit template record has to be created to trigger the event of running the Shipping confirmed update as soon as the status for a load is updated to Loaded. This can be achieved with the setup seen below.

clip_image004

The mobile device menu item that’s used as part of the outbound warehouse work processing has been enabled to use the defined Audit template ID.

clip_image005

 

Conclusion

The work audit template is used in this case to trigger a ship confirmation update when the status of a load is updated to Loaded. It’s possible to define other triggers, and to define triggers for other events too. We think that work audit templates are a great tool for extending custom logic and triggering automatic events and custom code with specific set of rules, and would love to hear about your experiences with it.

Receive and register a pallet with mixed source document lines using 1 license plate – purchase order matching

$
0
0

Introduction

01

In our scenario, a pallet of mixed items arrives at warehouse A. The receiving clerk is asked to identify and register the items on the pallet, before the pallet is moved from receiving location to next location.
The vendor didn’t issue an inbound ASN, but the vendor attached a pallet manifest to the pallet. The pallet could consist of items from different purchase orders.

This scenario with receiving and registering the full pallet has not been supported using the mobile device so far.

With KB 3152837, the ability to receive multiple times against a license plate is now supported for purchase orders.

Setup

Go to Warehouse management > Setup > Mobile device > Mobile device menu items.

Two new work creation methods have been introduced:

  • Mixed license plate receiving
  • Mixed license plate receiving and put-away

02

When either of these work creation methods is selected, a new field, Source document line identification method, becomes available.

03

The Source document line identification method determines the flow that will be presented to the user on the mobile device until a source document line is uniquely identified.

The three methods supported correspond to the flow that will be presented to the user on the mobile device for the Work creation methods Purchase order item receiving, Purchase order line receiving and Load item receiving.

The difference being that the user can continue to register on 1 license plate until all items on the license plate are received.

Auto-generation of license plate is NOT supported for this work creation method.

License plate grouping is NOT supported for this work creation method.

Receive multiple times on 1 license plate on mobile device

Two purchase orders exist for one or more items.

04

The supplier decides to ship all 4 purchase order lines in 1 shipment on 1 pallet. Now the receiving clerk needs to register this on 1 pallet.

05

Mobile device flow

Open mobile device menu item. In this example the source document line identification method is Purchase order item receiving.  06
Enter license plate.

Click OK.
 07
Enter Purchase order number.

Click OK.
 08
Enter item number.

Click OK.
Note: Now the purchase order line number is uniquely identified.
 09
Enter quantity.

Click OK.
 10
Click OK.
Note: This new work creation method expects the user to continue to receive items for the same license plate and purchase order number.

The flow will continue like this until the user clicks the button LP Complete. This is the signal to create the work.
 11
Leave the mobile device menu as is and open the rich client.

Go to Warehouse management > Inquiries > Mixed license plate receiving.

Note: This is a new form. It captures detailed information about all the license plates, where receiving has started using one of the 2 new work creation methods.

For license plate BLOGPOST1 we can see, that user 51 is currently working with this license plate. Therefore, we cannot change anything for license plate BLOGPOST1 as the license plate is locked by user 51.

Close the form.
 12
Find the purchase order line, just registered. Look at the inventory transaction behind.

Note: The Receipt status of the inventory transaction is still ordered.The state of the inventory transaction will be lifted when the work is created.
 13
Pick up on the mobile device, where you left before.  14
Enter item number.

Click OK.

Note: Now the purchase order line number is uniquely identified.
 15
Enter quantity.

Click OK.
 16
Click OK.  17
Now we want to receive items referencing a purchase order line on another purchase order.

Click Change PONum.

Note: Based on the feed-back received it is a common user mistake to clear the value of a field by pure mistake. Therefore the purchase order field is not editable unless the user specifically declares that the purchase order number should be changed.
 18
Enter Purchase order number.

Click OK.
 19
Enter item number.

Click OK.

Note: Now the purchase order line number is uniquely identified.
 15
Enter quantity.

Click OK.
 20
Click OK.  21
Enter item number.

Click OK.
Note: Now the purchase order line number is uniquely identified.
 22
Enter quantity.

Click OK.
 23
Click OK.  24
The receiving of the 2 purchase order lines is now completed.

Click LP Complete.

Note: A list is presented to the user with the details of the items received for this license plate.If the user sees a mistake, this mistake can be corrected by clicking the button Modify.
 25
The user does not wish to modify the receiving.

Click OK.

Note: If Display disposition code is set on the mobile device, the user will be asked to provide a Disposition code.
 26
Click OK.

The flow is now completed.
 27
Go to Warehouse management > Inquiries > Mixed license plate receiving.

Note: License plate BLOGPOST1 is completed. Therefore, we do not see this when the form is open.
 28
The receiving supervisor wants to see the history captured for the receiving of this license plate.

Set Show completed license plates to Yes.

Note: Completed license plates can be deleted, when the information is no longer relevant.

Close the form.
 29
Find the purchase order line just registered. Look at the inventory transaction behind.Note: The status of the inventory transaction was lifted to registered, when the work was created.

Close the form.
 30
Open work from the purchase order line.

Note: 1 work order with target license plate BLOGPOT1 is created for all lines.

Close the form.
31

 

Variations and exceptions

This new feature supports a number of variations over the main flow and support handling of exceptions. The following variations and exceptions will be explained in this section:

  • User mistakenly cancels out of flow and want to start the flow again.
  • A second user tries to receive items on a license plate the first user is working on.
  • A second user tries to receive items for a purchase order line, where there is nothing left to receive.
  • User receives items on a faulty license plate ID.
  • User mistakenly cancels out of flow and forget to complete license plate. Supervisor wants to complete the license plate from the rich client.

User mistakenly cancels out of flow and want to start the flow again.

If the user mistakenly cancels out of the flow, before completing the receiving of all the items on the license plate. Any user with access to a mobile device menu item with this work creation method can start the flow again.

Example:

One purchase order exists

32

Mobile device flow

Open mobile device menu item. In this example the source document line identification method is Purchase order item receiving.  33
Enter license plate.

Click OK.
 44
Enter Purchase order number.

Click OK.
 45
Enter item number.
Click OK.

Note: Now the purchase order line number is uniquely identified.
 37
Enter quantity.

Click OK
 36
Click OK  38
Click Cancel.  39
Open mobile device menu item again.  40
Enter license plate.

Click OK.
Note: The flow is restarted.
 41

 

A second user tries to receive items on a license plate the first user is working on.

Example:

One purchase order exists

42

Mobile device flow

User 51 has logged into the mobile device.Open mobile device menu item. In this example the source document line identification method is Purchase order item receiving.  43
Enter license plate.

Click OK.
 44
Enter Purchase order number.

Click OK.
 45
Enter item number.

Click OK.
Note: Now the purchase order line number is uniquely identified.
 46
Enter quantity.

Click OK.
 47
Click OK  48
User 52 logon to the mobile device and tries to start the receiving of items on license plate Blogpost1.  49
Scan license plate.

Click OK.

Note: User 52 will receive an error message, because license plate BLOGPOST1 is locked by user 51.
 50

 

 A second user tries to receive items for a purchase order line, where there is nothing left to receive.

User 1 has started the receiving of a purchase order line and there is no quantity left to receive.

User 2 tries to start the receiving of the exact same purchase order line using a different license plate.

Example:

One purchase order exists

51

Mobile device flow

User 51 has logged into the mobile device.Open mobile device menu item. In this example the source document line identification method is Purchase order item receiving.  52
Enter license plate.

Click OK
 53
Enter Purchase order number.

Click OK
 54
Enter item number.

Click OK.
Note: Now the purchase order line number is uniquely identified.
 55
Enter quantity.

Click OK
 56
Click OK  57
User 52 logon to the mobile device and tries to start the receiving of items on license plate Blogpost2.  58
Enter license plate.

Click OK.

Note: This is accepted, because license plate Blogpost2 does not contain on-hand inventory on any locations and no other user has started the receiving of this license plate.
 59
Enter Purchase order number.

Click OK.
 60
Enter item number.

Click OK.

Note: The user receives a message that there is no quantity left to receive.
 61

 

User receives items on a faulty license plate ID.

If a user for example by mistake scans the item number in the license plate field and discovers this after the first item is received, the supervisor can delete the entry and the user can start again.

Example:

One purchase order exists

62

Mobile device flow

User 51 has logged into the mobile device.Open mobile device menu item. In this example the source document line identification method is Purchase order item receiving.  63
Enter license plate.

Click OK
 64
Enter Purchase order number.

Click OK
 65
Enter item number

Click OK.

Note: Now the purchase order line number is uniquely identified.
 66
Enter quantity.

Click OK
 67
Click OK.

Now the user realizes that the license plate should not be blog post number 1.
 68
Super user will open form Mixed license plate receiving.

Select the correct record.

Click Delete.
 69
Confirm deletion by clicking Yes.  70
The entry is deleted and the user can start again.  71

 

User mistakenly cancels out of the flow and forgets to complete the license plate. Supervisor wants to complete the license plate from the rich client.

The user receives all items for a license plate, but forgets to complete the license plate before going home. Supervisor wants to complete the license plate from the rich client.

Example:

1 purchase orders exist for 2 items.

72

Mobile device flow

Open mobile device menu item. In this example the source document line identification method is Purchase order item receiving.  73
Enter license plate.

Click OK.
 74
Enter Purchase order number.

Click OK.
 75
Enter item number.

Click OK.

Note: Now the purchase order line number is uniquely identified.
 76
Enter quantity.

Click OK.
 77
Click OK  78
Enter item number.

Click OK.
 79
Enter quantity.

Click OK.
 80
Click OK  81
Click Cancel  82

Supervisor opens the form Mixed license plate receiving.

83

Position cursor on the correct license plate.

Click the button Complete license plate.

The policies set for the mobile device menu item used by the last user will be applied. In this example, the mobile device menu item used for the last receiving has Display disposition code = Yes.

84

Supervisor can apply a disposition code or ignore this.

Click OK

License plate receiving is now completed and work is created.

85

User ID stamped on the header in this case is the user ID from the warehouse parameters Default work user ID.

86

Circulating license plates

Circulating license plates are supported using these 2 new work creation methods.

Capturing of tracking dimensions

Tracking dimensions’ batch and serial numbers are captured for each individual receiving on the license plate. The pattern applied is the same pattern applied for the work creation method Purchase order item receiving.

Vendor catalogs in Dynamics AX

$
0
0

Vendor catalogs import

In Microsoft Dynamics AX, purchasing professionals can create and maintain catalogs for company employees to use when they order items and services for internal use. When you create a procurement catalog you can add the items and services that you make available to employees, either by importing the vendor catalog data or by adding the vendor catalog data to the product master manually. If you use the catalog import process the vendor can send you the product catalog data and you can upload it by using the Microsoft Dynamics AX client.

The product data that the vendor submits to you, in the form of a catalog maintenance request (CMR) file, must be in XML file format. The CMR file should contain all of the details for the products that the vendor supplies to your company.

Importing vendor catalog data

To import vendor catalog data, you must complete the following tasks:

  1. Set up a project in data management workspace. Here you have to define your data mapping rules.
  2. Set up a procurement category hierarchy, and assign your vendors to procurement categories. If you use commodity codes, add the commodity codes to the procurement categories.
  3. Configure the vendor for catalog import.
  4. Configure workflow for catalog import.
  5. Create a CMR file template and share this with your vendor.
  6. Create a vendor catalog. The catalog maintenance request (CMR) files that you receive from your vendor are grouped in this catalog.
  7. Upload the CMR file.
  8. Review, approve, or reject the products in the vendor catalog. Details that can be reviewed include the product name, description, pricing, or order quantity requirements. Approved products are added to the product master and are released to the selected legal entities. Only approved products can be added to the procurement catalog. The products are now automatically mapped to the procurement categories in AX.

Overview

For the current version of Microsoft Dynamics AX, we are using the Data Import/Export Framework and a predefined composite entity (you can read more on data entities here).

clip_image001[13]

The product data that the vendor submits to you, should still be in the form of a catalog maintenance request (CMR) file, must be in XML file format.

Set up the system to import vendor catalog data

You will need to set up the system to support the vendor catalog import scenario, by creating an import job for vendor catalogs.

  1. On the main dashboard, click the Data management tile to open the data management workspace.
  2. Click the Import tile to create a new data project.
    clip_image003
  3. Enter a valid job name, source data format, and entity name.
    Do note for data source we support only XML-element or XML-attribute. Entity name should be “Vendor catalogs”.
    clip_image005
    Upload an XML mapping data file for vendor catalogs data entity.
    The XML mapping data file defines which fields you expect to import from your vendor CMR files. These fields will appear as your source and you will need to map these fields to Dynamics AX internal schema reflected by the staging schema.
    clip_image007

In this way you have the possibility to map the XML schema template that you provide to your vendors, to the internal schema defined in Dynamics AX. There can be only one mapping defined at a time.

The internal schema we currently support you can also see it below and it reflects a catalog maintenance request entity which includes product details entities with the associated product pricing, order quantity requirements and detailed product descriptions entities.

This is how the initial XML file should like:

<?xml version="1.0" encoding="utf-8"?><Document>
			<CatVendorCatalogMaintenanceRequestEntity>
				<UploadDateTime></UploadDateTime>
				<CatVendorProductCandidateEntity>
					<ProductCategoryHierarchyName></ProductCategoryHierarchyName>
					<ProductCategoryName></ProductCategoryName>
					<ActionType></ActionType>
					<ProductNumber></ProductNumber>
					<ProductSubtype></ProductSubtype>
					<SearchName></SearchName>
					<BarCode></BarCode>
					<ProductColorId></ProductColorId>
					<ProductConfigurationId></ProductConfigurationId>
					<ProductSizeId></ProductSizeId>
					<ProductStyleId></ProductStyleId>
					<CatVendorProductCandidatePurchasePriceEntity>
						<CurrencyCode></CurrencyCode>
						<UnitSymbol></UnitSymbol>
						<Price></Price>
					</CatVendorProductCandidatePurchasePriceEntity>
					<CatVendorProductCandidateSalesPriceEntity>
						<CurrencyCode></CurrencyCode>
						<UnitSymbol></UnitSymbol>
						<Price></Price>
						<SuggestedPrice></SuggestedPrice>
					</CatVendorProductCandidateSalesPriceEntity>
					<CatVendorProductCandidateDefaultOrderSettingsEntity>
						<UnitSymbol></UnitSymbol>
						<LeadTime></LeadTime>
						<OrderQuantityMultiples></OrderQuantityMultiples>
						<MaximumOrderQuantity></MaximumOrderQuantity>
						<MinimumOrderQuantity></MinimumOrderQuantity>
						<StandardOrderQuantity></StandardOrderQuantity>
					</CatVendorProductCandidateDefaultOrderSettingsEntity>
					<CatVendorProductCandidateTranslationEntity>
						<ProductName></ProductName>
						<Description></Description>
						<LanguageId></LanguageId></CatVendorProductCandidateTranslationEntity>
					</CatVendorProductCandidateEntity>
</CatVendorCatalogMaintenanceRequestEntity></Document>

In the mapping file you have to include UploadDateTime field at the level of CatVendorCatalogMaintenanceRequestEntity (see example above) . This field is used internally to track the upload time for the catalog maintenance request and it should not be included in the actual CMR files.

You can also include the field ActionType at the level of CatVendorProductCandidateEntity. This field can be used to explicitly specify the type of action you want to take for the product: add, update or delete. The values supported for these fields in the CRM file are: Add, Update and Delete.

If you will decide to use your own schema, you should get warnings when you upload the mapping file:
clip_image009[4]

Go to the View map and here you will see the vendor catalog composite entity and also the individual entities defined in the composite entity: CatVendorCatalogMaintenanceRequestEntity, CatVendorProductCandidateEntity, CatVendorProductCandidatePurchasePriceEntity, CatVendorProductCandidateSalesPriceEntity, CatVendorProductCandidateDefaultOrderSettingsEntity, CatVendorProductCandidateTranslationEntity

Make sure that each entity is added, and that all errors are fixed.
clip_image011

You can click each entity data card to set up, review, or modify field maps, and to set up XSLT-based transforms that must be applied to inbound data.
o Source – These are inbound CMR files Typically data format includes – CSV, xml, tab delimited ; This will be the xml schema you will use for you CMR files.
o Staging – These are auto generated tables which map very closely with data entity. When “data management enabled” is true staging tables are generated to provide intermediary storage. This enables the framework to do high volume file parsing, transformation and some validations.
clip_image013

Note: important, mandatory fields marked with red star should be always mapped to a field.

To map your own field to an existing field in the fixed schema, you can do this by drag a drop from source field to destination field and pressing save.

For example in here, we use VendorProductCode instead of ProductNumber.
clip_image014

You can proceed when the import job mapping icon shows no error.
clip_image016

Note: The mapped fields are case sensitive, which means the CMR files should use exact field names.

Also if fields were defined in the mapping even they are not mandatory they are expected to be present in the input. That means if for example BarCode was presented in the initial mapping file, we expect to see it in xml file even though it doesn’t contain any value.
clip_image018

  • Click Save. At this point your system is configured to support importing of vendor catalog files.Currently the product related data we support is: product name, description, translations. pricing or order quantity requirements.

 

NOTE: You should not import data directly from data management workspace. The vendor catalog maintenance request files should be imported in the context of a vendor catalog which also enforces a process of review and approval.

 

Set up a procurement category hierarchy

You won’t be able to import products from categories where the vendor is not approved for procurement. To approve the vendor:

  1. Go to Procurement and sourcing > Procurement categories.
  2. Select the category. Add the vendor to the list of approved vendors in the Vendors fast tab.

Configure the vendor for catalog import

In order to be able to import catalogs for a particular vendor it has to be enabled for catalog import. There are two ways to achieve that

  • For a specific vendor go to Procurement > Set up > Configure vendor for catalog import
  • If you don’t do this you will be prompted if you want to enable the vendor for catalog import when creating a new catalog for the vendor

Set up workflow

After a catalog maintenance request (CMR) file has been successfully uploaded, the purchasing professional can review the product details in the file. The vendor indicates whether the product is new, modified, or must be deleted. Information about the product pricing, product descriptions, product attributes, and order quantity requirements are also included in the CMR file. As an approver, you can indicate whether products are made available to selected legal entities and approve or reject the products in the file. Approved products are added to the product master and are released to the selected legal entities.

To support the approval process we are leveraging another powerful feature of AX: workflow processing.

You are allowed to set up rules for automated approval of vendor catalogs and specify one or more reviewers if manual approval is required. To enable the vendor catalog import functionality it is required to set up two types of workflows: Catalog import product approval (line-level), Catalog import approval (catalog-level). We should always define both workflows since the Catalog import approval will always require Catalog import product approval to approve products, either manually or automatically.

Catalog import product approval

This type of workflow processes all the products that are included in the CMR file. Completion of all of the individual line-level workflow completes the overall catalog import workflow. In order to create a product approval workflow:

  1. Click Procurement and sourcing > Setup > Procurement and sourcing workflows.
  2. On the Action Pane, click New.
  3. Select Catalog import product approval and then click Create workflow.

General setup

The common catalog import product approval workflow should look like this:

clip_image020

Set up approvers

  1. Double click the Catalog import product approval element.
  2. Click the Step 1 element.
  3. Click Assignment in the action pane.
  4. The simplest assignment would be User->Admin.

Set up automatic actions

Automatic actions allow the workflow framework to automatically approve or reject the products in the imported vendor catalog which meet certain conditions. In order to set up an automatic action you need to:

  1. Select the Catalog import product approval element.
  2. Click Automatic actions in the action pane.
  3. Click the Enable automatic actions check box
  4. Setup the conditions for auto approval/rejectionThere is one type of condition which I would like to focus on. You can specify Product candidate.Price delta as a parameter of the automatic action. The price delta is calculated as a ratio: (new price – old price) / old price. So if you want to make sure that the price delta is within 20% you need to set the condition to Product candidate.Price delta <= 0.2
  5. Select the type of automatic action (approve/reject)

You can also setup auto approval for condition that IsAutomatedApproval enabled,.

clip_image022

IsAutomatedApproval setting is controled directly on the vendor catalog page. On the Action Pane, on the Catalogs tab, in the Maintain group, click Enable automated approval. This sets the Automated approval field to Enabled.

Catalog import approval

This type of workflow is used for setting up the rules for approving the whole catalog. When you configure this workflow, you can reference the Catalog import product approval workflow that you configured earlier. The common setup would be to automatically approve the whole catalog import after all the products have been approved:

clip_image024

In the properties of the Vendor catalog lines (products) element you need to reference the catalog import product approval that you created earlier.

Import a catalog from a vendor

First you have to set up a catalog for your vendor. The catalog maintenance request (CMR) files that you receive from your vendor are grouped in this catalog. After you set up the catalog, you can upload CMR files for the vendor. You can also view the details and the event log for new or existing CMR files that have been added to the vendor catalog

Use this procedure to create a new vendor catalog. This is the catalog to which you upload a catalog maintenance request (CMR) file for a vendor. If you delete the vendor catalog, you can no longer import CMR files to it. If you still want to import catalog data from the vendor, you must create a new catalog for the vendor

  1. Go to Procurement and sourcingCatalogs > Vendor catalogs and create new catalog.
  2. In the New catalog form, in the Vendor field, select the vendor that you are creating the catalog for.
  3. Enter a name and description for the catalog, and then click Save.

clip_image026

Upload a catalog maintenance request (CRM) file. Go to Catalog file history tab, click Upload file.

  1. In the Upload file dialog box, browse to the location of the CMR file that you created. The maximum file size allowed to upload is 10 MB per file.
  2. Enter an effective date and an expiration date. These dates define the date range in which the pricing for the products in the CMR file is valid. When trade agreement are created it will include these dates.
  3. Select one of the following update types for the CMR file:
    1. Add updates to the existing vendor catalog – Add product updates to an existing catalog.
    2. Replace the existing vendor catalog with a new catalog – Add a new catalog, or replace an existing catalog with a new catalog.
  4. If you are creating a new catalog to replace an existing catalog, all items and services that are in that catalog are overwritten by the matching items and services in the new CMR file. Any existing items and services that are not in the new CMR file are deleted. Any items and services that are included in the new CMR file, but that are not included in the existing catalog, are treated as new products
  5. Select category hiererachy type you want to associate the product data. You can also select either procurement category hierarchy or commodity code hierarchy.
  6. Click OK to start the upload process for the CMR file.

clip_image028

When you upload the CMR file, the file is validated against the category hierarchy type selected and the categories the vendor is allowed for procurement. If the validation fails and some of the data is invalid the catalog upload process will fail. You can view the details for the CMR file upload status in the event log. After the CMR file is uploaded successfully, you can review the details of the CMR file in the vendor catalog.

clip_image030

  • Start processing – The CMR file has been submitted for import.
  • Start catalog upload – The CMR file has been submitted and is in process.
  • Catalog upload failed – An error occurred after the file was submitted for processing, and the CMR file was not imported.
  • Catalog upload complete – The CMR file was successfully uploaded.
  • Invalid CMR – The CMR file does not comply with the current schema for catalog import. If the CMR file was created by using an outdated schema, the CMR file must be recreated by using the current schema. You can also use advanced troubleshooting to narrow done the cause of the failure.
  • Pending approval – The CMR file is in review and waiting for approval by the purchasing agent.
  • Product rejections – Products in the CMR file were rejected for import into the procurement catalog. Product rejections are indicated by a warning during the import process, and the file continues to be processed for products that are approved.
  • Approval complete – The purchasing professional has completed the review of the products and images that are contained in the CMR file.
  • Finish processing – Approved products have been added to the product master in Microsoft Dynamics AX and trade agreement journals have been created. The data in the CMR file has been passed to the archive folder for the vendor.

After the products in the CMR file are reviewed and approved, you can release the approved products to the legal entities in which the vendor is authorized to supply products, and appropriate trade agreements can be created.

 

Validate and approve imported catalogs

  1. Click Procurement and sourcing > Common > Catalogs > Vendor catalogs. On the Vendor catalogs list page, double-click a vendor catalog.
  2. In the Update catalog form, on the Catalog file history fast tab, select a CMR file, and then click Details.
  3. In the Catalog approval page form, review the product details for the products that are included in the CMR file. You can use the Item status field to view all items or only items that have a selected status. Select one of the following options:
    1. All items – View all products that are included in the CMR file. This is the default setting.
    2. Add – View only new products. After a new product is approved, it is added to the product master. When the product is released to the legal entity, the corresponding trade agreement is created and the product appears on the Released products list page.
    3. Update – View only existing products that are being modified. After a product is approved, the modifications are applied to the existing product in the product master. New trade agreements are created only if there are price changes for the product.
    4. Delete – View only products that are no longer offered by the vendor and should be deleted. After the product request is approved, the product is no longer available for purchase.
  4. To filter product changes by legal entity, select a legal entity in the Buying legal entity field. You can view the price, name and description and purchase quantity changes by legal entity.
    Note
    A legal entity appears in the list only if vendor products that have been imported are approved and released to the legal entity. If no products have been released to a legal entity for the vendor, the list is empty.
  5. In the lower pane, on the Price tab, review the pricing for a selected product. The current price and new price are displayed in the currency and unit of measure in which the product is offered.
  6. On the Name and description tab, review the name and description of a selected product in specified languages.
  7. On the Purchase quantity tab, review changes to the purchase order quantity requirements and purchase lead time for the selected product.
  8. In the upper pane, select the products that you want to approve, and in the workflow message bar, click Actions > Approve. Approved products are added to the product master.
  9. In the upper pane, select the products that you want to reject, and in the workflow message bar, click Actions > Reject. Products that are rejected are not added to the product master.
  10. Click Release products to legal entity, and then in the Release products to legal entity form, select the legal entities in which the vendor’s approved products will be available. Corresponding trade agreements will be created for the products in these legal entities. Products must be added to the product master and be available in the legal entities before they can appear in the procurement catalog.
    Note
    If you do not release the approved products to the legal entities by using the Catalog approval page form, you can release approved products to legal entities by using either the Vendor catalogs list page or the Update catalog form.

 

Advanced troubleshooting

We have a first level of logs to see if anything failed during the import of a file.

clip_image032

However we don’t expose yet all the detailed information here in regards with data management framework processing.

For this now we have an advanced ways of seeing more details when import fails, by looking at execution details of the import job by going to data management workspace:

clip_image034

For the failed job, I can drill through and see more details

clip_image036

By going further into view staging data and viewing data you can identity there is a problem in this case in product data:

clip_image038

We are hiring!

$
0
0
ExternalWholebuilding_HLA029_jpg
Do you want to work on a team where we focus on realizing the full potential for our business customers? Do you want to utilize your passion for technology to bring Dynamics AX to the next level? Do you want to work in our new modern office, built with Agile engineering in mind? Do you want to work with some of the best engineers in the world? Great, we are looking for new talents!

Microsoft is a company that values diversity and encourages openness of ideas and communication. MDCC was rated the Best Place to Work in Denmark by the Great Place to Work Institute.

Microsoft Development Center Copenhagen is one of Microsoft’s largest development centers outside the US. We offer an international work environment that is characterized by flexibility, an informal atmosphere and a fast pace. We provide an attractive compensation package that will match your responsibility. International visa sponsorship and relocation support is offered for this role.

All applications for vacant positions will be welcomed and will be considered on the relative merits of the applicant against the role profile for the position regardless of color, race, nationality, ethnic origin, gender, sexual orientation, marital status, disability, parental responsibilities, age, religion, or belief.

 

Use of license plates associated with a container type to drive warehouse management processes

$
0
0

When using Warehouse management II, you can use different types of pallets to control storage policies. Similarly, when using the Warehouse management module in Microsoft Dynamics AX 2012 R3, you can now associate a container type with a license plate. This is available with the following KB articles:

  • KB 3162642 – Need pallet type and groups support for inbound flow in WHS
  • KB 3164382 – Locate put-away locations based on license plates (for purchase order mixed LP and LP receiving processes)

License plates

Warehouse management > Setup > Warehouse setup > License plates

You can use the License plate form to assign a container type to a license plate entity.

062016_0727_Useoflicens1.png

Container types

TechNet: https://technet.microsoft.com/en-us/library/dn553190.aspx

Warehouse management > Setup > Containers > Container types

The container types are used to define the physical characteristics of a tangible carrying unit, such as a cage, box, pallet, or a shipping container.

062016_0727_Useoflicens2.png

The following new fields have been introduced on the container type entity:

  • Container length – The length of the container
  • Container width – The width of the container
  • Container height – The height of the container
  • Container volume – The volume of the container
  • Flexible volume dimensions – When selected, the volume depends on both the container volume and the inventory put on the container (open pallet). When cleared, the volume is considered fixed and doesn’t depend on what inventory is put into the container (fixed cage). Existing containerization processes will not be affected by this new setting.
  • Unit – The unit of the container type is used as part of the stocking limit calculations where unit conversions between container types can be used as a ratio to calculate storage capacity within locations.

Units and Unit conversions

Organization administration > Setup > Units > Units

Organization administration > Setup > Units > Unit conversions

062016_0727_Useoflicens3.png

Unit conversions between container types describe a common unit when using stocking limits. For example, a location with the capacity to carry two full-pallets might be expressed as having capacity for four half-pallets.

To further illustrate this example, two Units must be created and assigned with two Container types.

Then Unit conversions between the units must be defined:

1-PL = 2 * ½-PL

062016_0727_Useoflicens4.png

Location stocking limits

Warehouse management > Setup > Warehouse setup > Location stocking limits

You can use information about the container types on the Location stocking limits form to find available capacity based on the available number of license plates (container types). The Container types section (tab) is evaluated first as part of the stocking limits functionality. If no constraints are found, the settings in the Product section are used. If you don’t want to use this functionality, you can create a record with the Allow unlimited quantity field selected.

The Unit cannot be selected, but is entered by default based on the unit assigned on the Container type field.

062016_0727_Useoflicens5.png

With using internal unit conversions between different container types, the storage capacity depends on the container type. In this example all locations that are associated with the Location profile ID being set to PDP have space for two full-size pallets. The way that the Unit conversions are defined means that the following combinations can be used:

# of full-pallets # of ½-pallets Max location load
2 0 Yes
1 0 No
1 1 No
1 2 Yes
0 0 No
0 1 No
0 2 No
0 3 No
0 4 Yes

 

The definition of the container type location stocking limit requires the Location profile ID that used has the Allowed container type group field defined. The associated container types must have units and unit conversions defined, as well.

Allowed container type groups

Warehouse management > Setup > Containers > Allowed container type groups

In case locations should be restricted from holding all container types, the new Allowed container type groups can be used. The records that are defined in this form must be associated with a location profile in order to restrict locations to holding only specific container types. When Allow unspecified container types is selected, license plates that are not associated with any container type are allowed to be put on the locations.

062016_0727_Useoflicens6.png

Location profiles

Warehouse management > Setup > Warehouse setup > Location profiles

To store only the license plates for the container types that are allowed by your business, assign the allowed container type group to a location profile. To use this functionality, you must select the Use license plate tracking field.

062016_0727_Useoflicens7.png

Note that when using the volumetric calculation functionality, the physical dimensions will be calculated based on the defined setup as part of the container types. Making a physical update resulting in emptying a license plate (no inventory on-hand associated), will remove the volume of the license plate (container) volume on the location load.

 

Container type defaulting

The logic of getting a container type assigned to a license plate can be controlled by defaulting. When enabled, the user can overwrite the default value during the mobile device processing.

Conceptually the defaulting will start from:

Existing License plate container type -> Mobile device menu items -> Unit sequence groups -> Warehouse -> Warehouse management parameters -> [Blank]

Warehouse management parameters

Warehouse management > Setup > Warehouse management parameters

You can specify default entries for container types that are assigned to license plates using the fields in the License plates section.

062016_0727_Useoflicens8.png

Warehouses

Warehouse management > Setup > Warehouse setup > Warehouses

You can specify default entries for container types in the Warehouse management section.

062016_0727_Useoflicens9.png

Unit sequence groups

Warehouse management > Setup > Warehouse setup > Unit sequence groups

The Default container type column is added as part of the unit sequence so you can specify the container type as a default entry, depending on the unit used as part of the receiving process.

062016_0727_Useoflicens10.png

 

Mobile device menu items

Warehouse management > Setup > Mobile device > Mobile device menu items

The Default data setup form is used to make the Default container type file active on mobile devices, as well as specifying the default container type.

062016_0727_Useoflicens11.png

Mobile device forms

If you select the Display container type field in the Mobile device menu items form, the Container type lookup is shown either when the license plate is generated automatically or the mobile device process displays an acceptance form after the license plate value is defined.

With Generate license plates selected:

062016_0727_Useoflicens12.png

With Generate license plates cleared:

062016_0727_Useoflicens13.png

062016_0727_Useoflicens14.png

Location directives (Purchase orders)

To support a put-away business process where all the content on a license plate gets put on one location, for ASN – License plate receiving and Mixed license plate receiving, we recommend using the Locate by field on the Location directives for the work order type purchase order.

062016_0727_Useoflicens15.png

When set the Locate by field to ASN or Mixed license plate, the query, as well as the line and location directive actions, will behave differently. When using the grouping concepts for ASN and Mixed license plate, the lines restrictions will not be used.

062016_0727_Useoflicens16.png

Outbound processes

Even though this enhancement mainly addresses the inbound warehouse management processes, some outbound processes can benefit, as well. One benefit is the capability to guide the work allocation for specific container types via the query on the Location directives.

062016_0727_Useoflicens17.png

On-hand inventory

The same filtering capabilities can be used when viewing the inventory on-hand. It will be possible to include the container types as part of the query due to the fact that the container types get associated with the license plates tracked during the receiving processes.

062016_0727_Useoflicens18.png

Viewing all 312 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>