Технические вопросы
5.x

Добрый день.
Подскажите каким образом можно сделать напоминание пользователю из БП без задачи(активности)?
Версия системы 5.4

Нравится

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

Напоминание – это запись в таблице Reminding. Можно создать там новую запись и прописать дату (с какой показывать), контакт (кому), текст, тип объекта и ссылку на этот объект.

В странице BaseApprovalEditPage есть функция CreateReminding, которая создаёт новое напоминание, можно сделать по аналогии.

Показать все комментарии
Технические вопросы
Разработка

На простой форме есть возможность воспользоваться указанными в теме функциями с помощью мыши, т.е. кликаем правой кнопкой в элементе редактирования и выпадает контекстное меню с пунктами, по мимо прочего, Копировать и Вставить, если же на форме лежит компонент Pages с несколькими закладками, то при клике правой кнопкой выпадает меню с названиями этих закладок... но селяви такова, что некоторые пользователи слишком сильно избалованы мышью, так вот вопрос - такое поведение выпадающего меню, это неизбежное зло, или его можно победить?

Нравится

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

совсем забыл - версия 3.0.2.244

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

Если я правильно понял Вы имеете ввиду это:

дело в том, что так и должно быть по логике системы. А что Вы хотите там видеть?

"Олейник Дмитрий" написал:...дело в том, что так и должно быть по логике системы. А что Вы хотите там видеть?

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

Извините, не правильно Вас понял, спасибо за скриншот.
Изменения внесены начиная с 3.3.2. Можно обновиться на новое ядро.

"Олейник Дмитрий" написал:
Изменения внесены начиная с 3.3.2. Можно обновиться на новое ядро.

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

Хорошо, передам Ваше обращение в департамент разработки. Сообщу по результатам доп. информацию здесь же.

Добрый день!

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

каким образом это можно сделать?

Обратитесь в службу поддержки, они вышлют новые бинарники. Старые на всякий случай сохраните и сделайте бэкап БД. Запустите TSClient из папки с новыми, настройте вход на свою базу и дождитесь загрузки всех библиотек. Возможно, но не обязательно, надо будет перезаказать лицензии.

Показать все комментарии
Удаление_раздела_в_
Технические вопросы
7.x

Здравствуйте, недавно начал изучать замечательную CRM BPMonline и у меня возник вопрос, каким образом можно корректно удалить пользовательский раздел, за ранее спасибо.

Нравится

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

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

Как я понял Вам необходимо настроить доступны рабочие места для пользователя (группы пользователей). Эти изменения Вы можете внести в "Настройке рабочих мест" (Настройки -> Настройка рабочих мест):

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

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

Добрый день всем, возникло два вопроса по отчетам в 7-ке (на примере раздела Воздействия):
1. В разделе есть отчет "Эффективность воздействий". В него нужно добавить фильтр по ответственному. Как это правильно сделать? (дизайнер отчетов запустил, отчет в него загрузил, параметр отчета добавил, но как дальше это подключить в BPM ?)
2. Как вообще добавить свой отчет для раздела (не печатную форму, именно отчет в раздел Аналитика)

Нравится

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

Спасибо за Ваше обращение.

Мы зарегистрировали его в Службе технической поддержки и назначили специалиста, который сможет Вас компетентно проконсультировать по данному вопросу.

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

Рекомендую Вам ознакомиться с нашим видео-уроком по построению отчетов - http://www.youtube.com/watch?v=81g0HDZxKWU.
В видео показан процесс создания отчета и его добавление в рабочие места.

Добрый день,

Видео я уже смотрел, но там показано подключение к BPM 5 (в 7-ке нет рабочих столов), и вообще ничего не рассказано про окно фильтрации.

Валерий, добрый день!

https://www.youtube.com/watch?v=4MpjbeCErzs

ознакомьтесь с этим видео начиная приблизительно с 3:00:00, там как раз об отчетах идет речь.

--------------------------------------------
Айти-Сфера

