docs: public final void refreshCatalogsFilters(final Map<String, Object> pRqVs,
      final List<TradingCatalog> pCurrentList) throws Exception {
      for (TradingCatalog tc : pCurrentList) {
        if (tc.getCatalog().getUseAvailableFilter()
            || tc.getCatalog().getUseFilterSpecifics()
              || tc.getCatalog().getUseFilterSubcatalog()
                || tc.getCatalog().getUsePickupPlaceFilter()) {
          if (tc.getCatalog().getUseFilterSpecifics()) {
            CatalogSpecifics cs = new CatalogSpecifics();
            cs.setItsOwner(tc.getCatalog());
            pRqVs.put("CatalogSpecificsitsOwnerdeepLevel", 1); //only ID
            tc.getCatalog().setUsedSpecifics(getSrvOrm().retrieveListForField(
              pRqVs, cs, "itsOwner"));
            pRqVs.remove("CatalogSpecificsitsOwnerdeepLevel");
          }
          propagateCatalogSettings(tc);
        } else if (tc.getSubcatalogs().size() > 0) {
          tc.getCatalog().setUsedSpecifics(null); //reset if not null
          //recursion:
          refreshCatalogsFilters(pRqVs, tc.getSubcatalogs());
        } else {
          tc.getCatalog().setUsedSpecifics(null); //reset if not null
        }
      }
    }