Skip to main content
Version: Version 22

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​

TypeSeverity
Calculation OptionsError

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​

TypeSeverity
Calculation OptionsError

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​

TypeSeverity
Calculation OptionsError

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​

TypeSeverity
Calculation OptionsWarning

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​

TypeSeverity
Calculation OptionsWarning

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationWarning

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)​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationWarning

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​

TypeSeverity
CalculationError

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​

TypeSeverity
CalculationError

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.