Здравтсвуйте, Валерий!
Прикрепляю инструкцию по изменению базовых отчетов в BPMonline 7x.
По поводу фильтрации, необходимо делать по аналогии с существующими отчетами. То есть, нужно
заместить страницу с фильтрацией и добавить на нее контрол-справочник с указанием имени соответствующего параметра отчета (свойство "parameterName"), а затем по значению параметра накладывать соответсвующие фильтры (это делается в скрипте отчета).

Владимир, Андрей, спасибо! Посмотрим...

Показать все комментарии
EntitySchemaQuery
фильтрация Lookup
Технические вопросы
7.x

Добрый день!
BPM 7.1
у меня возникла проблема написать, вроде на первый взгляд не сложная, простой фильтр котрорый должен срабатывать при открытии Lookup.

type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE,
name: 'UsrPlanningPrice',
columnPath: 'UsrPlanningPrice',   //справочник, таблица [UsrCropInPlanning]
dataValueType: Terrasoft.DataValueType.LOOKUP,
visible: true,
filter: function() {
        var purchaseDate = this.get('UsrDate');
        if (!Ext.isEmpty(purchaseDate)) {

                var subSelect = Ext.create('Terrasoft.EntitySchemaQuery', {
                        rootSchemaName: 'UsrPlanning',
                        rowCount: 1
                });

                subSelect.addColumn('Id');
               
                subSelect.filters.add("TypeFilter",
                        subSelect.createColumnFilterWithParameter(
                        Terrasoft.ComparisonType.EQUAL,
                        'UsrType',
                        '1CC0703B-FA0D-4711-A1E4-14DEFA3C19EA')); //const
                               
                subSelect.filters.add("DateFilter",
                        subSelect.createColumnFilterWithParameter(
                        Terrasoft.ComparisonType.LESS_OR_EQUAL,
                        'UsrDate',
                        purchaseDate));

                return Terrasoft.createCompareFilter(
                        Terrasoft.ComparisonType.EQUAL,
                        'UsrPlanning',
                        subSelect);
        }
}

в результате хочу:

SELECT TOP 15 [UsrCropInPlanning].[Id] [Id]
        ,[UsrCropInPlanning].[UsrName] [UsrName]
FROM [dbo].[UsrCropInPlanning] [UsrCropInPlanning]
WHERE [UsrCropInPlanning].[UsrPlanningId] = (SELECT
        TOP 1 [Id]
        FROM [dbo].[UsrPlanning]
        WHERE UsrTypeId = @P1 AND [UsrPlanning].[UsrDate] = @P2)

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

прошу помочь, либо сказать как такое можно реализовать?
спасибо.

Нравится

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

Добрый день!

Воспользуйтесь бизнес-правилом с типом "Фильтрация". Ниже пример из документации.

{
    type: Terrasoft.core.enums.ViewModelSchemaItem.ATTRIBUTE,
    name: 'Contact',
    columnPath: 'Contact',
    dataValueType: Terrasoft.DataValueType.ENUM,
    visible: true,
    rules: [{
        //Указываем тип правила
        ruleType: BusinessRuleModule.enums.RuleType.FILTRATION,
        //Указываем будет ли обратное автозаполнение
        autocomplete: true, 
        //Указываем мета-путь относительно базового обьекта('Contact')
        //по которому будем фильтровать
        baseAttributePatch: 'Account',
        //Указываем тип фильтрации
        comparisonType: Terrasoft.ComparisonType.EQUAL,
        //Указываем тип значения для фильтрации
        type: BusinessRuleModule.enums.ValueType.ATTRIBUTE,
        //Указываем атрибут модели для сравнения (если тип значения - атрибут) 
        attribute: 'Account',
        //Указываем мета-путь значения в выбранном атрибуте (если нужно)
        attributePath: '',
        //Если тип значения не атрибут, указываем значение 
        //(константа | имя системной настройки | имя системного значения)
        value: ''
    }]
}

Дмитрий, спасибо за предоставленный пример.

