Hi @Stephano I was testing the Tumor stage, by trying to enter the values on the screenshot, and while checking it shows that I have entered a “Rare Basis” & “Rare Age Topography” and I think we are using the IARC Quality Controls, but when trying to validate the same data I entered in DHIS2, the Checking was valid, no working or error was shown. Can you guide me on that or it is just a bug.
Hi, @duserik thanks for flagging this and for taking the time to cross-check the results against CanReg5 — that’s exactly the kind of validation we need.
There was indeed an issue with the demo instance that was causing some checks to return incorrect results. This has now been resolved. Could you please try running the same checks again on the updated instance and let me know if the results are now consistent with what you see in CanReg5?
If you still notice any discrepancies, feel free to share the specific values you’re entering and I’ll look into it further.
Hi @duserik, thanks for flagging this! This is actually expected behavior. The “Run checks” checkbox is visible but cannot be ticked until all required fields have been filled in. The program rule CR - Can’t run the checks if all mandatory elements have no values blocks the checkbox when any of the following fields are missing: Site, Topography, Morphology, Behaviour, and Basis diagnosis (Grade is also required when the behaviour is malignant).
The “Mandatory variables missing” warning is the system’s way of signalling which condition is blocking the checks. Once all those fields have been populated, the warning will disappear and “Run checks” will become available to tick.
So no bug here, just the guard rail working as intended!
Hi @Stefano, could you please clarify the expected behavior regarding mandatory field validation? As I understand it, if mandatory fields are still flagged, the stage should not be allowed to be completed.
In my case, although the system indicated that some mandatory fields were missing, I was still able to complete the stage successfully. I also could not identify any additional required fields that were left unfilled (as shown from screenshot below).
This leads me to believe that either there may be a validation issue, or I may be misunderstanding the intended logic. Could you kindly confirm how this is expected to work?
Hi @duserik — good question, happy to clarify!
The behavior you’re seeing is intentional and follows the same logic as CanReg5: the system does not prevent you from saving an event even when certain fields are unfilled. This is by design, as registry staff may need to save incomplete records and return to them later.
It’s worth distinguishing between two different concepts of “mandatory” here:
- DHIS2 mandatory fields (marked with an asterisk *): these are fields the system enforces at save time — you genuinely cannot save the event without them. In the Cancer Registry program, only the Tumor Number falls into this category.
- Checks mandatory fields: these are the fields that must be populated in order for the quality control checks to execute correctly (Site, Topography, Morphology, Behaviour, Basis diagnosis, and Grade for malignant cases). The system doesn’t block saving when these are missing, but it will block the “Run checks” checkbox and display the “Mandatory variables missing” warning until they are all filled in.
So the stage saving correctly and the warning you saw was simply telling you that the checks couldn’t run yet, not that the event couldn’t be saved.
Hi @Stefano, thank you for the clarification.
I have one final question: how can I identify which fields are considered under the “Checks mandatory fields” validation?
Hi @duserik — the rule is straightforward: all fields in the Patient and Tumor sections must be populated before the checks can run. The only exception is Grade, which is only required when the Behaviour code is malignant (code 3) — for non-malignant cases it can be left empty.
So in practice, the checks mandatory fields are: Age, Incidence Date, Address, Sex, Site, Topography, Morphology, Behaviour, Basis diagnosis, and Grade (malignant cases only).
If any of these are missing when you tick “Run checks”, the “Mandatory variables missing” warning will appear and the checks will not execute.
You can find more detail on this in the System Design Guide, under Tracker → Tumor → Mandatory element.
Hi @Stefano , thanks for the explanation, it is now very clear on the Design Guide.


