diff --git a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/generator/impl/ParameterGenerator.java b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/generator/impl/ParameterGenerator.java index 4c718f5d..68b3d6a0 100644 --- a/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/generator/impl/ParameterGenerator.java +++ b/io.sc.engine.rule.core/src/main/java/io/sc/engine/rule/core/code/generator/impl/ParameterGenerator.java @@ -307,11 +307,12 @@ public class ParameterGenerator { for (Parameter parameter : parameters) { if(ParameterType.INDICATOR.equals(parameter.getType())){ IndicatorParameter indicatorParameter =(IndicatorParameter)parameter; - sb.append("this.").append(IdReplacer.fieldName(parameter.getCode())); + String fieldName =IdReplacer.fieldName(parameter.getCode()); + sb.append("if(this.").append(fieldName).append("==null){ this.").append(fieldName); sb.append(" ="); sb.append("libs.get(\"").append(IdReplacer.varName(indicatorParameter.getLibCode(),indicatorParameter.getLibVersion())).append("\")"); sb.append(".").append(IdReplacer.fieldName(indicatorParameter.getIndicatorCode())); - sb.append(";").append("\n"); + sb.append("; }").append("\n"); } } return sb.toString();