**Describe the issue**
We have to set macro or to pass explicitly shard and replica name to create table in DatabaseReplicated

res += toString(info.table_id.uuid);
            info.expanded_uuid = true;
        }
        else if (info.ignore_unknown || info.expand_special_macros_only)
        {
            if (info.expand_special_macros_only)
                res += '{';
            res += macro_name;
            if (info.expand_special_macros_only)
                res += '}';
            info.has_unknown = true;
        }
        else
            throw Exception("No macro '" + macro_name +
                "' in config while processing substitutions in '" + s + "' at '"
                + toString(begin) + "' or macro is not supported here", ErrorCodes::SYNTAX_ERROR);
        pos = end + 1;
    }
    ++info.level;
    if (info.expand_special_macros_only)
        return res;
    return expand(res, info);
}
String Macros::getValue(const String & key) const
{
    if (auto it = macros.find(key); it != macros.end())
        return it->second;
    throw Exception("No macro " + key + " in config", ErrorCodes::SYNTAX_ERROR);
}
String Macros::expand(const String & s) const