1С Печатные формы

1. Protocolicmp 06.09.18 21:01 Сейчас в теме
ОбластьШапки = МакетОбработки.ПолучитьОбласть("Шапка");	
		
	МассивСотрудников = Новый Массив;
	МассивСотрудников.Добавить(СсылкаНаОбъект);
	
	МассивКадровыхДанных = Новый Массив;
	МассивКадровыхДанных.Добавить("Сотрудник");
	МассивКадровыхДанных.Добавить("Организация");
	
	СтрокаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Ложь, МассивСотрудников, МассивКадровыхДанных)[0];
	ОбластьШапки.Параметры.Сотрудник = СтрокаКадровыхДанных.Сотрудник;
	ОбластьШапки.Параметры.Организация = СтрокаКадровыхДанных.Организация;

	
	ТабличныйДокумент.Вывести(ОбластьШапки); 
	
	ТабличныйДокумент.АвтоМасштаб = Истина;
	
	Возврат ТабличныйДокумент;
	
КонецФункции
Показать

что за параметр и зачем он нужен в конце этой строки:
СтрокаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Ложь, МассивСотрудников, МассивКадровыхДанных)[0];
вот этот Ноль, зачем он? без него код не работает.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. accounting_cons 769 06.09.18 21:13 Сейчас в теме
[0] - это порядковый номер (индекс) элемента в массиве, который возвращает функция. Нумерация начинается с нуля, так что это первый элемент.
3. Protocolicmp 06.09.18 21:31 Сейчас в теме
(2)т.е значит в моем коде должны быть индексы проставлены так?:
Функция СформироватьПечатнуюФорму(СсылкаНаОбъект, ОбъектыПечати)
	
	ТабличныйДокумент = Новый ТабличныйДокумент;   //формируем новый табличный документ
	//ТабличныйДокумент.ИмяПараметровПечати = "БессрочныйТрудовойДоговор";
	
	МакетОбработки = ПолучитьМакет("Договор");
	
	//заполняем шапку
	ОбластьШапки = МакетОбработки.ПолучитьОбласть("Шапка");	
		
	МассивСотрудников = Новый Массив;
	МассивСотрудников.Добавить(СсылкаНаОбъект);
	
	МассивКадровыхДанных = Новый Массив;
	МассивКадровыхДанных.Добавить("Сотрудник");
	МассивКадровыхДанных.Добавить("Организация");
	МассивКадровыхДанных.Добавить("ТрудовойДоговорДата");
	МассивКадровыхДанных.Добавить("ТрудовойДоговорНомер");
	
	СтрокаКадровыхДанных = КадровыйУчет.КадровыеДанныеСотрудников(Ложь, МассивСотрудников, МассивКадровыхДанных)[0];
	ОбластьШапки.Параметры.Сотрудник = СтрокаКадровыхДанных.Сотрудник;
	ОбластьШапки.Параметры.Организация = СтрокаКадровыхДанных.Организация;
	ОбластьШапки.Параметры.ТрудовойДоговорДата = СтрокаКадровыхДанных.ТрудовойДоговорДата;
	ОбластьШапки.Параметры.ТрудовойДоговорНомер = СтрокаКадровыхДанных.ТрудовойДоговорНомер;

	//
	МассивФизическихЛиц = Новый Массив;
	МассивФизическихЛиц.Добавить(СсылкаНаОбъект);
	
	МассивКадровДанных = Новый Массив;
	МассивКадровДанных.Добавить("ИНН");
	
	СтрокаКадровДанных = КадровыйУчет.КадровыеДанныеФизическихЛиц(Ложь, МассивФизическихЛиц, МассивКадровДанных)[1];
	ОбластьШапки.Параметры.ИНН = СтрокаКадровДанных.ИНН;
	
	ТабличныйДокумент.Вывести(ОбластьШапки); 
	
	ТабличныйДокумент.АвтоМасштаб = Истина;
	
	Возврат ТабличныйДокумент;
	
КонецФункции
Показать


ВЕРНО? сначало 0 потом 1?
4. Protocolicmp 06.09.18 21:50 Сейчас в теме
понял что неверно) уже) если я там ставлю 0, в этой строке:
СтрокаКадровДанных = КадровыйУчет.КадровыеДанныеФизическихЛиц(Ложь, МассивФизическихЛиц, МассивКадровДанных)[0];
пишет ошибку, индекс находится за границами массива
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот