При загрузке внешней печатной формы в 1С8.2 БП ред.3 , выдает ошибку Метод объекта не найден (СведенияОВнешнейОбработке)

1. N@t@ 12.02.13 10:05 Сейчас в теме
Занимаюсь подготовкой к экзамену 1С БП Создаю Договор Займа и после чего мне нужно создать внешнюю печатную форму справочника "Договор контрагентов" с нименованием "Договор займа". При загрузке внешней печатной формы в 1С8.2 БП ред.3 , выдает ошибку Метод объекта не найден (СведенияОВнешнейОбработке).
Внешняя Обработка:
Функция Печать() Экспорт
РегистрСведенийМенеджерЗаписи=
РегистрыСведений.ДоговорЗайма.СоздатьМенеджерЗаписи();
РегистрСведенийМенеджерЗаписи.Организация=СсылкаНаОбъект.Организация;
РегистрСведенийМенеджерЗаписи.ДоговорЗайма=СсылкаНаОбъект;
РегистрСведенийМенеджерЗаписи.Прочитать();

Если НЕ РегистрСведенийМенеджерЗаписи.Выбран()Тогда
РегистрСведенийМенеджерЗаписи.ДоговорЗайма=СсылкаНаОбъект;
РегистрСведенийМенеджерЗаписи.Организация=СсылкаНаОбъект.Организация;
РегистрСведенийМенеджерЗаписи.Заимодавец=СсылкаНаОбъект.Владелец;
КонецЕсли;
ФормаДоговора=РегистрСведенийМенеджерЗаписи.ПолучитьФорму();
ФормаДоговора.ОткрытьМодально();
Возврат Неопределено;
КонецФункции
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. andrewks 1373 12.02.13 14:32 Сейчас в теме
(1) N@t@, БП 3 построена на основе БСП, как УТ11, там свой механизм подключения, не совместимый со "старым" (в БП2, УТ 10, ЗУП2.5)
2. antek 12.02.13 10:31 Сейчас в теме
Во всех внешних отчетах, обработках и печатных формах УТ11, Бух.3 и т.п. должны быть в модуле внешней обработки, отчета, печатной формы эти процедуры. Пример для печатной формы заказа клиенту

Функция СведенияОВнешнейОбработке() Экспорт
// Объявим переменную, в которой мы сохраним и вернем "наружу" необходимые данные
ПараметрыРегистрации = Новый Структура;

// Объявим еще одну переменную, которая нам потребуется ниже
МассивНазначений = Новый Массив;

// Первый параметр, который мы должны указать - это какой вид обработки системе должна зарегистрировать.
// Допустимые типы: ДополнительнаяОбработка, ДополнительныйОтчет, ЗаполнениеОбъекта, Отчет, ПечатнаяФорма, СозданиеСвязанныхОбъектов
ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма");

// Теперь нам необходимо передать в виде массива имен, к чему будет подключена наша ВПФ
// Имейте ввиду, что можно задать имя в таком виде: Документ.* - в этом случае обработка будет подключена ко всем документам в системе,
// которые поддерживают механизм ВПФ
МассивНазначений.Добавить("Документ.ЗаказКлиента");
ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);

// Теперь зададим имя, под которым ВПФ будет зарегистрирована в справочнике внешних обработок
ПараметрыРегистрации.Вставить("Наименование", "Заказ клиента (в виде счета)");

// Зададим право обработке на использование безопасного режима. Более подробно можно узнать в справке к платформе (метод УстановитьБезопасныйРежим)
ПараметрыРегистрации.Вставить("БезопасныйРежим", Истина);

// Следующие два параметра играют больше информационную роль, т.е. это то, что будет видеть пользователь в информации к обработке
ПараметрыРегистрации.Вставить("Версия", "1.0");
ПараметрыРегистрации.Вставить("Информация", "Дополнительная печатная форма 'Счет' к документу заказ клиента");

// Создадим таблицу команд (подробнее смотрим ниже)
ТаблицаКоманд = ПолучитьТаблицуКоманд();

// Добавим команду в таблицу
ДобавитьКоманду(ТаблицаКоманд, "Счет покупателю", "Заказ клиента (в виде счета)", "ВызовСерверногоМетода", Истина, "ПечатьMXL");

// Сохраним таблицу команд в параметры регистрации обработки
ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);

// Теперь вернем системе наши параметры
Возврат ПараметрыРегистрации;
КонецФункции

Функция ПолучитьТаблицуКоманд()

// Создадим пустую таблицу команд и колонки в ней
Команды = Новый ТаблицаЗначений;

// Как будет выглядеть описание печатной формы для пользователя
Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));

// Имя нашего макета, что бы могли отличить вызванную команду в обработке печати
Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка"));

// Тут задается, как должна вызваться команда обработки
// Возможные варианты:
// - ОткрытиеФормы - в этом случае в колонке идентификатор должно быть указано имя формы, которое должна будет открыть система
// - ВызовКлиентскогоМетода - вызвать клиентскую экспортную процедуру из модуля формы обработки
// - ВызовСерверногоМетода - вызвать серверную экспортную процедуру из модуля объекта обработки
Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка"));

// Следующий параметр указывает, необходимо ли показывать оповещение при начале и завершению работы обработки. Не имеет смысла при открытии формы
Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));

// Для печатной формы должен содержать строку ПечатьMXL
Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
Возврат Команды;
КонецФункции

Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = "")
// Добавляем команду в таблицу команд по переданному описанию.
// Параметры и их значения можно посмотреть в функции ПолучитьТаблицуКоманд
НоваяКоманда = ТаблицаКоманд.Добавить();
НоваяКоманда.Представление = Представление;
НоваяКоманда.Идентификатор = Идентификатор;
НоваяКоманда.Использование = Использование;
НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
НоваяКоманда.Модификатор = Модификатор;

КонецПроцедуры
3. N@t@ 12.02.13 14:20 Сейчас в теме
Открылась печатная форма спасибо, Теперь, когда захожу в договоры контрагентов нажимаю печать и выходит выбор печатных форм -выбираю свой и выполнить, выходит: Слишком много фактических параметров. Что это значит?
5. N@t@ 12.02.13 15:02 Сейчас в теме
А откуда взять свой механизм подключения для БП 3????
Оставьте свое сообщение

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