Добрый день,! Появилась такая проблема: при интеграции с другой внутренней системой в базе данных создаются проекты в обход клиента. При создании, каждому новому проекту присваивается номер на 1 больше текущего максимального. Проблема в том, что при создании проектов на клиенте игнорируются номера присвоенные проектам при создании через бд. Можно ли как то обойти эту проблему?
Нравится
Вероятно у Вас есть системная настройка с названием вроде «Текущий номер проекта», её также надо обновлять.
"Зверев Александр" написал:Вероятно у Вас есть системная настройка с названием вроде «Текущий номер проекта», её также надо обновлять.
Как её можно обновлять скриптами при запуске системы?
Например, завязаться на событие OnPrepare страницы главного окна wnd_Main. То есть в функцию wnd_MainOnPrepare дописать вывод своей функции, которая вычисляет актуальный номер и пишет в системную настройку.
Читать значение настройки можно функцией GetSystemParameterValueEx, писать — SetSystemParameterValue.
Штатно вычисляется текущий номер и сразу увеличивается на 1 при помощи функции GenerateSystemNumber, можете посмотреть пример работы с системными настройками и там.
Если интеграция с другой системой идёт в момент, когда не запущен Terrasoft и сделана на уровне БД, можно просто менять значение записи в БД в таблице tbl_SystemSetting.
Большое спасибо, первый вариант нашёл сам, а второй - то что нужно.