каюсь... нету времени расписать всю идею в деталях... Сечас попробую в двух словах - модуль состоит из интерфейсной части и API. Интерфейсная составляющая позволяет просматривать и редактировать данные в таблицах не покидая битрикс (ясен перец PHPMyAdmin круче, но и у нас будут интересные фичи и баги), а API позволяет управлять таблицами методами похожими на API Информационных Блоков. Если вам для проекта требуется использование обычных таблиц (ИБ по каким-то причинам не устраивают) или же требуется написать модуль, то встаёт задача написать набор функций для общения с БД, вот их приходится основывать либо на голом SQL, либо попытаться прикрутить чтонибудь наподобие пропела или доктрина. API BitrixTables позволяет делать например выборки из БД намного проще:
Из преимуществ перед СDatabase как минимум встроенное кэширование, ето раз, встроенные проверки - например при попытки добавлении столбца будет выполнена проверка на существование с таким именем, это два и на третье - просто удобнее - аналог следующей операции на SQL я думаю будет менее читабелен:
Кстати, небольшой оффтоп про выборки из таблиц и в частности про GetList: в Битриксе есть ряд замечательных методов, объединенных названием PrepareSQL (например CGroup::PrepareSQL). Любой из этих методов позволяет сделать полноценную функцию GetList (со всеми группировками, объединениями, сортировками и фильтрами) для своих таблиц за пять минут.
Создание GetList-а сводится лишь к заполнению специального массива заданной структуры. Причем такой подход оказывается удивительно гибким. В частности, удавалось создавать GetList-ы с возможностью генерации иерархических запросов, использования аналитических функций и т.д. И, опять же, все что для этого потребовалось, это правильно поиграться с тем самым массивом.
Плюс, в теории, написанные таким образом GetList-ы будут расширять свою функциональность вместе с соответствующими обновлениями Битрикса.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».