Индекс находится за границами массива
Тула(Россия )
31 |
0
10 февраля 2024 в 03:19:35
(45 недель 2 дня 11 часов назад)
Выдается ошибка при попытке распечатать ПФ.
Текст ВПФ:
Функция Печать() Экспорт
ТабДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("ПечатнаяФорма");
//Добавить Распоряжения
Н = 1;
КК = 0;
СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(СсылкаНаОбъект.Организация, СсылкаНаОбъект.Дата);
ОбластьМакета = Макет.ПолучитьОбласть("ШапкаРасп");
ОбластьМакета.Параметры.ГрРаб = "график работы склада: " + ПолучитьГрафикТочки();
ОбластьМакета.Параметры.ТекстЗаголовка = "к документу: Заказ поставщику №" + ОбщегоНазначения.ПолучитьНомерНаПечать(СсылкаНаОбъект) + " от " + Формат(СсылкаНаОбъект.Дата, "ДЛФ=DD");
ОбластьМакета.Параметры.СкладИАдрес = СокрЛП(СсылкаНаОбъект.Склад);
ОбластьМакета.Параметры.Подразделение = "Подразделение: " + СсылкаНаОбъект.Подразделение;
ОбластьМакета.Параметры.менеджер = "менеджер: " + СсылкаНаОбъект.Ответственный;
ТабДокумент.Вывести(ОбластьМакета);
ТаблицаТоваров = СсылкаНаОбъект.Товары.Выгрузить();
ЭлементовВМассиве = ТаблицаТоваров.Количество();
ТаблицаТоваров.Свернуть("Номенклатура,ХарактеристикаНоменклатуры,Цена,ЕдиницаИзмерения","Количество,Сумма");
Для Каждого ТекСтрокаТовары Из ТаблицаТоваров Цикл
тХарактеристика = ТекСтрокаТовары.ХарактеристикаНоменклатуры;
тСвойство = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Кратное количество");
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ЗначенияСвойствОбъектов.Объект,
| ЗначенияСвойствОбъектов.Свойство,
| ЗначенияСвойствОбъектов.Значение
|ИЗ
| РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
|ГДЕ
| ЗначенияСвойствОбъектов.Объект = &Объект
| И ЗначенияСвойствОбъектов.Свойство = &Свойство";
Запрос.УстановитьПараметр("Объект" ,тХарактеристика);
Запрос.УстановитьПараметр("Свойство",тСвойство);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
КК = Выборка.Значение;
КонецЕсли;
ОбластьМакета = Макет.ПолучитьОбласть("СтрокаРасп");
Кратн = ТекСтрокаТовары.Количество / ?(КК=0,1,КК);
ОбластьМакета.Параметры.Н = Н;
ОбластьМакета.Параметры.Код = СтрЗаменить(СокрЛ(СтрЗаменить(ТекСтрокаТовары.Номенклатура.Код, "0", " "))," ","0");
ОбластьМакета.Параметры.Наименование = ТекСтрокаТовары.Номенклатура.НаименованиеПолное + ?(ЗначениеЗаполнено(ТекСтрокаТовары.ХарактеристикаНоменклатуры), " (" + ТекСтрокаТовары.ХарактеристикаНоменклатуры + ")","");
ОбластьМакета.Параметры.Колво = ТекСтрокаТовары.Количество;
ОбластьМакета.Параметры.ЕдИзм = ТекСтрокаТовары.Номенклатура.БазоваяЕдиницаИзмерения;
ОбластьМакета.Параметры.КратКол = Кратн;
ОбластьМакета.Параметры.ЕдМест = ТекСтрокаТовары.Номенклатура.ЕдиницаИзмеренияМест;
ТабДокумент.Вывести(ОбластьМакета);
Н = Н + 1;
КонецЦикла;
// Подвал //
ОбластьМакета = Макет.ПолучитьОбласть("ПодвалРасп");
Отбор = Новый Структура("СтруктурнаяЕдиница");
Отбор.СтруктурнаяЕдиница = СсылкаНаОбъект.Склад;
СрезПоследних = РегистрыСведений.ОтветственныеЛица.СрезПоследних(ТекущаяДата(), Отбор);
Если СрезПоследних.Количество() < 1 Тогда
МОЛ = "У склада не установлен МОЛ";
Иначе
МОЛ = СрезПоследних[0].ФизическоеЛицо;
КонецЕсли;
ОбластьМакета.Параметры.МОЛСклада = МОЛ;
ОбластьМакета.Параметры.ДолжностьКлад = ПолучитьДолжностьМолСклада();
ТабДокумент.Вывести(ОбластьМакета);
// ПЕЧАТЬ //
ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
ТабДокумент.АвтоМасштаб=Истина;
ТабДокумент.ТолькоПросмотр=Истина;
ТабДокумент.ПолеСверху = 10;
ТабДокумент.Показать();
КонецФункции
ЧТО НЕ ТАК?????????????????