Справочные материалы по 1С

Работа с соответствиями в 1С 8.x

Как создать соответствие?

СозданноеСоответствие = Новый Соответствие();          
Как добавить элементы в соответствие?

ВозрастСотрудников.Вставить(Сотрудник, ВозрастСотрудника); 

ВозрастСотрудников [Сотрудник] = ВозрастСотрудника;           
Как обратиться к элементу соответствия?

ВозрастСотрудника = ВозрастСотрудников.Получить(Сотрудник); 

ВозрастСотрудника = ВозрастСотрудников [Сотрудник];           
Как перебрать элементы соответствия?

Для Каждого Элемент из Замены Цикл 
	Сообщить(Элемент.Ключ + " - " + Элемент.Значение); 
КонецЦикла;          
Как удалить элемент соответствия?

Замены.Удалить(УдаляемыйТовар); 

Замены. Очистить();          
Как получить данные из соответствия?

Значение = КурсыВалютДокумента.Получить(УправленческаяВалюта); 

Если Значение = Неопределено Тогда 
	Сообщить("Данная валюта в соответствии отсутствует"); 
Иначе 
	Курс = Значение["Курс"]; 
	Кратность = Значение["Кратность"]; 
КонецЕсли;           
Как получить многоуровневое соответствие видов расчетов, обладающих базовыми видами расчетов?

Запрос = Новый Запрос; 
Запрос.Текст = "ВЫБРАТЬ 
	|	ОсновныеНачисленияОрганизацииБазовыеВидыРасчета.Ссылка КАК Ссылка, 
	|	ОсновныеНачисленияОрганизацииБазовыеВидыРасчета.ВидРасчета, 
	|	ОсновныеНачисленияОрганизацииБазовыеВидыРасчета.ВидРасчета.Наименование, 
	|	ОсновныеНачисленияОрганизацииБазовыеВидыРасчета.Предопределенный 
	|ИЗ 
	|	ПланВидовРасчета.ОсновныеНачисленияОрганизации.БазовыеВидыРасчета КАК 
	ОсновныеНачисленияОрганизацииБазовыеВидыРасчета 
	|ИТОГИ ПО 
	|	Ссылка"; 

Результат = Запрос.Выполнить(); 
ВыборкаВидовРасчета = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); 

ВидыРасчета = Новый Соответствие; 
БазовыеВидаРасчета = Новый Соответствие; 
СвойстваВидаРасчета = Новый Структура("Наименование, Предопределенный"); 

// Цикл по видам расчета, обладающим базовыми. 
Пока ВыборкаВидовРасчета.Следующий() Цикл 
	БазовыеВидаРасчета.Очистить(); 
	ВыборкаБазовых = ВыборкаВидовРасчета.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); 

	// Цикл по базовым видам расчета. 
	Пока ВыборкаБазовых.Следующий() Цикл 

		// Заполненить значения структуры "СвойстваВидаРасчета". 
		СвойстваВидаРасчета.Наименование = ВыборкаБазовых.Наименование; 
		СвойстваВидаРасчета.Предопределенный = ВыборкаБазовых.Предопределенный; 

		// Заполненить соответствие "БазовыеВидАРасчета".
		БазовыеВидаРасчета.Вставить(ВыборкаБазовых.ВидРасчета, СвойстваВидаРасчета); 
	КонецЦикла; 

	// Заполнить соответствие "ВидыРасчета". 
	ВидыРасчета.Вставить(ВыборкаВидовРасчета.Ссылка, БазовыеВидаРасчета); 

КонецЦикла;          



Задайте вопрос программисту 1С

+7 901 312 83 57