у моего случая есть одна особенность, записей в таблице может не быть за указаное число и нужно брать первый что был до указаной даты, для этого я и написал условия "TOP 1" и "<=":

SELECT TOP 1 
	[Id]
FROM [dbo].[UsrPlanning]
WHERE UsrTypeId = @P1
	AND [UsrPlanning].[UsrDate] <= @P2

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

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

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

С уважением,
Владимир Саварин
Айти-Сфера

Владимир, здравствуйте. С фильтрацией по типу и по дате проблем нет (можно указать два и более бизнес правила фильтрации), а вот вызвать топ(1), к сожалению, не выйдет. Возможно следует наложить дополнительные фильтры? Если они значения не имеют, тогда без разницы что выберет пользователь с этого набора.

Показать все комментарии
7.x
выбор из справочника
колонки справочника
Сортировка
Технические вопросы

Например, при выборе города требуется отобразить не только колонку "Название", но и колонку "Страна", а также отсортировать сначала по стране, а потом по названию.
Как правильно это сделать в 7-ке?
Сейчас обычно список содержит одну колонку с первичным полем для отображения.

Нравится

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

Валерий,

Теоретически, можно полностью переопределить LookupPage, чтобы при выборе из объекта городов, в реестре отображались две колонки.
В 7.2 настройка колонок, в карточке выбора из справочника, реализована пользовательски, возможно, есть смысл дождаться релиза новой версии.

Смысл, может, и есть :smile:, но:
- когда планируется релиз новой версии?
- насколько просто будет перенести из 7.1 свои настройки - достаточно ли будет сохранить и загрузить новые и замещенные схемы?

Валерий, обращался к коллегам из департамента разработки. Релиз планируется выпустить в ближайшее время, январь-февраль. И заодно попросил рекомендаций о том, как реализовать карточку выбора из справочника с несколькими колонками и получил ответ, что с текущим ядром (7.1) - никак.

Максим, спасибо!
Подождем... А если "припечет", попробуем заместить LookupPage :smile:

От вывода нескольких колонок пока отказались, а с сортировкой оказалось просто - добавили в заменяющей схеме страницы такой код:

	var City = this.find('City');
	if (City) {
		City.orders = [{
			columnPath: 'Country'
		}, {
			columnPath: 'Name'
		}];
	}
Показать все комментарии
Технические вопросы
5.x

В последние пару недель у пользователей очень часто стало появляться такое сообщение.
BPMonline CRM On-Site Версия 5.4.0.1063
Браузер Chrome
Что делать как бороться?

pagenotanswer.png

Нравится

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

Хром версии 32?
Они там что-то поменяли в движке.

Также протестируйте и сообщите результаты в другом браузере (к примеру Firefox).

Firefox в подобных безобразиях не замечен вроде......

Вот жеж "корпорация добра", чтоб им пусто было.....

Пишут, что:

<br> This is a know Chrome v32 bug. I think this will be fixed soon:<br> <a href="http://code.google.com/p/chromium/issues/detail?id=334948[/quote">http://code.google.com/p/chromium/issues/detail?id=334948[/quote</a>]</p> <p><a href="http://stackoverflow.com/questions/21196189/chrome-unresponsive-page-false-positive-since-chrome-32">тут</a> подробнее:<br> [quote написал:
I started getting this problem as well.

In searching, I came accross this issue https://code.google.com/p/chromium/issues/detail?id=335248.

As best I figured out, the bug is related to:

  • Windows 7/8 with Aero Theme
  • Scrollbars on pages (such as in the developer console)
  • Pages with popups (in particular Window.open() calls)

I guess they are slated to push the fix into version 33...and maybe leave the stable* 32 how it is (although I hope not).

So there are a few options:

  • Switch away from Aero Theme until version 33 is in stable
  • Upgrade to the beta channel, i.e. version 33
  • Click on the Wait button every 30 seconds whenever the chrome developer tools is open.

и решение:


