Имя: Пароль:
1C
1С v8
Не могу понять, в чем проблема: отчет для БП 3.0
0 эцп
 
12.02.14
18:06
Написал внешний внешний отчет для БП 3.0 (пока его открываю через Файл -> Открыть).
Проблема, с которой столкнулся - это выбор периода. Из ОСВ выдрал пару процедур (см. ниже). Проблема, что при создании о оповещения получаю следующую ошибку:
{Форма.ФормаОтчета.Форма(12)}: Ошибка при вызове конструктора (ОписаниеОповещения)
    ОписаниеОповещения = Новый ОписаниеОповещения("ВыбратьПериодЗавершение", ЭтотОбъект);
по причине:
Не найден экспортируемый метод: ВыбратьПериодЗавершение

Вот код который забрал из ОСВ:

&НаКлиенте
Процедура ВыбратьПериод(Команда)
    ПараметрыВыбора = Новый Структура("НачалоПериода,КонецПериода", Отчет.НачалоПериода, Отчет.КонецПериода);
    ОписаниеОповещения = Новый ОписаниеОповещения("ВыбратьПериодЗавершение", ЭтотОбъект);
    ОткрытьФорму("ОбщаяФорма.ВыборСтандартногоПериода", ПараметрыВыбора, Элементы.ВыбратьПериод, , , , ОписаниеОповещения);
КонецПроцедуры

&НаКлиенте
Процедура ВыбратьПериодЗавершение(РезультатВыбора, ДопПараметры) Экспорт
    Если РезультатВыбора = Неопределено Тогда Возврат; КонецЕсли;
    ЗаполнитьЗначенияСвойств(Отчет, РезультатВыбора, "НачалоПериода,КонецПериода");
КонецПроцедуры

Что делаю не так?
1 mehfk
 
12.02.14
18:17
процедуру ВыбратьПериодЗавершение не забыл скопировать?
2 эцп
 
12.02.14
18:20
Так собс-но код выше и есть, что я скопировал
3 Wobland
 
12.02.14
18:22
теперь переходи к исследованию второго параметра
4 эцп
 
12.02.14
18:23
(3) ЭтотОбъект - это УправляемаяФорма (ЭтаФорма)
5 Wobland
 
12.02.14
18:27
(4) как ты это узнал?
6 эцп
 
12.02.14
18:29
(5) В отладчике посмотрел
7 эцп
 
12.02.14
18:34
Короче, проблему решил так: создал новый отчет, перетащил в него все объекты из старого, а так же код модуля отчета.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший