@Transactional
  public void run(IndicatorGeneratorGrouping indicatorGeneratorGrouping) throws AxelorException {

    String log = "";

    String result = "";

    for (IndicatorGenerator indicatorGenerator :
        indicatorGeneratorGrouping.getIndicatorGeneratorSet()) {

      indicatorGeneratorService.run(indicatorGenerator);

      result =
          result
              + "\n"
              + indicatorGenerator.getCode()
              + " "
              + indicatorGenerator.getName()
              + " : "
              + indicatorGenerator.getResult();

      if (indicatorGenerator.getLog() != null && !indicatorGenerator.getLog().isEmpty()) {
        log = log + "\n" + indicatorGenerator.getLog();
      }
    }

    indicatorGeneratorGrouping.setResult(result);

    indicatorGeneratorGrouping.setLog(log);

    save(indicatorGeneratorGrouping);
  }