Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Информация
iconfalse
Корневой элемент schema. Пространство имен: <schemas xmlns="http://www.intertrust.ru/schema/palette/tn-schema">
Информация
iconfalse
titleКраткое описание

Запись события истории происходит в настраиваемом обработчике событий., с помощью класса TunableHistoryHelper

Блок кода
languagejs
titlecustom-event-handler
importClass(Packages.ru.intertrust.cmj.tunable.object.history.TunableHistoryHelper);
importClass(Packages.ru.intertrust.cmj.af.history.HasHistory);

function querySave(object, document) {
	writeHistory(object, document); //Запись истории
}

function writeHistory(object, document) {
	
	//Инициализация истории
	var hist = object.history();
	if (object.isNew()) {
		
		//eventCode - код события. Пример: "created"
		//comment - комментарий. Пример: "Создан документ"
		TunableHistoryHelper.hist_addBasicText(hist, eventCode, comment);
	} else {
		
		//object - текущий объект
		//document - объект, который хранится в базе данных
		//fieldName - поле document
		//propertyName - свойство object
		//eventCode - код события
		writeTextHistory(object, document, hist, fieldName, propertyName, eventCode);
	}
	//Запись истории
	object.history = hist;
}

function writeTextHistory(object, document, hist, fieldName, propertyName, eventName) {
	var oldValue = getFieldValue(document, fieldName); //Получение старого значения из document
	var newValue = getPropertyValue(object, propertyName); //Получение нового значения из object

	//Сравнение значений
	if (!oldValue.equals(newValue)) {
		TunableHistoryHelper.hist_addTextOne(hist, eventName, oldValue, newValue);
	}
}

function getFieldValue(document, fieldName) {
	var value = null;
	if (document != null) {
		value = document.getItemValueString(fieldName);
	}
	return value != null ? value : "";
}

function getPropertyValue(object, propertyName) {
	var value = null;
	if (object != null && object.tuning().getValues().get(propertyName) != null && object.tuning().getValues().get(propertyName).getValue() != null) {
		value = object.tuning().getValues().get(propertyName).getValue();
	}
	return value != null ? value : "";
}
Свойства страницы
Статус

Статус
colourGreen
titleГОТОВО

Комментарий
панель

API TunableHistoryHelper