protected void copyValue(JRFillSubreportReturnValue returnValue) {
    try {
      JRFillVariable variable = filler.getVariable(returnValue.getToVariable());
      Object value = subreportFiller.getVariableValue(returnValue.getSubreportVariable());

      Object newValue =
          returnValue
              .getIncrementer()
              .increment(variable, value, AbstractValueProvider.getCurrentValueProvider());
      variable.setOldValue(newValue);
      variable.setValue(newValue);
      variable.setIncrementedValue(newValue);
    } catch (JRException e) {
      throw new JRRuntimeException(e);
    }
  }