BACK TO Articles

Streamlining patient admission process with Power Apps: a hypothetical case study

By John Bordin

It’s a late evening at CityLife General Hospital’s bustling emergency room. Receptionist Jenny is wrapping up her shift when a man named Mike rushes in, clutching his right hand that he accidentally cut while cooking dinner. Mike needs immediate attention, and Jenny must initiate the admission process.

CityLife General Hospital recently transformed their patient admission process using Power Apps to handle these kinds of emergencies.

As soon as Jenny enters Mike’s name, date of birth, and the nature of his injury, she sets the record’s status to ‘Draft’ and saves it. The system is designed in such a way that only the critical fields are ‘Business Required’ at this stage. This enables the staff to focus on immediate care.

Now let’s take a step back and delve into the behind-the-scenes workings of this Model-driven Power App.

For such a complex form with many fields, an immediate requirement for all fields to be filled in would be impractical. Thus, the app is designed to adjust the mandatory requirement of fields based on the status of the row. We primarily implemented this using GUI-based Business Rules, an intuitive feature in Power Apps that allows for dynamic changing of field requirements.

In the ‘Business Rule’ configuration, a condition checks the value of the ‘Record Status’. When the status is ‘Final’, important fields are made ‘Business Required’. Conversely, in the ‘Draft’ status, these fields are set to ‘Not Business Required’. This straightforward, easy-to-maintain approach offered us the flexibility we needed.

Business Rule (Text View)

IF

Row status equals "Final"

THEN

Set Contact Number as Business Required

Set Date of Birth as Business Required

Set Admission Date as Business Required

Set Nature of Emergency as Business Required

ELSE

Set Contact Number as Not Business Required

Set Date of Birth as Not Business Required

Set Admission Date as Not Business Required

Set Nature of Emergency as Not Business Required

Business Rule (GUI View)

Alternatively, JavaScript could also be used to achieve a similar result. A function that gets called on the ‘OnLoad’ events of the form and the ‘OnChange’ event of the <Row status> field could be created. This function would use the formContext.getAttribute(<field name>).setRequiredLevel(“required”) method to make the important fields required when the status is ‘Final’, and formContext.getAttribute(<field name>).setRequiredLevel(“none”) when it’s ‘Draft’. This method provides more control and flexibility, allowing for more complex conditions or behaviours if necessary.

JavaScript code for the business logic

function requiredFields(executionContext) {
var requiredLevel;

var formContext = executionContext.getFormContext();

if (
formContext.data.entity.attributes.get('statuscode').getText() === 'Final'
) {
requiredLevel = 'required';
} else {
requiredLevel = 'none';
}

formContext
.getAttribute('cr1e8_contactnumber')
.setRequiredLevel(requiredLevel);

formContext.getAttribute('cr1e8_dateofbirth').setRequiredLevel(requiredLevel);

formContext
.getAttribute('cr1e8_admissiondate')
.setRequiredLevel(requiredLevel);

formContext
.getAttribute('cr1e8_natureofemergency')
.setRequiredLevel(requiredLevel);
}

function formOnLoad(executionContext) {
requiredFields(executionContext);
}

function rowStatusOnChange(executionContext) {
requiredFields(executionContext);
}

One solution to reflect important fields we decided against was the Business Process Flow. Despite its flexibility, we found it limiting that required columns only show in the fly-out of the Business Process Flow and not in the form itself, leading to a less than optimal user experience.

As Mike’s treatment at CityLife General Hospital progresses over the next few days, Jenny and her colleagues fill out the remaining fields in the form: insurance details, medical history, diagnosis, treatment plan, and patient notes. Once all the required fields are filled, and Mike’s treatment plan is ready, Jenny changes the ‘Record Status’ to ‘Final’. The business rules trigger and enforce that all critical fields are now ‘Business Required’. This system ensures that the record is thorough and complete before it’s submitted for final approval.

The dynamic, flexible system developed using Power Apps has greatly improved patient care at CityLife General Hospital. By focusing on the essential requirements at the right times, it ensures that crucial information is not missed while also providing flexibility during emergencies. The Power App has become a true ally in patient care, ensuring that the team can focus on providing care when it matters most.

Looking for something specific?

Search our Archive to find content that piques your interest.
SEARCH

Recents Posts

October 7, 2025
Unified Service Desk is retiring – What does that mean for you?
If you’ve worked in the Microsoft Dynamics 365 ecosystem over the past decade, chances are you’ve encountered Unified Service Desk (USD), that trusty Windows-based tool that brought multiple customer service systems into a single interface for agents.  Microsoft has made it official:  Unified Service Desk is being retired. Deprecation begins: April 1, 2026 End of support: June 30, 2028  đź’ˇ Why it matters  USD has been a…
Read more
September 29, 2025
Exploring Agile Work Items in Azure DevOps
Azure DevOps is a flexible and powerful platform which offers a wide range of tools and features for managing software development projects. One of its key components is the Work Items feature, which helps Agile teams plan, track, and manage their work efficiently. Work Items in Azure DevOps are highly customisable, allowing teams to tailor their workflows following Agile methodologies.   We…
Read more
September 25, 2025
Half a day to kick start your commitments
Budgets are locked. Initiatives are signed off. Now comes the hard part: delivering on your commitments. Our MojoSpark Workshop is designed to help you and your team cut through the noise and move forward with confidence. What we’re hearing…. In just half a day you’ll walk away with: Start your transformation today — this is…
Read more
September 22, 2025
Five roadblocks stopping your POC from going into production
Most organisations are great at generating ideas. Many are good at testing those ideas through proofs of concept (POCs) but few manage to take those POCs into full production, where the real business value lives. Why? Because going from concept to production is about scaling, sustaining and embedding it in the business. We get a…
Read more