Ever had one of those DHIS2 implementation nightmares? ![]()
I recently built a Vehicle & Logistics Event Program in DHIS2 with:
• 272 Program Rules
• 998 Program Rule Actions
Everything was working until a colleague reported that they couldn’t submit a booking request.
I logged into their account and tested with a dummy request—it worked perfectly.
The usual troubleshooting followed:
Cleared browser cache
Tested again
Still couldn’t reproduce the issue
I then asked for the exact booking details and recreated the request.
Finally… the error appeared.
After hours of debugging, I found the culprit:
A single leading space in a Program Rule Action that populated the hotel address.
One invisible space.
That tiny character prevented the request from being submitted and had me questioning every program rule, variable, and configuration in the application.
It’s a reminder that DHIS2 implementation isn’t only about configuring metadata—it’s about methodical troubleshooting, understanding system behaviour, and paying attention to the smallest details. Sometimes the biggest issues are caused by the smallest mistakes.
To everyone building complex DHIS2 implementations with hundreds of program rules: keep going. The next bug might just be… a space. ![]()
What’s the smallest configuration mistake that has cost you hours of debugging in DHIS2?
