В один плохой момент перестал сохранятся Dataset. на Post() вылетает ошибка: ReservedOfferingDataset.Post() Ошибка сохранения записи. Оригинальное сообщение об ошибке: '20,28' некорректное значение с плавающей точкой для поля 'ModifiedByID'. Допустимый размер 15, точность 0
сервисы резервирования
в последнее время не изменялись, в каких случаях появляется такая ошибка?

Нравится

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

ModifiedByID содержит GUID, откуда там плавающая точка и число??
Посмотрите профайлером запрос, либо он кривой и из датасета система реально пытается писать в поле с типом GUID дробное число (тогда виновник - код, откуда вызывается такой запрос или сам датасет).
В датасете данное поле проверьте если есть, в сервисе таблицы и в самой таблице в базе данных - тип правильный должен быть везде.

Здравствуйте, Виталий!

Очень похоже, что описанная Вами проблема возникает из-за того, что где-то в скрипте полю ModifiedByID присваивается некорректное значение.

Для решения проблемы рекоммендую Вам отладиться.

1. С помощью SQL Profiler отследить, какой запрос поступает в этот момент в базу данных.
2. Отладить скрипты конфигурации с помощью Debugger'а.

В Debugger'е смотрел на то поле - обычное GUID, сделал запрос по нем - показало контакта, все хорошо, сейчас SQL Profiler посмотрю
Сейчас уже увидел, что не сохраняется уже сама карточка резервирования, просто не дебаггер вылетает а обычное предупреждение(и не срабатывает кнопка ОК)

в SQL Profiler нет даже запроса на обновление или добавление, просто 4 селекта

Нашел решение, ошибка совсем в другом поле, увеличил точность в поле DS с 0 до 4 и ошибка пропала...
Причем тут ModifiedByID так и не понял

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

Как узнать какая версия IE используется в данном компоненте?
И как обновить ее на более новую ?

Нравится

1 комментарий

Здравствуйте!

Рекомендую поискать нужную Вам информацию на сайте msdn
А также ознакомится со статьями ниже:

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

Добрый день! Создали и настроили свой новый раздел планирования, но при создании в мастере не выбран признак "Администрируется" (рис. master_redaktirovaniya) и сейчас раздел виден всем пользователям, возможно потому, что все таблицы создавались вручную, и теперь права на раздел регулировать через Администрирование не получается. Подскажите, пожалуйста, как можно восстановить\создать связь этого раздела с администрированием или возможно есть другие варианты настройки отображения уже настроенного раздела? Также интересно каким образом можно удалить не нужные разделы, что бы больше они не отображались в администрировании (рис. prava_na_razdely).

Нравится

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

Откройте Terrasoft Administator и найдите свою таблицу tbl_VipPlanning. Откройте ее, после чего установите признак [Администрируется по записям] и сохраните таблицу из сохранением в БД.

В разделе [Администрирование], закладки [Права доступа к группам таблиц] присутствует кнопка [Удалить], с ее помощью можете удалить необходимую запись.

Хочу предупредить, что любое изменение в базовой логике, может привести в последующем к возникновению проблем. Я бы их просто не трогал.

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

Здравствуйте, Антон Сергеевич!

Попробуйте очистить кеш: %AppData%\Roaming\Terrasoft\3.4.1\Cache.

Если после чистки кеша программы проблема останется, то попробуйте ещё удалить профиль: %AppData%\Roaming\Terrasoft\3.4.1\Profile.
Если профиль пользователя хранится в базе данных, тогда для тестового пользователя нужно очистить записи в таблице tbl_ProfileData.

Обратите внимание, что чистка профиля приведет к тому, что индивидульные настройки пользователя (например, настройки колонок) будут сброшены, вместо них будут настройки по умолчанию.

Профиль пользователя пуст и кеш тоже, как и всех остальных, мы тестируем на тестовом сервере...

Может, в таблицах раздела, который создали вручную, не прописана или прописана не везде группа таблиц? Сравните в «Администраторе» таблицы в этом и в каком-то стандартном разделе, всё ли сделано аналогично.

Спасибо большое! Неправильно была указана группа таблиц

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

Уважаемые, почему такое может быть?
Время от времени выскакивает вот такая ошибка:
Ошибка КЛ
Что делали:
- Лицензии перезаказывали.
- Тайминги (пинги) до сервера проверяли, всё ок
- Сервер sql не загружен.

TS 3.4.0.130

Нравится

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

Здравствуйте.

Какое значение содержит системная настройка UpdateActiveSessionPeriod?
Свободные конкурентные лицензии присутствуют, в момент появления окна сообщения?

"Терещук Павел" написал:Какое значение содержит системная настройка UpdateActiveSessionPeriod?
Свободные конкурентные лицензии присутствуют, в момент появления окна сообщения?

UpdateActiveSessionPeriod = 10
Да, присутствуют.

Очистите таблицу tbl_CompetitiveSession и установите большее значение для системной настройки UpdateActiveSessionPeriod

"Терещук Павел" написал:Очистите таблицу tbl_CompetitiveSession и установите большее значение для системной настройки UpdateActiveSessionPeriod

Павел, спасибо! Попробуем...

"Терещук Павел" написал:

Очистите таблицу tbl_CompetitiveSession и установите большее значение для системной настройки UpdateActiveSessionPeriod


Павел, здравствуйте!
Таблица tbl_CompetitiveSession у нас вообще была пустая. Большее значение для системной настройки UpdateActiveSessionPeriod проблему не решает.

Здравствуйте, Евгений!

Данное сообщение возникает из-за того, что при использовании конкурентных лицензий в Terrasoft 3.X происходит учет времени неактивности сотрудника в системе. Системная настройка, в которой указывается значение, в течение которого лицензия может быть неактивна, называется 'UpdateActiveSessionPeriod' и выставляется администратором Terrasoft. В случае, если Вы длительное время не обращались к базе, система отключит Вас для того, чтобы другие пользователи смогли входить в систему, используя занятую Вами лицензию.

Как следствие - после длительного перерыва в работе Вы снова обращаетесь к базе, но в данный момент система Вас уже отсоединила, и Вы не можете передать\получить данные.

Уточните, пожалуйста, для какого максимального значения UpdateActiveSessionPeriod Вы выполняли проверку?

Настройка UpdateActiveSessionPeriod, насколько мы понимаем, отвечает за интервал, через который сервер отключает пользователя, независимо от активности. При работе с системой у сотрудников, сидящих под конкурентными лицензиями, во время работы выскакивает окно с примерно следующим содержанием: "Сервер прервал соединение. Присоединиться заново?" и варианты Да/Нет. Пользователь нажимает Да и продолжает работу. Так вот, время от времени вместо этого вопроса и возникает злополучное окно с ошибкой конкурентных лицензий.

UpdateActiveSessionPeriod увеличили со стандартных 5 до 10. Пробовали при 15, результат тот же. Это происходить при активной работе пользователя в системе.

"Токарев Евгений Евгеньевич" написал:

Настройка UpdateActiveSessionPeriod, насколько мы понимаем, отвечает за интервал, через который сервер отключает пользователя, независимо от активности. При работе с системой у сотрудников, сидящих под конкурентными лицензиями, во время работы выскакивает окно с примерно следующим содержанием: "Сервер прервал соединение. Присоединиться заново?" и варианты Да/Нет. Пользователь нажимает Да и продолжает работу. Так вот, время от времени вместо этого вопроса и возникает злополучное окно с ошибкой конкурентных лицензий.


Это сообщение возникает из-за того, что клиентское приложение по какой-то причине не смогло восстановить соединение. Одной из таких причин может быть, например, то, что данная конкурентная лицензия уже недоступна, так как занята другим пользователем.

"Токарев Евгений Евгеньевич" написал:

UpdateActiveSessionPeriod увеличили со стандартных 5 до 10. Пробовали при 15, результат тот же. Это происходить при активной работе пользователя в системе.

Для решения проблемы попробуйте UpdateActiveSessionPeriod установить значение 60. Это значит, что в течение простоя в 60 минут, лицензия будет активна и такое сообщение не появится.

