Part of the HaloPSA implementation series with Morgan Aspinall, covering how to upload reports to the end user portal.
hey everybody and welcome to another installment in the Halo implementation series with me today again as always um I think if you're a you know um a subscriber to this this channel you'll know what I'm about to say now I'm with my favorite person at Halo Mr Halo himself um he loves it when I call him Mr Halo in fact I um I I know they had to actually fit a new door not only in the office but actually in his house as well I drove past the other day and I saw the scaffolding building a much bigger door for him to get in because of his big head so um yeah really good to have you again Mr Halo um how are you doing oh it's a pleasure yeah did you uh did you see the plaque that I've got outside my house as well now exactly I did I did yeah and uh I think you had to buy a convertible as well right so you could actually have your head sitting in the um first all problems no yeah absolutely yeah good to be back good to be back and today um on on the previous video we spoke about kind of creating reports and and charts and dashboards and all those kind of things what we're going to do in this video is we're going to extend a little bit more like how do we get that information that we've just created in front of our customers right how do we we talked about composite reports and that's one way to get them to the customers but you know what about a pretty nice dashboard that we can put onto the portal and and all that kind of stuff so we're going to talk about that today um so yeah um I'll hand it over to you Morgan to uh to go through showing us how to do that absolutely yeah so um I think the plan will be to create a very basic dashboard uh present that on the portal for our customers uh and then discuss how we can apply uh dollar variables in our report data to make sure that the um the content of the report the data that is returned is specific to the customer um but we'll come back to that in a moment so creating a dashboard um hopefully you've you've watched watch the previous video so you should know that we go to configuration reporting dashboards and let's create a new one let's call it self service dashboard um we want our dashboard to be in app at which point we get our layout tab and let's add a couple of widgets in here so I might want to show tickets By Priority um and I want to show the chart of that and I want to show the sorry I want to show the chart that corresponds to are Open tickets By Priority report there we go let's do tickets by category same thing I want the chart sorry I want the chart and then let's do feedback let's do the chart there as well feedback from tickets there it is and then finally I might want to show P1 tickets P1 incidents let's call it and cover off on the previous video in terms of what all these types mean and things like that so go go and have a watch of that if you haven't haven't already seen it yeah uh right well we don't have any P1 tickets that's good but not for this example let's just do Open tickets Open tickets all Open tickets just as an example of getting some information in there perfect save that cool um now our dashboards similar to our reports have got uh user access uh conditions that can be applied to them um so of course we need to ensure that this dashboard is going to be available to the individuals uh who need to see it and that might be everyone and we'll talk about the um the potential concerns with this but it might be a particular user or a particular uh customer record but for now we'll just do everyone you'll also see here that we can actually publish uh our dashboard we do this in uh we do this internally in our office we've got dashboards that we have built um and we published this link uh and we put it on a monitor so of course if you want to return um dashboard in the office on a big screen you can publish that and navigate to this URL like a wallboard type thing yeah yeah cool right so um we we've set our user access we've got our dashboard how do we return this on the self-service portal now uh a couple of sessions ago we took a look at the uh the self-service portal configuration and uh more specifically the menu buttons against our self-service portal options um one of which that we might have not discussed but uh important nonetheless is a menu button to return a dashboard um or the the list of available dashboards for the customer so what we want to do is we want to go to self-service portal we want to go to configuration selfservice portal and we want to add a menu button in here that is my dashboards lovely stuff again uh head back to the the video where we had a look at the self-service portal config to get an understanding of all of the options in here I'm going to brush over them for now and there it is and so now on our home screen we've got our my dashboards option there's our self-service dashboard and there we can see the dashboard that I've just configured uh and the associated reports within so um you know assuming that you have the reports that you want to return on the dashboard and the charts configured that you you want to return on your dashboard it's very simple to to create these dashboards and present them to your customers um again this is a this is a pretty poor example um of what you would well it's it's not the worst but it you could definitely do a lot better than what I've done here with just a little bit of planning um what I would recommend people do is think about the qbrs that they're currently sending to their uh you know um their different customers the most valuable customers the different tiers of customers they have think about the reports in those qbrs put them on a dashboard and say you don't have to wait until the end of Q3 to to get these metrics anymore you just need to go to the to our self-service portal and check in on those metrics in real time yeah so yeah and and I mean and another use case for that I think is is things like you know contracts expiring or assets expiring or something like that that might customers might might be interested in um and I personally do that as well I you know I do a lot of um the Consulting I do I sell blocks of hours and customers want to know you know oh my Block's going to expire so what I've done is is exactly this is published a dashboard on the portal to say um you know here is here's the information broken down by customers so they can log into the client portal and they'll be able to see how many hours they got left and and and all of that kind of stuff yeah yeah and you know um the these kinds of these qbrs these meetings that you have with your customers it goes both ways it's not just a matter of proving your worth but it's also about making sure that the customer that you're talking to is profitable for you and you know if they're not then something needs to change or you need to fire the customer um and what better way to open that conver ation up other than showing the raw data right there you know you might have a profitability percentage number that you have on this dashboard and you know you have your you have your catch up with your customer and you say look we're gonna have to uh increase your monthly fee because as you can see right here uh you are not profitable for us anymore or right now um and here are the list of tickets uh that prove that you are no longer profit to us so um yeah datadriven conversations are always the the most effective numbers don't lie and so yeah the the dashboards that you present can be powerful not only improving your worth but also making sure that that the customer understands their worth to you as the MSP yeah and and I I actually um coin the phrase and I call that fact-based decision- making because you know you have the facts in front of you you you can now make decisions certainly in your business um both you as the MSP and the customer based on the facts that you have in in front of you so um and and you're right I mean you know publishing a dashboard to your customer about um uh you know things like here's here's our Worth right this is why you paying us 500 pounds dollars Euros whatever it is per month or a th000 per month because these are all the things we've done for you and actually look look at all these tickets and how many of these we've actually given you away for free um you know these haven't been included in your contract or they shouldn't have been but we've included them you know so it really gives you the ability to kind of say this is how good we are and actually I like that feedback one is look how good you think we are Mr customer um you know and maybe on that particular one I might you know you might want to anonymize a lot of that but kind of go well it's not just you Mr customer but look how how all of our other customers actually um you know think about us they all kind of rate US and think we're great as do you and this is why you you know why we're good and you know how we can justify um the you know what we charge you every month so yeah yeah know really really powerful having this stuff yeah absolutely um and before we go any further before we talk about the next piece I just want to mention one other feature of dashboards that uh is very powerful uh in particular I'm thinking about for a project management type dashboard and that is the ability to add custom filters to your dashboards now how these work is you add your filter in you give it a name um let's just say ticket you're at a sequence you got this filter column section so what this filters option does is it will filter all of the reports in your dashboard based on the filter that you have here um now the filter column is important because this is the column that is being filtered by so uh if we're talking about a project management dashboard uh we might have a um a global project management dashboard open projects open tasks unassigned tasks scheduled tasks uh budgetary breakdown forecasts all of that kind of stuff um but we might want that dashboard to only return the metrics for a single project to do that we could add a filter in here and so in order to achieve that all of the reports in your project management dashboard or all of the reports in your dashboard must contain a column in those reports with the name that you specify in here namely ticket ID or project ID or customer or whatever um and then below you've got this SQL script and this SQL script determines the options that you can filter by so I might want to do uh select ID so we don't care about deleted or merge tickets we don't care about tickets that are pending closure or closed uh but beyond that show me the list of all the tickets in Halo save that now when I view my dashboard if we just go in here and we go to self-service dashboard we've got this um dropdown that we can apply our filter uh to now I've done something wrong because that should have loaded so let's see what I did wrong where's my typo select fault ID symptom from oh uh oh not that one oh on yeah it's that yeah let's try a different doing things live right and trying to get them to work I know right yeah you're gonna edit this out right yeah yeah I can edit I can edit now I I'll keep it in because it's uncut yeah exactly and I always say this to customers it's you know this is how we all learn right is to to um make the mistakes and then say actually look we you know we've done this wrong but the world hasn't ended and you know we can just fix it and um and we all learn from it so I mean quering the list of tickets shouldn't take that long but it will take a little bit of time I I did actually it you clearly learned that that um squel script for um for this you clearly done this before because you know off behind so uh let's see if that works that's a little bit better um so we write a very basic report uh in this case I'm getting the list of customers and then I can select a customer and the data in the dashboard will be modified based on my selection here given that the reports have a column called client so as an example if I go to my feedback report or actually let's go to the all Open tickets report all Open tickets uh in here we have not got customer so let's Chuck it in uh so that's in our data source so I'm going to go to the data source all Open tickets for customer that the one that I used let's have a look uh let's go back to the dashboard config config reporting dashboards self-service dashboard go to the layout this is using all Open tickets sorry so we want to go to the all Open tickets report all Open tickets yes all Open tickets does used for customer so we just want to make sure that that has got a column called client y which means yeah it's changing is it I oh sorry yeah yeah sorry so well oh soorry I was looking the feedback one I thought yeah that was that's fine I'm going to take this out uh this we're going to talk about what this is in just a moment um this this is very important uh but I'm going to take it out for now to demonstrate these filtering uh options so now bang let's go clear my cash um go here go to self service there are many tickets because we've done it for all customers let's give that a minute to load if I change this Terry's chocolates this will update he says I might be using a a data set is a little bit too large all Open tickets is quite uh messy yeah there's the client column uh the all Open tickets report let's just truncate that a little bit let's make that a little bit quicker to load maybe make it just like for this month or something yeah well I'll just do like a top 50 or something just so yeah loading 2,000 records it's not going to be very meaningful to present 2,100 tickets to your customer on the portal so try that just going to refresh that page right no longer 2,000 records let's change this it's not changing what have I done wrong so we go in here and we go to our dashboard we go to our filters uh we need to make sure that the filter column is yeah that needs to be added yes [Music] yes uh that I think is the problem let's just check that there we go right so yeah sorry about that um the issue there was in our filters the ID column needs to be the same data type as the column in your reports so in my report I had a column with column head a client but that column was the C customer name therefore we need to make sure that the ID column in uh this small report is also the customer name so the display option is what you see in the drop-down and the ID column is what we're actually filtering on so the reason it wasn't working is because I was using the customer ID as my filter uh when in fact I needed to use the customer name so yeah hopefully that makes sense yeah we got there eventually now um I took a very important piece of SQL out of that data source um let's go back to it now when we saw that dashboard on the portal uh what that was actually returning to us uh was Data across all of our different clients so we didn't have any kind of restriction in place to say that when an individual from customer a logs into the self- service portal and Views that that dashboard only return the data for customer a only return the data for don't have anything in that drop down yes yeah pretty much um now the solution there is to include something like this so we can place variables into our reports again this is something that we touched on in the session where we had a look at adding a report to an invoice PDF uh we saw that we can make use of the invoice ID variable uh which would then return report data relevant to the invoice that's being generated namely a breakdown of billable time that is build on that invoice well there's two other very important well there's a couple of other important variables um probably four other very important variables to consider three of them are very closely related dollar site ID uh dollar user ID dollar client ID and those variables will be replaced with uh the respective value based on the end user who is logging into the self- service portal so if the end user has ID one2 three 4 and we're using dollar user ID it will only show that individual's report data yeah um similarly for site client that's depending on the site client that the user is a member of uh and the the only sort of contingency the the only constraint there is you need to ensure that you're querying the correct column so in this case uh area int is the column in the tickets table that Returns the client ID so we need the area int column uh to equal dollar client ID and then that way the report data is dynamic based on the individual that's looking at it so you don't necessarily have to put that in um if you're not putting that in you need to ensure that you're filtering your data by a particular customer and only returning those reports that dashboard to that customer or you can create one Global dashboard that everyone can view but every report in that dashboard must have the c a client ID filter as a minimum potentially even site ID or user ID um so yeah very important point to consider there one other variable is dollar agent ID um and dollar agent ID is replaced with the agent ID based on the agent logging into Halo and that's important um if we want our support technicians to have a dashboard on their home screen that shows their own metrics so we might have a dashboard that is published on the big screen in the you know in the support room that shows Global metrics SLA compliance P1 tickets you know you can even put a bit gamification in there and have a a leaderboard um on that dashboard and then for an individual logging into Halo their home screen can be their own specific support metrics um yeah yeah that's that excellent that was really good that was um and I think that's really kind of helped people to understand how to put these onto to the dashboard um and and you know and get that client specific um information on there so um yeah really good um obviously as as we said before if you've got to the end of this video and you confused as heck and you don't know what we're talking about then go and watch the previous video that we did um which is all about reports and how they work and and and all of that kind of stuff so um yeah as always Morgan thank you so much really appreciate it um and you know thank you to Halo as well for allowing us to do this I know it's taking a lot of your time out of the office um and I and I really appreciate it and I know the community appreciates this we're getting a lot of feedback on these videos so so they really are helping so thank you so much for that do appreciate it and uh look forward to speaking to you on next one yeah always happy to help um yeah looking forward to the next one thanks for watching guys thanks for watching cheers bye bye bye
Get in touch and we'll talk through how it applies to your MSP.
Let's Talk