Hi! In this training lesson, we are going through the packing slip posting process.
The following are the results of the packing slip posting process:
Before leaving the warehouse, the truck driver goes to the Sales Manager and takes the Packing slip document. This document is sent to the Customer with the items. When the Customer receives items, he or she signs the packing slip document. The Packing slip is a guarantee that the Customer receives items.
To post the packing slip, the Sales Manager performs the following operations:
Note that under the Posting menu button, the Posting picking list registration menu button is available. Microsoft Dynamics AX has another flow for picking items from the warehouse with the help of the Posting picking list and Posting picking list registration forms. But, we have studied a more complex flow in the shipment training lesson.
The Posting packing slip form has the following view:
In the field guide, you can find detailed field description almost about all fields from the Posting packing slip form. Note that, in the field guide, the Posting packing slip form from the Accounts payable module is described.
All information in the form is filled in by default. The Quantity field contains the Picked value. You can check that the Lines tab contains two lines and the line quantity is correct. To post and print the packing slip, the Sales Manager selects the Print packing slip check box and clicks the OK button. (Don’t do this right now). We will complicate the task. Close the Packing slip form.
Let’s assume that our Company uses a carrier to ship items to the Customer. The Carrier is an independent company. The Carrier has the price list that contains prices for shipping different types of goods and weights. Each time items are shipped to the Customer, we must pay specific amount of money for the carrier service (according to the price list). Our company charges the Customer with the amount of money for the Carrier’s service. In other words, we include it into the Invoice. And when we receive payment for the invoice amount, we send the money to the Carrier.
Our company selects the UPS shipping company to perform carrier functions. When the Sales Manager posts the Packing slip, the information about the items to be shipped is transferred to the UPS. UPS calculates the price and sends it back to our Company. The interaction between the Company and the UPS is performed via the Web service. The charges are stored in Microsoft Dynamics AX. When the Sales Manager posts the Invoice, the carrier charges are included into the total invoice amount as miscellaneous charges.
To set up a Carrier, we must fill in the information in the Carrier interface, Carrier company, and Carrier forms. Let’s understand what these forms are used for.
Carrier Interface form. The Carrier interface form allows you to activate/deactivate a carrier.
In Microsoft Dynamics AX 2009, it is impossible to add a new carrier interface, but it seems that we already have the UPS interface in the grid.
Carrier Company form. The Carrier Company form is used to define additional setup options for the carrier interface in your company.
We can see that all charges are specified for the UPS carrier.
Carrier form. The Carrier form is used to associate the Carrier company with the Carrier interface.
We have set up the Carrier. What will be next? How is the Carrier associated with the Sales order? The Carrier is associated with the Sales order via the mode of delivery. Remember that in this training lesson we have set up the 10 (Truck) mode of delivery.
Let’s check the 10 (Truck) mode of delivery settings:
Our demo data already contains a delivery mode that is assigned to the U11 carrier. It is the 11 (UPS Ground) mode of delivery.
Set up the 11 delivery mode on the sales order lines:
Perform the same steps for the Can item.
We have already set up the new mode of delivery. According to this mode of delivery, UPS is our carrier and the following charges will be calculated:
We haven’t set up our Company to pay these charges. And, UPS can take charges either from our Company or from the Customer.
If our Company pays the charges, the Company can negotiate with the UPS shipping company what charges will be paid. For example, for some reason the company doesn’t pay the handling charges.
All these requirements are set up in the Terms of delivery form.
Remember that in the previous training lesson, we set up the FOB_DS delivery term for the Sales order.
Let’s check the FOB_DS parameters (what charges our company will pay). Go to Accounts receivable > Setup > Distribution > Terms of delivery > find the FOB_DS delivery term > Setup tab > Freight charge terms field.
We can see that the company doesn’t pay any charges. It means that the company doesn’t care about the carrier charges at all. It becomes possible when the Customer pays for the carrier service himself or herself. Or when the Company doesn’t use the carrier and the Customer uses her or his own transport to deliver the items or the Company delivers the items but includes the delivery cost in the item price.
Since we assume that the Company pays all carrier charges, this term of delivery is not relevant for our situation. Our demo data already contains relevant terms of delivery – CIF.
The CIF term of delivery has the following setup:
According to this setup, our Company will pay the core, ancillary, and handling charges to the carrier. The fuel surcharge is set up directly in the Sales order form (Sales order form > Delivery tab > Charge fuel surcharge check box).
The Company can pay its own money as charges or include the charges into the invoice total amount. The Company can negotiate it with each Customer separately. We assume that the Company will include the charges into the invoice total amount.
The charge accounts answer the questions about the money source – the Customer or the Company.
The Carrier company form contains the setup of the carrier charge accounts. (Inventory management > Setup > Shipping carrier > Carrier company > General tab > Miscellaneous charges field group).
Let’s open the 01 charge account:
The Debit type field is the “source” of money, the Credit type field is the “destination”. In the previous form, we can see that the source is the Customer and the destination is the general ledger account. The general ledger account is used to track the income from the customer that must be paid to the Carrier (i.e. to track the charge amount paid by the Customer).
Other charge accounts from the UPS shipping company also have the Debit type field set to Customer/Vendor.
So our Company collects charges from the Customer and pays them to the Carrier. That is exactly what is required.
Let’s set up the new CIF term of delivery for the Sales order:
After setting up the Shipping carrier interface, we can post the packing slip.
We don’t set up weigh and volume for the Bottle/Can item. So, our package has zero volume and weight. The item setup is located under Inventory management > Common Forms > Item details > find the Bottle/Can item > Setup tab > Item data and Physical dimensions field groups.
But, since we work in the test mode, we can set any charges even for the zero weight package:
The information entered in the Test mode form will be used during invoicing. The Test mode form simulates the charges received from the Carrier web service.
Now, we will check the result of the packing slip posting process:
Let’s check:
In this training lesson we have performed the following:
I recommend that you read the white paper about the Shipping carrier interface.
In the next training lesson, we will post the Invoice and analyze the results. We will see that carrier charges are added to the invoice as miscellaneous charges.
Hi,
Really appreciate your training.
May I know how to handle freight charge in transfer order?
we are using Transfer order to transfer goods to oversea warehouse, we would like to monitor the freight charge for every transfer order.
regards
shen shu ming
Hi
I’m trying to automate PACKING SLIP & INVOICE POSTING sequentially through X++ code.
When i do it manually,
1. Posting >> Packing Slip
2. Click “Ok” button in “Test mode” form
3. Status changed to “Delivered”.
4.Posting >> Invoice, once its done the status changed to “Invoiced”
But if i want to do it automatically, How do i close the “Test mode” form.
Or is there any way to get rid of the “Test mode” form
I would appreciate if would guide me on this
Thanks
Jaffar
Here is my code….
public static str60 shipSalesOrder(str salesId)
{
SalesFormLetter clsSalesFormLetter;
SalesTable tSalesTable;
str ret=”;
System.Exception err;
;
try
{
//Get SalesTable
tSalesTable = SalesTable::find(salesId);
//Packing Slip update
clsSalesFormLetter = SalesFormLetter::construct(DocumentStatus::PackingSlip);
clsSalesFormLetter.update(tSalesTable,systemDateGet(),SalesUpdate::All,AccountOrder::None,NoYes::No,NoYes::No);
clsSalesFormLetter.checkCloseDialog(clsSalesFormLetter);
//Invoice update
clsSalesFormLetter = SalesFormLetter::construct(DocumentStatus::Invoice);
clsSalesFormLetter.update(tSalesTable,systemDateGet(),SalesUpdate::PackingSlip,AccountOrder::None,NoYes::No,NoYes::No);
clsSalesFormLetter= null;
ret = ‘OK’;
return ret;
}
catch (Exception::CLRError)
{
err = CLRInterop::getLastException();
ret = err.ToString();
return ret;
}
}
How do you prevent a periodic invoice update running for updating the sales order before charges have been applied? I don’t see any field updates on the Sales Order or even the packingslip forms
SO entered
SO processed and packingslip
Data available for carrier program
[A*]Carrier program processes and send info back
Invoice update (how do we ensure [A*] has been completed?
Very useful guide, thanks.
Only one question: how can set the ledger accounts to track customer’s un-invoiced (packing slip) balance?