Terrasoft Platform SDK > Примеры > Файлы > INamedValuesExample.js
СодержаниеИндекс
INamedValuesExample.js
Send Feedback

Пример использования интерфейса INamedValues.

Описание

Пример показывает возможности добавления в именованный набор данных элементов различных типов, а также использования некоторых методов интерфейса INamedValues

 

Для того чтобы просмотреть результаты работы кода примера, необходимо сохранить исходный код в файл INamedValuesExample.js и запустить его на исполнение.

Исходный код
//-----------------------------------------------------------------------------
// Файл INamedValuesExample.js
//-----------------------------------------------------------------------------
// В данном примере рассмотрено использование интерфейса INamedValues. 
//-----------------------------------------------------------------------------
//@ Start Example

// Создание экземпляра класса NamedValues, реализующего интерфейс INamedValues
var NamedValues = new ActiveXObject('TSObjectLibrary.NamedValues');

// Функция вывода сообщения 
function ShowMessage(Str) {
    for (var i = 1; i < arguments.length; i++ ) {
        Str = Str.replace(new RegExp('%' + i), arguments[i]);
    }
    WScript.Echo(Str);
}

// Функция формирования значений для именованного набора данных 
function SetSomeValues(NamedValues) {

	// Очиcтка набора значений
	NamedValues.Clear();

	// Создание экземпляра класса StringsList и формирование его значений
	var StringsList = new ActiveXObject('TSObjectLibrary.StringsList')
	StringsList.Add("Первая строка объекта StringsList");
	StringsList.Add("Вторая строка объекта StringsList");

	//Добавление в набор экземпляра класса StringsList
	NamedValues.Values('Stringslist') = StringsList;

	// Добавление в набор значений простых типов
	NamedValues.Values('Integer')  = 123;
	NamedValues.Values('String') = "Строка в наборе данных";

	// Добавление вложенного объекта INamedValues со значениями простых типов  
	SecondaryNamedValues = new ActiveXObject('TSObjectLibrary.NamedValues');
	SecondaryNamedValues.Values('Value1') = 1;
	SecondaryNamedValues.Values('Value2') = "Значение";
	NamedValues.Values('NamedValues') = SecondaryNamedValues;

}

// Функция вывода значений именованного набора данных
function GetSomeValues(NamedValues) {

	// Объявление переменной для вывода информации об экземплярах класса
	var MessageString; 

	// Отображение значения элемента набора с именем 'StringsList'
	// (проверка существования значения по имени является регистронезависимой)
	if (NamedValues.IsValueExists('stringsList')) {
		MessageString =	"Отображение значения элемента набора с именем 'StringsList':\n" +
		NamedValues.Values('stringsList').Text;	
		ShowMessage(MessageString);
	}
	
	// Отображение значения элемента с именем 'Integer' 
	// и удаление его из набора данных
	if (NamedValues.IsValueExists('Integer')) {

		MessageString =	"Отображение значения элемента набора с именем 'Integer': " +
		NamedValues.Values('Integer');	
		ShowMessage(MessageString);
		NamedValues.Delete('Integer');

		MessageString =	"Отображение значения элемента с именем 'Integer' после удаления его из набора : " +
		NamedValues.Values('Integer');	
		ShowMessage(MessageString);
	}
	
	// Вывод значения элемента 'String'
	//ShowMessage(NamedValues.Values('String'));
		MessageString =	"Отображение значения элемента с именем 'String':\n" +
		NamedValues.Values('String');	
		ShowMessage(MessageString);
	
}

// Формирование значений именованного набора NamedValues
SetSomeValues(NamedValues);

// Вывод значений набора 
GetSomeValues(NamedValues);

//@ End Example

Copyright (с) Terrasoft 2002-2012.