Добрый день.

Есть несколько  вопросов по обслуживанию БД MSSQL.

1. Есть ли рекомендации вендора по обслуживанию таблиц CRM в БД? Например, как часто нужно обновлять статистику, перестраивать индексы и т.д.

2. Какой допустимый процент фрагментации индексов для таблиц? Для примера:

  • SysProcessElementData
  • SysProcessLogData 
  • SysProcessElementLog
  • Activity
  • Contacts

Спасибо.

Нравится

3 комментария

Добрый день.

В нашем плане по обслуживанию БД мы руководствуемся следующими правилами:

  • если фрагментация до 10%, то такие индексы мы пропускаем
  • если размер индекса менее 1000 страниц, то такие индексы мы не анализируем, так как их фрагментация практически ни на что не влияет
  • при фрагментации от 10% до 30% проводится реорганизация индекса
  • при фрагментации более 30% проводится перестроение индекса

 

При этом нужно учитывать некоторые нюансы.

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

Online перестроение индекса доступно только в Enterprise Edition. Во всех других изданиях перестроение проводится в offline-режиме, т.е. таблица становится недоступной для пользователей.

Если БД работает в режиме full recovery model, то нужно иметь ввиду, что перестроение индексов является логируемой операцией, т.е. следует ожидать резкого увеличения объёма журнала транзакций. Если увеличение объёма критично, то можно перестоение заменить на реорганизацию, однако в этом случае процесс будет идти несколько дольше.

Мотков Илья,

Добрый день, спасибо. А не подскажите как часто рекомендуется производить ребилд индексов?

Это очень индивидуально. Можно ориентироваться на деградацию производительности. Т.е. если через неделю после дефрагментации появляются заметные подтормаживания, значит расписание нужно запланировать таким образом чтоб не доводить до этого. Если система не используется 24\7, то можно проводить данную акцию каждый день в нерабочие часы. Т.е. нет чётких критериев.

 

P.S. Ещё рекомендуется регулярно обновлять статистику.

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

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

Например: 

Время разрешения - 18.10.2019 17:00

Текущее время - 18.10.2019 16:00

----------------В реззультате--------------------------------------

Остаток срока по обработке обращения - 01:00 (1 час) 

В документации, посвященной расчету срока реакции и разрешения, написано, что в карточке "Обращение" отображается поле "Осталось" (см. скрин)

Его фактически и необходимо отображать при выгрузке отчета (на момент выгрузки отчета)

Просьба подсказать какие способы реализации существуют по моей проблеме?

Изображение удалено.

Нравится

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

Если поле в объекте уже есть и в таблице в базе там правильные значения, то способ реализации будет только один — открыть настройки и шаблон отчёта и вписать там это поле. Как именно — зависит от движка, на котором построен отчёт.

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

Добрый день. Создавала раздел вручную, но в нём отсутствует кнопка "Действия" на странице записи. 

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

Стоит задача: создать действие по смене спр. колонки "Ответственный" в новосозданном разделе. По нажатию на действие должен открываться выбор из справочника Административных единиц с фильтрацией по типу "Сотрудник".

П.С. Сильно камнями не кидайте, я только учусь :) 

Изображение удалено.

П.С. Сильно камнями не кидайте, я только учусь :) 

Нравится

2 комментария
Лучший ответ

Доброе утро.

Можно для Вашей карточки редактирования указать в качестве родительской BaseModulePageV2 из пакета NUI, тогда кнопка [ACTIONS] должна появится.

Если же Вы не хотите наследоваться от этой карточки, то можете посмотреть, каким образом реализуется добавление этой кнопки и пунктов её меню в 'Base card schema' (BasePageV2) пакета NUI.

Доброе утро.

Можно для Вашей карточки редактирования указать в качестве родительской BaseModulePageV2 из пакета NUI, тогда кнопка [ACTIONS] должна появится.

Если же Вы не хотите наследоваться от этой карточки, то можете посмотреть, каким образом реализуется добавление этой кнопки и пунктов её меню в 'Base card schema' (BasePageV2) пакета NUI.

Алла Савельева,

Спасибо, сделала по первому совету - появилась. 

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

Добры день, Коллеги. Есть ли какая нибудь документация, описывающая действия/ограничения системы по одновременной работе с одним и тем же объектом (объект очереди/заявка/обращение/Клиент) разными пользователями

 

Нравится

2 комментария
Лучший ответ

Посмотрите это обсуждение 

Посмотрите это обсуждение 

Спс за Ваш комментарий

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

Здравствуйте! Может кто-нибудь подскажет, можно ли сделать запрос на чтение данных через DateService, но чтобы поля дат (например CreatedOn) с учетом UTC (+3 часа) ?

Т.к. другая система через DataService записывает данные в объект, и запись дат идет -3 часа, и потом читает через тот же DataService, и получает некорректно дату (- 3 часа).

Нравится

3 комментария
Лучший ответ

Ещё как вариант, Вы можете выполнять корректировку даты при вставке данных на стороне другой системы.

Как вариант написать свой конфигурационный сервис с изменением времени

Ещё как вариант, Вы можете выполнять корректировку даты при вставке данных на стороне другой системы.

Если рассматривать ещё обходные варианты, можно сделать view с триггерами добавление и изменение, которая принимает и выдаёт дату из основной таблицы в нужном виде, а затем работать с объектом, связанным с этой view.

А ещё вопрос по часовым поясам, в каких случаях в системе какое время используется и как менять, рассматривается в этой теме.

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

Добрый день!

