docs: public final String revealWhereCatalog(final TradingCatalog pTcat,
      final FilterItems<CatalogGs> pFilterCatalog) throws Exception {
      List<CatalogGs> subcgsAll = new ArrayList<CatalogGs>();
      subcgsAll.add(pTcat.getCatalog());
      if (pFilterCatalog != null && pFilterCatalog.getOperator() != null
        && pFilterCatalog.getItems().size() > 0) {
        for (CatalogGs cgs : pFilterCatalog.getItems()) {
          TradingCatalog tcat = findTradingCatalogById(this.catalogs,
            cgs.getItsId());
          subcgsAll.add(cgs);
          copySubcatalogsGs(tcat, subcgsAll);
        }
      } else {
        copySubcatalogsGs(pTcat, subcgsAll);
      }
      Set<CatalogGs> subcgs = new HashSet<CatalogGs>();
      for (CatalogGs cgs : subcgsAll) {
        if (!cgs.getHasSubcatalogs()) {
          subcgs.add(cgs);
        }
      }
      if (subcgs.size() > 1) {
        StringBuffer sb = new StringBuffer(" in ("
          + pTcat.getCatalog().getItsId());
        for (CatalogGs cgs : subcgs) {
          sb.append("," + cgs.getItsId());
        }
        sb.append(")");
        return sb.toString();
      } else {
        return "=" + subcgs.iterator().next().getItsId();
      }
    }