Okay here’s the solution you can do without changing your theme, right click on my computer, go to your System Properties, and then go to "Advanced", click on "Settings" under Performance, then check the below radio button. This seems to stop it
options

Показать все комментарии
количество продукта
списание
средневзвешенный
Технические вопросы
Разработка

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

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

Проблема решилась созданием ещё одной расходной накладной (2 единицы продукта списываются по одной накладной, а оставшаяся 1 единица по другой).

Террасофт 3.3.2.290 не умеет списывать количество продукта большее чем размер максимальной партии? Что же тогда такое средневзвешенный способ списания?

Нравится

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

Спасибо за Ваше обращение.

Мы зарегистрировали его в Службе технической поддержки и назначили специалиста, который сможет Вас компетентно проконсультировать по данному вопросу.

Прошу прощения, забыл скриншоты прикрепить:


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

Уточнил у аналитиков, вероятнее всего это ошибка. Прошу предоставить Вашу базу для дальнейшего расследования.

Показать все комментарии
автоматическая сборка контроль версий
Технические вопросы
5.x

Добрый день.
На сегодняшний день разработка в BPMOnline ведется "на коленке". Разработчик вручную кладет исходники в нужное место, вручную обновляет конфигурацию в системе...А если есть тестовый сервер, количество операций увеличивается.
Возникло желание сделать процесс разработки цивилизованным, внедрить систему контроля версий, настроить автоматическую сборку, тестовый сервер.
Вопрос: как можно организовать автоматическую сборку? Приветствуются любые идеи и предложения.

Нравится

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

Добрый день!

Не совсем понятен вопрос. Чтоб дать рекомендации по поводу организации автоматической сборки – нужно понимать, какие есть исходные данные. По идее, у Вас есть только собранные бинарники и БД (которые готовит наша автосборка). Автоматизировать сборку автоматически собранной сборки не имеет практического смысла, разве что, если имелось в виду что-то другое.

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

Самый простой вариант:
1) Разработчик изменяет код
2) Заходит в Инструменты -> Конфигурация
3) Исходный код -> Сгенерировать для выбранных элементов
То есть хотелось бы автоматизировать запуск автоматической сборки, чтобы она запускалась по расписанию без участия живых людей.

Можно сгенерировать исходные коды конфигурации с помощью SolutionConsole, см. команду RegenerateSchemaSources:

Предназначение и миссия
Данная утилита предназначена для автоматической (скажем запуск по расписанию) и в основном массовой работы со схемами и данными. Позволяет осуществлять перегенерацию исходников, метаданных и структуры базы данных, выгружать и загружать данные, структуру схем и метаданные. Так же используется для переноса изменений с одной базы на другую, включая разные СУБД.
 
Описание и назначение параметров
1. Основные обязательные параметры
На основании этих параметров происходит соединение с базой и конфигурацией.
 
-solution=<Название конфигурации>
Допустимые значения: 
<Название конфигурации> - конфигурация над которой будет выполнятся операция
<*> - имя конфигурации не указано. Логин будет осуществляться на прямую в базу без привязки к конфигурации. Доступны будут только системные схемы.
Обязательность: нет
 
-user=<Имя пользователя>
Допустимые значения:
<Имя пользователя> - имя пользователя системы имеющего права доступа к конфигурации
<Имя пользователя> - имя пользователя базы данных в случае когда -solution=*
Обязательность: да
 
-password=<Пароль пользователя>
Допустимые значения:
<Пароль пользователя> - пароль пользователя системы имеющего права доступа к конфигурации
<Пароль пользователя> - пароль пользователя базы данных в случае когда -solution=*
Обязательность: да
 
