Добрый день!

Столкнулся с проблемой, что бизнес-правило в мобильном приложении не отрабатывает на действие изменения значения в поле колонки вот здесь:

Изображение удалено.

 

Но при этом бизнес-правило успешно отрабатывает когда я не меняю число 20 в поле выше, а когда добавляю новую запись в продвигаемые продукты  и ввожу значение в поле:

Изображение удалено.





Код бизнес-правила:

 

Terrasoft.sdk.Model.addBusinessRule("ActivityPromProduct", {
    name: "OpportunityAmountValidatorRule",
    ruleType: Terrasoft.RuleTypes.Custom,
    triggeredByColumns: ["QuantityPrescription"],
    events: [Terrasoft.BusinessRuleEvents.ValueChanged],
    executeFn: function(model, rule, column, customData, callbackConfig) {
        var revenue = model.get("QuantityPrescription");
		if (model.phantom){
			model.set("QuantityPrescription", 5, true);
		}
		else{
			model.set("QuantityPrescription", 7, true);
		}
        Ext.callback(callbackConfig.success, callbackConfig.scope);
    }
});

 

Нравится

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

Добрый день, Сергей.



Попробуйте также в events добавить событие Terrasoft.BusinessRuleEvents.Save и проверьте работу.



 

events: [Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save]

 

Mykhailo Storozhuk,

Добрый день! Не помогло, всё-равно при вводе значения в поле и сохраняется введённое мной значение, а не например, 5 или 7 как из кода выше по идее должно быть.

Симонов Сергей Сергеевич,

Добрый день, Сергей.



1) Добавили ли Вы схему, в которой настраиваете это бизнес правило в манифест мобильного приложения? Корректно ли Вы это сделали?  

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

3) Кроме того, нужно провести отладку кода внутри мобильного приложения и посмотреть вызывается ли нужный метод.

4) Возможно у Вас есть еще одно бизнес правило, которое может нарушать логику текущего? Проверьте бизнес правила связанные с проблемными колонками.



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

Показать все комментарии
Мобильное приложение
Studio_Creatio
7.17

Добрый день!

на данный момент используем интеграцию Creatio + Power automate + Teams bot.

 

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

Нравится

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

Добрый день!



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

В настоящее время это можно реализовать только разработкой с многими нюансами.



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

Спасибо за идею!

Показать все комментарии
Мобильное приложение
оффлайн
Mobile_Creatio
7.17

Привет!

 

При синхронизации в оффлайн режиме не импортируются значения колонок одного из объектов. При чем данная проблема воспроизводится только при синхронизации непосредственно из самого мобильного устройства (версия приложения на устройстве 7.17.3). 

При синхронизации с эмулятора все работает корректно.



Колонки объекта и их настройка синхронизации в манифесте:

Изображение удалено.



Ловлю запрос в профайлере при синхронизации с эмулятора:Изображение удалено.

Ловлю запрос при синхронизации с приложения на мобильном устройстве:

Изображение удалено.



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

Нравится

2 комментария
Лучший ответ

Привет!

 

Мы сталкивались с подобным кейсом. Проблема была в том, что был задублированный в одном из манифестов  объект импорта. В итоге, при слиянии манифестов в результирующем конфиге присутствовали две настройки импорта для одного объекта. Один с дополнительными колонками, второй - нет. Брался второй конфиг при формировании запроса к серверу.

 

Привет!

 

Мы сталкивались с подобным кейсом. Проблема была в том, что был задублированный в одном из манифестов  объект импорта. В итоге, при слиянии манифестов в результирующем конфиге присутствовали две настройки импорта для одного объекта. Один с дополнительными колонками, второй - нет. Брался второй конфиг при формировании запроса к серверу.

 

Зезюков Сергей Aлександрович,

Спасибо, действительно в одном из пакетов в манифесте был дубль объекта SupplyPaymentTemplate

Показать все комментарии
Мобильное приложение
Mobile_Creatio
7.16

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

{
	"SyncExtensions": [
		"ScpMobileSyncExtensions"
	],
	"SyncOptions": {
//Настройки синхронизации
  }
}

Однако этот модуль не загружается вообще при синхронизации с реального устройства (в моём случае под Android). Пробовал отдельно просто выводить окошко с сообщение Terrasoft.MessageBox.showMessage("Тест"); При синхронизации с эмулятора окно с сообщением выводится как и положено, но при синхронизации с телефона ничего не происходит.

Кто сталкивался с подобным, как удалось решить?

Нравится

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

SyncExtensions стал deprecated c версии 7.16.0 так как перешли на «нативную» синхронизацию написаную на Java.

Соответсвенно, пользовательский javascript подключить туда нельзя.

Есть обходное решение — отключить нативную синхронизацию.

Но делать это настоятельно не рекомендуем, т.к. все новые «фишки» у Вас перестанут работать.

Опишите свою проблему, может, её «в коробке» исправят в новых версиях.

Показать все комментарии
Мобильное приложение
синхронизация
Mobile_Creatio
7.16

Добрый день. 

Столкнулись с такой проблемой, что на больших объёмах данных (несколько миллионов записей) в таблице продуктов в заказе. Настройка синхронизации объекта стандартная, в которой в SyncOptions установлен параметр "SyncByParentColumnWithRights": "Order"

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

Кто сталкивался с подобными проблемами, как удавалось решить?

Нравится

1 комментарий
Лучший ответ

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

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

Еще вариант создать новый раздел для продуктов которые должны в мобильном приложении и не включать на этом разделе права.

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

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

Еще вариант создать новый раздел для продуктов которые должны в мобильном приложении и не включать на этом разделе права.

Показать все комментарии
Мобильное приложение
бизнес-правила
7.16
Sales_Creatio_enterprise_edition

Добрый день, уважаемые коллеги!

Есть задача в мобильном приложении (уже давно функционирующем) изменить на карточке Контрагента логику поля Подразделение . В справочнике Подразделений добавлено булево поле UsrProhibitSelectionAccount, если true, то запрещать подразделение к выбору. 

Рассматриваю применение 2-х вариантов:

Бизнес-правило 1: Фильтр записей Подразделений по признаку UsrProhibitSelectionAccount (см. ниже 1-й метод). Метод отрабатывает и при выборе отображает только то, что можно

Бизнес-правило 2: Выдавать сообщение пользователю, если выбранная ранее запись некорректна (см. ниже 2-й метод).  И вот тут почему-то в консоли видно, что не считывается корректно значение поля UsrProhibitSelectionAccount. Оно всегда false. Правда не во всех записях оно заполнено (см. скрин).

Помогите, пожалуйста, определить в чем некорректность 2-го метода. Благодарю за помощь

// Правило 1
/*Terrasoft.sdk.Model.addBusinessRule("Account", {
	ruleType: Terrasoft.RuleTypes.Filtration,
	position: 1,
	triggeredByColumns: ["UsrDepartment"],
	events: [Terrasoft.BusinessRuleEvents.ValueChanged,Terrasoft.BusinessRuleEvents.Load],
	 message: Terrasoft.LocalizableStrings.DepartmentMustBeAllowed,
	 filters: Ext.create("Terrasoft.Filter", {
        modelName: "UsrAccountDepartments",
        property: "UsrProhibitSelectionAccount",
        value: false
    })
});*/
 
// Правило 2
Terrasoft.sdk.Model.addBusinessRule("Account", {
	name: "AccountDepartmentMustBeAllowedRule",
	ruleType: Terrasoft.RuleTypes.Custom,
	triggeredByColumns: ["UsrDepartment"],
	events: [Terrasoft.BusinessRuleEvents.Load,
		Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save],
	executeFn: function(record, rule, column, customData, callbackConfig) {
		var AccountDepartment = record.get("UsrDepartment");
	var isValid = AccountDepartment.get("UsrProhibitSelectionAccount");
 
		record.changeProperty("UsrDepartment", {
			isValid: {
				value: isValid,
				message: Terrasoft.LocalizableStrings.DepartmentMustBeAllowed
			}
		});
		Ext.callback(callbackConfig.success, callbackConfig.scope, [isValid]);
	}
});

Изображение удалено.

Изображение удалено.

Нравится

2 комментария
Лучший ответ

Марина, а оно точно так должно синхронно читать из объекта справочника так, как у Вас?

В схеме MobileActivityOpportunityModelConfig значение Opportunity.Account читают с асинхронным вызовом так:

Terrasoft.sdk.Model.addBusinessRule("Activity", {
	name: "ActivityAccountOpportunityFiltrationRule",
	ruleType: Terrasoft.RuleTypes.Filtration,
	events: [Terrasoft.BusinessRuleEvents.Load, Terrasoft.BusinessRuleEvents.ValueChanged],
	triggeredByColumns: ["Account"],
	filteredColumn: "Opportunity",
	filters: Ext.create("Terrasoft.Filter", {
		property: "Account"
	})
});
 
Terrasoft.sdk.Model.addBusinessRule("Activity", {
	name: "ActivityAccountByOpportunityRule",
	ruleType: Terrasoft.RuleTypes.Custom,
	triggeredByColumns: ["Opportunity"],
	events: [Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save,
		Terrasoft.BusinessRuleEvents.Load],
	executeFn: function(record, rule, column, customData, callbackConfig) {
		var opportunityRecord = record.get("Opportunity");
		if (opportunityRecord) {
			var accountRecord = record.get("Account");
			if (!accountRecord) {
				var opportunityModel = Ext.ModelManager.getModel("Opportunity");
				opportunityModel.load(opportunityRecord.getId(), {
					isCancelable: false,
					queryConfig: Ext.create("Terrasoft.QueryConfig", {
						columns: ["Account"],
						modelName: "Opportunity"
					}),
					success: function(loadedRecord) {
						if (loadedRecord) {
							record.set("Account", loadedRecord.get("Account"), true);
						}
						Ext.callback(callbackConfig.success, callbackConfig.scope);
					},
					failure: function(record, operation) {
						var exception = operation.getError();
						Ext.callback(callbackConfig.failure, callbackConfig.scope, [exception]);
					},
					scope: this
				});
				return;
			}
		}
		Ext.callback(callbackConfig.success, callbackConfig.scope);
	},
	position: 1
});

Также на скриншоте видно, что колонка UsrProhibitSelectionAccount  в локальной БД пустая. Из-за этого логика может отрабатывать некорректно. Нужно правильно настроить фильтрацию синхронизации в манифесте и пересинхронизировать с нуля. 

Марина, а оно точно так должно синхронно читать из объекта справочника так, как у Вас?

В схеме MobileActivityOpportunityModelConfig значение Opportunity.Account читают с асинхронным вызовом так:

Terrasoft.sdk.Model.addBusinessRule("Activity", {
	name: "ActivityAccountOpportunityFiltrationRule",
	ruleType: Terrasoft.RuleTypes.Filtration,
	events: [Terrasoft.BusinessRuleEvents.Load, Terrasoft.BusinessRuleEvents.ValueChanged],
	triggeredByColumns: ["Account"],
	filteredColumn: "Opportunity",
	filters: Ext.create("Terrasoft.Filter", {
		property: "Account"
	})
});
 
Terrasoft.sdk.Model.addBusinessRule("Activity", {
	name: "ActivityAccountByOpportunityRule",
	ruleType: Terrasoft.RuleTypes.Custom,
	triggeredByColumns: ["Opportunity"],
	events: [Terrasoft.BusinessRuleEvents.ValueChanged, Terrasoft.BusinessRuleEvents.Save,
		Terrasoft.BusinessRuleEvents.Load],
	executeFn: function(record, rule, column, customData, callbackConfig) {
		var opportunityRecord = record.get("Opportunity");
		if (opportunityRecord) {
			var accountRecord = record.get("Account");
			if (!accountRecord) {
				var opportunityModel = Ext.ModelManager.getModel("Opportunity");
				opportunityModel.load(opportunityRecord.getId(), {
					isCancelable: false,
					queryConfig: Ext.create("Terrasoft.QueryConfig", {
						columns: ["Account"],
						modelName: "Opportunity"
					}),
					success: function(loadedRecord) {
						if (loadedRecord) {
							record.set("Account", loadedRecord.get("Account"), true);
						}
						Ext.callback(callbackConfig.success, callbackConfig.scope);
					},
					failure: function(record, operation) {
						var exception = operation.getError();
						Ext.callback(callbackConfig.failure, callbackConfig.scope, [exception]);
					},
					scope: this
				});
				return;
			}
		}
		Ext.callback(callbackConfig.success, callbackConfig.scope);
	},
	position: 1
});

Также на скриншоте видно, что колонка UsrProhibitSelectionAccount  в локальной БД пустая. Из-за этого логика может отрабатывать некорректно. Нужно правильно настроить фильтрацию синхронизации в манифесте и пересинхронизировать с нуля. 

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

 

Александр, большое спасибо за рекомендации. Да, видимо, я неверно читаю объект справочника. Надо попробовать разобраться с асинхронным вызовом. Спасибо за приведенный пример.

Заполнение колонки UsrProhibitSelectionAccount в локальной базе пока не помогло.

Показать все комментарии
Google Chrome
Мобильное приложение
7.10
Mobile_Creatio

Пару месяцев назад после очередного обновления ос Android 7 приложение bpm перестало загружаться. Проблема решается отключением приложения GoogleChrome и отключением автообновлений.

версия мобильного приложения 7.10

 

из-за чего может возникнуть такой конфликт?

старая версия моб приложения и обновленный хром совсем никак не смогут сосуществовать?

Нравится

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

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

 

У нас нет как таковой поддержки старых версий приложения. Рекомендуем использовать актуальную версию приложения, сейчас это 7.16.1. 

Показать все комментарии
бизнес правила
Мобильное приложение
бизнес
Проблемы
не_работает
Бизнес_правила_мобильного_приложения

Добрый день, коллеги. Прошу помочь... Одно правило последнее перекрывает первое. И последнее работает, а первое нет. 

Как можно сделать чтобы правило срабатывало по двум условиям?

 

 

Terrasoft.sdk.Model.addBusinessRule("Activity", {

    ruleType: Terrasoft.RuleTypes.Visibility,

    conditionalColumns: [

        {name: "UsrLookupBR", value:"b14640eb-8b89-4fe9-8b00-a51b61ff9430"}

    ],

    triggeredByColumns: ["UsrLookupBR"],

    dependentColumnNames: ["UsrLookupDostup"]

});



Terrasoft.sdk.Model.addBusinessRule("Activity", {

    ruleType: Terrasoft.RuleTypes.Visibility,

    conditionalColumns: [

        {name: "UsrLookupBR", value:"e818a7c2-f351-41a6-a376-7f42762883f2"}

    ],

    triggeredByColumns: ["UsrLookupBR"],

    dependentColumnNames: ["UsrLookupDostup"]

});

Нравится

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

Насколько понимаю, в MobileKnowledgeBaseFileModelConfig именно так и сделано, два правила по двум константам меняют видимость одного поля:

Terrasoft.sdk.Model.addBusinessRule("KnowledgeBaseFile", {
	ruleType: Terrasoft.RuleTypes.Visibility,
	name: "KnowledgeBaseFileVisibleLinkRule",
	conditionalColumns: [
		{name: "Type", value: Terrasoft.Configuration.FileTypeGUID.Link}
	],
	events: [Terrasoft.BusinessRuleEvents.Load],
	dependentColumnNames: ["Name"]
});
Terrasoft.sdk.Model.addBusinessRule("KnowledgeBaseFile", {
	ruleType: Terrasoft.RuleTypes.Visibility,
	name: "KnowledgeBaseFileVisibleKnowledgeBaseLinkRule",
	conditionalColumns: [
		{name: "Type", value: Terrasoft.Configuration.FileTypeGUID.KnowledgeBaseLink}
	],
	events: [Terrasoft.BusinessRuleEvents.Load],
	dependentColumnNames: ["Name"]
});

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

Показать все комментарии
Мобильное приложение
бизнес-правила
7.16
Sales_Creatio_enterprise_edition

Добрый день, уважаемые коллеги!

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

Задача - на страницу редактирования Активности в мобильном приложении добавить бизнес-правило (доступность). В какой схеме необходимо прописать новое бизнес-правило?

Есть образованные при настройке мастером мобильного приложения кастомные

MobileApplicationManifestFieldForceWorkplace и MobileActivityRecordPageSettingsFieldForceWorkplace.

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

  1. Создать схему клиентского модуля, в которой прописать новое бизнес-правило. Схема должна расширить кастомную MobileActivityRecordPageSettingsFieldForceWorkplace? Как правильно связать новую схему с MobileActivityRecordPageSettingsFieldForceWorkplace?
  2. Подключить созданную схему модуля в манифесте мобильного приложения MobileApplicationManifestFieldForceWorkplace

И еще вопрос: в каком случае следует использовать классы бизнес-правил , а в каком пользовательские бизнес-правила.

Благодарю за помощь

Нравится

5 комментариев
Лучший ответ

Вообще, бизнес-правила для разных разделов добавляют в схемы с названиями ...ModelConfig, вроде MobileActivityModelConfig. Например, в ней стандартно такое:

Terrasoft.sdk.Model.addBusinessRule('ContactCommunication', {
	ruleType: Terrasoft.RuleTypes.Requirement,
	triggeredByColumns: ['Number'],
	position: 0
});
 
Terrasoft.sdk.Model.addBusinessRule('ContactCommunication', {
	ruleType: Terrasoft.RuleTypes.Requirement,
	triggeredByColumns: ['CommunicationType'],
	position: 1
});
 
Terrasoft.sdk.Model.addBusinessRule('ContactCommunication', {
	ruleType: Terrasoft.RuleTypes.Filtration,
	triggeredByColumns: ['CommunicationType'],
	position: 2,
	filters: Ext.create('Terrasoft.Filter', {
		type: Terrasoft.FilterTypes.Group,
		subfilters: [
			Ext.create('Terrasoft.Filter', {
				property: 'UseforContacts',
				value: true
			}),
			Ext.create('Terrasoft.Filter', {
				property: 'Id',
				funcType: Terrasoft.FilterFunctions.NotIn,
				funcArgs: [Terrasoft.GUID.Twitter, Terrasoft.GUID.Facebook, Terrasoft.GUID.LinkedIn]
			})
		],
		name: 'a4265c53-b393-4e16-be5f-ee0e5a7faa8c'
	})
});

 

По базовым бизнес-правилам можно тут документацию с примерами почитать

https://academy.terrasoft.ru/documents/technic-sdkmob/7-16/biznes-pravila-mobilnogo-prilozheniya

А тут по кастомным

https://academy.terrasoft.ru/documents/technic-sdkmob/7-16/polzovatelskie-biznes-pravila-mobilnogo-prilozheniya

Базовые правила очень простые, и ничего особо сложного на них не сделаешь. Для сложной логики нужны уже пользовательские правила.

 

 

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

Благодарю за информацию и помощь, но правильно ли я понимаю порядок работы со схемами для добавления бизнес-правила?  Если нет возможности наследования, я должна создать клиентский модуль для своего бизнес-правила, который прописать в манифесте? 

Вообще, бизнес-правила для разных разделов добавляют в схемы с названиями ...ModelConfig, вроде MobileActivityModelConfig. Например, в ней стандартно такое:

Terrasoft.sdk.Model.addBusinessRule('ContactCommunication', {
	ruleType: Terrasoft.RuleTypes.Requirement,
	triggeredByColumns: ['Number'],
	position: 0
});
 
Terrasoft.sdk.Model.addBusinessRule('ContactCommunication', {
	ruleType: Terrasoft.RuleTypes.Requirement,
	triggeredByColumns: ['CommunicationType'],
	position: 1
});
 
Terrasoft.sdk.Model.addBusinessRule('ContactCommunication', {
	ruleType: Terrasoft.RuleTypes.Filtration,
	triggeredByColumns: ['CommunicationType'],
	position: 2,
	filters: Ext.create('Terrasoft.Filter', {
		type: Terrasoft.FilterTypes.Group,
		subfilters: [
			Ext.create('Terrasoft.Filter', {
				property: 'UseforContacts',
				value: true
			}),
			Ext.create('Terrasoft.Filter', {
				property: 'Id',
				funcType: Terrasoft.FilterFunctions.NotIn,
				funcArgs: [Terrasoft.GUID.Twitter, Terrasoft.GUID.Facebook, Terrasoft.GUID.LinkedIn]
			})
		],
		name: 'a4265c53-b393-4e16-be5f-ee0e5a7faa8c'
	})
});

 

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

 

