How to Delete Deployed Calculation Flow
Like in the UI, deployed calculation flows (CF) cannot be deleted by users. You can only create a new empty CF with the same name and the CF processor will delete both.Â
import net.pricefx.automation.MyClient import net.pricefx.automation.TypeCode import net.pricefx.automation.automations.CalculationFlowsAutomation import net.pricefx.automation.automations.GenericAutomation import net.pricefx.integration.api.client.builder.FilterCriteriaBuilder import net.pricefx.integration.api.client.model.CalculationFlow import net.pricefx.integration.api.client.model.FilterCriteria import staticnet.pricefx.integration.api.client.builder.CriteriaBuilder.equal; // TODO - you need to rewrite this code to use proper PriceFxClient - to link to your specific environment def clients = MyClient.getClients("QA", [     "companyname", ], false); // TODO - change CF name here def CF_Name_TO_BE_DELETED = "test" FilterCriteriacriteriaDeployed = newFilterCriteriaBuilder()     .and()     .with(equal("uniqueName", CF_Name_TO_BE_DELETED))     .with(equal("draft", false))     .create(); FilterCriteria criteriaDraft = newFilterCriteriaBuilder()     .and()     .with(equal("uniqueName", CF_Name_TO_BE_DELETED))     .with(equal("draft", true))     .create(); for (MyClient client : clients) {   println(CF_Name_TO_BE_DELETED + "tobedeleted")   def cfDraft = CalculationFlowsAutomation.fetchCalculationFlow(client, criteriaDraft)   def cfDeployed = CalculationFlowsAutomation.fetchCalculationFlow(client, criteriaDeployed)   if (cfDraft) {     CalculationFlowsAutomation.deleteCalculationFlow(client, cfDraft)   }   if (cfDeployed) {     cfDeployed.setFlowId(null) cfDeployed.setConfiguration(null)     CalculationFlowsAutomation.addCalculationFlow(client, cfDeployed)   } }
Found an issue in documentation? Write to us.
Â