helpf.pro
Регистрация

Вызов отчета из справочника с отбором по значению

Name1
09.11.2010 12:13Прочитано: 5307
Добрый день!
Находясь в справочнике "Контрагенты", надо вызывать отчет "Реализация по контрагентам" с отбором по данному контрагенту.
Делаю так:

В справочнике "Контрагенты":
Процедура ДействияФормыНИИСКОтчетПоРеализацииПоКонтрагентамДляСпр(Кнопка)
Форма=Отчеты.НИИСКОтчетПоРеализацииПоКонтрагентамДляСпр.ПолучитьФорму();
СпрКонтрагент = ЭлементыФормы.СправочникСписок.ТекущиеДанные.Ссылка;
Форма.Открыть();
КонецПроцедуры

В форму отчета добавлен реквизит "СпрКонтрагент" с типом "СправочникСсылкаКонтрагенты";

В процедуре "УстановитьНастройки()" модуля формы отчета:
ПараметрДанныхКонтрагент=КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[2];
ПараметрДанныхКонтрагент.Значение=СпрКонтрагент;
ПараметрДанныхКонтрагент.Использование=Истина;
ПорядокНомер=КомпоновщикНастроек.Настройки.Порядок.Элементы[2];

В запрос отчета добавлено:
ГДЕ
Контрагенты.Ссылка = &Контрагент

Выдается ошибка с указанием выделенной строки: "Индекс выходит за пределы массива".
Где что не так?
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
09.11.2010 12:20Ответ № 1
(0) В параметрах контрагента прописал, как тут?
Name1
09.11.2010 13:41Ответ № 2
В принципе, у меня параметры прописаны по смыслу также, но и после изменения на запись как в примере, та же ошибка:
"Индекс находится за ганицами массива в модуле Отчет.НИИСКОтчетПоРеализацииПоКонтрагентамДляСпр.Форма.ФормаОтчета.Форма, строка 44".
E_Migachev
09.11.2010 14:34Ответ № 3
(1) через отладчик посмотри что вообще есть в КомпоновщикНастроек.Настройки.ПараметрыДанных ?
Name1
09.11.2010 15:53Ответ № 4
Спотыкается о строку: ПараметрДанныхКонтрагент=КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[2];
или, если по-другому записать:
КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[2].Значение = СпрКонтрагент;
А в Табло ПараметрДанныхКонтрагент - Тип - Неопределено, как и для других параметров до насчала присвоения.
E_Migachev
09.11.2010 15:58Ответ № 5
Сделай остановку на ПараметрДанныхКонтрагент=КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[2];
и в табло введи ПараметрДанныхКонтрагент=КомпоновщикНастроек.Настройки.ПараметрыДанных.количество() сколько выдаст?
Name1
10.11.2010 11:25Ответ № 6
В Табло на выражение "ПараметрДанныхКонецПериода=КомпоновщикНастроек.Настройки.ПараметрыДанных.Количество" значение равно: "{(1)}:Поле объекта не обнаружено (Количество)",
а на выражение:
"ПараметрДанныхКонтрагент=КомпоновщикНастроек.Настройки.ПараметрыДанных.Количество()" значение равно:
"{(1)}:Метод объекта не обнаружен (Количество)".
Name1
11.11.2010 09:18Ответ № 7
Доброе утро!
Очень хочется получить ответ.
smart_sv
28.04.2011 12:06Ответ № 8
ПараметрДанных = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти(тПарам);
ПараметрДанных.Значение = Парам;
ПараметрДанных.Использование = Истина;
Подсказка: Вы получили ответ на свой вопрос - закройте вопрос!
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.