Calculation Validations
Introduction
This article is a reference guide for system administrators and consultants who configure calculations in Fortes Change Cloud. It documents every validation message that the system can produce when a calculation or Calculation Option contains an error or uses a deprecated pattern. Use this guide to quickly identify the cause of a validation message and apply the correct fix.
After creating Calculations or Calculation Options, the system validates them to ensure there are no errors. If issues are found, the system displays a warning or error message.
This article lists all possible validation messages with an explanation of what they mean, where they occur, and how to fix them.
Calculation Option Validations
These validations apply to the Calculation Options of a calculation.
The configured object type id(s) is invalid
| Type | Severity |
|---|---|
| Calculation Options | Error |
Message (EN): Child object type %1% is invalid Message (NL): Onderliggend objecttype %1% is ongeldig
Cause: The calculation refers to an object type ID that does not exist (anymore).
Fix: Correct the reported object type ID. Refer to the Objects reference table for valid IDs.
Example: reference=children[1234;5602], where 1234 is an invalid object type.
The configured reference field is invalid
| Type | Severity |
|---|---|
| Calculation Options | Error |
Message (EN): Field %1% is not a valid reference field. Is the capitalization correct? Message (NL): Veld %1% is geen geldig referentieveld. Klopt het hoofdlettergebruik?
Cause: The calculation references a field that does not exist or is misspelled.
Fix: Check that the referenced field actually exists. References are case sensitive, so verify capitalization. If the spelling is correct, the field may no longer exist.
Example: reference=InvalidFieldName
The configured relationtype is invalid
| Type | Severity |
|---|---|
| Calculation Options | Error |
Message (EN): Reference field triggers have the following format: relation=RELATION_TYPE[FOLDER_TYPE_ID_1,FOLDER_TYPE_ID_N] (e.g. relation=planning[5602]) Message (NL): Referentieveldtriggers hebben de volgende notatie: relation=RELATION_TYPE[FOLDER_TYPE_ID_1,FOLDER_TYPE_ID_N] (bijv. relation=planning[5602])
Cause: The relation used in the reference field does not exist (anymore) or is misspelled.
Fix: Use a valid relation type. Check the spelling and verify the relation still exists.
Example: relation=dependency
The configured option is not valid at all
| Type | Severity |
|---|---|
| Calculation Options | Warning |
Message (EN): Option %1% not recognized Message (NL): Optie %1% niet herkend
Cause: The configured option is not a recognized option.
Fix: Replace the unrecognized option with a valid configuration.
Example: NotEvenAValidOption
This option makes the calculation slow
| Type | Severity |
|---|---|
| Calculation Options | Warning |
Message (EN): Calculation option '%1%' can be slow and might have an impact on performance Message (NL): Berekeningsoptie '%1%' kan traag zijn en kan van invloed zijn op de prestaties
Cause: A reference configuration causes the calculation to run slowly.
Fix: Do not use this configuration. Choose an alternative option that does not trigger this warning, to maintain optimal performance.
Example: reference=children[5602;5603]
Calculation Validations
These validations apply to the Calculation XML itself.
This filter is deprecated
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Deprecated calculation detected: elements are deprecated and should be replaced by Message (NL): Verouderde calculatie gedetecteerd: elementen zijn verouderd en moeten door vervangen worden.
Cause: The calculation uses an obsolete filter option.
Fix: Replace the deprecated filter with the new FolderFilter.
The calculation should not be used at all
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Deprecated calculation detected: configured to set values on other folders is deprecated; use 'Calculation option' instead. Message (NL): Deconstructie met om waarden op andere folders te zetten is verouderd. Gebruik 'Calculation option'.
Cause: The <set> attribute is used within a calculation, including searchStructure and subfolders attributes.
Fix: Remove the <set> attribute. This attribute is outdated. Use Calculation Options instead.
Example: <set searchStructure='xyz'>…</set>
The calculation should not be used anymore
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Deprecated calculation detected: Might have negative performance impact.
Cause: The <setChildren> attribute is used in a calculation.
Fix: Remove the <setChildren> attribute. It is obsolete and has a negative impact on performance.
Example: <setChildren…> …</setChildren>
The field was not correctly typed (casing)
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Field has incorrect capitalization. Was %1%, but needs to be %2% Message (NL): Veld heeft een onjuist hoofdlettergebruik. Was %1%, maar moet %2% zijn
Cause: A capitalization error exists in a referenced field name.
Fix: Correct the field name. Calculations are case sensitive. For example, custom1 should be Custom1.
The field name could not be validated
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Field %1% might not be correct. This is OK when it is a field of a reference or when used in combination with for example a folderFilter. Please validate the field name. Are you sure %1% is correct? Message (NL): Veld %1% is mogelijk niet correct. Dit is OK wanneer het een referentieveld is of wanneer het wordt gebruikt in combinatie met bijvoorbeeld een folderFilter. Valideer de veldnaam. Weet je zeker dat %1% correct is?
Cause: The system cannot verify whether the field used exists.
Fix: Check that the field really exists and verify the spelling. This warning can be safely ignored if the field is a reference field or is used in combination with a FolderFilter.
XML incorrect
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Invalid XML. Please correct the calculation XML. Message (NL): Ongeldige XML. Verbeter de XML van de calculatie.
Cause: The XML code contains a syntax error.
Fix: Check the XML for spelling errors, missing closing tags, unclosed quotes, or missing / in closing tags.
Example: <cmp><field>test<field></cmp>: the second <field> should be </field>.
Invalid object types configured
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): None of the specified foldertypes (%1%) seems valid Message (NL): Geen van de opgegeven foldertypen (%1%) lijkt geldig
Cause: All object types used in the calculation are invalid.
Fix: Check for spelling errors. Object types are case sensitive. Replace with valid types from the Objects reference table.
Field has incomplete configuration
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Reference field doesn't seem to have an active object type Message (NL): Referentieveld lijkt geen actief objecttype te hebben
Cause: A field has an incomplete configuration. This should not normally occur.
Fix: Contact support@fortes.nl or the development team for assistance.
Reference field incorrect
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Reference field %1% is invalid Message (NL): Referentieveld %1% is ongeldig
Cause: The reference field used is incorrect, misspelled, or obsolete.
Fix: Replace the reference field with a valid one. Check spelling and capitalization, and verify the reference has not been replaced.
Example: <field reference='FaultyName'>…</field>
Not supported anymore
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Scheduled calculations are no longer supported Message (NL): Geplande calculaties worden niet langer ondersteund
Cause: A scheduled calculation is used.
Fix: Remove the scheduled calculation. Scheduled calculations are no longer supported.
Example: schedule='nightly'>…
'searchStructure' invalid
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Search structure %1% could not be validated. So field %2% cannot be validated. Are you sure it is correct? Message (NL): Zoekstructuur %1% kan niet worden gevalideerd. Veld %2% kan dus niet worden gevalideerd. Weet je zeker dat het klopt?
Cause: The value passed to a searchStructure attribute cannot be validated by the system.
Fix: Check the value being passed. An unvalidated searchStructure causes all fields below it to also be unvalidated, rendering the entire calculation ineffective.
Example: <field searchStructure='FirstParent=123'>Projectmanager</field>
Is slow
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Slow calculation detected: calculation. Use a function to improve its performance. Message (NL): Langzame calculatie gedetecteerd: calculatie. Gebruik een functie om de prestatie te verbeteren.
Cause: The <equ> block is used, which causes slower performance.
Fix: Do not use the <equ> block. Use a function instead to improve performance.
Example: <equ> … </equ>
'foldertype' invalid
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): 'foldertypes' attribute value %1% seems invalid Message (NL): 'foldertypes' attribuut waarde %1% lijkt niet geldig te zijn
Cause: The value for a folder type attribute is incorrect.
Fix: Change the value to a valid folder type. Refer to the Objects reference table.
Example: foldertype='5000,abcdef'>…, where abcdef is not a valid folder type.
Do not use to test for true/false
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): Do not use a calculation with boolean value (true or false). Use or instead.
Cause: The <cmp> block is used for a true/false comparison.
Fix: Use the <tst> block or the <not> block instead. The <not> block is for the inverse of the <tst> block.
Invalid calculation block
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Calculation element is invalid. Message (NL): Calculatie element is incorrect
Cause: The calculation block used is invalid or misspelled.
Fix: Check the spelling of the calculation block. Calculation blocks are case sensitive.
Example: <cmpp> …</cmpp>: should be <cmp>.
Unknown error
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Unknown error in calculation. Error: %1% Message (NL): Onbekende fout in de berekening. Fout: %1%
Cause: An unidentifiable error occurred in the calculation.
Fix: Contact support@fortes.nl or the development team for assistance.
'foldertypes' attribute has been automatically added
| Type | Severity |
|---|---|
| Calculation | Warning |
Message (EN): A 'foldertypes' attribute has been suggested. Are the attribute values correct? Message (NL): Attribuut 'foldertypes' is toegevoegd. Kloppen de attribuut waarden?
Cause: A folder type attribute was automatically added without user confirmation.
Fix: Manually validate the automatically added folder type attribute values to ensure they are correct.
Configured condition is invalid
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Invalid condition %1% Message (NL): Ongeldige conditie %1%
Cause: The condition used inside a <cmp> block is invalid or misspelled.
Fix: Check the spelling within the <cmp> block. Attributes are case sensitive.
Example: condition='smller'>…: should be smaller.
Timeline calculations cannot be used inside conditions or other calculations
| Type | Severity |
|---|---|
| Calculation | Error |
Message (EN): Invalid timeline value type Message (NL): Ongeldige tijdslijn type waarde
Cause: A timeline block is used within a calculation or calculation condition.
Fix: Move the timeline calculation to its own field and use that field in the current calculation.
Example: <cmp condition='not' value='0'> <timelineSum> …</timelineSum> </cmp>
Support
For questions about Calculation Validations, contact support@fortes.nl.