"Савельева Алла" написал:Для решения проблемы попробуйте UpdateActiveSessionPeriod установить значение 60. Это значит, что в течение простоя в 60 минут, лицензия будет активна и такое сообщение не появится.

Алла, спасибо! Попробуем.

Добрый день.

Тоже столкнулись с появлением такой ошибки.
UpdateActiveSessionPeriod = 60.
Конкурентных лицензий достаточно. С чем связано ее появление?

Можно увеличить значение системной настройки более чем на 60 мин ?

Здравствуйте, Анна!

Как я уже писала в данном посте, появление такого сообщения говорит о том, что по какой-то причине клиентское приложение не смогло повторно соединиться с сервером.

В каждом отдельном случае нужно разбираться индивидуально почему возникла такая ситуация.
В большинстве случаев, вероятнее всего, что данная конкурентная лицензия уже недоступна, так как занята другим пользователем.

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

Насчет увеличения значения системной настройки, да его нужно увеличить. Например, для нашей внутренней версии Terrasoft значение параметра UpdateActiveSessionPeriod = 540.

Алла, спасибо за информацию.
Попробуем для начала увеличить период актуализации.
Если не поможет, будем ловить и анализировать запросы.

В наличии SQL сервер на базе Win2008 Server , где находится база, а работа осуществляется с другого, терминального сервера Win2016 Server. Ошибка конкурентных лицензий возникает с непонятной периодичностью и зависимостью, в т.ч. когда работает в базе всего лишь один-два пользователя при 10 лицензиях. Оба сервера работают в среде VMware ESXi

 

У нас последний год изменилась структура работы и теперь пользователи работают на одном терминальном сервере с установленным клиентом XRM, сама SQL - на отдельном сервере. Регулярно возникает Ошибка Конкурентных лицензий. Пока не отследил закономерность, но просматривая логи Security на SQL сервере заметил, что похоже у нас Ошибка Конкурентных Лицензий возникает при смене Logon ID. Для понимания, влияет ли Logon ID на выделенную лицензию?  Если да, то буду искать причину почему происходит переподключение к БД со сменой Logon ID.

 

Возможно, вместе со сменой LOGONID создаётся новая сессия, а старая остаётся открытой. Вот и превышается лимит одновременных подключений, разрешённый конкурентными лицензиями. Terrasoft 3.X специально под работу на терминальном сервере не тестировались.

Сессии конкурентных пользователей можно посмотреть в tbl_CompetitiveSession.

Коллеги! Решили у себя проблему "ошибка конкурентных лицензий".

Напомню, что у нас организован пул виртуальных серверов в ESXi, с терминальным доступом. Проблема заключалась в том, что мы использовали адресный алиас "sql" для сервера с SQL, соответственно для лицензирования конкурентных лицензий и при обращении клиентов XRM к серверу. После генерации лицензий на IP адрес, проблема исчезла. Вероятно на Primary Domain Controller возникали затыки при множественном обращении к БД и он рвал, и переподключал сессию образуя ошибку.

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

Добрый день!
У меня странная проблема. Я пользуюсь учеткой Supervisor, с сервера все отлично заходит. Но с другой машины заходить под этой же учеткой не хочет: выводит предупреждение "Ошибка открытия конфигурации.'Лицензия для модуля 'XXXX' не найдена'". Модули в тексте всегда меняются. Подобное наблюдал, когда лицензия истекает. Настройки к базе указаны верно, коннект есть. Лицензия на супервизора - конкурентная. Версия клиента та же, что и на сервере (бинарники те же).

Нравится

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

Добрый день,

первое, что необходимо выполнить в этом случае - перезаказать лицензии.

Спасибо за столько скорый ответ!
Но проблема, похоже, не в лицензиях.
Если в настройках конфигурации подключения к БД (даже с компьютера, с которого происходит успешное подключение) добавить к имени сервера (указать) номер порта, то он также будет успешно проходить тест на подключение к БД и так же будет при запуске приложения выводить предупреждение "Ошибка открытия конфигурации.'Лицензия для модуля 'XXXX' не найдена'"; а если порт убрать - то все становится ОК (естественно, справедливо это только для локальной машины, ибо с удаленной необходимо указывать порт, в противном случае - не может открыть соединение с SQL Server). Видимо лицензии чувствительны к имени сервера, где расположена база.
Проблему пока еще не решил.

