Недокументированные возможности Terrasoft CRM 3.x

В продолжение темы https://community.terrasoft.ru/forum/topic/9832, предлагаю организовать тему-справочник недокументированных возможностей Terrasoft CRM 3.x
Надеюсь на участи разработчиков ядра.:smile:

Нравится

8 комментариев

Для начала
В сервисе SelectQuery (sq_), в поле типа "Колонка с текстом SQL", в качестве нужной таблицы указать конструкцию типа

<!tbl_...!>

, то ядро системы сделает подмену таблицы на представление для пользователей без прав администратора

Бывают частые ситуации, когда нужно сделать сложный отчет, но обычными сервисами tbl_ не обойтись, тогда можно сделать соответствующее представление на стороне сервера, в TSAdmin сделать сервис Table с именем таким же как и представление, описать все поля, но не сохранять структуру в БД. После этого эту таблицу можно использовать для работы и отчетов.
Что-бы эта таблица (представление) имела связи с другими разделами системы, то достаточно указать связи, но опять-таки не сохранять структуру в БД.

"Евгений Либин" написал:
ядро системы сделает подмену таблицы на представление для пользователей без прав администратора


Где ж вы были с этим советом пару лет назад?? В каких версиях, кстати это срабатывает?

Я сам только вчера об этом узнал http://www.community.terrasoft.ru/forum/topic/9832#comment-42529
В принципе, эта новость и дала идею сделать такую тему, но что-то мне кажется что разработчики не особо хотят делиться своими секретами.

Мда, сколько мороки было, чтоб не использовать колонку с текстом SQL когда это было просто и удобно... И костыли писали, чтоб текст в колонке подменяли в зависимости от ранга пользователя. А вот кто то нехороший и недобрый в поддержке или разработке все знал и посмеивался:confused:

А где же разработчики Terrasoft CRM?
Я так рассчитывал на их комментарии.

"Евгений Либин" написал: В каких версиях, кстати это срабатывает?

Начиная с 3.4, для колонок с текстом SQL реализовали кнопку "Добавить таблицу":
/system/files/27-09-2013_12-44-40.png
При добавлении таблицы через данную опцию она вставляется в виде

<!tbl_...!>

"Евгений Либин" написал:В сервисе SelectQuery (sq_), в поле типа "Колонка с текстом SQL", в качестве нужной таблицы указать конструкцию типа

, то ядро системы сделает подмену таблицы на представление для пользователей без прав администратора

Спасибо, не знал.

Но у этой недокументированной возможности есть ещё более недокументированная особенность.

Создал в таблице custom SQL колонку с этой конструкцией в названии таблицы. В гриде отображается нормально, работает и под админом, и под пользователем.

Но когда попытался применить по ней фильтр в блоке слева снизу, ругнулось на символ "меньше" как на синтаксическую ошибку. Значит, в фильтре не работает.

Пришлось делать в колонке вызов хранимой функции с нужным условием.

Показать все комментарии