Going with the (Work)flow Editor

For a D365 F&O end user, workflows are pretty natural. You fire off your purchase order and it lands in the approvers’ job list ready to be approved, modified or rejected. It’s a straightforward and integral part of any mature ERP solution. 

But what pain do us consultants and administrators go through to make that process work so smoothly?! I give you… the Workflow Editor.

Accessing Workflows

The option to view/edit workflows is found in the Setup section of the applicable module menus, e.g. Procurement & sourcing > Setup > Procurement & sourcing workflows. If you can’t see this menu item, your user account does not have the relevant permissions.

The workflow editor will open when you create a new workflow, or click to edit an existing one (or just wish to view it). The workflow editor launches as a separate “ClickOnce” application, which you’ll need to login to with the same Microsoft credentials as your D365 F&O environment.

N.B. You’re also restricted to Microsoft Edge for running the editor.

Let’s have a quick look at the editor itself, alongside some of the functionality in the workflow editor using a basic purchase order workflow. 

Workflow Editor Interface

  1. Workflow workspace 

This highlighted yellow area is where you can drag and drop your workflow elements, form connections and build the flow. For larger workflows with a lot of elements and branches you can extend the workspace as needed. There will always be a Start and an End point. 

  1. Elements 

These are the available elements for the current workflow type. These vary from workflow to workflow, but always have standard controls such as conditional decisions and subworkflows.

  1. Taskbar 

The taskbar provides another means to configure each workflow element; the other option being simply double-clicking on the workflow element in the workspace. Either way, the dialogue box gives control over settings for the element, such as custom notification messages, assigned users, and escalation rule, which I’ll cover in more detail in the next section.

The taskbar also allows you to cut/copy/paste/delete workflow elements and show/hide panels in the interface.

  1. Validation panel 

This provides a list of errors and warnings about the current workflow. You will not be able to activate a workflow with any errors.  

Building the Elements

Conditions

Conditions are the main elements you need to create different branches of your workflow, ensuring that the approval ends up in the right place. Below you can see the conditions form alongside a completed workflow:

You can set any number of conditions using fields from the purchase order form. In this instance, I’ve created a workflow that checks if the workflow is <£500 in value, or if it is intercompany. In either case, the True path goes straight to End and it auto-approves itself. If the purchase order is more than £500, then we have a manual approval step before connecting to the End point.

Approvals

This element is one of the most important parts of the workflow as it dictates who is approving the workflow, and the standardised instructions you send to the approver.

Within the properties of the approval you can set assignment and escalation criteria. Popular choices are to assign workflows to specific user groups, i.e Procurement managers, or to use the company hierarchy to send the approval directly to the submitters manager. Escalation and time criteria can also be added which will reassign based on more criteria.

Multi-step approvals are possible when required and can be added by clicking into the approval element and adding new approval elements.

Link Other Workflows

In some cases the workflow editor will be able to link to other workflows. In the first image you can see there is an element for a purchase order line workflow. If a purchase order approval first relies on approval of each line, then this element can be added to complete the line workflow for each line before continuing the purchase order flow.

The other option is the subworkflow element. Some workflows can get very large, especially in companies with lots of legal entities and approvers. In this case it is useful to create multiple smaller workflows and link them together using this element. The workflow editor can become painfully slow if too many elements are used in one workflow (which I’ve learned the hard way in the past!).

Other elements

  • Manual decision: if a manual step is required to continue the path of a workflow this can be used. The user will need to select which path the workflow will take.
  • Parallel activity: if the workflow needs to follow two paths at once, this can be used, i.e if you’d like two independent approvals and not consecutive.
  • Tasks: used if there are elements of a PO that an assigned person needs to complete before sending it for approval.

This is just a brief look into the workflow editor. There are lots of options for your business to get approvals in the right places, however… try not to overcomplicate it!

A Multi-Currency Conundrum for Purchase Requisitions

One of the things I personally love about working with D365 F&O is that the product is so huge, there’s always something new to learn.

This week, I was on a call where a client asked what would happen if a member of their team tried to create multiple purchase requisition lines with different currencies?

You might ask, who does that?! But it was a fair question, as one cannot be too careful with our beloved users. I’d never tried, so it was time to find out!

