My first Power-App solution

Hi folks,

it’s been a long time since my last blog post. In that blog post, I want to explain a solution to my fire department.

A few months ago I’m finished with the implementation of office365, it was an extremely important and also very interesting implementation. Now we’ve got the benefits of using Microsoft Teams for our internal meetings during the Covid19 Lockdown. At that point, a big “Thank you” to #Microsoft for the possibilities and much more for the benefits in the NonProfit area.

Okay, now we are in Office365. All my colleagues are using the services, now it’s time for improvements. One of my colleagues has a lot of paperwork and it’s terrible to see. So my approach here is, to use the benefits of Office365, that my colleague can do his work from everywhere and the second one is digitalization.

What’s the starting position?

My colleague is the “respiratory protection attendant” at our fire department and the task is to document all tasks about the respirators which includes:

  • Usage for some practice and their hours
  • Usage for actions and their hours
  • Maintenance work tasks like:
    • Cleaning
    • Disinfection
    • Testing
    • Repairing and details about the tasks

The “old” paperwork looks like the following:

My solution for that paperwork is, to start with a tool decision phase. Okay to build that paperwork in Excel is really simple and clear. Not bad but I want more.

Then I’ve taken a look into Microsoft Forms because I’ve used that really simple way (I love it!) to digitalize our “activity report”, but it is not the right way for that solution.

Then I came to the PowerApp tool. In the beginning it’s not really easy to understand but after some study hours, I have begun to love that powerful tool and start with the basic design. That design phase includes the following points:

  • Build the UI nearly the same as the original
  • A decision where the data is saved because we need a reporting feature back to seven years

The UI design phase is a really simple part of PowerApps:

Fully build in the PowerApp online studio and for my point of view succeeded!
The next part isn’t so simple because we “only” get the PowerApp for Office365 license from Microsoft and there are some limitations. But don’t misunderstand, we get the “PowerApp for Office365 license” for free and that’s the important point here. So I checked the connectors which are included in our license.
I’ve tested the OneDrive and Excel connector. Not so bad, but my solution not the right one. The best connector for that solution is from my point of view the SQL Server but exactly that connector is a premium one 🙁
The last step is to check out the SharePoint connector, it’s free and I think also a good one.
It’s time to create a SharePoint list with all the required columns like the following:

Now it’s time to save the data into that SharePoint list. In PowerApp it’s really simple to build the UI, but if you want to do more, you need some developer experience. Perfect for me, because I’ve many developer experience, so I’ve built the functionality to save the data into the SharePoint list. I’ve created a save button and added the following patch functionality with some modifications because I had some troubles to display the state from a checkbox but it’s okay for this solution!

Patch('FF-ATS-Inventar';Defaults('FF-ATS-Inventar');{Title:InvTBBaujahr.Text; InDienstGest:InvTBInDienstGestellt.Text;MaskenInventarNr:InvDDLInventarNr.SelectedText.Value;TaetigkeitDatum:InvDDTaetigkeitDatum.SelectedDate;Taetigkeit:InvTBTaetigkeit.Text;Uebung:If(InvCBUebung.Value=true;"X";"");ZeitUebung:InvDDLUebungZeit.SelectedText.Value; Einsatz:If(InvCBEinsatz.Value=true;"X";""); ZeitEinsatz:InvDDLEinsatzZeit.SelectedText.Value;Reinigung:If(InvCBReinigung.Value=true;"X";"");Desinfektion:If(InvCBDesinfektion.Value=true;"X";""); Pruefung:If(InvCBPruefung.Value=true;"X";""); Reperatur:If(InvCBReperatur.Value=true;"X";"");ReperaturDetails:InvTBReperaturDetails.Text;InventarJahr:Text(Now();"[$-de]yyyy")})

Great, now I have the option to add new tasks to my SharePoint list and it works great!

Next is to start with the Reporting feature, I’ve created a news site in my SharePoint app and added all the required parts including a DataTable (currently in preview but it’s okay) and it looks like this:

Based on the “inventory number” and the reporting year I get all my items from the SharePoint list. To archive that, I’ve added filter functionality to the DataTable:

Filter( 'FF-ATS-Inventar'; EndsWith( TaetigkeitDatum; RBDDLSelectYear.SelectedText.Value); MaskenInventarNr = RPDDInventarNr.SelectedText.Value )

Awesome it works so simple and fine! My future part is to add the printer functionality. I have some ideas and will update the BlogPost with the implemented result.
At the end, we use Microsoft Teams very much in our fire department. It was obvious to add the solution into the right Teams Channel. We use both private and public channels and for that area, I’ve created an private channel and add the solution into a new Tab:

Now the colleague can use the functionality everywhere and it’s save in Microsoft Office365. It’s so easy and brings so much effort!

Here a short Video about the functionality:

If you are also from a fire department and need that solution too, to save time and get the effort of Microsoft 365, do not hesitate to contact me directly under “ff-it@ff-spielberg-pielach.at”