Вопрос

Здравствуйте, уважаемые коллеги! Нужен программист для внедрения задач в Bpmonline...Задачи сформированы, ищем исполнителя! Если у кого-то есть желание и время, напишите пожалуйста на скайп: dima-tashohlo или вайбер,телеграм - +380986035321

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

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

Доброго времени суток, коллеги.

ТеррасофтCRM 3.3.2.245.

Возможно ли в DataGrid-е запретить отображение панели итогов? В противном случае при выборке в SelectQuery из табличной функции и включенных итогах в гриде выдается ошибка: "Функции SUM необходимо 1 аргументов". Я пока программно устанавливаю свойство IsSummaryVisible грида в false, но может есть более цивильный способ?

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

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

Добрый день всем.

 

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

assembly.CreateInstance("Terrasoft.Configuration.ContactSchema")

всегда получаю ошибку

"Constructor on type 'Terrasoft.Configuration.ContactSchema' not found."

Хотя у любых других Классов их инстансы я получаю. Я понимаю что в Terrasoft.Core есть методы по получению Инстенсов по Имени или через UID схемы. Но мне в задачи требуется создать Инстенс схемы, или через данную конструкцию, что описал выше или через Activator.CreateInstanse. Помогите пожалуйста как правильно работать со схемами таблиц через данные конструкции. Спасибо.

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

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

Добрый день!
У ContactSchema нет конструктора без параметров.

Сидоров Александр В.,

И как правильно тогда мне создать Инстенс Контактов, Контрагентов ?

плюс как мне определить у каких схем конструкторы без параметров у каких с параметрами? не просматривая каждую схему, программным путем как то это можно сделать. Но больше всего волнует как правильно создать через конструкцию assembly.CreateInstanse. Подскажите пожалуйста спасибо.

Власов Михаил Викторович,

Можно так

var contact = new Terrasoft.Configuration.Contact(_userConnection);

Если вас интересует именно через рефлексию, то нужно смотреть описание каждого класса, создавать параметры и передавать их в конструктор. Подробнее в https://docs.microsoft.com/ru-ru/dotnet/api/system.reflection.assembly…

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

Добрый день!

Возможно кто-нибудь ранее сталкивался с проблемами в мобильном приложении на iOS. Приложение постоянно намертво зависает при создании/редактировании активностей. Очистка кэша помогает ровно до первого раза. Пользователи устройств на android таких проблем не испытывают. С интернетом и свободным пространством на телефоне проблем нет.

Десктопная версия BPM 7.12, мобильная 7.13.

Чем могут быть вызваны проблемы в мобильном приложении на iOS? Может ли кто-нибудь посоветовать метод борьбы с данными проблемами? 

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

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

Всем доброго времени суток!
Есть задача при изменении кол-ва продуктов или же изменении продукта в детали Продукт в заказе просчитывать Amount и TotalAmount. Реализую данную задачу через пользовательское бизнес правило:
 

Terrasoft.sdk.Model.addBusinessRule("OrderProduct", {
	name: "WaOrderProductAmountValidatorRule",
	ruleType: Terrasoft.RuleTypes.Custom,
	triggeredByColumns: ["Quantity", "Product"],
	events: [Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save],
	executeFn: function(model, rule, column, customData, callbackConfig) {
		window.console.info(model);
		debugger;
		var product = model.get("Product");
		if ((!product) || Ext.isEmpty(product)) {
			model.set("Price", 0, true);
			model.set("TotalAmount", 0, true);
			model.set("Amount", 0, true);
		} else {
			var quantity = model.get("Quantity");
			var price = product.get("Price");
			var amount = quantity * price;
			model.set("Amount", amount, true);
			model.set("TotalAmount", amount, true);
		}
		Ext.callback(callbackConfig.success, callbackConfig.scope);
	}
});

Но почему то значение цены продукта возвращает null:
 

{
	"modified":{
		"Id":"fbfb2d62-4439-486b-ae2f-b360f9e899f8"
	},
	"raw":{},
	"stores":[],
	"data":{
		"Id":"1fd85496-4cc0-485c-ad37-bb91857e65df",
		"Name":"Гидрогелевая маска для лица WOW Mask",
		"ProcessListeners":null,
		"Price":null,
		"Active":false,
		"IsArchive":false
	},
	"_data":{
		"Id":"1fd85496-4cc0-485c-ad37-bb91857e65df",
		"Name":"Гидрогелевая маска для лица WOW Mask",
		"ProcessListeners":null,
		"Price":null,
		"Active":false,
		"IsArchive":false
	},
	"id":"fbfb2d62-4439-486b-ae2f-b360f9e899f8",
	"internalId":"fbfb2d62-4439-486b-ae2f-b360f9e899f8",
	"phantom":true,
	"dirty":true
}

Хотя значение цены есть - http://prntscr.com/my9x2o

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

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

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

var controller = Terrasoft.app.getControllerInstances()["MyController"];
//Можно задебажиться и посмотреть, какие экземпляры контроллеров есть, среди них должен быть нужный
var control = controller.getFieldByName("MyColumn", record);
control.setValue(value);

Или ещё вариант:

var control = Ext.getCmp("{ViewId}_{PageType}_{ColumnName}_Column");
// {ViewId} - id представления, {PageType} - тип страницы Edit или Preview, {ColumnName} - название колонки, например AccountPage_Edit_AlternativeName_Column
control.setValue(value);

 

Бершеда Д. Н.,

 Здравствуйте! Я настроил кастомное правило и все хорошо изменяется, в данном случае сумма в зависимости от цены и кол-ва товаров. Вопрос в другом, не видит значение цены продукта, вот пример:
Есть заказ с продуктами -

http://prntscr.com/mz1088, меняю кол- во продукта срабатывает правило - http://prntscr.com/mz10kr
Мне возвращает цену продукта null - http://prntscr.com/mz10vd
Почему так происходит? В манифест зависимости добавил.

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

Такое происходит из-за того, что в конфиг запроса для справочной колонки никоим образом не была добавлена нужная колонка. Можно в явном виде добавить таким кодом где-нибудь в ModuleConfig:

    var additionalProductColumns = ["Price", /*прочие колонки*/];
    var productQueryConfig = Terrasoft.sdk.LookupGridPage.getQueryConfig("Product");
    Terrasoft.sdk.LookupGridPage.updateQueryConfigColumns(null, {columns: additionalProductColumns}, productQueryConfig);

Либо можно для converFuction первичной или вторичной колонки добавить её в LookupGridPage.

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