Category Archives: D365 Project Service Automation
Cash Position Report for a Professional Services Organization
In this post, I will talk about the importance of the Cash Position Report for any Professional Services Organization. The Cash Position is your current and forecasted ‘Cash in Hand’. The importance of having Cash in your bank account cannot be emphasized enough. It is important to understand the difference between Cash Flow and Cash in Hand as they are not the same. An organization can have a solid cash flow (which is revenue tied up in Receivables), but without money in the bank, it cannot operate. Let me go into this further as it’s the foundation of our conversation here. For any Professional Services organization, anywhere from 60 to 80% of the Monthly expenses are tied to Employee salaries. Paying salaries on time, every month is key to the organization’s credibility. Salaries need to happen on time, month after month, irrespective of your cash flow. They require cash on hand. In addition, any business planning, from HR Activities (a team lunch, an offsite meet) to Investing in the organization’s growth (new areas of business, developing expertise) also requires cash on hand. One more topic that I need to mention is the current pandemic. Many Projects are delayed, cancelled or on hold. From a business standpoint, this kind of unforeseen event can put a tremendous strain on its ability to continue operations. But while the current pandemic is an extreme scenario, businesses constantly face challenges as we operate on a global level (2004 Tsunami, 2008 Financial Meltdown are some recently examples). Cash on Hand can mean the difference between survival and going out of business. So we see that Cash on Hand is a Key Metric and hence should be reviewed regularly, ideally during a scheduled Management meeting on a recurring basis. At CloudFronts, we do this review every Monday morning. Our two and a half hour Monday morning Management meetings are literally run by numbers. Some of the Key Reports we review are Project Overview Report, Team Billable & Non-Billable Allocation Report, Support Metrics, Sales Pipeline, Outstanding Accounts Receivable Report, Forecasted AR Report, Cash Position Report. Each one of these is a PowerBI Report embedded into our Microsoft Teams Leadership Team Group. So what is the Cash Position Report? I will start with a simple equation and then delve into the details – Cash Position = Cash + AR – AP + Projected AR Now let’s walk through each of the Items in there and how we get that data – Cash on Hand – This is what is in your Bank Account when you run this Report (our report is updated every Monday morning before our weekly Management Meeting). We manually enter this data into the Report. AR – AR is your Accounts Receivable which includes all Customer Invoices that are due this month and have not yet been paid. This includes overdue invoices carried forward from the previous month as well. If an Invoice is Paid, then it goes into Cash on Hand. Our AR data comes from Dynamics 365 PSA Contract Invoicing Schedule for both Fixed Bid and Time & Materials Projects. Our Contract Invoicing Schedule is the Single source of truth for all our Project Services Invoicing. AP – AP is all Payables this month, including Salaries. It comes from our Accounting System which is currently QuickBooks Online. Projected AR – Projected Accounts Receivable are any Invoices that we will generate this month and that will be due this month. This data also becomes from our Contract Invoicing Schedule. For Fixed Bid, this is based on the Contract Billing Milestones and for Time & Materials, this data comes from the Team Member Allocations. At the top of the Report, you will see that the report is month wise. Hence as you move into the future months, you have less visibility into AR data, but rely on your Projected AR data. As you move into a month, the Projected AR starts becoming AR, which then becomes cash on hand and typically by the end of the month, Projected AR should be zero. This Report gives the Management Team a clear visibility of the company’s Cash Position over a period of time. For us, we are looking at six months into the future, but organizations can easily set this up for longer periods. By reviewing it regularly, in a scheduled meeting, you ensure there are no surprises and you have time to react well in advance. The benefits of such a report are further amplified when you consider its impact on our behaviour. During the pandemic, our No.1 priority has been to ensure we are a stable organization with the ability to operate through this pandemic. This report can give you that stability and allow you to stay productive and impact your team with a positive state of mind. If you are keen on understanding more about our Internal Systems that keep us running and growing, our Internal Systems page is a wonderful resource – https://www.cloudfronts.com/our-internal-systems/ CloudFronts is one of the leading Microsoft Partners globally on implementing Professional Services Automation on the Microsoft Dynamics 365 Platform. You can reach me on LinkedIn for any questions/queries or email me at ashah@cloudfronts.com
Share Story :
Introducing Microsoft 365 Project Operations – MBAS 2020 Takeaway
Among the fabulous sessions at MBAS 2020 Online Conference, Introduction of Project Operations was the most anticipated for me. Here are my takeaways from the same – Gurkan Salk & Kevin Horlock provided an overview of what to expect for Project Operations/ What is Project Operations? Some key points – Project Operations is an extension of capabilities to existing PSA in Dynamics 365 to a whole new product called as Project Operations. This is a new offering by Microsoft. GA is 1st Oct 2020 Project Operations will utilize the Project based Sales Capabilities including quotation and resourcing Project Management capabilities will run from Microsoft Project and utilize the power scheduling engine it has to offer. Taking capabilities directly from Project for the Web. Will now be embedded inside Project Operations Capabilities of D365 Finance will be utilized for Costing and Invoicing/Accounting capabilities. Better Teams Integration to bring in Project Team Members on a Teams channel to be able to better collaborate. Flexible and easy to use Gannt Chart for Tasks. Clicking on the bars would let us configure the attributes of the Task Resource Manager has all visibility across all Projects. Revenue Recognition in Finance and Operations – Looking into Project And Operations for Outstanding Invoices. Overview of the Revenue Recognition angle of a Project can be over-viewed in FnO. AI to interpret receipts what have been scanned and entered against the Project. When is Project Operations available? General Availability is 1st Oct 2020 Some good QnAs in the session Could Integrate with Azure DevOps.Ans: Won’t be available out-of-box integration, but we can use Power Automate. Planned Integration?Ans: No direct Planner usage. PO and supporting CDSAns: PO will run on Dynamics platform. Will encapsulate PSA capabilities. All PO data available in CDS. Hope this initial info helps and we’ll keep you posted as we approach GA.
Share Story :
First cut review of new D365 Project Service
The new Project Service coming up is a much-advanced version of PSA. Even more, than it will be called as Project Service. We would learn about it and a few features that are exposed to the world shortly in the blog below. How to Install and Basic Requirement? The new project service can be installed on the Default environment of CRM. Now if this confuses you, let me explain. Every CRM environment has a Default CRM Instance associated to it. How to go and check it? Follow the below steps: Step 1: Ensure you have Project Plan 3 or Project Plan 5 license procured. Go to your admin portal and assign the license to your login id. Step 2: Login to https://admin.powerplatform.microsoft.com/ with your admin credentials. Step 3: Click on Environments. Before that ensure you toggle the switch to use “Try new admin centre”. Step 4: On the right-side pane, you will see a default environment mentioned as “Default” in front of the environment name. Click on it to see the URL of the environment. Step 5: Click on the URL to open the environment and below page will appear. Click on Project from the apps that you see. You will be taken the Active Project view as shown below: Create a New Project In order to create a new project, click on +New Project button mentioned on the Ribbon Control. It will ask you for some basic details like Project Name, Project Manager and Calendar Template. As soon as you save the project, the estimated start date comes up as the current date. Next step is the plan the schedule (WBS) so we will navigate to Tasks. As soon as you click on tasks. It will take some time initially for the first time to connect to the project online services and you will see 3 tabs coming as shown below. Let’s look at each one of them one-by-one. Grid This is where you create your WBS, Assign Resources, Set Duration, Predecessor and many more. As soon as the task is created in the WBS. It creates a similar task on the Board (Explained below). Good Thing: a. We can mark the task as complete in new WBS with Project Service which was not the case in an earlier version (PSA). b. It is connected to the new Project Online Services so we can take advantage of the Project Online features right herewith. c. We can manage the project using the board which is much nice a feature. Needs Improvement: a. Here the Duration and efforts are tightly integrated to each other and in case one changes the other too changes. b. Boards should have allowed adding sprints in them, so we could even do Agile Project Management there. 2. Board This is where you can create tasks, to which the resources can be assigned. You can add Bucket (Swim lanes in Azure DevOps) to manage the state of the tasks. It also manages the progress of the task, Remaining effort, etc. 3. Timeline This is the Gantt Chart view of the tasks based on the efforts entered. What’s not available and when will it be available Currently, only the WBS or the Project Planning Module via Project Online is Exposed for General Availability. The sales extension and the invoicing piece is expected to be announced in Feb’2020. This blog reflects my personal findings and based solely on my experience of using Project Service for the last couple of months. For those who are looking for a platform that can track and manage the entire procedures of sales and project management, I would highly recommend them to try new Project Service as guided above.
Share Story :
Overbooking Bookable Resources in D365 PSA v3
Mircosoft D365 Project Service Automation is a product that unites technology, processes, and people together in streams such as sales, billing, resourcing and delivery in a company. Thus, a business can scale up high when they use this particular software. They can complete the project on time and within the budget as a result of using this product from Microsoft. Businesses can accelerate the maturity of their professional services when they use this software. Managing the project becomes easy for the management team and the project managers. Learning and using software is also pretty easy. It does not take a lot of time to master this product. Here are some details of how this software will help your company: While booking resources, you often don’t pay attention to how much capacity the resource has. Or rather, you are aware, but you want to book the resource anyway (only to change later on, which I don’t recommend.) In that case, if you are trying to overbook a resource out of their capacity, you are treated with this message below – Why this occurs? This is because of the Work Hours defined for the Resource. Rather, what Work Hour Template is assigned to that resource. Now, let’s say, you are trying to book someone for 8 hours on top of their already booked 2 hours If you switch to the Hours view, you’ll see the availability marked by white cells. Grey meaning, unavailable. Remember, this is even said in the error message when you tried to click Book. Alternative Of course you can do this, but you should have a very strong reason to overbook resources. 🙂 Switch to Evenly Distribute Hours to allow the resource to be booked on top of the existing one. And this should be fine, but it will appear in red indicating that the resource is overbooked. Say, 10 hours (on top of already booked 2 hours) – exceeding the 9 hours total limit. Suggested You should rather Propose Book the resource, this way, the booking will exist and won’t bloat the schedule board. And then, you can decide later to do something with it. Front Load – Proposed Now with combination of Front-Load and Proposed, you should be able to Book for only the remaining capacity Evenly Distributed – Proposed With Evenly Distributed Proposed, you should be able to exceed the capacity and even Propose for the full time you want. Hope this quick tip helps! 🙂
Share Story :
How to change the Quote status to Draft after the Quote is won in PSA V3.X using MS Flow
Problem Definition: The sales cycle in my company demands me to create an opportunity every time a CR is requested or there is an additional estimate via a proposal that we ask on the current project from the customer. This needs me to go through the cycle from Opportunity to Quote to Contract. But, in this cycle, I do not want to create another Quote or contract, but update the existing one to add another Quote Line Detail. This is not possible once the Quote is marked a won in PSA. Solution: Following is what can be done to enable the Quote to move it to Draft mode an make it editable. Step 1: Go to the Quote and click on the Flow button in the Ribbon control and click on Create New Flow as shown in the screenshot below. Step 2: Use the Common Data Service Template and click on Continue. In case you see this page and you are not signed in with your account, please sign in and continue. Step 3: On the next screen select the details as shown in the below screenshot. Step 4: Select the Update Record Option from below as shown. Step 5: Click on Add Dynamic Content link and select Quote field from there as shown below. Step 6: Change the field “Status Value” to Draft and Save the Flow. Step 7: Navigate to the flow and name is as shown below. Step 8: Its time now to test the Flow developed. Navigate to your Quotes and filter out the Won Quotes. Open one Quote and Click on Flow button from the Ribbon control and select the Flow that we wrote as shown below Step 9: Refresh the page and check that the Flow has done its job and the Quote is now in the Draft mode, ready to edit. This blog reflects my personal findings and based solely on my experience of using PSA for the last 3+ years. For those who are looking for a platform that can track and manage the entire procedures of sales and project management, I would highly recommend them to try Microsoft dynamics 365 for project service automation.
Share Story :
Expenses in PSA for Fixed Bid and T&M contracts
Problem Definition: One of my clients decided to use Expense module in PSA and to his surprise he could see the amount value to be 0 in the Actuals. But, at the same time the Cost line had values in it. Upon researching and digging into all the configurations I was tired and couldn’t conclude. Finally, one configuration that made it work was to add the Transaction Category in the Sales Price List and make it Chargeable at Cost. Below is how to do it: Navigate to the project contract. Open the Pricelist associated with the Contract. It can be either the default pricelist or can be the custom price list for that particular contract. In the case shown in the screen shot, it is the Custom Price List. How do we Identify whether it is a Custom Price List is that, with the name of the Pricelist i.e. Sales Price List USD, there is the name of the opportunity and the Timestamp appended to it. You will see it in the screenshot below. Once you open that Custom Price List and Navigate to Category Prices, Click on “+ Add New Transaction Category” You will see a Quick Create Form opening up to add the Transaction Category. Fill in the details as shown in the below screenshot. The click on Save and Close and you will see your transaction Category added in the Grid. Your configuration is now ready. The next step is: To raise an expense as shown below. Configure/Create a Expense Category and relate it to the Transaction Category as per below. Navigate to Settings Area and Click on Expense Categories and then click on New. 2. Fill in the details as shown below. If you observe in the above image, there is a Transaction Category associated with the expense category and that is the one that should be present in the PriceList that we discussed initially in the above part of this blog. Once the expense is raised, Submit it. Submission sends it for the project Manager for approval. Project Manager approves it and as soon as the Project Manager approves it, it gets converted to Actuals as shown below. 4. Last step is to Create Invoice and see if the Expense gets shown up in the Invoice. For the same traverse to Project Contract and Open the specific project contract. It will automatically take you to Invoice Entity where the Invoice will be generated as shown below. Tips to remember: For Fixed Bid Project contract, you will need to create one more project contract line header which is of T&M type. This will be associated with another project on which you can raise the expenses. For T&M, we can still continue to raise the expense on the same project and there is no need of creating one more project contract line header. This blog reflects my personal findings and based solely on my experience of using PSA for last 3+ years. For those who are looking for a platform that can track and manage the entire procedures of sales and project managements, I would highly recommend them to try Microsoft dynamics 365 for project service automation.
Share Story :
Setting up schedule-based refresh in CDS
Customers are crucial to the success of any business. When you build your business focusing primarily on giving the best experience to your customer, your business is going to bloom. Your profits are going to multiply each year. Dynamics 365 for customer service is one of the best ERP solutions that you can find in the world. It will help in streamlining the processes in all the departments to make your business customer-friendly and customer biased. When customers know that you value their association, they are going to stay with you for a long time becoming your loyal customers. People who never used this ERP solution may not know how to find what they want. Here is a topic that you should learn as it will be quite helpful to you in the long run. Data Integration project support two types of executions Manual and auto-refresh i.e. schedule-based refresh. For a manual refresh, we have to select the project and click on run. In this blog, we will learn how to create a schedule to run an Integration project at a specific date and/or time. First, go to Admin Center Go to the Data Integration -> Projects and click on the ellipses of the project to be scheduled and click on Schedule We will get two options a. Run Manually b. Run on specific day and/or time Now let’s schedule the project, in this example we going to schedule the project every hour starting at 17-Aug-2019 to 30-Aug-2019, and it should run form 12 AM to 2 AM. After scheduling click on save We can schedule the project in another way also, to do this go to the scheduling after selecting on the Integration project After clicking on the project following window will open and then click on the Scheduling and same scheduling window will appear. In this way we can create schedule-based refresh for the Integration project
Share Story :
Setting up email-based alert notifications for Integration Project in CDS
Error handling is very important part of any integration project, it is also very important to fix the issue when it is recognized, so it is very important to take action to resolve it earliest. In the Integration project of CDS we can setup email alert option in following way. First go to Admin Center Go to Data Integration -> Select the project -> Go to Scheduling Following window will appear Tick the checkbox and specify the email address on which we wanted to receive the alerts and click on save. In this way we can set up the email alert notification for Integration progress in CDS.
Share Story :
PSA Quick Tip: How to Give Team Members Access to Only do Time Entries and Expense Entries and not Expose Other Entities in PSA v3.X
Dynamics 365 Project Service Automation helps companies to have control over the projects that they undertake. It is the main reason why a lot of companies love this particular ERP solution. Companies can complete the project within the timeframe and the budget that is allocated. Estimating the project budget and planning resources becomes a lot easy. Communication between employees in the company improves substantially. Microsoft Dynamics 365 for Project Service Automation equips the project managers with the essential tools to make them efficient. It helps companies to become organized and to become successful. Here are some quick tips on how you can give your colleagues access that is necessary to do expense and time entries without exposing them to other available entities on the system. Dynamics 365 Project Service Automation is a software application that companies need to buy and use if they want to have full control of a project. Organizations can use this application to manage, track, and deliver project-based services on time. Creating work schedules and quotations utilizing this system is secure. You can manage and assign resources with ease when you use this software. Mastering how this system works is quite essential if you desire that your projects become successful. You might encounter so many unique problems when you are using this particular system. Here are some probable solutions that will help you to solve these problems. Problem Definition: We sometimes have a few team members who only need to do the time entries and expense entries. They do not need any exposure to other entities. How do we make it possible via the OOB (Out of the box) security roles in PSA V3.X. Solution: From the security–>Users–> select the user–>Manage Role and Only keep “Project Resource” Role. 2. Go to Security–>Security Roles–>Open the security Role “Project Resource” –> change the following 2 parameters read/write access as shown below in the image. 3. Log off and log in again and you are set 🙂
Share Story :
First Canvas Power App: Learn Few Easy and Important Commands
These days there are so many companies that are developing software applications to help businesses manage the projects. But, nothing comes close to dynamics 365 project service automation. It is unique and is one software that every business should have if they want to manage projects and help them to become successful. Companies can track as well as manage projects well when they use this particular software.astering this software is essential if you want to use this application efficiently. PowerApps is one service that Microsoft offers, and developers can use it to build apps as per the requirement of the client. As my thoughts build to initiate writing this blog, similar was the feeling when I first thought about exploring Power Apps. The expression was, “What exactly is Power Apps?”. When the world is talking about it, it brings me more curiosity to understand what is so powerful about it. Let’s first commence with understanding what exactly is Power Apps: PowerApps is an initiative by Microsoft that allows developers and nontechnical users to build mobile applications from selectable templates. The objective of PowerApps is to enable business users to build new capabilities via apps, without requiring that they have code expertise. Types of Power Apps: Model driven apps: These types of apps directly publish the entity on the mobile/ tablet. These apps can be used from Microsoft Dynamics 365 App from mobile. They are very easy to make and can be ready within 15mins of time. Canvas apps: These apps are blank canvas given to the developers with a free hand to design the app in the way they want. In this blog we shall focus more on how to make a Canvas app. Follow the steps below to make a PowerApps. Step 1: Login to www.portal.office.com Step 2: Click on PowerApps icon as shown in the image below: This will open a new browser tab where we need to select what kind of app do we need to make. Step 3: Click on Canvas app from blank, which opens a pop up. Please name your app and select whether the app is for Phone or for Tablet as shown below and click on Create button. This opens the Canvas app editor as shown below: To take this blog forward, I will use an app that is created by me and explain a few commands used by me and how was the design done in that app. The app captures the Grievances of people in office. There are 5 screens created by me and they are: list_Grievances Screen: This list all the grievances in the system. 2. frm_GrievanceRecord Screen: This opens a grievance record. 3. Frm_NewGrievance Screen: This screen is used to capture a new grievance. 4. Frm_CameraScreen : This is used to capture the image of the grievance using camera control. 5. SuccessScrn: This is used to display the success on the screen. Technical dive Let’s take a dive in each screen and get into understanding of functionalities developed on each screen: List_grievances: a. New Grievance button: This button will navigate to a frm_NewGrievance Record to capture new grievance from the employee. The code written behind that is:………………………………………………………………………………………………………………Navigate(frm_NewGrievance,ScreenTransition.Fade ); …………………………………………………………………………………………………………………….b. To display the list of Grievance I have inserted a List Screen as shown in the image below: c. To display the list of Grievance, we need to add a Data Source. How to add a data source is shown below: There are approximately more than 250 Data sources to which Power apps can connect. Select the data source you wish to connect. In my case, I will connect to Dynamics 365 Data Source. It will ask you to choose your entity and then you can click on connect. Your Data Source “Grievances” will start appearing in Items drop down of Property Window. Post that we can align the attributes that we need to see on the list view: To Display Employee Full Name, below is the code that I wrote: ………………………………………………………………….. ThisItem.’Employee Full Name’ ………………………………………………………………… To get the department value, which is a lookup to another entity below is the code that was written: …………………………………………………………………. LookUp(Departments,new_departmentid=ThisItem.Department, new_name) …………………………………………………………………. To display the image from the SharePoint Library, below is the code: LookUp(GrievanceLibrary, Title = TitleGrievance.Text, Image) Where GrievanceLibrary is the Sharepoint Datasource added in Powerapp and Title and image are the fields created in SharePoint. To open the Grievance record on frm_Grievance Record, write the below code: Navigate(frm_GrievanceRecord,ScreenTransition.Fade,glryGrievances.Selected) frm_NewGrievanceRecord: To store the new grievance record, we used the Form Screen. On the update button, write the below code: Patch( Grievances, Defaults(Grievances), { new_employeefullname: DataCardValue3.Text, new_description: DataCardValue15.Text, _new_departmentl_value: DataCardValue10.Selected.new_departmentid, _new_grievancetypel_value: DataCardValue6.Selected.new_grievancetypeid, new_signature: PenInput4.Image } ); Patch( GrievanceLibrary, Defaults(GrievanceLibrary), { Title: DataCardValue3.Text, Image: First(Collection1).Url } ); UpdateContext({resettext: !resettext}); UpdateContext({resetcombobox: !resetcombobox}); Navigate(SuccessScrn,ScreenTransition.Fade); frm_CameraScreen Insert a Camera Media Control on the form as shown in the below screen shot. Insert an image control on the form below the Camera Media control. Capture button code: ClearCollect(Collection1, Camera1.Photo) Collection 1 s described above is the SharePoint collection object which needs to be cleared and then referred with the new Photo from the Camera Control, which in our case is Camera1. Confirm button code: Confirm Button will only Navigate it to New Grievance form and the code is ass per below: Navigate(frm_NewGrievance) To summarise: We learned how to create a Canvas Power app. Different controls that can be used. How to store image on Sharepoint in a Power app. Again I am sharing the code for storing the image on Sharepoint herewith: Patch( GrievanceLibrary, Defaults(GrievanceLibrary), { Title: DataCardValue3.Text, Image: First(Collection1).Url } ); To explain the above code, GrievanceLibrary is the SharePoint site of which Data Source is added. Title: This is a field in the Sharepoint library that will store the name of the Grievance. The data type in Sharepoint for Title is Single line Text Image: This will store … Continue reading First Canvas Power App: Learn Few Easy and Important Commands
