новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума
a.v.nikolaev
Приватное сообщение

Индекс находится за границами массива

Тула(Россия )
31 |  0
10 февраля 2024 в 03:19:35 (41 неделя 3 дня 17 часов назад)
10200
Текст задания
Выдается ошибка при попытке распечатать ПФ.
Текст ВПФ:
Функция Печать() Экспорт

ТабДокумент = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("ПечатнаяФорма");

//Добавить Распоряжения
Н = 1;
КК = 0;

СведенияОбОрганизации = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(СсылкаНаОбъект.Организация, СсылкаНаОбъект.Дата);

ОбластьМакета = Макет.ПолучитьОбласть("ШапкаРасп");
ОбластьМакета.Параметры.ГрРаб = "график работы склада: " + ПолучитьГрафикТочки();
ОбластьМакета.Параметры.ТекстЗаголовка = "к документу: Заказ поставщику №" + ОбщегоНазначения.ПолучитьНомерНаПечать(СсылкаНаОбъект) + " от " + Формат(СсылкаНаОбъект.Дата, "ДЛФ=DD");
ОбластьМакета.Параметры.СкладИАдрес = СокрЛП(СсылкаНаОбъект.Склад);
ОбластьМакета.Параметры.Подразделение = "Подразделение: " + СсылкаНаОбъект.Подразделение;
ОбластьМакета.Параметры.менеджер = "менеджер: " + СсылкаНаОбъект.Ответственный;
ТабДокумент.Вывести(ОбластьМакета);

ТаблицаТоваров = СсылкаНаОбъект.Товары.Выгрузить();
ЭлементовВМассиве = ТаблицаТоваров.Количество();

ТаблицаТоваров.Свернуть("Номенклатура,ХарактеристикаНоменклатуры,Цена,ЕдиницаИзмерения","Количество,Сумма");

Для Каждого ТекСтрокаТовары Из ТаблицаТоваров Цикл

тХарактеристика = ТекСтрокаТовары.ХарактеристикаНоменклатуры;
тСвойство = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("Кратное количество");
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ЗначенияСвойствОбъектов.Объект,
| ЗначенияСвойствОбъектов.Свойство,
| ЗначенияСвойствОбъектов.Значение
|ИЗ
| РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
|ГДЕ
| ЗначенияСвойствОбъектов.Объект = &Объект
| И ЗначенияСвойствОбъектов.Свойство = &Свойство";
Запрос.УстановитьПараметр("Объект" ,тХарактеристика);
Запрос.УстановитьПараметр("Свойство",тСвойство);
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
КК = Выборка.Значение;
КонецЕсли;

ОбластьМакета = Макет.ПолучитьОбласть("СтрокаРасп");
Кратн = ТекСтрокаТовары.Количество / ?(КК=0,1,КК);
ОбластьМакета.Параметры.Н = Н;
ОбластьМакета.Параметры.Код = СтрЗаменить(СокрЛ(СтрЗаменить(ТекСтрокаТовары.Номенклатура.Код, "0", " "))," ","0");
ОбластьМакета.Параметры.Наименование = ТекСтрокаТовары.Номенклатура.НаименованиеПолное + ?(ЗначениеЗаполнено(ТекСтрокаТовары.ХарактеристикаНоменклатуры), " (" + ТекСтрокаТовары.ХарактеристикаНоменклатуры + ")","");
ОбластьМакета.Параметры.Колво = ТекСтрокаТовары.Количество;
ОбластьМакета.Параметры.ЕдИзм = ТекСтрокаТовары.Номенклатура.БазоваяЕдиницаИзмерения;
ОбластьМакета.Параметры.КратКол = Кратн;
ОбластьМакета.Параметры.ЕдМест = ТекСтрокаТовары.Номенклатура.ЕдиницаИзмеренияМест;
ТабДокумент.Вывести(ОбластьМакета);

Н = Н + 1;

КонецЦикла;

// Подвал //

ОбластьМакета = Макет.ПолучитьОбласть("ПодвалРасп");
Отбор = Новый Структура("СтруктурнаяЕдиница");
Отбор.СтруктурнаяЕдиница = СсылкаНаОбъект.Склад;
СрезПоследних = РегистрыСведений.ОтветственныеЛица.СрезПоследних(ТекущаяДата(), Отбор);
Если СрезПоследних.Количество() < 1 Тогда
МОЛ = "У склада не установлен МОЛ";
Иначе
МОЛ = СрезПоследних[0].ФизическоеЛицо;
КонецЕсли;

ОбластьМакета.Параметры.МОЛСклада = МОЛ;
ОбластьМакета.Параметры.ДолжностьКлад = ПолучитьДолжностьМолСклада();
ТабДокумент.Вывести(ОбластьМакета);

// ПЕЧАТЬ //
ТабДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
ТабДокумент.АвтоМасштаб=Истина;
ТабДокумент.ТолькоПросмотр=Истина;
ТабДокумент.ПолеСверху = 10;
ТабДокумент.Показать();

КонецФункции


ЧТО НЕ ТАК?????????????????
0
Отклики (11)