Вопрос

Приветы,

 

Все методы работали. 

Разработка велась в "своем" пакете, а создавалось изначально поле в кастоме.

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

 

Есть описание

{
                    "operation": "insert",
                    "name": "BpSpeekAddr",
                    "parentName": "GeneralInfoGridLayout",
                    "propertyName": "items",
                    "values": {
                        "dataValueType": this.Terrasoft.DataValueType.ENUM,
                        "caption": "Адрес собеседования",
                        "controlConfig": {
                            "list": {
                                "bindTo": "SpeakAddressItems"
                            },
                            "prepareList": { bindTo: "initSpeakAddressItems" },
                            "placeholder": {
                                "bindTo": "Адрес собеседования"
                            }
                        },
                        "layout": {
                "colSpan": 12,
                "rowSpan": 1,
                "column": 12,
                "row": 4,
                        }
                    }
                },

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

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

Воплотил инструкцию https://academy.terrasoft.ru/documents/technic-sdk/7-6-0/kak-sozdat-svo…

всё работает, но есть вопрос - как передать в функцию более 1 параметра? Например, сумму и валюту?

Там есть параметр arguments - им можно воспользоваться?

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

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

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

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

Это уж слишком костыльное решение :) Хочется нормальное.

Тут описывается пример макроса с аргументами и их использованием в Ворде.

Аргументы идут через символ «|» после названия макроса внутри его обрамления.

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

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

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

Всем доброго времени суток!
Столкнулся с проблемой передачи параметров из клиентского кода в БП

Вот код вызывающий мой БП и туда передаю 2 параметра, названия совпадают:
 

runProcessFormingAudience: function () {
				debugger;
				var folderFilters = this.get("SectionFiltersValue").collection.get("FolderFilters");
				var customFilters = this.get("SectionFiltersValue").collection.get("CustomFilters");
				if(folderFilters || (customFilters && customFilters.null != undefined)){
					var filters = (folderFilters != undefined && folderFilters.length > 0) ? folderFilters[0].filter : customFilters.null.filter;
				}
				var args = {
					sysProcessName: "AbCreatingSmsAudienceProcess",
					parameters: {
						EntitySchemaName: this.entitySchemaName,
						Filters: filters
					}
				};
				ProcessModuleUtilities.executeProcess(args);
			}

Принимаемые параметры - http://prntscr.com/j8wmeg

Далее смотрю что передалось в эти параметры и логирую:
 

var userConnection = Get<UserConnection>("UserConnection");
var log = new LogService(userConnection);
var filters = Get<string>("Filters");
var entitySchemaName = Get<string>("EntitySchemaName");
var smsServiceId = Get<Guid>("SmsServiceId");
var smsName = Get<string>("SmsName");
 
log.RecInfo(string.Format("smsName = {0}", smsName));
log.RecInfo(string.Format("smsServiceId = {0}", smsServiceId));
log.RecInfo(string.Format("entitySchemaName = {0}", entitySchemaName));
log.RecInfo(string.Format("filters = {0}", filters));
 
return true;

И в итоге данные не занеслись - http://prntscr.com/j8wnau
Подскажите из-за чего может вести себя так система? Вроде делаю все правильно.

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

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

немного не понял смысла

customFilters.null

ну да и ладно...

Код актулен, если вы планируете поместить filters в string(по коду var filters = Get<string>("Filters"), я понимаю в этом план).

Варфоломеев Данила,

Благодарю, уже разобрался))

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

После очистки кэша рэдиса перестали вызываться события по таймеру.

Что нужно сделать, чтобы они все заработали?

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

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

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

Мне необходимо внести изменения в базовый конфигурационный сервис AdministrationServiceUsers.

Возможно ли создать замещающую схему для сервиса? 

Подскажите, как правильно это сделать? В академии не нашел информации.

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

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

Добрый день, Павел.

Вносить изменения в базовые веб сервисы нет возможности.

Для этих целей Вам необходимо реализовать собственный веб - сервис,

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

Подробно вопрос конфигурирования веб-сервисов рассматривается в видео-обучении. https://www.youtube.com/watch?v=rbdB7LFgNf0&feature=youtu.be

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

Могу ли я запретить создавать новые записи в реестре, имея только "Администрирование по записям"?