2. Параметр операции
-operation=<Название операции>
Описание:
Параметр, определяющий операцию, которую будет осуществлять утилита.
Допустимые значения:
<ExtractSolutionData> - выгрузка конфигурации
<LoadSolutionData> - загрузка выгруженной ранее конфигурации
<LoadSystemDBData> - загрузка выгруженных ранее данных только для системных схем
<UpdateConfigurationDBStructureAndData> - обновляет структуру таблиц и данные в текущей базе данных для конфигурационных схем выгруженными ранее данными
<UpdateSystemDBStructureAndData> - обновляет структуру таблиц и данные в текущей базе данных для системных схем выгруженными ранее данными
<UpdateConfigurationRightsDBStructure> - обновляет структуру таблиц прав для конфигурационных схем
<ReGenerateSchemaSources> 
<GenerateUpdateSystemDBStructureSqlText> - генерирует Sql скрипт обновления структуры системных таблиц на основании выгруженных ранее данных о схемах
<GenerateUpdateSystemDBDataSqlText> - генерирует Sql скрипт обновления данных системных таблиц на основании выгруженных ранее данных
<ReGenerateSchemaMetaData>

Вот пример вызова операции перегенерации:

Terrasoft.Tools.SolutionConsole.exe "-user=Supervisor" "-password= Supervisor " -solution=TSBpm -destinationPath=C:\Temp\SR -Operation=ReGenerateSchemaSources -contentTypes=Localization -logPath=C:\Temp\Log -ignoreLocking=true

Предварительно обязательно указать корректную строку подключения к БД в конфиге приложения (Terrasoft.Tools.WorkspaceConsole.exe.config)

И скопировать из Terrasoft.WebApp\bin\ все файлы в папку с SolutionConsole

Вот пример вызова операции перегенерации:

Terrasoft.Tools.SolutionConsole.exe "-user=Supervisor" "-password= Supervisor " -solution=TSBpm -destinationPath=C:\Temp\SR -Operation=ReGenerateSchemaSources -contentTypes=Localization -logPath=C:\Temp\Log -ignoreLocking=true

Предварительно обязательно указать корректную строку подключения к БД в конфиге приложения (Terrasoft.Tools.WorkspaceConsole.exe.config)

И скопировать из Terrasoft.WebApp\bin\ все файлы в папку с SolutionConsole

Исходные коды удалось получить.
А как можно загрузить из консоли изменения, т.е. например .md файл?

Антон, операция LoadSolutionData + опция includedSchemas

Опции операций:
-destinationPath=<Путь к папке>
Описание:
Путь к папке, в которую будет осуществляться выгрузка или из которой будет происходить загрузка файлов данных.
Допустимые значения:
<Путь к папке> - путь к папке хранения файлов данных используемых утилитой
Обязательность: да
 
-includedSchemas=<Имя схемы,Имя схемы,Имя схемы,…>
Описание:
Список схем, для которых необходимо выполнить операцию. В случае отсутствия параметра операция выполняется для всех схем
Допустимые значения:
<Имя схемы> - имя схемы
<Имя схемы,Имя схемы,Имя схемы,…> - список схем через запятую
Обязательность: нет

Дмитрий,

Не удалось загрузить схему. Указал путь к папке, там один файл .cs.
Ошибка:
ERROR: Идентификатор GUID должен содержать 32 цифры и 4 дефиса (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).

Попытался сделать ExtractSolutionData:
Сформировались файлы:
SolutionResources.xml
SysSchemaFolder.dat
SysSchemaInSolution.dat
и папки повторяющие элементы конфигурации в веб-интерфейсе. Но сами папки не содержат файлов.
Как я понимаю должны быть и файлы?

Проверил у себя - всё отлично, внутри папок (структура конфигурации) есть схемы.

Вот команда:

Terrasoft.Tools.SolutionConsole.exe -solution=TSBpm -user=supervisor -password=Supervisor -operation=ExtractSolutionData -destinationPath=C:\Temp\SR -logPath=C:\Temp\SR\Log

Вот скриншот:

Что то на нашей конфигурации не работает.
Делаю такую же команду

Terrasoft.Tools.SolutionConsole.exe "-user=Supervisor" "-password=*****" -solution=TSBpm -destinationPath=C:\BPMSrcAuto -Operation=ExtractSolutionData -logPath=C:\BPMSrcAuto\log

Версия 5.4.0.2028

Лог ошибки:

=== 09:09:12.4443 ===
Start info:
	Operation: ExtractSolutionData
	Solution: TSBpm
	User: Supervisor
	UserPassword: **
	DestinationPath: C:\BPMSrcAuto
 
ERROR: Не удалось найти часть пути "C:\BPMSrcAuto\BPMonline CRM\Конфигурационные элементы\Контакты\Продукты\BaseOfferingInterest.cs".

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

Ошибка или в доступа к папке (не может создать под каталоги) или в русских символах. Локализация Windows у Вас какая? Какой язык для non-unicode?

До этого у меня каталоги создавались, но были пустые.
Windows русская, язык non-unicode - русский.

Антон, не готов Вам указать точную причину возникновения данной проблемы. Если есть возможность - предоставьте бекап Вашей БД на support@terrasoft.ru, либо обратитесь на этот же имейл с уточнением даты и времени, когда к Вам можно будет удаленно подключится для анализа причин проблемы.

Вот здесь пытаюсь решить тоже самое
http://www.community.terrasoft.ru/forum/topic/10139

"Олейник Дмитрий" написал:

Антон, не готов Вам указать точную причину возникновения данной проблемы. Если есть возможность - предоставьте бекап Вашей БД на support@terrasoft.ru, либо обратитесь на этот же имейл с уточнением даты и времени, когда к Вам можно будет удаленно подключится для анализа причин проблемы.

С уважением,

Олейник Дмитрий

Эксперт 3-й линии поддержки


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

Антон, Team Viewer.

Кстати, по ссылке выше, решена проблема загрузки схем.
С выгрузкой проблем не возникало.

Добрый день
Прислали новую версию ядра и ExtractSolutionData заработало.
Возник вопрос:
1.Что за файлы json генерируются, как их применять?
2.можно ли определить, чтобы генерировались только cs или только md например?

Здравствуйте, Антон!
1. Эти файлы практически бесполезны, функционал добавлялся для каких-то "узких" задач, вероятно связанных с интеграцией. Ценность имеют *.md файлы, так как в них содержатся все метаданные схем.
2. Для этого существует параметр "contentTypes":

-contentTypes=<Тип данных для операции>|<Тип данных для операции>|…
Описание:
Определяет тип данных, которые необходимо выгрузить или загрузить. Можно указать несколько типов через знак «|».
Допустимые значения:
<Source> - исходники схем. Расширение файлов “*.cs<MetaData> - метаданные схем. Расширение файлов “*.json<Data> - данные хранящиеся в базе для данных схем. Расширение файлов “*.dat<Localization> - ресурсы схем. Расширение файлов “*.tsresx<CodeReviewData> - данные для CodeReview. Расширение файлов “*. mdcs<LocalizableData> - данные схем для локализации. Выгружается или в файл "SolutionLocalizableData.xml" или в файл указанный в параметре –fileName
<ExportData> - метаданные схемы с дополнительной информацией о схеме (состояние, название, имя менеджера). Выгрузка идет напрямую из базы. Расширение файлов “*.md<All> - все перечисленные выше типы

Добрый день,

Новое ядро применил на предпродакшн сервер, и сгенерировал cs файлы.
Возникло много изменений в одних и тех же схемах разной версии ядра вида:
было:

