Вопрос

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

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

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

Всем доброго времени суток. Версия 7.12.

Есть инструкция по созданию пользовательского виджета итогов: https://academy.terrasoft.ru/documents/technic-sdk/7-10/dobavlenie-polz…

Из неё честно говоря, совершенно не понятно, как передаются в модуль виджета данные записей для дальнейших манипуляций с ними. Или в модуле их придётся вытягивать через EntitySchemaQuery (но тогда вопрос - как передать параметры фильтра?)

Конкретная задача состоит в том, чтобы вывести соотношение между двумя суммами по разным колонкам (разумеется, с учётом фильтров и т.д.) Стандартными средствами можно вывести просто "Показатель" (например, сумму значений колонки Column, попадающих в фильтр), но не получится посчитать процентное соотношение между суммами по двум разным колонкам, или соотношение вроде "Сумма по Колонке Column в случае если её значение равно 1 / Общая сумма по колонке Column".

Возможно, есть какие-то примеры решения подобных задач?

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

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

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

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

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

Все можно сделать на клиенте

1)Заместите вашу деталь

2) для кнопки добавления переопределите свойство доступность для ваших условий

А может есть метод по аналогии save, где можно в зависимости от условия не вызывать  родительскую реализацию?

Можно делать с зацепом на права доступа, можно просто делать доступной/не доступной саму кнопку удалить, можно обрабатывать нажатие кнопки и выдавать исключение, вариантов много, все зависит от того, какой вариант вам нужен

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

attributes: {
	"EnabledRecommendation": {
		"dataValueType": this.Terrasoft.DataValueType.BOOLEAN,
		"value": true
	}
},
methods: {
	addRecordOperationsMenuItems: function(toolsButtonMenu) {
		this.callParent(arguments);
		var data = this.getCalcRecom();
		if (data) {
			toolsButtonMenu.addItem(data);
		}
	},
 
	getCalcRecom: function() {
		return this.getButtonMenuItem({
			Caption: "Рассчитать рекомендации",
			Enabled: {bindTo: "EnabledRecommendation"}
		});
	},
 
	fireDetailChanged: function() {
		this.callParent(arguments);
		this.enableRecommendation();
	},
	enableRecommendation: function() {
		var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", {rootSchemaName: "OrderProduct"});
		esq.addColumn("Id");
		esq.addColumn("Product");
		esq.filters.addItem(esq.createColumnFilterWithParameter(
			Terrasoft.ComparisonType.EQUAL,
			"Order.Id",
			this.get("MasterRecordId")));
 
		esq.getEntityCollection(function(result) {
			this.set("EnabledRecommendation", result.collection.getCount() > 0);
			console.log(result.collection.getCount());
		}, this);

 

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

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


 

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

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

Попробуйте что-то вроде такого: 

initQuerySorting: function(esq) {
  if (!esq.columns.contains("CreatedOn")) {
    var createdOnColumn = esq.addColumn("CreatedOn");
    createdOnColumn.orderPosition = 1;
    createdOnColumn.orderDirection = this.Terrasoft.OrderDirection.ASC; //DESC
  }
 }

 

Как вариант, можете попробовать через Конфигурацию установить колонку сортировки http://prntscr.com/kx2u2z для вашего объекта Справочник.

На сколько я помню - должно сработать.

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

Всем доброго времени суток. Версия 7.12.

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

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

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

Можно, на примере раздела, по нажатию на кнопку "Выбрать несколько записей" проверял:
 

setMultiSelect: function() {
				this.callParent(arguments);
				var rows = this.getGridData();
				this.addSelectedRecords(rows);
			},
			addSelectedRecords: function(gridData) {
				if (gridData) {
					var rowKeys = gridData.getKeys();
					this.set("SelectedRows", this.Ext.Array.push(rowKeys[0]));
				}
			}

 

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