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

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

Нравится

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

в diff
{
                "operation": "merge",
                "name": "AddTypedRecordButton",
                "parentName": "Detail",
                "propertyName": "tools",
                "values": {
                    "itemType": Terrasoft.ViewItemType.BUTTON,
                    "controlConfig": {
                        "menu": {
                            "items": {"bindTo": "addMenuItems"}
                        }
                    },
                "visible": true,
                "enabled": true
                }
            },

methods

init: function() {
                this.callParent(arguments);
                this.initAddMenuItems();
            },
            initAddMenuItems: function() {
                var addMenuItems = Ext.create("Terrasoft.BaseViewModelCollection");
                addMenuItems.add("addContactItem", this.Ext.create("Terrasoft.BaseViewModel", {
                    values: {
                        "Caption": {"bindTo": "Resources.Strings.AddContactCaption"},
                        "Click": {"bindTo": "addRecipient"},
                        "Tag": "addContact"
                    }
                }));
                addMenuItems.add("addbytemplateItem", this.Ext.create("Terrasoft.BaseViewModel", {
                    values: {
                        "Caption": {"bindTo": "Resources.Strings.AddByTemplate"},
                        "Click": {"bindTo": "addRecipient"},
                        "Tag": "addbytemplate"
                    }
                }));
                this.set("addMenuItems", addMenuItems);
            },

 

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

Как добавить некий код ( ссылку в простейшем случае ) в заголовок раздела ( лидов ) ?

Нравится

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

Можно добавить в схеме раздела кнопку с нужным стилем, а логику сделать подобную ссылкам на Community, Академию и прочее на стартовой странице системы. Кнопку добавлять в SeparateModeActionButtonsLeftContainer или в SeparateModeActionButtonsRightContainer, где добавляются другие кнопки.

Вот пример добавления новой кнопки туда:

{
    "operation": "insert",
    "name": "ToggleCalendarButton",
    "parentName": "SeparateModeActionButtonsRightContainer",
    "propertyName": "items",
    "index": 0,
    "values": {
        "itemType": Terrasoft.ViewItemType.BUTTON,
        "click": {
            bindTo: "toggleCalendar"
        },
        "markerValue": {
            bindTo: "getToggleCalendarButtonMarkerValue"
        },
        "controlConfig": {
            "imageConfig": {
                "bindTo": "Resources.Images.ToggleCalendarIcon"
            }
        },
        "classes": {
            "wrapperClass": ["toggle-calendar-wrapper"],
            "imageClass": ["toggle-calendar-image"]
        },
        "style": Terrasoft.controls.ButtonEnums.style.TRANSPARENT
    }
},

А вот пример логики клика с переходом по ссылке:

/**
 * Navigates to community site.
 * @protected
 */
CommunityClick: function() {
    var communityLink = this.get("Resources.Strings.CommunityUrl");
    window.open(communityLink);
}

 

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

Возможно ли в раздел по api подтянуть список из другой системы и потом через карточку с виртуальными полями получать данные так же через api. Смысл в том что нужно сделать управление другим сервисом через фронтэнд Creatio.

 

Нравится

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

Можно варианты реализации множество навскидку 1) получать данные из сервиса (по аналогии с DataService) 

2) Использовать интеграцию на уровне БД (Linked Servers) и создать виртуальный объект на основе представления. Обсуждалось тут и тут и тут

В общем вариантов много, почитайте все ветки и документацию по интеграции с другими системами.

 

Вариант dblink не подходит так как есть доступ только по webapi.

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

пишет:

Можно варианты реализации множество навскидку 1) получать данные из сервиса (по аналогии с DataService) 

2) Использовать интеграцию на уровне БД (Linked Servers) и создать виртуальный объект на основе представления. Обсуждалось тут и тут и тут

В общем вариантов много, почитайте все ветки и документацию по интеграции с другими системами.

 

Вариант dblink не подходит так как есть доступ только по webapi.

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

Можно на сервере БД создать view, получающую информацию от стороннего веб-сервиса и туда же отправляющую в instead-триггерах.

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

Зверев Александр пишет:

Можно на сервере БД создать view, получающую информацию от стороннего веб-сервиса и туда же отправляющую в instead-триггерах.

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

Это выходит что нужно создать или сервис на c# или на уровне базы http клиентом. А можно ли переопределить логику получения списка не из базы данных а по webapi? И наверно резонно подумать что если можно, на сколько это может быть проблематично с дальнейшими обновлениями системы что бы не вышло конфликта так как я понимаю прийдеться  замещать довольно глубокий код. Другими словами стоит ли игра свеч и порванного бубна?

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

Также посмотрите статью, где обсуждают нечто подобное, хоть и без интеграции.

Зверев Александр пишет:

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

Также посмотрите статью, где обсуждают нечто подобное, хоть и без интеграции.

В общем лучше так не делать, черевато или потерей в производительности или в стабильности. Спасибо за ответ 

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

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

Очень актуально для многих Клиентов - зафиксировать наименование столбцов в Списочном представлении реестра записей в разделах.

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

Огромная просьба, внести корректировки в систему.

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

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

Зверев Александр,

это будет замечательно,если они это реализуют в версии 7.15.2. Уж очень ждем. :)

Максимова Екатерина,

Здравствуйте. Данный функционал уже реализован и будет доступен после обновления на версию 7.15.2

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

Добрый день!

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

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

Список создал для менеджеров, что у них на дашбордах отображалась ТОЛЬКО одна запись на текущий момент. Но по текущей логике менеджер может нажать "Показать больше" и взять в работу другой элемент списка (например, список по лидам)

Можно убрать ссылку Показать больше из списка? Насколько я помню, в более старых версиях данной ссылки не было

Заранее благодарю!

Нравится

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

Эта логика реализована в схеме ChartModule:

/**
 * Loads data into grid with pageble options.
 * @protected
 */
loadMore: function() {
	this.loadGridData();
},

 И ниже:

}, {
"name": chartId + "_loadMore",
"itemType": Terrasoft.ViewItemType.BUTTON,
"caption": {"bindTo": "Resources.Strings.LoadMoreButtonCaption"},
"click": {"bindTo": "loadMore"},
"controlConfig": {
"style": Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
"imageConfig":  {"bindTo": "Resources.Images.LoadMoreIcon"}
},
"classes": {"wrapperClass": ["load-more-button-class"]},
"visible": {"bindTo": "CanLoadMoreData"}
}]

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

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

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

Кейс - Пользователь создал 245 обращений, из них с указанной оценкой - 19. "Очень доволен" проставлено в 16-ти обращениях, в двух - "Нейтральный", в одном "Очень недоволен".

В итогах средний балл по этому пользователю равен 3 (Нейтральный), по моим подсчетам, там должно быть мимимум 4 (Доволен). 16*5+2*3+1*1 = 87 (общая сумма балов), далее 87/19 (общее кол-во обращений с оценкой) = 4,578....

Может я что-то неправильно считаю?

Заранее спасибо за помощь

 

Нравится

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

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

По логике Ваш подсчет корректный, т.е. если все цифры такие, как Вы приводите, то среднее = 87/19.

Чудес не бывает и, если система выдает 3, значит что-то Вы не учти при подсчете.

Я вижу несколько вариантов.

1. Проверить значения 'Баллов' в справочнике 'Уровень удовлетворенности'. Возможно, было изменено одно или несколько значений в этом поле.

2. Выведите рядом отдельными колонками сумму баллов по уровню удовлетворенности обращений контакта и количество обращений контакта, у которых уровень удовлетворенности не пусто, потом сравните совпадают ли суммы и кол-во с теми, которые привели в данном примере Вы.

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

Итог по данной проблеме. Вместе со специалистом из Террасофт посмотрели данный кейс, действительно в списках расчет производится некорректно. Коллеги взяли на более детальный анализ

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

Коллеги, добрый день! Просьба подумать над возможностью группировки записей в реестрах. Например, в заказах сделать группировку по фирмам или датам или ответственным. С возможностью свернуть и развернуть группировку естесственно.

Нравится

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

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

А если к этому добавить возможность настраивать несколько представлений, как было в 3.x, то будет еще лучше!

Показать все комментарии
Коллеги, мне кажется странным, что для ввода значений в CheckBox используется нормальная, всем привычная картинка, а для отображения в списке почему-то Yes/No (при этом в обычных полях отображается нормальной галочкой).Предлагаю перейти к единому, принятому во всем софтварном мире (уж, выбирайте - классический стиль или Apple-стиль) отображению логического поля в списке. Это намного нагляднее и понятнее.
3 комментария

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

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

Спасибо! Хочу получить обратную связь по этому вопросу. Возможно, уже сейчас имеется какая-то недокументированная возможность (Например, вместо Yes отображать "X", а вместо No - пусто)

"Владимир Соколов" написал:
Вильшанский Дмитрий пишет:

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

Спасибо! Хочу получить обратную связь по этому вопросу. Возможно, уже сейчас имеется какая-то недокументированная возможность (Например, вместо Yes отображать "X", а вместо No - пусто)

Недокументированная возможность есть. Можно поменять константу, которая отвечает за отображение. Другой вопрос, что эта константа может использоваться еще где то кроме реестра. Соответственно, где то может пропасть слово No, а где то изменится слово Yes. Хотя, на первый взгляд константа используется только в реестре.

Чтобы поменять константу нужно:
1. Создать новый модуль. Назвать как угодно и вписать нуда новое значение для константы

Создание модуля

define("UsrChangeLookupRowCountModule", ["terrasoft"], function(Terrasoft){
Terrasoft.Resources.CommonUtils.FalseStringValue = " ";
Terrasoft.Resources.CommonUtils.TrueStringValue = "+";
});

Пример создания модуля.

модуль

2. Заместить BootstrapModules и добавить свой модуль. Не пропустить комы между модулями.

Создание замещающего модуля

Замещение

3. Все сохранить, почистить кеш, перезайти на сайт.
4. Наслаждаться.

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

Добрый день!

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

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

BPM On-Site 5.2.0
На странице есть выпадающий список, в котором выводятся данные из справочника.

Вопрос: как задать в выпадающем списке строго определенную последовательность, а не отсортированную по алфавиту?

Нравится

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

Можно создать доп.поле в справочнике пронумеровать в нужном порядке 01,02 и т.д и по нему сортировать ...

Пока самый простой способ нашел: в значения полей дописывать:
1. Встреча
2. Звонок
3. Отправка e-mail

Здравствуйте, Илья!

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

Очистить список:

Page.MyComboBoxEdit.ListPrepared = false;

Добавить пункты в список:

Page.MyComboBoxEdit.AddItem(type.Id, type.Name);

Кроме того, рекомендую обратить внимание на признак сортировки в карточке для данного контрола:
SortDropDownImage

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