Вопрос

Есть кастомный раздел "Каталог услуг".

Есть БП, в котором ставится Активность "Согласовать Каталог услуг" как в этой Активности указать связь с "Каталогом услуг" по аналогии с "контактами" "контрагентами" и т.д.

Какие объекты нужно заместить?

В какие из замещенных объектов нужно изменить?

и что нужно изменить?

У меня такой же вопрос

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

Евгений, здравствуйте.

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

- добавить элемент Добавить данные, объект = Активность, для созданного поля заполнить Каталог услуг

- с помощью элемента Открыть страницу редактирования для существующей записи открыть созданную запись.

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

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

Спасибо, понимаю, что решение рабочее.

А если мне нужно в мини карточку активности выводить это связанное поле? + по результату активности, процесс выполняет тот или иной шаг, как с этим быть?

Войдите или зарегистрируйтесь, чтобы комментировать
Публикация

Коллеги, а вы знаете о том, что на Академии Terrasoft есть запись вебинара для разработчиков приложений marketplace?

Информация о том, с чего начать разработку приложений, собрана в удобном формате в 2-часовом ролике:

  • Общие сведения о bpm'online marketplace
  • Настройка профиля для разработчика
  • Заказ сайта для разработки
  • Рекомендации по созданию приложений
  • Выполнение разработки приложения
  • Проверка на тестовом сайте
  • Регистрация решения в Личном кабинете
  • Публикация приложения в marketplace

Надеемся, он будет вам полезен!

Поделиться

0 комментариев
Войдите или зарегистрируйтесь, чтобы комментировать
Вопрос

Друзья, коллеги-разработчики Marketplace обратились c вопросом. Подскажите, кто-нибудь, куда копать? :)

 

Нужно получить доступ к ConfigurationConstants

в коде раздела добавили

define("kitmediaCallhelper1Section", ["performancecountermanager", "ConfigurationConstants","jQuery"], function (performanceManager, ConfigurationConstants,$) {

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

В зависимостях пакета Base, Core, Lead, NUI

 

У меня такой же вопрос

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

Алексей, связано это с тем, что если в модуле нигде не используется переменная (в нашем случае ConfigurationConstants), то она и не инициализируется на странице. Если в init прописать использование ConfigurationConstants, то она становится видимой и ее можно использовать.
Однако, обращаю ваше внимание, что в ассинхронных функциях обратного вызова (например, в вашем случае это анонимная функция, которая передается в this.callParent(...)) переменная ConfigurationConstants не будет видна, т.к. выполнение init уже будет завершено без ожидания завершения ассинхронного вызова. В этом случае вы можете использовать код:
var ConfigurationConstants​​​​​​​ = require("ConfigurationConstants"​​​​​​​);

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

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

Подскажите как можно скрыть (не отображать) кнопку определенным ролям?

У меня такой же вопрос

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

Добрый день

Задачу можно решить 2-мя вариантами:

1. Больше кода

  • определить роль текущего пользователя, реализовав запрос в БД;
  • обернуть этот запрос в метод, который должен отрабатывать в методе init вашей карточки (раздела). Если работа метода будет асинхронной, то изначальную инициализацию атрибута нужно будет сделать в false;
  • добавить собственный атрибут в модель, к примеру isButtonVisible
  • в diff прописать операцию merge для этой кнопки, указав visible: {bindTo: "isButtonVisible"}
  • в зависимости от результата запроса устанавливать значение атрибута

2. Меньше кода

  • создаем операцию в разделе "Доступ к операциям", к примеру HaseButton;
  • настраиваем доступ к операции по ролям;
  • gовторяем все, что описано в варианте 1 (кроме написания запроса к БД), но с модификациями:

               - создаем метод, который определяет наличие права             

                  (.../RightsService/GetCanExecuteOperations)

               - по результату заполняем атрибут IsButtonVisible

Спасибо, пока реализовали через процесс.

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

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

Нужно сделать фильтрацию фильтра.

В выделенную часть нужно вывести только сотрудников, как это реализовать. 

Заранее благодарен.

У меня такой же вопрос

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

никак, для этого используйте возможности расширенной фильтрации

Или вооружиться напильником и сломать пару модулей (гуглите "simpleFilter" по конфигурации + можно в quickFilter ещё заглянуть). Ну это прям если совсем надо.

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

Добрый день!

Кто поможет решить вопрос с запуском TS 3.3.2 на машине с Windows 10?
После логина выдается ошибка "Automation server can't create object", после чего программа запускается дальше. Запускается As Administrator и пробовал с разными уровнями совместимости.

Вторая проблема - это печать word-отчетов на Word 2016. Библиотеки Office зарегистрировались, Add-Ins'ы Terrasoft в Word показываются, но из самого Terrasoft word-отчеты не запускаются: "Microsoft Word is not setup in your system"

Спасибо за помощь

У меня такой же вопрос

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

1. Нужно первый раз запустить с правами администратора Windows.
2. Нужно зайти в TSAdmin и вписать в конфигурации номер версии Office 16.0 , подробнее см. тут.
16.0

"Зверев Александр" написал:1. Нужно первый раз запустить с правами администратора Windows.

Да, так и запускаем - ошибка всё равно появляется.

"Зверев Александр" написал:2. Нужно зайти в TSAdmin и вписать в конфигурации номер версии Office 16.0

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

"Владимир Соколов" написал:Да, так и запускаем - ошибка всё равно появляется.

Значит, чего-то не хватает на уровне Windows, не создаётся COM-объект.

"Владимир Соколов" написал:С остальными будем разбираться

Это может быть что угодно в самом коде, генерирующем отчёт.
Или неверный формат файла-шаблона. Например, нет листа в Excel с нужным названием или что-то аналогичное в Word.
Лучше всего пошагово пройти в отладчике.

"Зверев Александр" написал:Значит, чего-то не хватает на уровне Windows, не создаётся COM-объект.

А как-то можно понять, чего именно? Или это всё танцы с бубном?

Принципиальных запретов на работу в Windows 10 нет, хотя она и не гарантируется. Ведь разработка 3.Х прекратилась раньше, чем вышла эта версия Windows.

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

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

На окне редактирования добавила поле типа LookupDataControl.
Данное поле предназначено только для выбора значения из выпадающего списка, чтобы передать выбранное значение как параметр.
DatasetLink этого поля имеет не стандартное название dlData, а dlUsageRange. Данное поле не активно на карточке редактирования.

Фильтрую датасет:

var UsageRangeDataset = Self.ComponentsByName('dlUsageRange').Dataset;
UsageRangeDataset.Close();
ApplyDatasetFilter(UsageRangeDataset, 'ID', 999, true);   // 999-фиктивное значение, чтобы при открытии окна, поле было пустым. ID имеет тип int
UsageRangeDataset.Open();

Когда выбираю значение из списка, генерируется ошибка: Catastrophic failure

Вопрос: Как открыть это поле?

У меня такой же вопрос

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

Марина, мне кажется, для Ваших целей нужно использовать не LookupDataControl, а LookupControl.
Там указывается LookupDatasetLink, а выбранное из него значение хранится в свойствах Value и DisplayValue компонента.

Здравствуйте Александр. Спасибо.

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

Здравствуйте, Коллеги!:)
В моей работе потребовалось закрыть доступ к ряду справочников(возможен только просмотр). Появилась проблема со справочником ОПФ. Этот справочник открывается особым образом(прикрепил картинку). Пробовал через администрирование, получается, но он блокирует для всех, кроме сис. админов, а мне требуется перекрыть именно всем, даже сис. админу. Помогите, пожалуйста, добрые люди:)

У меня такой же вопрос

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

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

Можно ограничить права на редактирование справочников с помошью права доступа на операцию с кодом CanManageLookup.

"Мотков Илья" написал:

Можно ограничить права на редактирование справочников с помошью права доступа на операцию с кодом CanManageLookup.

Илья, а что делать с другими справочниками, если забрать права на эту операцию у всех? Апдейтить на уровне БД или есть какое-то более адекватное решение?

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

Здравствуйте, Коллеги!:)
В моей работе потребовалось закрыть доступ к ряду справочников(возможен только просмотр). Появилась проблема со справочником ОПФ. Этот справочник открывается особым образом(прикрепил картинку). Пробовал через администрирование, получается, но он блокирует для всех, кроме сис. админов, а мне требуется перекрыть именно всем, даже сис. админу. Помогите, пожалуйста, добрые люди:)

У меня такой же вопрос

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

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

Особенность системных администраторов в том, что они могут делать все.
Это администрируется системными операциями:

  • CanDeleteEverything
  • CanInsertEverything
  • CanSelectEverything
  • CanUpdateEverything

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

По умолчанию во всех справочниках проверяются права на системную операцию CanManageLookups (логика родительского объекта BaseLookup). Проверка реализована в процессе объекта в методе CanManageLookups.

Можно сделать следующее:
1) Создать новую системную операцию и никому на нее права не давать. Предположим, что ее код CanManageSpecialLookups. Естественно, права на эту операцию мы никому не даем.
2) Заместить объект справочника, в процессе объекта переопределить метод CheckCanManageLookups (установить признак "Переопределен").
Переопределенный метод должен выглядеть следующим образом:
UserConnection.DBSecurityEngine.CheckCanExecuteOperation("CanManageSpecialLookups");

После публикации только пользователи с правами на системную операцию CanManageSpecialLookups (то есть никто) смогут менять/добавлять/изменять данные справочника.

Спасибо, Алексей! Получилось

Так понятно объяснено и в краткие сроки:)

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

Небходимо на редактируемом окне создать поле (LookupDataControl).Т.е нужен выпадающий список названий. Данные находятся в таблице на связанном сервере (linked server). Поэтому создала источник данных со строкой соединения(ADODataset).

Но, в ADODataset нет поля типа "поле справочника", чтобы указать конкретную колонку из таблицы как колонку для отображения. Версия 3.2.0.90

Как можно иначе реализовать?

Спасибо.

У меня такой же вопрос

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

"Марина Карапетян" написал:Как можно иначе реализовать?

Можно сделать в основной базе view, которая тянет данные из linked server.
А затем к этой view создать обычные сервисы таблицы (название должно совпадать, в базе не сохранять), запроса и датасета.

Здравствуйте Александр. Спасибо.

Войдите или зарегистрируйтесь, чтобы комментировать