Добрый день, коллеги!

Мы работаем на нескольких базах разработки. И, соответственно, изменения переносим через SVN. Когда один разработчик создает, например, справочник, привязывает данные. А второй на своей базы обновляется, то схемы подтягиваются, но автоматически  НЕ обновляется структура БД, НЕ устанавливаются данные, НЕ устанавливаются SQL скрипты, НЕ генерируется исходные коды. И приходится всё это делать вручную. Может есть в веб-конфигах какие-то параметры, чтобы это выполнялось автоматически? А то очень не удобно работать в таком режиме.

Нравится

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

Добрый день! За это отвечают параметры в web.config в директории WebApp:

    <add key="AutoUpdateDBStructure" value="true" />

    <add key="AutoInstallSqlScript" value="true" />

    <add key="AutoInstallPackageData" value="true" />

    <add key="AutoRegenerateSchemaSources" value="true" />

Были такие подозрения. Спасибо большое.

ну следует сказать, что работает сие - "когда как"

так что лучше периодически обновляться и проделывать все таки "ручками"

А так же сразу скажу что в Данных необходимо использовать только тип "Установка", а не "первичная установка" и для каждой колонки несущей данные необходимо вручную устанавливать признак "обязательно для заполнения"

1) Во первых это позволит в случае чего - установить ручками (у данных с таким типом в контекстном меню доступен пункт "Установить выбранные")

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

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

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



Настраиваю процесс с отправкой письма. В теле письма хочу использовать параметры элементов из процесса, но как это сделать? Попробовал для проверки вставить код http://prntscr.com/gg187o, который используется для ссылки на элементы, но не сработало http://prntscr.com/gg18xr

Нравится

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

Раньше делали через формулу. Создаёте параметр процесса (например MyBody, строка неогр. длины), создаёте "Формулу", в параметр MyBody кидаете будущее тело письма через форму. Далее создаёте элемент Email, указываете все параметры, кроме самого тела письма, заходите в расширенные параметры элемента и присваиваете параметру Body ваш параметр MyBody

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

На данный момент шаблон письма в элементе БП Send email можно только выбрать из списка. А как задать его через параметр? 

Нравится

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

ну по факту по моему это ID-шник из справочника шаблонов.

Севостьянов Илья Сергеевич пишет:

А почему тогда не сделали стандартно, как в других элементах БП: выбор из справочника или параметр?

 

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

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

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

Логвин Андрей Витальевич пишет:

Вы можете добавить элемент чтения данных из шаблон email сообщения, после чего передать прочитаное тело письма в тело письма в режиме Произвольное письмо.

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

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



И письмо приходит в таком виде:

Владимир, если есть доступ к тексту с макросами, их можно обработать с вызовом функций из библиотеки MacrosHelper. Больше можно узнать из кода её функций.

 

Показать все комментарии
итоги
7.10
Технические вопросы
javascript
sales

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

Нравится

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

Здравствуйте, Олег!

На данный момент базовая логика приложения не позволяет изменять формат отображения значений в некоторых типах графиков.

 

Мы передали данное пожелание команде разработки, для анализа возможности внедрения функционала в будущих версиях системы.

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

Добрый день, подскажите, как реализовать дополнительный функционал для Глобального поиска в разделе "Объектов". Добавив в него возможность искать "Объект" по Адресу(деталь на странице "объекта").

Нравится

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

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

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

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

А что в справочнике "Тип средства связи" означает "Шаблон для формирования гиперссылки в реестре"? Позволит ли этот шаблон отображать ссылки на Google+, VK и другие соцсети по введенному Id?

Как использовать этот шаблон?



Или есть другие способы отображать ссылки на соцсети контактов?

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

Нравится

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

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

 

После обсуждения данного вопроса с разработчиками и анализа базовых схем приложения пришли к такому выводу:

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

Спасибо, Илья!

На самом деле, это поле было бы актуально для вышеописанных целей. Потому аналитики могли бы рассмотреть его использование

Добавлю ссылку на похожее обсуждение: https://community.terrasoft.ua/questions/novoe-sredstvo-svazi-s-tipom-k…

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

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

Нравится

1 комментарий
мобильное приложение(4441)
добавление данных
7.10
sales

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

Например, создал активность в мобильном приложении, указав контрагента. На карточке просмотра активности есть необходимость скрывать некоторые поля, в зависимости от типа контрагента. Но на карточку просмотра активности о контрагенте загрузилась минимальная информация в виде Id и Name, а мне необходимо ещё значение Type.

Пробовал решить двумя способами.

В первом добавил бизнес правило на событие загрузки записи и внутри метода обработчика сделал следующий вызов:

var modelName = "Account";
var model = Ext.ClassManager.get(modelName);
 
var queryConfig = Ext.create("Terrasoft.QueryConfig", {
    modelName: modelName,
    columns: ["Id", "Name", "Type"]
});
 
model.load(account.get("Id"), {
    queryConfig: queryConfig,
    success: function(record) {
     // ???
    },
    failure: function(record, operation) {
        // ???
    },
    scope: this
});

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

Ext.callback(callbackConfig.success, callbackConfig.scope, [true]);

Вторым способом заместил View и Controller и в Controller-классе в методе onLoadRecord попытался вызвать безрезультатно Account.Store.getById.

Хотя, при прочих равных в файле PharmaMobileActionScheduleVisit пакета PharmaMobile аналогичная строка с "волшебным" Store работает.

var type = ActivityType.Store.getById(Terrasoft.Configuration.ActivityTypes.Visit);

Может код из первого варинта поместить в замещенный onLoadRecord? Или есть другие варианты? Прошу помощи в решении задачи.

Нравится

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

Отвечу сам на вопрос решением. Оно оказалось простым.

При добавлении custom-правила вызовом 

Terrasoft.sdk.Model.addBusinessRule

(функция executeFn), в месте возврата данных model.load (success) необходимо вставить Ext.callback. Полным решение выглядит примерно следующим образом:

var modelName = "Account";
var model = Ext.ClassManager.get(modelName);
 
var queryConfig = Ext.create("Terrasoft.QueryConfig", {
	modelName: modelName,
	columns: ["Id", "Name", "Type"]
});
 
var failureFn = function(exception) {
	Ext.callback(callbackConfig.failure, callbackConfig.scope, [exception]);
};
 
model.load(account.get("Id"), {
	queryConfig: queryConfig,
	success: function(rec) {
 
		var type = rec.get("Type");
 
		record.changeProperty("FIELD-NAME", {
			hidden: type === "TYPE-VALUE"
		});
 
		Ext.callback(callbackConfig.success, callbackConfig.scope, [true]);
	},
	failure: failureFn,
	scope: this
});

Также, для загрузки данных, вместо model.load можно использовать и другую функцию

Terrasoft.DataUtils.loadRecords

 

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

Коллеги, добрый день! Пишу скорее от отчаяния :( В 10.2 нами была выявлены две фундаментальные проблемы:

1. Первоначально присвоенное значение параметра элемента процесса, включая значения присваемые по умолчанию самим параметрам процесса, невозможно в последствии удалить либо изменить на другие значения. Точнее можно, но либо полным удалением элемента процесса, либо удалением параметра процесса, что в случае большого процесса не представляется возмножным.

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

В результате какие-либо изменения существующих процессов становятся практически невозможными. Мысли?

Нравится

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

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

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

Ваше заявление некорректно. Данное поведение в базовой вопроизводится, но в случае если базовая стандартными средствами обновлена с 10.1 на 10.2. Я не проверял (если надо могу) на это выглядит на 10.1,  но здесь присутствующие коллеги, которые еще на 10.1 работают легко подтвердят гипотезу. 

UPD. Проверил на клиентской 10.1 - воспроизводлится на ура:

1) Значение, присвоенное по умолчанию параметру элемента процесса можно истребить только вместе с элементом процесса.

2) Значение присвоенное по умолчанию параметру процесса можно истребить только с этим параметром

3) про "Отправить e-mail" вы и без меня все знаете!

Таким образом мы имеем неслабый косяк в 10.1 который при обновлении переехал и в 10.2.

Добрый день!

Некорректное отображение значения параметра воспроизводится только если использовать не основной язык в сборке.

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

Кейс будет исправлен в 7.11.0.

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

Всем доброго времени суток.

Версия 7.10.

На странице списка Активностей есть такой фильтр:

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

Как я понял, параметры фильтра задаются внутри функции initFixedFiltersConfig, в схеме ActivitySectionV2.

1. Я правильно понимаю, что фильтрация ведётся по детали Участники события?

2. Можно ли как-нибудь отменить множественный выбор по этому фильтру? Хотелось бы чтобы одномоментно показывался только один сотрудник.

3. Вообще, где генерится этот фильтр? Можно ли добавить свои пункты в меню?

Нравится

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

Здравствуйте, это фиксированные фильтры, а следовательно они сделаны по инструкции: https://academy.terrasoft.ru/documents/technic-sdk/7-10/dobavlenie-v-razdel-bloka-bystryh-filtrov



Почитайте код метода initFixedFiltersConfig в активити секции пакета NUI, там увидите код фильтров и по каким колонкам он фильтрует.



Что касается пунктов меню, они для Овнер фильтра запрограммированы в следующей схеме:​​​​​​​ 

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