Assignment
Van Leeuwen was using paper and email to handle approvals for various types of requests. The objective was to replace these outdated approval flows with a centralized digital system. Since Van Leeuwen already used Microsoft 365, leveraging the Power Platform was a logical next step. Automating notifications for both submitters and approvers, and enabling the storage and tracking of approvals in a single system, would significantly improve the overall process. Especially because approvals can involve multiple levels within the organization. The goal was to standardize all request approvals using the Power Platform.
Architecture
We first addressed governance and architecture before starting development. Governance was implemented by creating separate environments for development, testing and production, ensuring that production data was isolated. For architecture, we reviewed available tools within the existing licenses. The chosen setup included multiple canvas apps -one per request type- to support scalability and remain within control limitations per app). Each app uses a separate table to support security requirements (e.g. isolation of data) per request type, while all related approvals are stored in a single table to trigger the underlying processes.
To enable reuse, several components were developed that can be used across all apps. While request forms, unique per each request type, are managed via patching within the app, all other logic is handled by cloud flows in Power Automate. This means only one workflow per process (e.g. submission, review, approval and completing) is needed, rather than one workflow per step per app. This significantly reduced maintenance efforts.