Exhibit A

The following screenshot shows four lines for two different currencies, GBP and USD. This was to check normal behaviour in all other respects:

Exhibit B

And lo, once approved by workflow, the system created two separate purchase orders from our original purchase requisition – one for the GBP lines and one for the USD lines. Result!

Change Management in ERP Projects

Naturally when implementing a new ERP solution the focus is very much centred on the technology and solution. However, no matter how technically capable a system is or how well it aligns with your ‘to-be’ ways of working, failing to recognised the importance of change management can result in significant project and post go-live issues for businesses.

In the most extreme cases this could result in a complete project failure.

What is it?

According to Prosci Inc©,”Change management as a discipline has evolved and matured over the past quarter of a century. Prosci research tells us that for changes to be successful, we must prepare, equip and support individuals moving through changes so that they successfully adopt the changes. Without adoption, changes will not be successful and we will not deliver the desired outcomes.” 1.

I’m sure you’re nodding your head in agreement, but how does this relate to your ERP implementation project and what should you be considering when looking to embed change management into your team.

Timing

Change management should not be a mid-project activity. It should be in place and operating from day 1 and should continue post go-live. An ERP project is not a typical BAU activity for most business users and the need for their involvement from the beginning e.g. requirements capture/discovery etc, is new. Failing to recognise that even the early stages of a project has a change impact on business users can result in resistance, manifesting with a reluctance to attending meeting, lack of prioritisation and a general lack of engagement.

Leadership

Humans are naturally resistant to change. Articulating the need for change and the benefits of change is key to gaining engagement with the business users. This needs to be pushed from the top-down with leaders advocating for the new ERP system, articulating why this strategic decision is being made and highlighting the benefits of success.

In addition to this is the need for business change champions. The leadership team may not always be visible, be easily accessible or the most appropriate individuals to understand what its like for people on the ground. Change champions can provide that department level change leadership, but can also act as an advocate for the business users so that they feel part of the process and can gain comfort that their issues/concerns are being heard.

Communication

A lack of, or poor, communication can sow mistrust, conflict and lack of morale amongst your business. The impacts of these side effects when is comes to change management could be terminal for your project. Clear, regular and transparent communication is a significant enabler for change adoption. An internal comms plan to ensure all business users are kept informed in a consistent and timely manner is key.

‘Good’ Change Management Principles

Now that we’ve covered off some of the key areas to enabling effective change management, what does ‘Good’ look like? What should you expect to see as a project sponsor from your Project team, specifically within the change management workstream?

A clear change management strategy

This should include, but not be limited to:

  • Stakeholder mapping – ensure your business stakeholders are identified and understood to ensure the impact of changes and any supporting communication will be relevant to them
  • Communication plans – Covering regular and consistent updates across the organisation and addressing questions that may arise. Openness is key.
  • Change impact analysis – Assess and understand the impact the upcoming system and process changes will have on different areas of the business and even different user groups within those areas. This will inform both the communication, transition and resistance management plans
  • Resistance management plan – Resistance will be inevitable, defining how this will be handled in advance will ensure the necessary resources are available (e.g. training, support etc) to allow employees to adapt to the change

Change Champions

Trust is a critical when it comes to users accepting and adopting change. This can be difficult to embed when having change activities led by new or external parties. Change champions are valuable in overcoming this challenge. They should ideally be representatives from across the various departments being impacted by the change (see change impact analysis, above) and be able to act as an advocate for the end users. This role often forms part of a broader project role, such as a subject matter expert, as these individuals are trusted to both understand the business and user requirements and will already have the relationship and communication channels in place to facilitate change.

Employee Involvement

Although expected to be addressed in part by the communications plan within the change management strategy, having a focus on how employees can and will be involved in the change will support its likelihood of success. Providing regular updates and open communication is part of this involvement but ensuring employees are able to raise questions, have clarity on their project involvement, can easily access project information/updates and also have a long term view of the impact to them e.g. testing windows, training sessions etc, will all increase the likelihood of users adopting the change.

Celebrate Milestones

