# Test a Logic Executes a draft logic for a given approvable and calculates the result. This command is used to test a logic during editing (the "Test Logic" button in IntelliJ Pricefx Studio). The backend will compile and execute the test logic (specified in the testFormula property) without persisting it in the database. Endpoint: POST /formulamanager.testexec Security: basic, X-PriceFx-jwt ## Request fields (application/json): - `data` (object, required) - `data.targetDate` (string) - `data.testFormula` (object, required) The Formula object. The type code is F. - `data.testFormula.lastUpdateByName` (string) - `data.testFormula.createdByName` (string) - `data.testFormula.typedId` (string) - `data.testFormula.lastUpdateDate` (string) - `data.testFormula.label` (string) - `data.testFormula.formulaNature` (string) - `data.testFormula.version` (integer) - `data.testFormula.simulationSet` (string) - `data.testFormula.uniqueName` (string) - `data.testFormula.formulaType` (string) Enum: "PRICING", "WORKFLOW", "LIBRARY" - `data.testFormula.createdBy` (integer) - `data.testFormula.elements` (array) - `data.testFormula.elements.elementName` (string) - `data.testFormula.elements.elementLabel` (string) - `data.testFormula.elements.elementDescription` (string) - `data.testFormula.elements.elementGroups` (array) - `data.testFormula.elements.conditionElementName` (string) - `data.testFormula.elements.hideWarnings` (boolean) - `data.testFormula.elements.excludeFromExport` (boolean) - `data.testFormula.elements.protectedExpression` (boolean) - `data.testFormula.elements.elementTimeout` (integer) - `data.testFormula.elements.displayOptions` (integer) - `data.testFormula.elements.formatType` (string) Enum: "NUMERIC", "NUMERIC_LONG", "MONEY", "PERCENT", "TEXT", "MONEY_EUR", "MONEY_USD", "MONEY_GBP", "MONEY_JPY", "MONEY_CHF", "MONEY_PLN", "DATETIME", "DATE", "INTEGER", "LINK", "COMPLEX", "SPARKLINE" - `data.testFormula.elements.elementSuffix` (string) - `data.testFormula.elements.allowOverride` (boolean) - `data.testFormula.elements.summarize` (boolean) - `data.testFormula.elements.hideOnNull` (boolean) - `data.testFormula.elements.userGroup` (string) - `data.testFormula.elements.cssProperties` (string) - `data.testFormula.elements.resultGroup` (string) - `data.testFormula.elements.combinationType` (string) Enum: "ADD", "SUBTRACT", "RESULT", "INFO", "FUNCTION", "BRICK", "PYTHON" - `data.testFormula.elements.criticalAlert` (object) - `data.testFormula.elements.criticalAlert.message` (string) - `data.testFormula.elements.criticalAlert.operator` (string) - `data.testFormula.elements.criticalAlert.threshold` (number) - `data.testFormula.elements.criticalAlert.comparisonElement` (string) - `data.testFormula.elements.redAlert` (object) - `data.testFormula.elements.yellowAlert` (object) - `data.testFormula.elements.labelTranslations` (string) - `data.testFormula.elements.createDate` (string) - `data.testFormula.elements.lastUpdateBy` (integer) - `data.testFormula.elements.formulaExpression` (string) - `data.testFormula.userGroupEdit` (string) - `data.testFormula.userGroupViewDetails` (string) - `data.testFormula.validAfter` (string) - `data.testFormula.inputDescriptors` (array) - `data.testFormula.inputDescriptors.name` (string) - `data.testFormula.inputDescriptors.group` (string) - `data.testFormula.inputDescriptors.dataType` (string) - `data.testFormula.inputDescriptors.inputType` (string) - `data.testFormula.inputDescriptors.from` (string) - `data.testFormula.inputDescriptors.to` (string) - `data.testFormula.inputDescriptors.values` (string) - `data.testFormula.inputDescriptors.required` (boolean) - `data.testFormula.inputDescriptors.alwaysEditable` (boolean) - `data.testFormula.status` (string) Enum: "ACTIVE", "SIMULATIONONLY", "INACTIVE" - `data.knownElements` (array) - `data.productSKU` (string) - `data.item` (string) - `data.items` (array) - `data.nature` (string) - `data.natureValue` (string) - `data.headerPhases` (object) - `data.allResults` (boolean) - `data.type` (string) - `data.debugPort` (string) - `data.allowObjectMods` (boolean) - `data.selectedRows` (array) - `data.formulaFilterParam` (string) - `data.forceLineRecalculation` (boolean) Used by PFX Studio for Header logics only. ## Response 200 fields (application/json): - `response` (object) - `response.node` (string) - `response.data` (array) - `response.data.elementName` (string) - `response.data.elementLabel` (string) - `response.data.elementResultDescription` (string,null) - `response.data.traceMessages` (string,null) - `response.data.alertMessage` (string,null) - `response.data.warnings` (array,null) - `response.data.alertType` (string,null) - `response.data.displayOptions` (integer) - `response.data.formatType` (string,null) - `response.data.overridden` (boolean) - `response.data.overridable` (boolean) - `response.data.summarize` (boolean) - `response.data.hideOnNull` (boolean) - `response.data.hideWarnings` (boolean) - `response.data.excludeFromExport` (boolean) - `response.data.userGroup` (string,null) - `response.data.resultGroup` (string,null) - `response.data.labelTranslations` (string,null) - `response.data.suffix` (string,null) - `response.data.cssProperties` (string,null) - `response.data.cellStyles` (string,null) - `response.data.overrideValueOptions` (string,null) - `response.data.overrideAllowEmpty` (boolean) - `response.data.fieldType` (integer) - `response.data.resultType` (string) - `response.data.elementResultClass` (string,null) - `response.data.elementResult` (string,null) - `response.status` (integer)