Contents
The Allocate Services action in the Invoices application is used to distribute the cost of freight or other service charges across the lines of the Purchase Order. There is more functionality than just the single action, and having already written 35 pages I have decided to split the article into five parts:
- Part 1 – Storeroom Items – Allocate a freight charge across multiple storeroom items and see what financial transactions take place and observe the effect on the average cost of those items.
- Part 2 – Automatic Allocation – Show that a freight charge can be automatically allocated during invoice approval.
- Part 3 – Complex Allocations – Allocate multiple charges across different invoice lines.
- Part 4 – Service Items and Manual Allocation – Show that the Allocate Services action allows service charges to be allocated flexibly including to other services.
- Part 5 – Direct Issue Items – Show how to stop the allocation of services against storeroom purchases but allow them for direct issue purchases.
I will create a summary in Part 5 and pull together some issues found and the IBM Ideas that have been raised.
Allocate Services on a Storeroom Purchase
In this first part we will show how to use the Allocate Service action on storeroom purchases, and we’ll then trace the financial transactions that have occurred. We will spread a freight cost across other purchased items.
To illustrate the change to inventory average cost, I will create some new items and add them to the CENTRAL storeroom:
- ITEM01 – Item 1 $30
- ITEM02 – Item 2 $80
- ITEM03 – Item 3 $25
- ITEM04 – Item 4 $50
Item Master

In the Item Master application, I have created four new items and from the List tab I am using the action Add Items to Storeroom. In the initial dialog that opened I selected the BEDFORD-CENTRAL storeroom and then I adjusted the Unit Cost for each item.

From the List tab I can also use the Change Status action, and this will change status on all items in the selected set. The New Status is Active, and I have selected – Roll New Status to OrganizationsA structural element of a Maximo database which is used for data sharing. More and Inventory.
This has changed status to ACTIVE at the Item Master level, at the Item-Organization level and in the BEDFORD-CENTRAL storeroom where all four items exist.
Purchase Orders

I have created a PO against Vendor BALSTON with four PO lines, one for each item with the storeroom CENTRAL. The Unit Cost came from the storeroom, and the Quantity has been set to conveniently create round numbers for the Line Costs and a net total for the PO of $1000. The Total Cost in this screenshot is the Gross cost and includes Total Tax of $50.00.
I’ve now approved the PO; its status has moved from the default of WAPPR to APPR.
Notice that I did not include a freight charge on the purchase order, you might know that a freight charge is going to apply, but you may not know the actual charge. We’ll see that you can add services to an invoice without creating a service receipt, there is a setting to allow a two-way match (PO-Invoice), or a three-way match (PO-Receipt-Invoice) which I will show you later.
Receiving

In the Receiving application and Material Receipts tab, I selected PO 1099 and used the Material Receipts table action Selected Ordered Items. I have selected all four PO lines and kept the Quantity Due values before using the OK button.

All four receipts have been copied to the Material Receipts table, and their Inspection Status is set to COMP (Completed). After save the PO Receipts status is set to COMPLETE as the quantities for all lines on the PO have now been received.
We are now ready to Invoice and see how the Allocate Services action works.
Invoices

I’ve created a new Invoice and in the PO Details selected PO 1099. The initial invoice status is ENTERED, and the default Type is INVOICE.
There is a Costs section on the Invoice tab if you scroll vertically down, this is where you can enter the Pretax Total, Total Tax and Invoice Total. They default to the uninvoiced costs of the purchase order.

On the Invoice Lines tab there is a table action Copy PO Lines for the Invoice Lines table window. There are three tabs and on the PO Lines tab I have selected all four PO Lines and then used the OK button.

The Uninvoiced Quantities for each item are transferred to the Invoice Lines table window. I have now saved those records.
If you used the Allocate Service action now you would get the error message – BMXAA1997E – There are no invoice lines, whose prorate service flag is true. We haven’t added a service line to the invoice.
We need to create a new invoice line for a freight charge which will be allocated over the other PO lines. We’ll just go and see how this is set up in the Service Items application.
Service Items

The Service Items application will be found in the Inventory module, but it is not a type of item that can be held in a storeroom. There is a FREIGHT item in the standard MAXDEMO database which we will use. I’ve set the Prorate checkbox, this is a default for the PO line and Invoice line. The status must be ACTIVE at the Item and Item/Organization levels for the service item to be used.
Service Items are also commonly referenced as Standard Services.
Invoices – Allocate Services

I’ve added a new invoice line to the invoice created earlier and used the invoice Line Type of Standard Service. I’ve selected the Service Item FREIGHT. Notice the Prorate Service field is set; it was copied from the Service Item. The field above it, Prorated, is not set.

I’ve scrolled down in the Invoice Line details, the Quantity is 1 and the Unit Cost is 300.00, the freight charge found on the Invoice. Notice that while the Related Records section shows PO 1099 the PO Line is null. You do not need to have added a PO Line for freight charges to add freight costs to an invoice and allocate that charge across other PO lines.
Notice also in the second column of fields the Loaded Cost is 300.00 and the Prorated Cost is 0.00.

When you use the Allocate Services action a dialog opens with two table windows and the help text:
The Services to Allocate table displays lines from the invoice that have the Prorate Service? checkbox selected. To select lines you want to allocate, select the checkbox on each line. To select all rows, select the checkbox on the heading. The Lines to Allocate table displays material and service lines from the invoice whose Prorate Service? box is not checked. Select lines that will receive the cost from the Services to Allocate table by checking one or more rows; to select all rows, check the box on the header. Use this table to allocate the selected services automatically and/or edit the amounts to allocate manually. The Services to Allocate table displays all services to be allocated. The Lines to Allocate table table displays the lines to receive the costs from the services to be prorated.
In short then, the top table window is the service lines to be prorated, and the bottom table window provides the result when you use the Prorate button. Instead of using the Prorate button you can manually decide how you wish to prorate the amount from the top table window, in this example the $300 freight cost.