Lastly, but by no means least, there should be a plan for milestone celebrations. Milestones may follow the project phases e.g. successful testing phase, or may be unique to the business, but it is key that the any and all project successes are celebrated. The perceived scale of the milestone will likley infer the level of celebration required. However, ERP system implementations are one of the most demanding and strenuous activities a business can place on its employees so having both a plan, and potentially a budget, to celebrate these milestones is great mechanism for fostering and maintaining change adoption.

This is by no means a comprehensive strategy on how to approach change management during an ERP implementation and is intended to call out both its importance and some of the key components to consider when establishing this workstream within your project.

  1. https://www.prosci.com/change-management ↩︎

Have you lost a data entity? How careless!

I was working in a new environment recently and realised I couldn’t find a specific data entity that I needed. I knew it existed, so where was it?

I checked under Data entities in the Data management workspace, and it was still nowhere to be seen:

Then I remembered a valuable function that all D365 F&O consultants and system administrators should know about: Refresh entity list.

Of course, I made sure to grab some screenshots on the way for a quick blog post!

Framework parameters

The function isn’t particularly obvious if you don’t where to look. You need to go to Framework parameters, which by default is located in the middle of all the tiles on the Data management framework:

Once on, go to Entity settings, and there you’ll see the button to “Refresh entity list”:

Please wait…

When you click the button, you’ll get a friendly blue banner informing you that a batch job has been triggered.

Head over to Batch jobs in the System administration module menu, and lo, you’ll find the “Refresh entity list” batch job executing:

You’ll be in for a wait now – probably about 15 minutes – so you might as well go and grab a cuppa.

When you return, check the batch job has ended, and return to the Data management workspace to find all your entities restored!

Unlocking the Secrets of D365 F&O: System Table Browser

Here it is – the System Table Browser! What is it and why should you care? Read on!

Now, let’s be clear, if you’ve been specialised in D365 F&O for more than ~12 months, you already know this (I would hope), but bizarrely, this powerful feature is tucked away in the documentation, so seems to rely on word-of-mouth for people to learn about it.

This post will talk about how to access the System Table Browser, and what benefits it can bring your work.

How do I get to it?

Our first lesson…

(Thanks Boromir.)

You need to know what you’re doing in a browser address bar. Look at the address bar of your D365 instance – it will look something like this:

https://xxxdevaos.cloudax.eu.dynamics.com/?cmp=gbsi&mi=CustTableListPage

Note the section that I’ve highlighted – this is called the URL query string, the start of which is denoted by the question mark. After that you can see two variables; one is ‘cmp’ (company) with the value “gbsi” and the other is ‘mi’ (menu item) with the value “CustTableListPage”, i.e. we’re looking at Customers form in the GBSI legal entity.

This query string is what we’re going to edit. We’re going for something like this:

https://xxxdevaos.cloudax.eu.dynamics.com/?cmp=gbsi&mi=SysTableBrowser&TableName=CustTable

This will bring up the System Table Browser for Customers in GBSI, exactly as per the screenshot at the start of this post. Note that the name of the table is normally a derivative of the name of the form, rather than the form name.

There must be an easier way?

OK, full confession, there is an easier way! It does help to know the manual route in, just in case you’re on another laptop or login profile – or work for an organisation that blocks browser extensions – but there is a fantastic tool called “Table Browser Caller for D365 F&O“, which can be added to Microsoft Edge or Google Chrome.

Once added, you can see the same editable components of the URL query string, with the benefit of a GUI, like this:

Screenshots of the “Table Browser Caller for D365 F&O” Chromium browser extension

Why do I need to know about it anyway?

There are a number of benefits and use cases for the System Table Browser. Let’s make a list, in no particular order:

  • Provides insight to a table schema, e.g. allows you to identify fields and values that may not be immediately obvious if you’re trying to add a field while personalising a form or grid view
  • Allows you to view and edit all table data (with correct permissions) directly in the table (depending on the environment tier, e.g. this isn’t possible in production)
  • Same interface as the rest of D365 F&O, with the same inherited security permissions
  • Facilitates quick access to data for troubleshooting or debugging
  • Validating data, e.g. comparing expected vs actual after a migration load
  • Export the entire contents of the table to review in Excel, making it much quicker that DMF for single entities
  • Set up custom alerts that can’t be produced via the standard menu item
Screenshot showing a custom alert being created for a table in the System Table Browser

All together now… working across multiple companies

The post last week about posting Global general journals from one entity was part of a wider thought process for a client relating to working across regions (i.e. groups of legal entities) and globally (all legal entities in an environment).

Take an example, whereby a user needs to create a new fixed asset1, one for each of ten companies in the system which represent a region. At face value, D365 F&O struggles, with the only obvious approach being to login to each company and create the requisite asset.

Sure, we could use DMF, but that’s not practical for the everyday user. We could use an ISV, if we have endless budget for additional licensing and support costs.

If only we could add the Company field as a column, and clear any filter on it. Yes, if only that was possible…

(It’s not.)

Go on then, how?!

The oh-so-easy answer is the Excel Add-in. When you use the Open in Excel option, you’ll note the name of the relevant data entity with the current legal entity filter in brackets:

And as you’d expect, once the Excel sheet loads, you will see all the Fixed assets for the current company:

Now the clever bit…

If you click the Filter option, you’ll see that the Add-in has applied a filter based on the current company. Clear it!

Now, if you click Refresh, you’ll be able to see all fixed assets globally across the system, or at least, within the legal entities you have permission to access.

Do not try to add any fixed assets at this stage! You won’t be able to, because the Publish button won’t work.

You need to modify the design of the Excel template, to add the Company column – exactly what the main interface prevents us doing. Click on the pencil icon next the name of the data source (Fixed assets V2 entity). Find the field for Company and click Add, to move it to the Selected fields:

Once you click Update and Refresh the table, the Company column will be added and populated:

And bingo, now you can add fixed assets, to multiple companies simultaneously, to your heart’s content.

Any other tips?

A few other bonus tips to make your Excel Add-in experience a bit easier…

  1. You can save the Excel workbook you’ve just created and use it whenever you need to, i.e. you only need to follow these steps once!
  2. This applies if you’re working across multiple environments too, because if you click the gear icon at the top of the connector, you can change the URL of the environment you’re working in:
  1. If you ever have a clumsy moment and click the X to close the pane for the Microsoft Dynamics Office Add-in, don’t panic – there is no need to re-download or re-open the file! Simply go to Home > Add-ins and the Add-in is waiting patiently there to be re-opened:

Conclusion

Hopefully this post has highlighted some of the wider functionality of the Excel Add-in for D365 F&O that you weren’t previously aware of, as well as giving you a readier means of performing bulk updates across companies without DMF or ISVs.

Perhaps I should have called the article, “How to do more with the D365 Excel Add-in”, but given there’s still more to cover, I’ll save that title for another time!

  1. Of course, some data entities are more global-friendly than the likes of Fixed assets. Examples include Parties (in the Global address book) and Products (before they are made Released products in companies as required). ↩︎

Dimensions and tags: how do I choose between them?

Since the long-awaited and welcome release of financial tags in 10.0.32, and ongoing improvements, the new omnipresent question that now appears on every project is: should we use a financial dimension or a financial tag?

Tags or dimensions? The new perennial

To their credit, the team have done a decent job of comparing financial tags and financial dimensions in this Microsoft Learn article, but I’ve always felt it could be made a bit clearer.

For this post, I’ve made an infographic and a streamlined version of the comparison table. Please feel free to use them to help your decision-making process, but always refer to wider documentation and your Microsoft partner/contract experts for guidance.

It’s infographic time…

Here we go! Boiled down to no more than four key questions, this infographic offers a decision-making flowchart to determine whether your supporting ledger data requires use of financial tags or financial dimensions.

We think it covers most bases and hopefully you do to! Constructive feedback, as ever, is most welcome:

This work is licensed under CC BY-ND 4.0 . As per the licence, please feel free to download, re-post and re-use this infographic, but please do not modify it.

Also available to download in SVG format.

And the bonus prize

Secondly, as promised, here’s a more streamlined version of the table on Microsoft Learn:

FunctionalityFinancial dimensionsFinancial tags
Account structures and validationDimensions must be included in an account structure, to determine valid combinations for each main account. Values must exist in order to post.Tags operate independently of account structures and are not validated during entry or posting. It is not possible to mandate a tag value and new/incorrect values are automatically saved.
Defaulting1Default dimension values are pulled from master data, such as customers, suppliers, or products.Default tag values are not pulled from master data.
Reporting2Dimensions can be included in a dimension set, which is used to calculate totals for the ledger account. Account segments can be parsed out, and used to sort/filter the detailed transactions.Tag values aren’t included in dimension sets and you can’t generate a trial balance to view balances for tag values. On drilling down, tag values are visible in separate columns and can be sorted/filtered.
Impact on General ledger processesAlthough dimensions are considered unlimited, the more dimensions that are created and used in a dimension set, the slower transaction entry, import, and processes will become.Because tags have no structure or validation, there’s minimal impact when they’re used on transactions or imported via an entity.
Unique valuesDimensions should only be used to track values that are reused. Extensive unique dimension values will significantly affect system performance.Tags should be used if you are looking to track unique values, such as document numbers or reference numbers.
Activate or deactivateOnce activated, Financial dimensions can’t be deactivated. They can only be removed from an account structure, so that they’re no longer used in future.Tags can be activated or deactivated at any time.
DeleteDimensions can’t be deleted if they’re referenced anywhere, to maintain referential integrity.Tags can’t be deleted, but can be deactivated at any time. If a tag references an entity for a list, no reference to that entity is maintained.
Ability to edit after postingDimension values can’t be edited on posted transactions, because this would directly affect financial statements.Tag values are used only for internal analysis and processing, so can be added, removed, or edited on posted transactions (using the Edit internal voucher data). An audit trail is maintained for edits made to posted tag values.
Global or legal entity specific?Dimensions are set up globally and “assigned” to legal entities through account structures. Dimensions also have legal entity overrides.Tags are set up at the legal entity level. They can be shared by using the Shared data feature. The tags and custom tag values can be manually copied to each legal entity via DMF.
  1. Both dimensions and tags will default from a document header to the lines, and for journals, they pull from the journal header to the account, and from the account to the offset account. ↩︎
  2. Values for both tags and dimensions can be viewed on each detailed transaction after drilldown. Detailed transactions can be exported to Excel or Power BI. ↩︎

One at a time… batch posting journals across entities?

Imagine having hundreds of journal lines to import that need posting across multiple legal entities. Now imagine having to log into each legal entity one-by-one, to post the journal lines for each entity.

Clearly that is unacceptable for anything over a couple of lines and/or legal entities!

Until relatively recently, it was only possible to create a Global general journal, i.e. a General journal for another legal entity, within the current/active legal entity.

A relatively new piece of functionality now allows you to post Global general journals in batch. Check out the relevant entry in the Feature management workspace:

How does it work?

We begin in General ledger > General journals > Global general journals. From there, choose New journal, select the company you’re looking to post to, and the journal name (i.e. type).

In this screenshot, we’re currently in the GBSI legal entity, creating a Global general journal for USMF, with the journal name “General”:

The journal will be numbered with the next value in the series from the USMF “General” journal number sequence, not any number sequence from GBSI. Good start.

You can then populate the journal exactly as you would a normal general journal, either single entry (with offset) or double entry, taking full advantage of the ability in D365 F&O to select different account types (Ledger, Customer, Supplier, Project, Fixed assets, or Bank) and access/use the data from the corresponding legal entity:

With your Global general journal(s) created, it’s now time to post them, in batch, still without changing legal entity. This is the critical functionality introduced in release 10.0.34:

Posting your Global general journal creates a batch job in each corresponding legal entity to finalise the posting of the journal there. Result!

N.B. If the Post button is greyed out, it’s because the feature isn’t enabled in your environment – check back to the start of this post!

But what about the hundreds of lines…?

In real terms, you probably don’t want to be doing this manually. I’d conject that it’s more likely that you’re trying to post a large volume of lines, so you will be better off using the Open lines in Excel feature:

It occurs to me – and I haven’t had the chance to try this – that it might be possible to build an Excel template that populates multiple journal batches simultaneously – that experiment will have to be for another day!

What does it not do?

It is important to point out that this functionality does not permit users to post a journal batch with multiple lines for different legal entities (aka companies). This requires intercompany posting configuration, which whilst perfectly achievable, is not the outcome we’re seeking to achieve here.

In the screenshot below, you see lines for USMF (and GBSI) in a GBSI-linked Global general journal. This will not post (without appropriate intercompany configuration):

It is also well worth mentioning that the ability to create journals and post to other legal entities is dependent on the user having the relevant permissions in those legal entities.

Assembling your project dream team

“What should our project team look like?”

It’s a good sign when a business about to undertake a D365 F&O implementation asks this question.

The fact is, selecting and contracting an implementation partner (aka system integrator) is only one part of the puzzle when it comes to getting underway with your project. Successful projects require an investment of people and time from the business as well.

To be clear, this is not about trying to do the implementation in-house; that’s a whole different (and potentially high-risk) approach. Rather, this is about collaborating properly with your chosen partner, and ensuring they have all the information they need to make your project a success.

This is best achieved with a combination of:

  • ambitious, knowledgeable, and change-minded secondees from the core business, ideally on a full-time basis; and
  • experienced contractors, who bring knowledge of both the D365 F&O platform, and the implementation lifecycle.

But how many people do you actually need? And what sort of skills should they bring? Let’s look at three different scales of implementation to consider some ideas for resourcing:

Small scale

Of course, there’s no straightforward, cookie cutter answer to this question, because teams depend on the individuals that they comprise, and by their very nature, individuals bring different knowledge, skills and experience.

However, if we start with a team for a simpler implementation for a smaller business – with a total budget around £2m or less – we might reasonably expect to see the following full-time roles:

Project manager

Recognised today as a critical component to any initiative that is not “business as usual”, a project manager holds the team to account, and focuses everyone’s minds on the project’s tasks and objectives, guided by the project management triangle; the critical balance between time, cost and quality. They are accountable to the project sponsor.

Product manager / Solution architect

This individual can go by many names, but the principle is the same; they are responsible for owning the solution as a whole. This means full understanding of all integrations and cross-workstream aspects, together with one eye on the product roadmap and another on the key focus areas of each workstream. A product manager might be accountable to the head of IT.

Business process owners (BPOs)

These key individuals represent each of the operational pillars or workstreams of the business. Depending on the business, this might include procurement, finance, HR, projects, or manufacturing. Regardless, they should be acutely aware of the unique challenges of the business and should either be the subject matter experts themselves, or well-connected to the people who are. Business process owners commonly evolve into trainers and/or super users as a project goes live.

Remember these are all full-time client-side team roles, who should be prepared to work with the implementation partner, on behalf of the business. They should also be expected to interface with IT colleagues, nominated testers, and other such part-time project members.

The middle ground

We’re stepping up a gear now, with a model for a medium-sized project, maybe with a budget circa £5m. Here are some of the additional client-side roles we can start to expect in a project for a bigger business:

Project support officer

The bigger the project, the bigger the task to manage it – even the best project managers need help! This role may be another individual, or it may be a centralised PMO with standardised tools and processes. As a rule of thumb, 20% of your overall project team should be P3M resources.

Change manager

The bigger the project, the more impact it will have on business as usual when it goes live. The inclusion of a professional change manager will ensure that key areas of impact are correctly identified and communicated to the wider business.

Technical lead / Integrations manager

In the smaller scale implementation, this responsibility sat with the Product manager / Solution architect, but larger implementations typically mean more integrations, calling for a dedicated lead for this area.

Data lead

In the smaller scale implementation, this critical area might be shared between the Product manager and BPOs. A specialist becomes more important as the scope increases and hence the volume of data.

Test lead

This might be a part-time role or just reside within the Project manager’s remit on smaller projects. For our medium-sized model, expect a dedicated test manager, who instinctively understands all the phases of testing, as well as areas like accessibility and non-functional concepts.

Training lead

If you’re looking for a compromise, the responsibility for the training of all your staff on the new system could be owned by your Change manager, in conjunction with the BPOs. However, a dedicated training manager will bring the discipline of training needs analysis, and learning design, as well as having a finger on the pulse of the best new ways to impart knowledge.

Although the organisation chart doesn’t reflect it, there’s a strong case for splitting the Solution architect and Product manager roles at this scale, as the remit grows.

N.B. I’m conscious that reporting lines can be very subjective, especially in “non-hierarchical” organisations. The mapping here is purely indicative of what might be.

Full enterprise

We’re now entering the territory of big businesses, such as listed companies and/or global corporations, with project budgets well into double figures. There’s no sample organogram here, because the options are just too many and varied.

Programme director

Going by the book, a programme is a group of projects with a common purpose, not just a large project. Nevertheless, when an ERP project gets to a certain size, there is a tendency to start calling it a programme. In our large scale team model, this role is the new head honcho, potentially reporting directly to the board.

Project managers

We can now expect to have multiple project managers, which correlates somewhat with the concept of having a programme director. Each project manager in our large scale implementation will likely have responsibility for different areas, be that countries, workstreams, or even individual process areas.

Integrations team

At this scale, our technical lead needs more hands, so their team might have responsibility for certain named integrations or specific technologies.

Data team

Similarly, the volume of data in a project of this size can be astronomical, so sharing the load of different datasets across a team is beneficial, given the number of ETL rules and data fields to be understood.

Training team

When we reach enterprise scale, there is value in having dedicated trainers. These might be aligned to specific workstreams, or have specific training disciplines, such as elearning developers.

Security lead

Security is a huge topic in D365 F&O (and ERP in general), so when you’re operating at scale, it can be prudent to include a lead in this area, to ensure the whole team are keeping access controls and segregation of duties in mind.

Conclusion

There are no hard and fast rules when it comes to building your in-house team for a D365 F&O implementation project, but if there were to be a rule, it would be to absolutely ensure you do have a comprehensive in-house team.

Would you instruct a painter to decorate your home, but not even tell them what colours you do and don’t like. Of course not! You’d get swatches, try testers, and keep a keen eye on the overall progress.

A useful rule of thumb that I like to work by, is aiming to mirror the partner’s resourcing on a near one-to-one basis.

Be sure to consult multiple sources, including your implementation partner, to determine the right approach for your project – and as ever, be prepared to change as the project progresses and the landscape evolves.

…If you have a problem, if no one else can help, and if you can find them, maybe you can hire… the A-Team.

John Ashley’s opening narration to The A-Team

Show me my money! Configure the new D365 Expense Mobile App

An element of uncertainty has existed ever since Microsoft announced the deprecation of the D365 F&O mobile workspaces. Yes, I know this was a long time, but until recently some questions remained unanswered. We could make assumptions with a high degree of assurance, but if you’re like me, you want to get your hands on something and see it for yourself before backing the horse too heavily. One of those questions finally answered, with confidence, is the replacement solution for the D365 Expenses Mobile Workspace.

What is it?

The D365 Expense management mobile app is a pre-built canvas app, leveraging OCR receipt scanning, that integrates to F&O using virtual entities on Dataverse. It has been in public preview since mid-2023, and GA since late 2023.

One thing I think it is worth clarifying at this stage is the misconception that a D365 Project Operations install is a pre-requisite for this solution, this is not required. (Despite Microsoft Learn implying this is the case with the route paths of the documentation).

Setup

There are certain system pre-requisites that need calling out first. Current Microsoft documentation states that the following system versions and associated quality updates:

  • 10.0.37 – 10.0.1725.171 or later
  • 10.0.38 – 10.0.1777.127 or later

However, the configuration steps and setup validation in this blog post were performed on:

  • 10.0.39 – 10.0.1860.72

The other major pre-requisite for the following is the presence of a Dataverse environment linked to you F&O instance. By default; all F&O environment deployments receive an initial Power Platform environment, but importantly this doesn’t include Dataverse. As such this step may be required if this is the first instance of extending your F&O environment with Power Platform.

Once you’ve validated and/or completed the above pre-requisites then you can crack on with the app setup steps and deployment.

Note – if you have previously deployed the expenses app components as part of the preview release then it is strongly recommended that any pre-existing components are deleted before continuing. Additionally, some of the steps previously required as part of the setup for the preview application are not longer required.

Setup Users

The F&O setup is fairly minimal and, unless you are deploying a fresh instance, is probably not going to be required, but for completeness; users of the app must exist as F&O users, have a worker party association and a default legal entity specified:

Enable Code Components for Canvas Apps

Navigate to power platform admin centre (Power Platform admin center (microsoft.com))

Select Environments>choose the environment linked to you F&O instance>settings>products>features:

Scroll down to the ‘Power Apps Component Framework for Canvas Apps’ and ensure ‘Allow publishing of canvas apps with code components’ is set to ‘Yes’.

Install the D365 expense mobile app

Navigate to App Source to the Dynamics 365 expense management app (https://appsource.microsoft.com/en-gb/product/dynamics-365/mscrm.msdyn_expense_mobile?tab=Overview)

Select ‘Get it now:

You will be taken to Power Platform Admin Centre to complete the process and choose the environment where the app should be installed. Select your chosen environment, accept the various terms, then click ‘Install’

The app will then proceed to be installed:

Monitor the status and once complete, move on to the next step.

Refresh Virtual Entities in Dataverse

Microsoft guidance status that this is an optional step. However, in the interest of completeness I would recommend it be performed to ensure the virtual entities are behaving as intended.

Following the app install, you should perform a refresh action on the following entities:

  • currencyentity
  • expensefieldsvisibilityentity
  • logisticsaddresscountryregionentity
  • logisticsaddresscountryregiontranslationentity
  • dimattributetrvtraveltxtentity
  • trvtravellocationentity
  • trvexpenseparametersentity
  • logisticsaddressstateentity
  • trvaddresszipcodeentity
  • trvexpmobilemasterdataentity
  • trvmileagerateentity
  • trvexpmobilereportapprovalentity
  • trvadmincustomfieldsentity
  • trvexpensecategoryentity
  • trvexpmobileactivitiesentity
  • trvexpmobileaddresscityentity
  • trvexpmobilecompanyinfoentity
  • trvexpmobiledocumententity
  • trvexpmobileexpenseentity
  • trvexpmobileexpensefieldvisibilityentity
  • trvexpmobileitemtaxentity
  • trvexpmobileprojentity
  • trvexpmobileprojlinepropertyentity
  • trvexpmobilereportentity
  • trvexpmobiletaxgroupentity
  • trvexpmobileexpenselineattachedtoreportentity
  • trvexpmobilereceiptattachedtoexpenselineentity
  • trvlogisticsaddresscountryregiontranslationentity
  • trvpaymethodentity
  • trvexpmobileattacheddocumententity
  • trvexpmobileunattacheddocumententity

To do this navigate to power platform admin centre (https://admin.powerplatform.microsoft.com/), select Environments, and choose the related environment to your F&O application:

Click on the ‘Environment URL’ within the details section to open up the Power Platform environment:

Select Setting>Advanced Settings:

Select Advanced filter:

Choose ‘Available Finance and Operations Entities’ in the ‘look for’ filter and select ‘Results’.

Tip – order your results alphabetically by ‘name’ and be careful when clicking through the lists as I found the ‘back’ navigation didn’t operate as expected!

Select the entity, mark the ‘Refresh’ check box and click ‘Save’ to prompt the refresh.

Perform this for all the entities listed.

Grant Access to the Mobile App

Now that all the more technical steps are complete and the app is installed, the final steps are to grant access and share the app with users so that they can interact with it.

To do this sign in to power apps (https://make.powerapps.com/)

Ensure your chosen environment is specified, select ‘Apps’, select ‘Expense Management’ and click ‘Share’:

In the sharing screen add the users you wish to share the app with and click ‘Share’.

User access is granted in Power Platform Admin Centre (https://admin.powerplatform.microsoft.com/):

Select the user(s) and then select ‘Manage security roles’:

Expenses app users must have the ‘Basic User’ and ‘Expense Mobile User’ security roles assigned to fully access and use the app. Select these roles from your list and click ‘Save’. If you are wanting to apply security on a broader scale, then it is recommended to use ‘teams’ to manage this. The following link provides more details: https://learn.microsoft.com/en-us/power-platform/admin/manage-group-teams#manage-the-security-roles-of-a-team

Other considerations

The app looks great, is simple to install and intuitive to use. However, there are still a few minor gremlins that will be worked out over time. One of which being the need for users to reselect their default legal entity within the app, even though its already specified, for the relevant data to be displayed. Broader integration with the wider F&O stack outside of Finance (e.g. project operations), also seems to be work in progress, but all indications from Microsoft are that these items are very much a case of ‘when’ not ‘if’.