"Евгений Дудка" написал:Видимо лицензии чувствительны к имени сервера, где расположена база

В этом и смысл сервера сессий для конкурентных лицензий. Смотрите что там прописано.
Настройка в менеджере лицензий во вкладке [Конкурентные и специальные] есть кнопка [Сервер сессии].

"Александр Кудряшов" написал:
В этом и смысл сервера сессий для конкурентных лицензий. Смотрите что там прописано.

Настройка в менеджере лицензий во вкладке [Конкурентные и специальные] есть кнопка [Сервер сессии].

У меня там прописано "Использовать текущее подключение".
Если прописать вручную "указанное подключение", то, если в "имя сервера" дописать номер порта, то ругаться на лицензии будет везде, а без указания порта - работает также, как и при выбранном "Использовать текущее подключение": на локальном компьютере входит, а на удаленном (находящимся в одной локальной сети) - ругается на лицензии.
Пробовал на удаленном компьютере прописать alias к серверу, но это не помогло.

Мне тогда надо перезаказать лицензии, но с произведенной настройкой в "Сервере сессий"?

Да, совершенно верно.

Огромное Вам спасибо!
Сделал согласно Вашим рекомендациям и посту #1 http://www.community.terrasoft.ru/forum/topic/8336 и с перезаказанными лицензиями все заработало.

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

Здравствуйте.

Не могу понять как блокируются кнопки редактирования wnd_OfferingInInvoiceGridArea в деталях реестра Счет. Проверял что возвращают базовые функции проверки прав: линцезия true, insert true и т.д. Если запускаю на прямую: "C:\Program Files (x86)\Terrasoft\Bin\TSClient.exe" \wnd=wnd_OfferingInInvoiceGridArea кнопки активны, только окно нерабочее, в него должны параметры прокидываться. Снимал флаги администрирования на tbl_OfferingInInvoice, была пустая группа таблиц проставлял Продукт не помогает.

Ни кто не знает в чем может быть проблема? Может из кода их руками разблокировать?

P.S. версия террасофта 3.4.0.190

Нравится

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

Добрый день Михаил!!!

кнопки на детали "Продукты в счете" становятся Активными после того как будет создан счет, и после того как пользователь выделит Счет, в реестре Счетов. Только после этого кнопки Добавить, Редактировать, Удалить становятся активными

"Власов Михаил Викторович" написал:

Добрый день Михаил!!!

кнопки на детали "Продукты в счете" становятся Активными после того как будет создан счет, и после того как пользователь выделит Счет, в реестре Счетов. Только после этого кнопки Добавить, Редактировать, Удалить становятся активными


Добрый день.

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

Какие изменения выполняли с данной схемой "wnd_OfferingInInvoiceGridArea", какие права установлены в схема таблицы "tbl_OfferingInInvoice". В профилере анализировали SQL запросы какие клиент посылает серверу? и какие ответы получает? данные вопросы анализировали. Так как если деталь создана и проинициализирована верно, кнопки Добавить, Изменить, Удалить блокироваться сами по себе не могут.

Плюс я бы проанализировал саму форму wnd_OfferingInInvoiceGridArea и проверил привязан ли Датасет к dlData, определены ли колонки, плюс в самом Датасете "ds_OfferingInInvoice" галочки "Добавить", "Редактирование", "Удаление", случайно не сняты?

"Борисов Михаил Евгеньевич" написал:конкретный счет

Если финальное состояние счета, может и блокируется умной логикой... уже не припомню сейчас есть ли оно в коробке

Или у вас эта деталь всегда заблокирована?

Александр, да деталь всегда заблокирована, под supervisor разблокирована.

Михаил, на таблице tbl_OfferingInInvoice сняты все галочки администрирования и выставлена группа таблиц Проекты(раньше там было пусто, но и тогда все было заблокировано). Сделал трасировку, не увидел ничего интересного:

exec sp_executesql N'exec [dbo].[tsp_ColumnsRightsEx] @objname = @P1',N'@P1 nvarchar(4000)',N'vw_Offering'
 
