code: @Override
    public final synchronized EPeriod evalBalanceStorePeriod(
      final Map<String, Object> pAddParam) throws Exception {
      if (!lazyGetBalanceAtAllDirtyCheck(pAddParam).getBalanceStorePeriod()
        .equals(getSrvAccSettings().lazyGetAccSettings(pAddParam)
          .getBalanceStorePeriod())) {
        getLogger().info(null, SrvBalanceStd.class,
          "changing period from " + this.balanceAtAllDirtyCheck
            .getBalanceStorePeriod() + " to " + getSrvAccSettings()
              .lazyGetAccSettings(pAddParam).getBalanceStorePeriod());
        this.balanceAtAllDirtyCheck
          .setBalanceStorePeriod(getSrvAccSettings().lazyGetAccSettings(pAddParam)
            .getBalanceStorePeriod());
        this.balanceAtAllDirtyCheck.setIsPeriodChanged(true);
        this.balanceAtAllDirtyCheck
          .setCurrentBalanceDate(initDate);
        getSrvOrm()
          .updateEntity(pAddParam, this.balanceAtAllDirtyCheck);
      }
      return this.balanceAtAllDirtyCheck.getBalanceStorePeriod();
    }
docs: <p>Evaluate period of stored balances according settings,
  if it's changed then it switch on "current balances are dirty".</p>
  @param pAddParam additional param
  @return pPeriod EPeriod e.g. MONTHLY
  @throws Exception - an exception