Александр, спасибо за пояснения. Но никак не разберусь).

Имеется решение Sales Enterprise + Field Force. Цель изменить поведение стандартного бизнес-правила Активности заполнения Результата, применив сверху стандартного правила и внешнего пакета. Стандартное бизнес-правило прописано в MobileActivityModelConfig (пакет Mobile) - разрешать редактирование поля Result , если состояние активности имеет признак Конечное. Стандартное правило не именовано,т.е. просто отключить его нельзя

Есть FieldForceMobileActivityModelConfig (пакет FieldForceMobile), где изменяется стандартное бизнес-правило в отношении поля DetailedResult. 

Есть MobileApplicationManifestFieldForceWorkplace (пакет FieldMobile), где для модели Activity прописаны "ModelExtensions":

["MobileActivityModelConfig" (стандартные правила),

"FieldForceMobileActivityModelConfig" (добавленные правила внешнего пакета)]

Есть MobileApplicationManifestFieldForceWorkplace (пакет Custom), создан автоматически с признаком «замещать родителя» да.

Создаю свой модуль UsrFieldForceMobileActivityModelConfig, где прописываю свое бизнес-правило, и затем в MobileApplicationManifestFieldForceWorkplace (пакет Custom), добавляю в "ModelExtensions" свой модуль UsrFieldForceMobileActivityModelConfig

И никак не могу добиться работы своего бизнес-правила (либо работает стандартное, либо ничего не работает :)). Т.е. каким образом можно переопределить стандартное неименованное бизнес-правило на свое?

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

 

Благодарю за помощь) разобралась

Показать все комментарии
бизнес-правила
Мобильное приложение
проблема
Видимость полей! что-то не работает.
7.13

Добрый день.

Правило которое должно сработать если в поле UsrLookupBR выбрано определённое значение. Только вот оно и игнорирует условие срабатывания и просто скрывает навсегда. 

   

Terrasoft.sdk.Model.addBusinessRule("Activity", {

    ruleType: Terrasoft.RuleTypes.Visibility,

    conditionalColumns: [

        {name: "UsrLookupBR", value:"E818A7C2-F351-41A6-A376-7F42762883F2"}

    ],

    triggeredByColumns: ["UsrLookupBR"],

    dependentColumnNames: ["UsrLookupDostup", "Owner"]

});

 

А вот если указать на предмет заполненности  поля    {name: "UsrLookupBR", value: null}, то правило чудесным образом срабатывает. 

Буду очень рад помощи. Заранее спасибо.

Нравится

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

Скорее всего, неправильно сделали сравнение с GUID в фильтре. Если посмотреть похожие случаи, там так:

Terrasoft.sdk.Model.addBusinessRule("KnowledgeBaseFile", {
	ruleType: Terrasoft.RuleTypes.Visibility,
	name: "KnowledgeBaseFileVisibleFileRule",
	conditionalColumns: [
		{name: "Type", value: Terrasoft.Configuration.FileTypeGUID.File}
	],
	events: [Terrasoft.BusinessRuleEvents.Load],
	dependentColumnNames: ["Data"]
});
Terrasoft.sdk.Model.addBusinessRule("KnowledgeBaseFile", {
	ruleType: Terrasoft.RuleTypes.Visibility,
	name: "KnowledgeBaseFileVisibleLinkRule",
	conditionalColumns: [
		{name: "Type", value: Terrasoft.Configuration.FileTypeGUID.Link}
	],
	events: [Terrasoft.BusinessRuleEvents.Load],
	dependentColumnNames: ["Name"]
});

Тут File и Link — две константы, заданные в MobileConstants:

Terrasoft.Configuration.FileTypeGUID = {
	File: "529bc2f8-0ee0-df11-971b-001d60e938c6",
	Link: "539bc2f8-0ee0-df11-971b-001d60e938c6",
	EntityLink: "549bc2f8-0ee0-df11-971b-001d60e938c6"
};

А, может, дело просто в верхнем регистре букв у Вас в константах?

Спасибо большое. Дело было в регистре.

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