I’ve selected the FREIGHT record in the Service to Allocate table, and I’ve selected all records in the Lines to Allocate table and now I’ll use the Prorate button. Notice the Total Services Allocated is currently 0.00.

The FREIGHT item in the Services to Allocate table now shows it has been Prorated. The Prorate button has divided the $300 among the four items based on the Line Cost.
- ITEM01 – Line Cost $300, this is 30% of the total line cost of $1000, 30% of $300 gives a Prorate Cost of $90
- ITEM02 – Line Cost $400, this is 40% of the total line cost of $1000, 40% of $300 gives a Prorate Cost of $120
- ITEM03 – Line Cost $50, this is 5% of the total line cost of $1000, 5% of $300 gives a Prorate Cost of $15
- ITEM04 – Line Cost $250, this is 25% of the total line cost of $1000, 25% of $300 gives a Prorate Cost of $75
The dialog allows you a lot of flexibility, you do not need to allocate the service over all lines or to base the allocation on a direct proportion of the cost of each line. We will see some other examples of this in parts 3 and 4.
The Total Services Allocated is now equal to the Total Services to Allocate and we can now use the OK button and the changes will be saved.

After you use the OK button, the Prorated Cost will be found on each line, and the Loaded Cost will have been incremented by this amount. For ITEM01 the Prorated Cost is $90, and this has been added to the Line Cost of $300 to derive the Loaded Cost of $390.

For invoice line 5 which had the FREIGHT item the Prorated field on the right has been set, the Prorated Cost is -300.00 and the Loaded Cost has been reduced to 0.00.
Line Cost + Prorated Cost = Loaded Cost

If you used the Allocate Services action again you would receive the warning – BMXAA2030W – Invoice lines have already been allocated. Click OK to erase previous allocations and reallocate them. Using OK is the way to remove previous Prorated Costs, I chose to Close.
Tracking the transactions on Invoice Approval
When I started this article, I was using a system with the Service Provider add-on installed and I came across the following error when I tried to approve the invoice. This has been reported to IBM Support.
BMXAA4214E – An unknown error has occurred. Please contact your system administrator for assistance. Gather the logs from the <HOME> directory and determine where and why the error occurred.
begin 0, end -2, length 12
I restarted the article on another system at MAS 9.1.5 with no HSE, Transportation or Service Provider installed.

I have changed status to Approved (APPR) using the action Approve Invoice.
We’ll now review the transactions created by the invoice approval starting with Inventory transactions.
Inventory

As these were all storeroom items, the cost of the freight charge is distributed across the inventory items, their average costs are incremented using the Loaded Cost of the invoiced items. The screenshot is for ITEM01, you can see that Quantity Available is 10.00 and the Average Cost has increased from $30 to $39.
- ITEM01 – Quantity 10, Unit Cost $30, Prorated Cost $90, split $9 each item, new Average Cost is $39.00.
- ITEM02 – Quantity 5, Unit Cost $80, Prorate Cost of $120, split $24 each item, new Average Cost is $104.00
- ITEM03 – Quantity 2, Unit Cost $25, Prorate Cost of $15, split $7.50 each item, new Average Cost is $32.50
- ITEM04 – Quantity 5, Unit Cost $50, Prorate Cost of $75, split $15 each item, new Average Cost is $65.00
Receiving

A Material Receipt Transaction (MATRECTRANS object) is written for the prorated cost against each item, they have an Issue Type of INVOICE, and the Quantity is zero. The Material Receipts tab does not show any costs. In the screenshot you can see the four INVOICE transactions, one for each invoice line. In the header the Received Cost is $1300 which is the net total of $1000 plus the prorated freight cost of $300.

If you navigate to the Inventory application from the Item field and use the action View Inventory Transactions, you will find that there are two transactions, one for the RECEIPT of Quantity 10 with a Line Cost of $300 and a Loaded Cost of $300. The other transaction is of Transaction Type INVOICE and has a Quantity 0, with a Line Cost of $0 and a Loaded Cost of $90, the Prorated Cost coming from Invoice 1077.

The approved invoice has created a Service Receipt (object SERVRECTRANS) transaction where the Line Cost is the net amount of $300, and the Loaded Cost has been reduced by the amount of the Prorated amounts; in this case it is $0.00. The Issue Type of this service receipt is INVOICE.
This wraps up Part 1. We’ve seen the use of the Prorate button in the Invoices application action Allocate Services. It has allocated the Standard Service charge for FREIGHT across the four received storeroom items based on the Line Cost of each item. The allocated amount is added to the Line Cost on each invoice line, and the sum will be found in the Loaded Cost. It is the Loaded Cost which effects the Average Cost of the inventory item, the freight charge has incremented the average costs of each storeroom item. The Allocate Services action creates financial transactions on both the Material Receipts (MATRECTRANS), one for each item, and it also writes a Service Receipt (SERVRECTRANS), but in this case the Loaded Cost of the Service Receipt is $0 because the Line Cost of the FREIGHT Standard Service charge has been allocated across the storeroom items.
In Part 2 we will see that we could have achieved the same effect without using the Allocate Services action, just by approving the invoice. Maximo has a function to automatically prorate service.


