Вопрос

В метод миксина не передаются данные из схемы

Добрый день, коммьюнити,

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

Пробовал присваивать переменным значения CurrentContact и Owner - значения снова пустые. Пробовал прописывать this.get("CurrentContact") вместо "CurrentContact" - все равно пусто. Методы не из миксина работают.

Благодарен заранее за любую помощь!

 

onEntityInitialized: function() {
 
//присваиваем значение CurrentContact. Owner, который используется ниже, присваивается еще раньше
	this.set("CurrentContact", {
		value: this.get("Id"),
		displayValue: this.get("Name")
 
	});
 
//запускаем метод из миксина, он запускается и отрабатывает, но CurrentContact там пустой
	this.mixins.CustomCallMixin.initCallExtendedMenuButtonCollections(["CurrentContact", "Owner"], this.close);
 
//остальные методы отрабатывают нормально
	this.setJobTitle();
	this.fillEmailExtendedMenuButtonCollections(["CurrentContact", "Owner"]);
	this.fillCallExtendedMenuButtonCollections(["CurrentContact", "Owner"]);
	this.fillLinkedEntitiesMenuButtonCollections(["CurrentContact"]);
	this.callParent(arguments);
 
}

 

Нравится

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

Добрый день! не корректный вызов миксина. Для начала кастомный миксин нужно добавить в зависимости модуля:

define("AbCarInsurance1Section", ["AbEwaModelsHandlerMixin"], 
function() {
	return {
		entitySchemaName: "AbCarInsurance",
		mixins: {
			AbEwaModelsHandlerMixin: "Terrasoft.AbEwaModelsHandlerMixin",
		},
		attributes: {},
		messages: {},
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
		methods: {
			onEntityInitialized: function () {
 
				this.onSetContractInCard(contract);
			}			
 
		}
	};
});

где this.onSetContractInCard(contract) - мтод миксина

Добрый день! не корректный вызов миксина. Для начала кастомный миксин нужно добавить в зависимости модуля:

define("AbCarInsurance1Section", ["AbEwaModelsHandlerMixin"], 
function() {
	return {
		entitySchemaName: "AbCarInsurance",
		mixins: {
			AbEwaModelsHandlerMixin: "Terrasoft.AbEwaModelsHandlerMixin",
		},
		attributes: {},
		messages: {},
		details: /**SCHEMA_DETAILS*/{}/**SCHEMA_DETAILS*/,
		diff: /**SCHEMA_DIFF*/[]/**SCHEMA_DIFF*/,
		methods: {
			onEntityInitialized: function () {
 
				this.onSetContractInCard(contract);
			}			
 
		}
	};
});

где this.onSetContractInCard(contract) - мтод миксина

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

спасибо за ответ

я в зависимости добавлял, просто не указывал этот кусок кода

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