Иногда возникает необходимость показать клиенту все доступные в коробке элементы управления. Нашел в папке приложения, в \Terrasoft.WebApp\Resources\ui\demo\demo-main,  модуль, который возвращает конфиг страницы с перечнем котролов и ссылками на демо этих контролов. 

Для чего этот демо-контент? Как можно отобразить эту страницу?

Нравится

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

Судя по наличию такой же папки даже в архиве версии 7.2, это демо-наполнение очень древнее и, скорее всего, несовместимо с UIv2.

Во времена 7.2 интерфейс выглядел примерно так:

 

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

Добрый день. В клиентской схеме реализована фильтрация при помощи бизнес-правила. Например:

"RegionType": {
	"FiltrationRegionType": {
	ruleType: BusinessRuleModule.enums.RuleType.FILTRATION,
	autocomplete: true,
	autoClean: true,
	baseAttributePatch: "Level",
	comparisonType: Terrasoft.ComparisonType.EQUAL,
	type: BusinessRuleModule.enums.ValueType.CONSTANT,
        value: 1
	},

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



Существуют ли соответствующие параметры бизнес-правила?

Нравится

1 комментарий
Лучший ответ

Здравствуйте! Вам необходимо самим написать бизнес правило типа FILTRATION и фильтровать по значению Id. Как работать с данным правилом описано в данной статье: https://academy.terrasoft.ru/documents/technic-sdk/7-14/primer-primeneniya-pravila-filtration

Здравствуйте! Вам необходимо самим написать бизнес правило типа FILTRATION и фильтровать по значению Id. Как работать с данным правилом описано в данной статье: https://academy.terrasoft.ru/documents/technic-sdk/7-14/primer-primeneniya-pravila-filtration

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

Добрый день!

Столкнулись со свойством "Объект доступен на портале как раздел" в объекте в блоке "Поведение" и никак не получается разобраться с "подкапотной" частью: зачем это свойство нужно? Что происходит при его простановке в объекте?

Буду очень благодарна за помощь!

Заранее спасибо!

Нравится

4 комментария

Татьяна, добрый день.

Начиная с версий 7.13.4 и далее рекомендуется добавлять разделы на портал с помощью мастера. Сделать это можно просто добавлением нужного раздела в рабочее место портала. При этом нет необходимости менять вручную значение этого поля. Скоро в академии должна обновиться эта секция в документации.

 

Мотков Илья, Спасибо большое!

При добавлении раздела в РМ "Портал" этот признак не проставляется (в том числе и при добавлении в справочник объектов, доступных пользователям портала), но поле все равно в дизайнере объекта открыто для редактирования. Это на 7.14, по крайней мере. Смысл от него тогда не особо понятен.

Тогда будем ждать обновленную документацию в академии.

Еще раз спасибо :)

Добрый день. А как вывести раздел на портал с версией 7.13.1?

Например, обновиться на 7.13.4.

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

Версия 7.12.0.2702

HTTP Error 503. The service is unavailable. Pool останавливается.

Только пытаешься открыть начальную страницу.

WSRV 2016

Где копать? 

Или в сообществе может есть FAQ ?

 

Нравится

2 комментария
Лучший ответ

Попробуйте в IIS в дополнительных параметрах пула приложений в параметре "Удостоверение" указать пользователя с правами администратора: "Особая учетная запись" -> Установить.

Даже если уже указана учетная запись администратора, введите логин и пароль повторно, должно помочь

Попробуйте в IIS в дополнительных параметрах пула приложений в параметре "Удостоверение" указать пользователя с правами администратора: "Особая учетная запись" -> Установить.

Даже если уже указана учетная запись администратора, введите логин и пароль повторно, должно помочь

Спасибо. Подтолкнули к решению. Там как раз была учетка с админскими правами. Поставил ApplicationPoolIdentity - ошибка ушла. Но пришлось повторно генерировать исх. коды и компилировать, а это процесс не быстрый. Генерация шла около 4-х часов, а окончания компиляции я не дождался.

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

Здравствуйте! Есть dll в которой есть какой-то функционал, есть solution этой dll, пробую в проекте этой dll приатачится к процессу приложения, но почему-то после атача, брейкпоинты не проставляются, а пишут что симаолы не загружены (no symbols have been loaded for this document breakpoint), как их тогда подгрузить, может кто-нибудь подскажет?

Нравится

3 комментария
Лучший ответ

Информация о том, как называются локальные переменные, не включена в скомпилированный код.

Всю такую информацию, нужную для отладки, компилятор и складывает в pdb.

Если dll откомпилирована в режиме отладки то на выходе будут 2 файла с одинаковым названием и с расширениями dll и pdb (файл символов) Вот они вам и нужны. Из файлов pdb символы и грузятся в VisualStudio. Запросите у поставщика вашего решения для целей отладки файл(ы) символов.

Более детально смотрите тут

Вопрос подымался не однократно посмотрите обсуждения

Григорий Чех,

Дело в том, что я все эти способы перепробовал. Само приложение bpm Terrasoft.Configuration.у меня без проблем отлаживается. А вот проект dll, разработанной сторонне, не отлаживается. Вы видимо не поняли мой вопрос. 

Информация о том, как называются локальные переменные, не включена в скомпилированный код.

Всю такую информацию, нужную для отладки, компилятор и складывает в pdb.

Если dll откомпилирована в режиме отладки то на выходе будут 2 файла с одинаковым названием и с расширениями dll и pdb (файл символов) Вот они вам и нужны. Из файлов pdb символы и грузятся в VisualStudio. Запросите у поставщика вашего решения для целей отладки файл(ы) символов.

Более детально смотрите тут

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