Как устроен Руководитель?

Все вопросы/проблемы по установке и использовании.
КонстантинН
Сообщения: 118
Зарегистрирован: 06 авг 2019, 17:19
Имя: Константин
Откуда: РФ

Как устроен Руководитель?

Сообщение КонстантинН »

Добрый день, коллеги!
Продолжаю изучать Руководителя и не перестаю восхищаться системой и ее разработчиком! Сергей, огромное благодарность Вам за Ваш труд!

В этой ветке форума, предлагаю обсуждать технические нюансы системы для тех кто хочет залезть глубже.

Собственно вопросы технического характера, которые у меня появились:
1) Правильно я понимаю, что тип поля "автоматический статус" использует встроенный в БД функционал, т.н. "Тригеры"?
2) Правильно я понимаю, что "автоматизация" = "хранимые процедуры"?
3) Правильно я понимаю, что "ID поля" - это первичный ключ и никакое другое поле нельзя назначить первичным ключом?
4) Правильно я понимаю, что "ID сущности" - это имя таблицы в БД его нельзя изменить?
Аватара пользователя
support
Техническая поддержка
Сообщения: 9083
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Как устроен Руководитель?

Сообщение support »

1) Нет. Это набор условий, которые проверяются при добавлении/редактировании записи.
2) Нет. Это набор правил, которые срабатывают при нажатии на кнопку.
3) Да
4) ID сущности - это тоже первичный ключ.
КонстантинН
Сообщения: 118
Зарегистрирован: 06 авг 2019, 17:19
Имя: Константин
Откуда: РФ

Re: Как устроен Руководитель?

Сообщение КонстантинН »

т.е. тригеры и хранимые функции Руководитель не использует? А их можно задать в СУБД и вызывать из Руководителя?

а почему нельзя в качетсве первичного ключа другое поле назначить? Это было бы удобно, например, при получении данных через API.
Аватара пользователя
Евгений
Сообщения: 455
Зарегистрирован: 11 июл 2016, 13:21
Имя: Евгений
Откуда: Петропавловск-Камчатский

Re: Как устроен Руководитель?

Сообщение Евгений »

КонстантинН писал(а): 14 авг 2019, 13:29 т.е. тригеры и хранимые функции Руководитель не использует? А их можно задать в СУБД и вызывать из Руководителя?
Можно или нет - это разработчик ответит, а я хранимками постоянно пользуюсь, вызываю их из формульных полей когда надо подсчитать что-то сложное, что ещё не реализовано в Руководителе.
Аватара пользователя
support
Техническая поддержка
Сообщения: 9083
Зарегистрирован: 19 окт 2014, 18:22
Имя: Харчишин Сергей
Откуда: Крым, Евпатория

Re: Как устроен Руководитель?

Сообщение support »

а почему нельзя в качетсве первичного ключа другое поле назначить? Это было бы удобно, например, при получении данных через API.
Тут я что то не понял о чем речь.
КонстантинН
Сообщения: 118
Зарегистрирован: 06 авг 2019, 17:19
Имя: Константин
Откуда: РФ

Re: Как устроен Руководитель?

Сообщение КонстантинН »

Евгений писал(а): 15 авг 2019, 03:00
КонстантинН писал(а): 14 авг 2019, 13:29 т.е. тригеры и хранимые функции Руководитель не использует? А их можно задать в СУБД и вызывать из Руководителя?
Можно или нет - это разработчик ответит, а я хранимками постоянно пользуюсь, вызываю их из формульных полей когда надо подсчитать что-то сложное, что ещё не реализовано в Руководителе.
А триггеры не пробовали использовать? Например, для изменения записи в одной сущности при добавлении записи в другой сущности?
КонстантинН
Сообщения: 118
Зарегистрирован: 06 авг 2019, 17:19
Имя: Константин
Откуда: РФ

Re: Как устроен Руководитель?

Сообщение КонстантинН »

support писал(а): 15 авг 2019, 07:07
а почему нельзя в качетсве первичного ключа другое поле назначить? Это было бы удобно, например, при получении данных через API.
Тут я что то не понял о чем речь.
Имею ввиду, если есть поле с уникальными значениями (например, ИНН), можно его назначить первичным ключом?
Аватара пользователя
Евгений
Сообщения: 455
Зарегистрирован: 11 июл 2016, 13:21
Имя: Евгений
Откуда: Петропавловск-Камчатский

Re: Как устроен Руководитель?

Сообщение Евгений »

КонстантинН писал(а): 15 авг 2019, 10:49
Евгений писал(а): 15 авг 2019, 03:00
КонстантинН писал(а): 14 авг 2019, 13:29 т.е. тригеры и хранимые функции Руководитель не использует? А их можно задать в СУБД и вызывать из Руководителя?
Можно или нет - это разработчик ответит, а я хранимками постоянно пользуюсь, вызываю их из формульных полей когда надо подсчитать что-то сложное, что ещё не реализовано в Руководителе.
А триггеры не пробовали использовать? Например, для изменения записи в одной сущности при добавлении записи в другой сущности?
Да, использовал очень много. Но потом отказался от этой практики и ограничился только штатными средствами Руководителя. По результатам эксплуатации, пришел к выводу что использовать триггеры на встроенных таблицах Руководителя увеличивает риски ошибок. Можно не учесть различные тонкости во время прямой работы с БД, которые знает разработчик.

Поэтому работать напрямую с таблицами сущностей в БД нежелательно, лучше делать это только со своими собственными таблицами. Отправил вам в личку архив с некоторыми примерами моих хранимок. Посмотрите на файл "ruk-OutFile.sql", там как раз в базе Руководителя создаётся отдельная таблица и триггеры пишут уже в неё.
КонстантинН
Сообщения: 118
Зарегистрирован: 06 авг 2019, 17:19
Имя: Константин
Откуда: РФ

Re: Как устроен Руководитель?

Сообщение КонстантинН »

Спасибо большое! Файлы получил!

Я бы тоже не хотел так глубоко лазить, но вот не могу придумать как менять значение поля в одной сущности в момент появления записи в другой сущности.
Банальный пример: в карточке клиента нужно вывести запись "последняя заявка" с полями "Тема", "Дата" и "Статус" из сущности "заявки" (при этом в самой заявке нет ID клиента, только ИНН).
Может что-то посоветуете?
КонстантинН
Сообщения: 118
Зарегистрирован: 06 авг 2019, 17:19
Имя: Константин
Откуда: РФ

Re: Как устроен Руководитель?

Сообщение КонстантинН »

Коллеги, подскажите, а может Руководитель работать на PostgreSQL вместо MySql? Хотя бы теоретически)))
Ответить