|
УТ11 Вызов процедуры из модуля объекта внешней обработки | ☑ | ||
---|---|---|---|---|
0
ildary
17.08.17
✎
15:12
|
Уважаемые специалисты, подскажите пожалуйста, почему ранее работавший метод стал ругаться:
В модуле объекта внешней обработки есть процедура. Я ее вызываю из формы этой же обработки вот так: РеквизитФормыВЗначение( "Объект" ).СнятьРезервНаСервере( ДатаНачала, ДатаКонца, ВыполнитьФактически, СкладОтбор, ТабДокПоказ ); Если обработку открыть через Файл-Открыть, то все работает. Но после того, как я эту обработку добавлю в Доп. отчеты и запущу оттуда - выходит ошибка: {ВнешняяОбработка.РезервыСнятие.Форма.Форма.Форма(4)}: Ошибка при вызове метода контекста (РеквизитФормыВЗначение) РеквизитФормыВЗначение( "Объект" ).СнятьРезервНаСервере( ДатаНачала, ДатаКонца, ВыполнитьФактически, СкладОтбор, ТабДокПоказ ); по причине: Недопустимое значение параметра (параметр номер '1') Вот код СведенияОВнешнейОбработке() на всякий случай: Функция СведенияОВнешнейОбработке() Экспорт Наим = "Резервы снятие"; тзКоманд = Новый ТаблицаЗначений; тзКоманд.Колонки.Добавить("Идентификатор"); тзКоманд.Колонки.Добавить("Представление"); тзКоманд.Колонки.Добавить("Модификатор"); тзКоманд.Колонки.Добавить("ПоказыватьОповещение"); тзКоманд.Колонки.Добавить("Использование"); строкаКоманды = тзКоманд.Добавить(); строкаКоманды.Идентификатор = "РезервыСнятьВручную"; строкаКоманды.Представление = "Резервы снять вручную"; строкаКоманды.ПоказыватьОповещение = Истина; строкаКоманды.Использование = "ОткрытиеФормы"; строкаКоманды = тзКоманд.Добавить(); строкаКоманды.Идентификатор = "РезервыСнятьНочью"; строкаКоманды.Представление = "Резервы снять ночью"; строкаКоманды.ПоказыватьОповещение = Ложь; строкаКоманды.Использование = "ВызовСерверногоМетода"; РегистрационныеДанные = Новый Структура; РегистрационныеДанные.Вставить("Наименование", Наим ); РегистрационныеДанные.Вставить("БезопасныйРежим", Истина); РегистрационныеДанные.Вставить("Версия", "1.0"); РегистрационныеДанные.Вставить("Вид", "ДополнительнаяОбработка" ); РегистрационныеДанные.Вставить( "Информация", Наим ); РегистрационныеДанные.Вставить("Команды" , тзКоманд); Возврат РегистрационныеДанные; КонецФункции |
|||
1
azernot
17.08.17
✎
15:41
|
Перенеси процедуру
СнятьРезервНаСервере в форму, да и всё. Зачем она нужна именно в модуле обработки? |
|||
2
ildary
17.08.17
✎
15:53
|
(1) хочу вызывать эту процедуру по ночам через рег. задания.
|
|||
3
DrShad
17.08.17
✎
15:59
|
Посмотри отладчиком, там имя основного реквизита не такое скорее всего
|
|||
4
ildary
17.08.17
✎
16:00
|
(3) разобрался - эту форму я копировал через буфер из отчета - поэтому там была ссылка на Отчет, а мне нужна форма со ссылкой на Объект. Ручное создание формы с копированием команд, полей и элементов - решило проблему.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |