One more feature in the budgeting area coming in Dynamics AX 2012 R3 is the ability to manage the budgets of sub-projects independently. In AX 2012 RTM and R2, initial budget creation and revisions were done at the project hierarchy level. A single set of budget lines applied to the parent project and all sub-projects. One implication of this behavior is that a sub-project created after the initial budget was approved would never have an "original" budget, just a "revised" budget. In R3, we have introduced a new property on a parent project (you can also set the default in the Project parameters form) called Independent budgeting for sub-projects.
In the example below, you can see a parent project with two sub-projects and the new property highlighted.
When it is unchecked and you open the Project budget form, you get the previous behavior where you see a project tree on the left side of the form and can create budget lines for any project in the hierarchy.
When it is checked, you will not see the project hierarchy on the left side when you open the Project budget form for any project in the hierarchy. You are restricted to creating budget lines only for the selected parent or sub-project and workflow approval will be required for each project.
Once you have created a budget, you can no longer change this option. This option does not alter the behavior of the Project budget balances form. Even when you are managing sub-project budgets independently, the budgets and actuals for the entire hierarchy are rolled up and you can drill down to any level in the hierarchy.
In a previous post, I described some of the new features available for editing work break structures in Dynamics AX 2012 R3. In this post, I'll show the new project cost and effort tracking views that enable project managers to keep on top of the progress of their project. To demonstrate, I've created the simple two level work breakdown structure below.
I then posted a timesheet against the project tasks and navigated to the effort tracking view, as seen below. You can get to this view by clicking on the Effort tracking view button on the WBS form or directly via the Control tab on the project list and details forms.
The values in the Actual effort (hours) column display the hours logged against the tasks from the timesheet. The two columns labeled Progress percent and Remaining effort (hours) are calculated automatically by the system. In this example, 25 hours have been logged against Task 1 out of an estimated 40 resulting in a 62.5% completion percentage and a remaining effort of 15 hours. 50 hours were logged for Task 2, 10 more than the original estimated amount. The red icon in the last column is an indication that I am over the planned estimate for this task.
This information is also reflected in the cost tracking view, available via the ribbon.
Using the cost price of the reported hours from the timesheet, the system has derived a Cost to complete value for all of the tasks. As expected, Task 2 is exceeding the estimated cost amount and has a warning icon.
Not only can you view the remaining effort and cost in the these tracking views, you can also update them. In the example below, I have set the Remaining effort on Task 1 to 10 hours. The system calculates a Progress percent of 71.43 and sets the Effort at complete to 35 hours (25 actual + 10 remaining). This value is 5 hours below my Planned effort.
For Task 2, I have clicked the Mark as complete button. This sets the Progress percent to 100, Remaining effort to 0 and Effort at complete to Actual effort (50 hours). As you can see, this is 10 hours above my Planned effort. In addition to marking a leaf node task as complete, you can mark parent tasks and have it cascade to all child tasks.
You can do similar updates in the cost tracking view by updating the Cost to complete column for any task. Here you can see the impact of the updates I made above. Of course, all of the values roll up to the top level of the WBS.
Combined with the updated project budget tracking view for monitoring project financial performance, these new views give project managers a 360 degree view of their project performance and enable them to quickly make any necessary course corrections.
If you work with Dynamics AX, you are probably familiar with the Tutorial_WorkflowProcessor form. Many processes are driven by the workflow engine within Dynamics AX and in a production system, workflow tasks are executed by the"Workflow messaging processing" batch job. However, the minimum recurrence interval supported by the AX batch job infrastructure is 1 minute. If you are doing a demonstration, this means you could wait up to a minute for a workflow to complete. Fortunately, you can open the Tutorial_WorkflowProcessor form that ships with AX from the AOT to speed up the process. In the past, I kept a development workspace open to launch this form. This week, someone gave me a tip to make it easier to access this form.
First, open the development environment and add a new node under AOT\Menu Items\Display. Set the Label property to "Workflow processor" and the Object property to "Tutorial_WorkflowProcessor". Now go to AOT\Menus\GlobalToolsMenu. Add a new Menu Item and set the MenuItemName property to "Tutorial_WorkflowProcessor" (the one you just created). Now, you have easy access to the form everywhere in AX via File > Tools > Workflow processor.
In my last post, I showed you how to set up the new intercompany invoicing for projects feature in the upcoming AX 2012 R3 release. I'll finish by show you how the transactions are actually processed. In my example, I'm an employee in Contoso Consulting USA (SUSB) working on a project in Contoso Consulting France (SFRA). Below is my weekly timesheet:
To keep things simple, I have only recorded my work on Monday for a project in SFRA. My timesheet could have a mix of SFRA and SUSB projects. After submitting my time to workflow and posting the approved timesheet, let's take a look at the ledger voucher.
The first two lines of the voucher account for the payroll cost of the employee time and will look familiar to you if you have worked with AX projects. However, note that the last two lines (a 10% markup on the cost) are generated to handle the accrued revenue that will be recognized when SFRA will be billed for the time. Before AX 2012 R2 CU7, this amount would have been posted directly to the contracting legal entity ledger. The next step is to generate an invoice for SFRA. This is done by clicking the New button on the list page Project management and accounting > Common > Project invoices > Intercompany customer invoices.
In this example, I am selecting the single timesheet transaction that I previously posted. You can create an single invoice with multiple timesheets, employee expenses, and vendor expenses. You can also create them in batch via Project management and accounting > Periodic > Project invoices > Create intercompany customer invoices. When I click OK, I can see the resulting invoice.
Unlike a standard project invoice, this invoice is based on the free text invoice in the accounts receivable module. There is an additional tab on the line details where you can see details about the source transaction. The sales price defaults to the one established in the transfer pricing form but can be changed by the user (for example, you may need to negotiate a lower rate with the contracting legal entity). Let's take a quick look at the voucher from posting this invoice.
Two of the lines in the voucher represent the reversal of the the revenue accruals done at time of timesheet posting. The other two lines are the intercompany revenue and receivable customer balance from the invoice posting. In this case, they are the same amount but you could also recognize more or less revenue than originally accrued. Also note that if there are tax requirements on the intercompany labor, they would be represented here.
The other thing that happens when the intercompany invoice is posted is that a corresponding vendor invoice is created in the contracting legal entity. I'll switch over to the other company and find this invoice from Accounts payable > Common > Vendor invoices > Pending vendor invoices. Let's take a look at the vendor invoice.
The first thing you will notice is that this is not an item-based invoice line. It uses the procurement category that we set up previously for the contracting legal entity. The other thing that you might notice is the value of the Project category field in the line details. The category is an hour category (PM), not an item category. We have extended the vendor invoice to support any project category (item, hour, or expense). Finally, notice that the cost price (in USD) is the same that we used on the intercompany customer invoice. The sales price (in EUR) is based on the sales price setup in the contracting company and represents what the project customer will pay.
To wrap up, let's take a look at the project transaction created from posting the intercompany vendor invoice.
As you can see, the costs are recorded against the project in SFRA. The Transaction origin is "Vendor invoice" and the Worker field references an employee of SUSB. If this transaction is for a time and materials project, it is ready to be added to a project invoice proposal.
Since the initial release of Dynamics AX 2012 in late 2011, we have invested a lot to make projects easier to use in multi-company scenarios. In the 2012 feature pack, we enabled users to report time against projects in other legal entities. In the R2 release, we added the ability to resource projects with employees of other companies. In R3, we are taking it one step forward and enabling legal entities to invoice each other for time, employee expenses and vendor expenses. This is especially important when a company has subsidiaries in multiple countries and has tax liability for sharing resources. In R2, intercompany cost and revenue was handled through ledger transactions in both companies at the time when the cost was recorded. The process in R3 allows for companies to adjust the amounts charged between companies and aligns the timing of the intercompany revenue in the resourcing company with the revenue accrued in the contracting company.
Below is an overview of the intercompany project invoicing scenario in R3:
In this scenario, the project and contract with the external customer is being run in the US legal entity (the CLE or contracting legal entity). Resources in the 2 RLEs (resourcing legal entities) enter timesheets against the project in the CLE. However, there is no intercompany revenue or cost recorded immediately. Instead, the RLEs periodically generate intercompany invoices for the CLE from the time and expenses recorded by the employees. When this IC invoice is approved and posted, it generates a corresponding vendor invoice in the CLE. When this vendor invoice is posted, the cost is recorded against the project in the CLE and can be invoiced to the external customer.
Let's start with the setup required to get the process configured.
First, make sure you have an intercompany trading relationship between the legal entities. This means that you have a customer record for the contracting company in the RLE and a vendor record for the resourcing company in the CLE. On either record, you should go the general tab and click on Intercompany. Here I've set up a trading relationship between SFRA (CLE) and SUSB (RLE).
Next, you will need to enable intercompany in the resourcing company. This is done in the Project management and accounting parameters form. First, check the option to have the legal entity property show up on timesheet and expense report lines. The for each CLE, you need to add a record to indicate whether to accrue revenue before invoicing. You also need to specify a default hour and expense category to handle cases where the two companies do not share project categories. Project categories are important as they are used to drive item tax groups on both sides.
You will then specify the ledger accounts used for posting the intercompany cost of loaned resources and the intercompany revenue received. This is done in Project management and accounting > Setup > Posting > Ledger posting setup.
Next, set up transfer pricing between the companies. This is done from Project management and accounting > Setup > Prices > Transfer price.
In previous releases, you had to specify an hourly rate for each employee in the RLE that you wanted to make available. In R3, we've added six transfer pricing models. There are four models for a fixed amount or based on the cost price. These work the same way as the project hour sales pricing models:
- Contribution ratio
- Charges percentage
- Charges amount
There are also two models based on the final sales price for the external customer in the CLE. These models allow you to base RLE revenue on the amount that the CLE will charge:
- Percentage of sales price
- Amount below sales price
Finally, you will need to make sure you have set up the hour unit of measure. This will be used when the vendor invoice is generated in the lending company. Click Organization administration > Setup > Units > Units and make sure there is a unit in the list with Fixed unit assignment checked and the Fixed unit dropdown set to “Hours”.
That's it for setup. Next time, I'll walk through an example transaction flow.
As I mentioned before, we made some improvements to project budgeting in AX 2012 R2 CU6 and CU7. We've got a few more coming in the upcoming R3 release. The first is a new option in the import form. As shown below, you can now import budget values directly from WBS estimates. Previously, you first had to copy the WBS estimates to project forecasts and then import them into the budget. This new option combines the two steps into a single one.
Note that this new option works in both the original budget as well as the budget revision form. This makes it very easy to update your project budget with changes from the WBS.
In addition, we have added quite a bit of functionality to the project budget balances form, as seen below.
Previously, the budget balances form summarized budget vs. actual values into a single line per transaction type (hour, expense, item). You now have the option to summarize actual and budget in three ways: by category, by category group, or by cost template (shown above). Combined with the new effort and cost tracking views of the WBS, these new budget views make it a lot easier to track financial performance of your projects.
In the upcoming AX 2012 R3 release, we are making a few improvements to the project contract list page, as shown below.
The first thing you will notice is the legal entity filter on the right side of the list. This is similar to the filter that we added to the projects list page in the R2 release. This means that the project contracts list page has been made a cross-company query. This means that you can track the status of your contracts in all the companies you have access to. Unfortunately, you still have to switch companies in order to create a new project contract but once it is created, you can create projects and invoice proposals without having to change company contexts. You will either get a flat list of legal entities or a hierarchical list based on the organization hierarchy assigned the "project management" purpose in the organization administration module.
Next, you will see the filter on the left that lets you switch between "active" project contracts and all project contracts. Active contracts are defined as contracts with at least one non-closed project, helping you to determine which contracts need to be invoiced.
Finally, you will see that the preview pane at the bottom of the form now shows any billing rules associated with the selected contract. In R2, it showed the associated projects, which were already displayed in one of the factboxes on the right. Although billing rules are not required on a project contract, they are very valuable to see as they will drive the invoice creation process.
Planning on coming to the Dynamics AX Technical Conference in Bellevue, WA on February 3-5, 2014? If you are willing to stay a few extra days then mark your calendar for a post-event workshop for Microsoft Dynamics AX functional consultants working in service industries (professional services, construction, engineering, accounting, advertising, etc.) This will be a deep dive, hands-on, scenario-based workshop where you will learn how to put the Dynamics AX 2012 R3 feature set to work in project-based businesses. Plus, you will get to hear about the latest improvements and changes directly from the product development.
More information available here. Registration pages are still being finalized and should be available by early December.
Over the next few weeks, I'll be reviewing some of the improvements we made to Project management and accounting in the Dynamics AX 2012 R2 CU7 release. I'll start with the newly revamped Work Breakdown Structure (WBS) template editing experience:
The first thing you will notice is that you get a full collapsible, hierarchical grid rather than the tree control we used in the previous release. This allows you to see much more of the project plan at once. You can easily expand or collapse the grid with the Expand to Level button in the ribbon. The shaded rows in the grid are summary rows where you can see how the effort hours are totaled at each level.
Moving tasks around in the hierarchy is easy with the Move up, Move down, Indent, and Outdent buttons. You will also see that you get automatic WBS numbering based on the level in the hierarchy. Moving rows up or down or indenting or outdenting will maintain the numbering.
In this example, I'm using automatic scheduling. This means that it will calculate the task duration given the effort and number of resources assigned. You can turn automatic scheduling off if you would like to override this behavior.Since this is a template, the start date and end date are not specified. These will appear once you import the template into a project.
In addition, we have added support for specifying predecessors. Each task can have one more more predecessor tasks. You will see the impact of these tasks when you import the template into a project and have the start and finish dates automatically calculated.
Down below, you will see a set of fast tabs with properties of the selected task. One of these tabs contains the Estimated cost and revenue for the task. The nice thing is that hour transactions are automatically generated based on the WBS elements above. In this example, the 60 hour task in the category of ERPDev automatically keeps in sync with the estimate line below. You can add additional estimate lines that are not affected by the task properties. In the example above, I've added an Item and Expense transactions that are attached to the task. Later, when you import this template into your project, you can push these estimates into project forecasts or budget.
Hopefully, these improvements will make it easier for project managers who would like to use built-in Dynamics AX functionality to edit their WBS. In a future post, I'll talk about the ability to edit your project using Microsoft Project.
I just got back from Barcelona where I was attending Convergence EMEA. I presented two sessions, Microsoft Dynamics AX 2012: Project Management and accounting and Microsoft Dynamics AX 2012: Increasing productivity for project-centric organizations with mobile solutions and Microsoft Office interoperability. For both of these sessions, I previewed some of the features that are coming in the Dynamics AX 2012 R3 release. For those of you who were not able to attend, the session content should be available in a few days to everyone that registers for the Virtual Conference here.
I'm very excited to announce that we have released Dynamics AX 2012 R2 Cumulative Update 7 (aka CU7) to CustomerSource and PartnerSource. This is the third CU released for Dynamics AX 2012 R2 (we skipped 2, 3, 4, and 5 to align with AX 2012 RTM CU numbering). For users of Project Management and Accounting, there is a lot of new functionality that will give you a head start on the new capabilities arriving with the R3 release early next year.
You can get an overview of new functionality here: http://technet.microsoft.com/EN-US/library/dn527160.aspx. Here is a high level list of features:
- Use Microsoft Project (client) to create or update a Microsoft Dynamics AX project plan.
- Use Microsoft Project (client) to create or update the work breakdown structure (WBS) for a Microsoft Dynamics AX project quotation.
- Create a WBS template for Microsoft Dynamics AX by using Microsoft Project (client).
- Use Microsoft Project (client) to integrate Dynamics AX projects with an Office 365 SharePoint project site.
- Expanded support for working with project teams, defining project role types, and managing project resources.
- Expanded support for managing worker assignments and capacity in projects.
- Enable audit trails on timesheet entry.
- Improved creation of project Work Breakdown Structures (WBS).
- Improvements for creating project Work Breakdown Structure (WBS) templates.
- Improved creation of project budgets and budget revisions.
- Intercompany invoicing for project costs (time and expenses).
I encourage you to download the release and post your feedback. Over the next few weeks, I will dive into these areas in more detail. For now, I'm headed to Convergence EMEA in Barcelona. Hope to see you there.