Вопрос

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

В связи с чем хотелось бы под интеграцию выделить отдельный сервер приложений.

И вот тут возникает вопрос: как оба сервера корректно настроить? У меня, например, есть сигнал на добавление записи. Не сработает ли этот сигнал на обоих серверах приложений одновременно, или не на том? Как с этим работать? Ведь все сохраняется в одной базе.

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

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

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

На текущий момент мы не рекомендуем использовать более одного сервера приложений для работы с одной БД. В теории можно на втором сервере приложения в web.config лоадера отключить использование Schrduler, однако это не обезопасит от остальных проблем, которые могут возникнуть.

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

Интересует возможность разнесения базы на файловые группы для разнесения групп на разные жёсткие диски (разный объем и скорость).

Есть ли в ВРМ встроенная возможность создавать определенные таблицы, например xxxFile на определенной файловой группе? И вообще, есть ли возможность управлять созданием таблиц на файловых группах?

Есть ли у кого-то положительный опыт разнесения базы на ФГ?

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

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

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

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

Готовлюсь к переносу пакета через SVN и смущает один момент.

У меня созданы новые детали. Пусть сами схемы он перенесет, а вот записи таблиц SysDetail (по 1 на деталь), SysSchema, возможно какие-то другие - что с ними будет?

Ведь без этих записей система нормально работать не будет?!

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

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

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

Для переноса содержимого некоторых таблиц используется механизм привязки данных к пакету - https://academy.terrasoft.ru/documents/technic-sdkmp/7-11/privyazka-dan…

 

Для упрощения привязки можно воспользоваться бесплатным дополнением с Marketplace - https://marketplace.terrasoft.ru/app/data-binding-tool

Привет!

А детали создавались мастером? Если да, то почти все привязки автоматом создаются в пакете Custom. Все, что надо сделать - "повторить" эти привязки в своем пакете.

Например, может быть создана привязка следующего вида "SysDetail_DetailManager_d95ebba0c04a454fad3bbb45962eef2d" по объекту SysDetail.

В этом случае надо действовать примерно по следующему плану:

1. открыть привязку и внимательно на нее взглянуть (можно для надежности сделать скриншот)

2. удалить привязку из пакета Custom (иначе не даст система привязать те же самые данные к другому пакету)

3. выбрать свой пакет и создать привязку по нужному объекту (в данном примере SysDetail, который в выпадашке объектов называется Details lookup)

4. обязательно выбрать тип установки как Installation

5. обязательно отфильтровать по Id. Этот идентификатор есть в названии привязки, но его надо привести к правильному виду GUID. Например, d95ebba0c04a454fad3bbb45962eef2d должен превратиться в d95ebba0-c04a-454f-ad3b-bb45962eef2d

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

7. сохранить и вкоммитить

 

P.S. Я не знаю, как работает утилита выше, которую посоветовал Павел, но подозреваю, что уже созданные привязки в других пакетах эта утилита не удаляет и их надо будет зачищать вручную.

 

Кстати, надо еще не забыть привязать настройку колонок детали... в описании утилиты сказано, что она позволяет привязывать к пакету настройку колонок по секциям, и ничего не сказано про детали. Если настройка колонок не задана в явном виде в секции diff cхемы детали и настройка колонок делалась через интерфейс, то надо будет привязывать еще и профиль отображения. Это объект SysProfileData (в выпадашке User profile) с фильтрацией по содержимому поля Key. Это поле должно содержать название детали или секции и, возможно еще содержать текст "GridSettings". Также, если не задан контакт у записи, то это отображение для всех - т.е. дефолтное отображение, если пользователь себе ничего не настраивал.

Максим Цынгаев,

не понял про SysProfileData. Как сделать эту привязку?

Алексей-Карягин,

Давай на примере покажу.

Есть собственная секция OpportunityPaymentsSection. Я настроил отображение колонок и сохранил, причем сохранял как для Supervisor, так и для All. Чтобы привязать это отображение к пакету, я создал привязку на вкладке Data по объекту User profile (SysProfileData - это так называется объект в БД и есть соответствующая таблица) и отфильтровал по двум критериям:

1. Key содержит название схемы секции

2. Contact не заполнен (т.е. в базе NULL)

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

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

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

Подскажите, пожалуйста. 

У контакта две почты: личная и корпоративная. Он хочет получать рассылки и на одну и на вторую. Возможно ли это или единственный вариант - это создание двух карточек контакта с указанием разных почтовых адресов? 

Заранее спасибо за ответ! 

 

С Уважнием,
Надежда

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

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

Добрый день!

Фактически ведь это два контакта с разными почтами. 
Вероятнее всего, решение в этой ситуации - как раз создавать два контакта с разной почтой.

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

Добрый день!!!

Кто нибудь знает как удалить действия с определенными разделами в командной строке?
Например: 

нужно чтобы "релиз" и действия над ним не отображались 

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

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

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

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

Command
CommandParams
AdditionalParam
MainParam

На которые и завязан функционал командной строки.

Также обращаю Ваше внимание что с версии 7.10.0 в приложении появился глобальный поиск https://academy.terrasoft.ru/documents/bpmonline-release-notes-7-10-0#T…, который полностью замещает функционал командной строки и одновременное использование этих 2х блоков функционала не возможно.

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

Добрый день!

 

Необходимо скрыть кнопку добавить с детали (https://db.tt/ecrKWQAcZv) на странице Юр. лица, в зависимости от определенных условий (например от типа Физ. лица текущего пользователя). Подскажите, пожалуйста, каким образом это можно реализовать?

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

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

 код кнопки из baseGridDetail:

{
	"operation": "insert",
	"name": "AddRecordButton",
	"parentName": "Detail",
	"propertyName": "tools",
	"values": {
		"itemType": Terrasoft.ViewItemType.BUTTON,
		"click": {"bindTo": "addRecord"},
		"visible": {"bindTo": "getAddRecordButtonVisible"},
		"enabled": {"bindTo": "getAddRecordButtonEnabled"},
		"style": Terrasoft.controls.ButtonEnums.style.TRANSPARENT,
		"imageConfig": {"bindTo": "Resources.Images.AddButtonImage"}
	}
},

Вариантов 2: либо замерджить и написать свой bindTo для св-ва visible, либо заместить метод getAddRecordButtonVisible

Данила, перед тем как создать тему мы испробовали данный метод и получили следующий результат - при переопределении метода getAddRecordButtonVisible и указании "return false" то кнопка остается доступна на детали, а если пишем "return true", то добавляется новая кнопка добавления (и их становится две). Есть ли другие способы? возможно это из старых версий?

А мёрдж использовать не получится т.к. у нас динамическое условие.

Сергей Фролов КРОК пишет:
а если пишем "return true", то добавляется новая кнопка добавления (и их становится две).

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

Если вдруг кому-нибудь понадобиться, то:

В системе, для деталей есть две кнопки добавления - AddRecordButton и AddTypedRecordButton.

AddRecordButton - отображается, если у детали одна карточка редактирования, AddTypedRecordButton - если несколько страниц редактирования.

За отображение первой кнопки отвечает метод getAddRecordButtonVisible, второй - getAddTypedRecordButtonVisible. Оба метода возвращают булевое значение.

Вот рабочий пример, пользуйтесь) 
Все лишнее убрано
define("UsrControlEquipmentDetail", [], function() {
    return {
        entitySchemaName: "UsrControlEquipment",
        details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
        diff: /**SCHEMA_DIFF*/[
            {
                "operation": "remove",
                "name": "ToolsButton"
            },
            {
                "operation": "remove",
                "name": "CardDetail"
            },
            {
                "operation": "remove",
                "name": "AddRecordButton"
            },
            {
                "operation": "remove",
                "name": "ViewButton"
            }
        ]/**SCHEMA_DIFF*/,
        methods: {
            getAddRecordButtonVisible: function() {
                return false;
            },
            getAddTypedRecordButtonVisible: function() {
                return false;
            },
            addRecordOperationsMenuItems: Terrasoft.emptyFn
        }
    };
});

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

Здравствуйте, нужно подписаться на сообщение pushHistoryState в схеме секции. Вопрос, как это сделать? Существуют ли какие нибудь методы для обработки параметров, передаваемых в этом сообщении?

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

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

Вот здесь расширяли и дополняли своей логикой возврат в карточку:
https://community.terrasoft.ru/questions/sobytie-obrabotcik-vozvrasenia…
Возможно аналогичным способом у вас получится реализовать и доп логику при переходе вперед.

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

Коллеги, доброе утро!

Согласно данной статье реализована функциональность - статья.

Однако, в примере используется объект раздела "Контакты" и присутствует кнопка "Добавить". В моем случае, используется объект, который является справочником и кнопки добавить нет . (пример на картинке). Подскажите, что необходимо сделать, чтобы была возможность добавить новое значение? Я так понимаю, потому что это справочник, у него нет страницы редактирования, потому система не понимает что вызывать для добавления новых значений. То есть самое простое решение, зарегистрировать его как раздел?

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

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

Здравствуйте, для того что бы была возможность добавлять записи, для объекта должна существовать страница редактирования. Что бы не делать все манипуляции вручную в БД по регистрации и созданию такой страницы: Самый простой способ, это на основании этого объекта, создать мастером деталей деталь, и сконфигурировав на соответствующей закладке "Страница" страницу для этого объекта, после сохранения детали, в бд будет создана и зарегистрирована как схема детали, так и схема карточки, и, после перезахода на сайт, возможность добавления в справочник из карточки будет доступной. Не забудьте почистить кеш браузера.

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

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

ConfigurationBootstrap.js:21948 Uncaught TypeError: Cannot read property 'entitySchemaName' of undefined
    at i.<anonymous> (ConfigurationBootstrap.js:21948)
    at all-combined.js:477
    at Object.execCb (require.js:1693)
    at Module.check (require.js:881)
    at Module.<anonymous> (require.js:1136)
    at require.js:134
    at require.js:1186
    at each (require.js:59)
    at Module.emit (require.js:1185)
    at Module.check (require.js:936)
(anonymous) @ ConfigurationBootstrap.js:21948
(anonymous) @ all-combined.js:477
execCb @ require.js:1693
check @ require.js:881
(anonymous) @ require.js:1136
(anonymous) @ require.js:134
(anonymous) @ require.js:1186
each @ require.js:59
emit @ require.js:1185
check @ require.js:936
enable @ require.js:1173
init @ require.js:786
callGetModule @ require.js:1200
completeLoad @ require.js:1608
onScriptLoad @ require.js:1714
core.js:579 user: Supervisor/7f3b869f-34f3-4f20-ab4d-7480a5fdf647
 file: http://localhost:82/0/Nui/ViewModule.aspx
 line: 3
 column: 1
 message: Uncaught SyntaxError: Unexpected token < 
 date: Thu Sep 07 2017 13:02:25 GMT+0300 (RTZ 2 (зима))
 stack: SyntaxError: Unexpected token <
writeErrorMessage @ core.js:579
(anonymous) @ core.js:740
execCb @ require.js:1693
check @ require.js:881
enable @ require.js:1173
init @ require.js:786
(anonymous) @ require.js:1457
setTimeout (async)
(anonymous) @ require.js:1812
localRequire @ require.js:1446
errorHandler @ core.js:716
core.js:579 user: Supervisor/7f3b869f-34f3-4f20-ab4d-7480a5fdf647
 file: http://localhost:82/0/configuration/04a28bb938a0652641f26936a1b20234/Co…
 line: 21948
 column: 57
 message: Uncaught TypeError: Cannot read property 'entitySchemaName' of undefined 
 date: Thu Sep 07 2017 13:02:25 GMT+0300 (RTZ 2 (зима))
 stack: TypeError: Cannot read property 'entitySchemaName' of undefined
    at i.<anonymous> (http://localhost:82/0/configuration/04a28bb938a0652641f26936a1b20234/Co…)
    at http://localhost:82/core/9081d8eb154840ddc3ec408c11264ff4/combined/all-…
    at Object.execCb (http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…)
    at Module.check (http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…)
    at Module.<anonymous> (http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…)
    at http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…
    at http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…
    at each (http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…)
    at Module.emit (http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…)
    at Module.check (http://localhost:82/core/c3a883e5c39cffb863b2f781f396c705/requirejs/req…)
writeErrorMessage @ core.js:579
(anonymous) @ core.js:740
execCb @ require.js:1693
check @ require.js:881
enable @ require.js:1173
init @ require.js:786
(anonymous) @ require.js:1457
setTimeout (async)
(anonymous) @ require.js:1812
localRequire @ require.js:1446
errorHandler @ core.js:716

Прикрепленные файлы

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

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

Создаю модальное окно по примеру(документ во вложении), в итоге окно открывается, но пусто и с ошибками в консоли:

core.js:321 Uncaught TypeError: Cannot read property 'css' of null
    at constructor.loadModule (core.js:321)
    at constructor.injectedSandbox.loadModule (core.js:557)
    at i.loadMyModal (ITRoute1Page.js:200)
    at i.onMyClick (ITRoute1Page.js:208)
    at i.onCardAction (SectionBundleModule.js:25266)
    at i.callModelMethod (all-combined.js:532)
    at i.<anonymous> (all-combined.js:527)
    at i.fire (all-combined.js:1)
    at i.continueFireEvent (all-combined.js:1)
    at i.fireEventArgs (all-combined.js:1)
loadModule @ core.js:321
injectedSandbox.loadModule @ core.js:557
loadMyModal @ ITRoute1Page.js:200
onMyClick @ ITRoute1Page.js:208
onCardAction @ SectionBundleModule.js:25266
callModelMethod @ all-combined.js:532
(anonymous) @ all-combined.js:527
fire @ all-combined.js:1
continueFireEvent @ all-combined.js:1
fireEventArgs @ all-combined.js:1
fireEvent @ all-combined.js:1
onClick @ all-combined.js:1464
(anonymous) @ VM1476:6
k @ all-combined.js:1
core.js:579 user: Supervisor/7f3b869f-34f3-4f20-ab4d-7480a5fdf647
 file: http://localhost:82/core/04566becfbd71b73c17d3b4e92cd2ba9/Terrasoft/amd…?
 line: 321
 column: 23
 message: Uncaught TypeError: Cannot read property 'css' of null 
 date: Wed Sep 06 2017 18:53:08 GMT+0300 (RTZ 2 (зима))
 stack: TypeError: Cannot read property 'css' of null
    at constructor.loadModule (http://localhost:82/core/04566becfbd71b73c17d3b4e92cd2ba9/Terrasoft/amd…)
    at constructor.injectedSandbox.loadModule (http://localhost:82/core/04566becfbd71b73c17d3b4e92cd2ba9/Terrasoft/amd…)
    at i.loadMyModal (http://localhost:82/0/configuration/bd4295bf69df92756a9874ef03769838ru-…)
    at i.onMyClick (http://localhost:82/0/configuration/bd4295bf69df92756a9874ef03769838ru-…)
    at i.onCardAction (http://localhost:82/0/configuration/7780bccaa707bb5d986ffb3da67b6f6b/Se…)
    at i.callModelMethod (http://localhost:82/core/9081d8eb154840ddc3ec408c11264ff4/combined/all-…)
    at i.<anonymous> (http://localhost:82/core/9081d8eb154840ddc3ec408c11264ff4/combined/all-…)
    at i.fire (http://localhost:82/core/9081d8eb154840ddc3ec408c11264ff4/combined/all-…)
    at i.continueFireEvent (http://localhost:82/core/9081d8eb154840ddc3ec408c11264ff4/combined/all-…)
    at i.fireEventArgs (http://localhost:82/core/9081d8eb154840ddc3ec408c11264ff4/combined/all-…)

 

В чем может быть проблема?

Прикрепленные файлы

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

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

Здравствуйте, напишите в поддержку с предоставлением доступа к сайту, инструкцию проверили, работает.

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