method.ZipBody = new byte[] { 31,139,8,0,0,0,0,0,4,0,173,143,77,11

стало:

method.Body = @"base.SetCustomFilterDetails();
List<string> filteredColumn = new List<string>();
filteredColumn.Add(""StartDate"");
filteredColumn.Add(""DueDate"");

Можете подсказать с чет это связано? Возможно это какая то настройка в конфиге?

Еще один вопрос созрел: а возможно генерировать .cs файлы без учета группы, т.е. также как и .md файлы в одной папке?

Здравствуйте, Антон!
По первому Вашему вопросу. Тут дело в том, что по-разному генерируются храняться метаданные методов. Ничего страшного в этих изменениях нет.
По второму вопросу. Файлы .cs можно также выгружать, настроив должным образом Web.config приложения. Тогда все файлы выгружаются в одну папку, и можно отлаживаться, если требуется.

По второму хотел уточнить:
Я полагал, что может есть параметр у Terrasoft.Tools.SolutionConsole.exe.
В предложенном варианте много "ручных действий", например опубликовать схему. Цель не отладка, а хранение исходных кодов в git, для этого уже есть bat файл.

Но проблема с папками, т.к. иногда получается, что схемы импортируются в другую группу, а не где ранее был объект.

Здравствуйте, Антон!
К сожалению, такого параметра нет.
Но, возможно, Вам будет полезна следующая информация. В БД хранятся все версии элементов конфигурации в таблице [SysSchemaInSolution]. Актуальной считается та запись, у которой значение поля [Version] максимальное.
В этой же таблице есть привязка схемы к группе (поле [SysFolderId]). Можно для всех схем прописать одну и ту же группу, что решит Вашу задачу.

Спасибо за хорошую идею, так и сделаю)

Добрый день,
А есть подобная утилита для версии 7.2?
Похоже это "\Terrasoft.WebApp\DesktopBin\WorkspaceConsole\Terrasoft.Tools.WorkspaceConsole.exe" ?
Но выдает что не знает ExtractSolutionData.

Добрый день.

Описание утилиты WorkspaceConsole можно найти в документации BPMonline
http://www.training.terrasoft.ru/sites/default/files/BPMonline_Setup_Guide_MSSQL_7.3.0.pdf

Начиная со страницы 20.

Спасибо.
Как я понял теперь нет операции ExtractSolutionData для экспорта всего кода конфигурации в .cs файлы. Ругается что операция не известная. ContentType = Source - тоже нету.
Есть какой то способ получить .cs код всей конфигурации?

Добрый день, Антон!
Действительно, WorkspaceConsole не позволяет выгружать cs-файлы. Если есть необходимость, можно в Web.config приложения (по пути %SitePath%\Terrasoft.WebApp\) указать для параметра "IncludeDebugInformation" значение "true", а в параметре "CompilerSourcesTempFolderPath" - путь к папке, куда будут выгружены cs-файлы.
Файлы будут выгружены при компиляции конфигурации.
Но если Вы хотите просто хранить конфигурацию где-либо на стороне, подобный подход не приемлен для 7.х. Лучше либо выгружать свои пакеты, либо настроить SVN.

Добрый день,
В 7.2.0.1331 предложенный метод CompilerSourcesTempFolderPath заработал, спасибо.
Пробую сделать тоже самое в версии 7.2.2.342 исходники не появляются в указанной папке. Сравнивал доступ к папке, дал всем полный доступ, не помогло.
Можете подсказать куда еще капать?

в web.config добавил:

    <add key="IncludeDebugInformation" value="true" />
    <add key="IncludeXmlDocumentation" value="false" />
    <add key="CompilerSourcesTempFolderPath" value="D:\Terrasoft\WebApp\Debug\" />

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

Компилировали конфигурацию? Вы вносили изменения в web.config, который лежит в папке Terrasoft.WebApp?

"Резниченко Сергей" написал:

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

Компилировали конфигурацию? Вы вносили изменения в web.config, который лежит в папке Terrasoft.WebApp?


Спасибо, упустил этот момент. Внес изменения в Terrasoft.WebApp и заработало.

Показать все комментарии
Активность
бизнес-процесс
фильтрация результата
Технические вопросы
5.x

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

Нравится

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

Здравствуйте, Эмин.

При создании задачи по процессу, заполняется колонка в AllowedResult в объекте активности. Потом, при открытии карточки редактировании задачи накладывается фильтр на поле ResultEdit на событии инициализации страницы, фильтр накладывается в методе SubscribeResultEditPrepareLookupFilterEvent(). Фильтруется список по параметру AllowedResults, который заполняется на событии загрузки данных.

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

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