Проблемы с открытием формы записи регистра сведений
Добрый день.
8.3.19.1726 БП 3.0.137.39
Хочу прикрутить открытие формы записи регистра (регистр сведений в расширении) через команду, которая размещена в группе "Панель навигации формы.Важное"
На выходе получаю:
Объект не найден
{ДополнительнаяНастройка_БезНДС РегистрСведений.ДопСвойстваКонтрагента.Команда.КомандаОткрытияФормуЗаписиДопСвойства.МодульКоманды(33)}: ОткрытьФорму("ОбщаяФорма.ФормаЗаписиДС", ПараметрыФормы);
по причине:
Объект не найден
Я в полной растерянности как это победить.
При этом команда открытия формы написанная из модуля формы списка справочника контрагенты работает отлично
Подскажите, пожалуйста, где я ошибаюсь? И возможно ли это вообще?
8.3.19.1726 БП 3.0.137.39
Хочу прикрутить открытие формы записи регистра (регистр сведений в расширении) через команду, которая размещена в группе "Панель навигации формы.Важное"
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
КодДС =""; ИННДопСвойства = ""; СпрСсылка ="";
ПроверитьСоздатьНастройки(ПараметрКоманды,СпрСсылка,КодДС,ИННДопСвойства);
СтруктураКлючаЗаписи = Новый Структура();
СтруктураКлючаЗаписи.Вставить("Период", ТекущаяДата());
СтруктураКлючаЗаписи.Вставить("Пользователь", ПараметрКоманды);
СтруктураКлючаЗаписи.Вставить("КодДС", КодДС);
СтруктураКлючаЗаписи.Вставить("ИННДопСвойства", ИННДопСвойства);
СтруктураКлючаЗаписи.Вставить("Доставка", "");
СтруктураКлючаЗаписи.Вставить("Курьер", "");
СтруктураКлючаЗаписи.Вставить("Менеджер", "");
СтруктураКлючаЗаписи.Вставить("КодДоПП", "");
СтруктураКлючаЗаписи.Вставить("КодНовыйПП", "");
МассивКлюча = Новый Массив;
МассивКлюча.Добавить(СтруктураКлючаЗаписи);
КлючЗаписи = Новый("РегистрСведенийКлючЗаписи.ДопСвойстваКонтрагента", МассивКлюча);
Если НЕ КлючЗаписи.Пустой() Тогда
ПараметрыФормы = Новый Структура();
ПараметрыФормы.Вставить("Ключ", КлючЗаписи);
ПараметрыФормы.Вставить("Владелец",ПараметрКоманды);
Форма = ПолучитьФорму("РегистрСведений.ДопСвойстваКонтрагента.Форма.ФормаЗаписиДС", ПараметрыФормы);
Форма.Открыть();
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ПроверитьСоздатьНастройки(Пользователь, СпрСсылка = "", КодДС = "", ИННДопСвойства = "")
СпрСсылка = Пользователь.Ссылка;
ИННДопСвойства = Пользователь.ИНН + "\" + Пользователь.КПП;
КодДС = Пользователь.Код;
МенеджерЗаписи = РегистрыСведений.ДопСвойстваКонтрагента.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Пользователь = Пользователь;
МенеджерЗаписи.Период = ТекущаяДата();
МенеджерЗаписи.ИННДопСвойства = Пользователь.ИНН + "\" + Пользователь.КПП;
МенеджерЗаписи.Прочитать();
Если Не МенеджерЗаписи.Выбран() Тогда
МенеджерЗаписи.Пользователь = Пользователь;
МенеджерЗаписи.Период = ТекущаяДата();
МенеджерЗаписи.ИННДопСвойства = Пользователь.ИНН + "\" + Пользователь.КПП;
КонецЕсли;
КонецПроцедуры
ПоказатьНа выходе получаю:
Объект не найден
{ДополнительнаяНастройка_БезНДС РегистрСведений.ДопСвойстваКонтрагента.Команда.КомандаОткрытияФормуЗаписиДопСвойства.МодульКоманды(33)}: ОткрытьФорму("ОбщаяФорма.ФормаЗаписиДС", ПараметрыФормы);
по причине:
Объект не найден
Я в полной растерянности как это победить.
При этом команда открытия формы написанная из модуля формы списка справочника контрагенты работает отлично
&НаКлиенте
Процедура НажатиеКнопкиДС(Команда)
ПараметрыФормы = Новый Структура;
Если Элементы.Список.ТекущиеДанные <> Неопределено Тогда
Если Элементы.Список.ТекущиеДанные.ЭтоГруппа Тогда ПоказатьПредупреждение(,"Выберите котрагента!");
Возврат;
КонецЕсли;
ПараметрыФормы.Вставить("Владелец", Элементы.Список.ТекущиеДанные);
ОткрытьФорму("ОбщаяФорма.ФормаЗаписиДС", ПараметрыФормы, ЭтаФорма, , , );
КонецЕсли;
КонецПроцедуры
ПоказатьПодскажите, пожалуйста, где я ошибаюсь? И возможно ли это вообще?
Прикрепленные файлы:
По теме из базы знаний
- Настройка интеграции «1С:Управление торговлей 8 Редакция 11» и «1С:Документооборот». Бизнес-процессы, внешние роли исполнителей.
- Выгрузка-загрузка любых данных из 1С (и измененных) в XML между похожими конфигурациями (ФАЙЛ, HTTP, COM) ЛЮБЫХ баз 1С 8.1-8.3 с обработкой и поиском данных по произвольным полям поиска
- Конфигурация "Весовая ред. 3.0" для Платформы 8.3
- Интеграция сценарного тестирования в процесс разработки
- Исправляем проблемы производительности в конфигурации ERP - 7 примеров
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Ну первое. Почему ключ по массиву создается?...
Просто ведь по Структуре должно быть.
Второе. В ключе период задается текущей датой:
Т.е., существующую запись вы так никогда не откроете.
КлючЗаписи = Новый("РегистрСведенийКлючЗаписи.ДопСвойстваКонтрагента", МассивКлюча);
Просто ведь по Структуре должно быть.
Второе. В ключе период задается текущей датой:
СтруктураКлючаЗаписи.Вставить("Период", ТекущаяДата());
Т.е., существующую запись вы так никогда не откроете.
(7)
Вот сюда я их отправляю. отладчиком прошла - все проходит корректно.
Строго говоря, я уже добралась до ПриОткрытии в самой общей форме (оказывается она жестко привязана к открытию через форму списка)
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
КодДС =""; ИННДопСвойства = ""; СпрСсылка ="";
ПроверитьСоздатьНастройки(ПараметрКоманды,СпрСсылка,КодДС,ИННДопСвойства);
Вот сюда я их отправляю. отладчиком прошла - все проходит корректно.
Строго говоря, я уже добралась до ПриОткрытии в самой общей форме (оказывается она жестко привязана к открытию через форму списка)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот