docs: document uncomplete authority, working list filter minimum characters and calendars - #4720
Open
karolinelien wants to merge 5 commits into
Open
docs: document uncomplete authority, working list filter minimum characters and calendars#4720karolinelien wants to merge 5 commits into
karolinelien wants to merge 5 commits into
Conversation
…lendars Fills three gaps found while auditing the Capture app's user-facing surface against the user docs. - Reopening a completed event requires the "Uncomplete events" authority (F_UNCOMPLETE_EVENT). Added to the existing note about why an event cannot be edited. The authority does not feed the read-only calculation, so only the "Complete event" checkbox locks. - minCharactersToSearch also applies to working list filters, and a value above the value type's character limit makes the filter unusable altogether. Added to the existing search metadata note, with a sample value per type so the limits are self-explanatory. - New "Dates and calendars" section covering non-Gregorian calendar support, the surfaces it affects, and that values are stored as ISO 8601. Includes a screenshot of the report date picker on a Nepali-calendar server. AI Assisted. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
karolinelien
force-pushed
the
docs/capture-doc-gaps
branch
from
September 4, 2026 12:25
7d83e19 to
ca8f8b3
Compare
karolinelien
marked this pull request as ready for review
September 4, 2026 12:32
henrikmv
approved these changes
Sep 4, 2026
henrikmv
left a comment
Contributor
There was a problem hiding this comment.
Thank you, @karolinelien!
|
|
||
|  | ||
|
|
||
| Tracked entity attributes can also define **minCharactersToSearch** in Maintenance. The same minimum applies to the attribute's filter in working lists, which shows *Please enter at least N characters to filter* until enough characters are entered. Set this value with care for non-text attributes. A filter can only ever hold as many characters as its value type allows - 10 for a date (2026-09-04), 5 for a time (14:30) and 3 for a percentage (100) - so if the minimum is higher than that, the filter cannot be used at all and shows *Minimum characters to search is too high for this filter*. |
Contributor
There was a problem hiding this comment.
Maintenance → Metadata Management app
Contributor
Author
There was a problem hiding this comment.
Changing the search performance section a little bit to use the UI text etc. Have a look please @simonadomnisoru and @henrikmv
simonadomnisoru
approved these changes
Sep 7, 2026
Review feedback on #4720: the new minCharactersToSearch paragraph pointed at Maintenance. It now points at the Metadata Management app, matching the naming already used elsewhere in the file. AI Assisted.
The preferredSearchOperator/blockedSearchOperators/minCharactersToSearch paragraphs used raw API property names and pointed at Maintenance. These properties are not editable there: the legacy Maintenance app only renders fields listed in its trackedEntityAttribute field-order config, and none of the four Search performance fields appear in it. They are only editable in the Metadata Management app, under Tracked entity attributes -> Search performance. Rewritten with the labels the Metadata Management app shows (Preferred search operator, Blocked search operators, Minimum characters required to search) and the operator options as they are listed there. Also corrects the value types the operator settings apply to. PERCENTAGE was moved into forcedSearchOperators by 01cff4f, so it now ignores preferredSearchOperator; the honoured types are text, long text, email and phone number. Unique attributes and attributes with an option set always resolve to EQ, which was not stated. AI Assisted.
The Metadata Management app strips the searchPerformance section from the
tracked entity attribute form when the server is below 2.43
(hasAPISupportForFeature, { minor: 43 }), so the settings cannot be reached at
all on older servers.
AI Assisted.
Clarified the requirements for the Search performance section in the Metadata Management app.
|
simonadomnisoru
approved these changes
Sep 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



What this does
Fills three gaps found while auditing the Capture app's user-facing surface against the user docs.
1. Reopening a completed event requires an authority. Added one line to the existing note about why an event cannot be edited. The tooltip in the app tells the user what is wrong but not which authority to ask for.
canUncompleteEventdoes not feed the read-only calculation (useEventEditPermissions.ts), so the form stays editable and only the Complete event checkbox locks, and the wording reflects that. The authority display name Uncomplete events was read from/api/authorities.jsonon a 2.43.1 instance, not guessed.2. Search performance settings on tracked entity attributes. Adds
minCharactersToSearchnext to the existing note aboutpreferredSearchOperator, and rewrites both in the wording the UI actually uses.src/config/field-config/field-order.js, and itstrackedEntityAttributelist contains none of them. They are only editable in the Metadata Management app, under Tracked entity attributes → Search performance — a section that app hides below server version 2.43 (hasAPISupportForFeature,{ minor: 43 }), so the version requirement is stated too.PERCENTAGEwas moved intoforcedSearchOperatorsby 01cff4f (DHIS2-12881) and now ignorespreferredSearchOperator, so the honoured types are text, long text, email and phone number. Unique attributes and attributes with an option set always resolve toEQ, which was not stated.minCharactersToSearch, the runtime message is self-explanatory, so the paragraph focuses on the dead end: a filter can only hold as many characters as its value type allows (10 for a date, 5 for a time, 3 for a percentage —withMinCharsToSearchValidation.tsx), so a higher minimum can never be satisfied and the filter shows Minimum characters to search is too high for this filter.3. New "Dates and calendars" section. Non-Gregorian calendar support had no user documentation at all. Covers where the calendar comes from, which surfaces it affects, and that values are stored as ISO 8601 so exports and the API show Gregorian equivalents. Includes a screenshot of the report date picker on a Nepali-calendar server, captured on a 2.43.1 instance.
AI Assisted.