exec sp_executesql N'SELECT
	----------------
FROM
	[dbo].[tbl_OfferingInInvoice] AS [tbl_OfferingInInvoice]
LEFT OUTER JOIN
	[dbo].[tbl_Currency] AS [tbl_Currency] ON [tbl_Currency].[ID] = [tbl_OfferingInInvoice].[CurrencyID]
LEFT OUTER JOIN
	[dbo].[tbl_Unit] AS [tbl_Unit] ON [tbl_Unit].[ID] = [tbl_OfferingInInvoice].[UnitID]
LEFT OUTER JOIN
	[dbo].[vw_Offering] AS [tbl_Offering] ON [tbl_Offering].[ID] = [tbl_OfferingInInvoice].[OfferingID]
LEFT OUTER JOIN
	[dbo].[tbl_Tax] AS [tbl_Tax] ON [tbl_Tax].[ID] = [tbl_OfferingInInvoice].[TaxID]
WHERE([tbl_OfferingInInvoice].[InvoiceID] = @P1)
ORDER BY
	5 ASC',N'@P1 uniqueidentifier','68CAC3E8-CF90-4BA1-9757-B4FDBFD97E9B'

одинаково выдает под supervisor и мной.

"Борисов Михаил Евгеньевич" написал:Александр, да деталь всегда заблокирована, под supervisor разблокирована.

Если под Супервизором разблокированы кнопки а под пользователями заблокированы, то здесь только права не дают пользователю совершить действие над записями. Если стоит группа таблиц "Проекты", правда не знаю зачем, то нужно у данного пользователя и выше по иерархии (я не знаю как создавались и настраивались права) смотреть какие права розданы на Группу таблиц "Проекты". Так как если для данной таблице ничего не роздано по правам, то и создаваться, изменяться ничего не будет

Здравствуйте, Михаил!

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

Михаил, описался не проекты, а Продукты. Сами Продукты редактируются на ура, следовательно права раздаются хорошо и на детализацию.

Алла, пару часов ходил по шагам и так и не понял что там происходит, тонны кода.

Мое временное решение(которое имеет все шансы стать постоянным): создал свои кнопки, на которые не распространяется магия и связал их с кодом старых кнопок, все отлично работает, что косвенно указывает на правильно настроенные права на сущности: не дало бы редактировать, создавать записи.

Михаил,

К сожалению, сложно что-либо более конкретное порекоммендовать, не имея информации о том:

1) какое приложение Terrasoft Вы используете (например, Terrasoft CRM, Terrasoft Service Desk, Terrasoft Bank и т.д.);
2) вносились ли какие-либо доработки в Вашу конфигурацию для детали [Продукты];
3) воспроизводится ли подобная ситуация на чистой базе данных, развернутой из backup, который находится в инсталляции Terrasoft.

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

На данный момент у нас Terrasoft 3.3.2.307 SQL сервер 2008 10.0.6000.29 SP4 Standard Edition (64-bit).
Планируем обновить SQL-сервер до версии 2014.

Вопрос: для приложения\баз Terrasoft надо какие-нибудь манипуляции делать, может какие то подводные камни есть и нужна определенная последовательность действий?

Нравится

1 комментарий

При попытке зайти в систему Terrasoft 3.4 нам выдается ошибка вида :

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

Как разрешить эту проблему?

Нравится

1 комментарий

Здравствуйте, Дмитрий!

Ответ на этот вопрос предоставлен Вам в рамках обращения 0311784.

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

Добрый день!

Помогите, пожалуйста, решить следующую задачу:
Terrasoft: 3.3.1.163

Необходимо добавить в CRM в Контрагентов новые поля: кредитный лимит и отсрочка платежа
http://prntscr.com/9sh095
http://prntscr.com/9sh0g9
http://prntscr.com/9sh0q5

Спасибо!

Нравится

1 комментарий

Добрый день! Подскажите пожалуйста, как разграничить права группе пользователей на кнопку "Копировать" в каком-нибудь определенном разделе? Нужно сделать её недоступной.

Нравится

1 комментарий