Если я в "Доступ к записям по умолчанию: Изменение" сделаю "кто создает: группа документооборот" и не будет "все сотрудники компании" это поможет сделать так, чтобы создавать могли только люди из группы документооборота?

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

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

Это задаётся не в администрировании по записям, а по объекту.

Можно убрать всем сотрудникам право на добавление и дать той группе, кому нужно.

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

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

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

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

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

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

Ответ на Ваш вопрос есть в топике - https://community.terrasoft.ru/questions/perenos-otcetov-bpm-online-mez…

и

https://community.terrasoft.ru/questions/kak-privazat-razrabotannye-pec…

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

            attributes: {
                "SpeakAddress": {
                    type: Terrasoft.ViewModelColumnType.VIRTUAL_COLUMN,
                    dataValueType: Terrasoft.DataValueType.LOOKUP,
                    referenceSchemaName: "AccountAddress",
                    isLookup: true,
                    lookupListConfig: {
                        "filter": function () {

Как написать sql запрос

select ad.id, ad.Address

from 
  AddressType at, 
  AccountAddress ad

where 
    at.Name = 'Собеседования' and 
    at.Id = ad.AddressTypeId

                        }
                    }
                    //isRequired: true
                },

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

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

Здравствуйте попробуйте что то вроде такого:
 

lookupListConfig: {
    "filters": [ 
        function () {
            var addressTypeId = this.get("AddressType").value;            
            var filterGroup = Ext.create("Terrasoft.FilterGroup");
            filterGroup.add("CV", Terrasoft.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,"[AccountAddress:AddressType].Name", "Собеседования"));
            filterGroup.add("Type", Terrasoft.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,"[AccountAddress:AddressType].Id", addressTypeId));
            return filterGroup;
             }
    ]
}

 

как работать с фильтрами описано в статье - https://academy.terrasoft.ru/documents/technic-sdk/7-12/primenenie-filt…

Нигрескул Алексей,

Спасибо. 

Своими силами попробовал написать и совпало с вашим советом

 "filter": function () {
                            var filterGroup = Ext.create("Terrasoft.FilterGroup");
                            filterGroup.add("IsAddressType",
                                Terrasoft.createColumnFilterWithParameter(
                                    Terrasoft.ComparisonType.EQUAL,
                                    "[AccountAddress:AddressType].Id",
                                    "[AccountAddress.AddressType].Id"));//из таблицы
                            filterGroup.add("IsSpeak",
                                Terrasoft.createColumnFilterWithParameter(
                                    Terrasoft.ComparisonType.EQUAL,
                                    "[AccountAddress:AddressType].Name",
                                    "Собеседования"));
                            return filterGroup;
                        }

Делал как раз по той статье, клиентский esq синтаксис - это для наркоманов :)

QArt,

Нигрескул Алексей,

Не заработало

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

Всем привет, прошу помощи в вопросе кастомизации страницы авторизации.

Задача переопределить действие по нажатию на кнопку "Войти", дело в том, что по мимо CRM у нас есть внутренние продукты компании, хотелось бы сделать общий интерфейс входа для пользователя. Пользователь тыкает на "Вход", а ему список существующих продуктов.

Блок авторизации представлен: viewContainer, но не понятно где он генерируется

 

Подскажите куда копать?

 

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

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

Возможно, есть смысл сделать полностью свою страницу входа, которая получает логин и пароль и, если нужно войти именно в CRM, передаёт их POST-ом в AuthService. Он должен в случае верных данных возвратить куку, которая даст возможность работать с самой системой, если перейти на URL страницы раздела.

Кастомизировал в итоге с помощью jQuery, просто и быстро получилось

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

Добрый день!

Подскажите пожалуйста, быть может кто-нибудь интеграцию bpm и программы Альта ГТД или bpm с другой программой по таможенному оформлению товаров?

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

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

Добрый день, Александр!

На данный момент в базовой версии bpm'online нет интеграции с программами для таможенного оформления.

Вы можете решить данную бизнес цель один из следующих способов:

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

2) Выполнить доработки самостоятельно, если у Вас есть сертифицированные специалисты по разработке bpm'online, то тех. поддержка Террасофт проконсультирует Вас по точечным вопросам.

Так же можно выполнять передачу данных по API из Альта ГТД в bpm'online - https://academy.terrasoft.ru/documents/technic-sdk/7-12/integraciya-s-s…

 

 

 

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