Создала отчет. Все работает правильно, но! При попытке открыть элемент справочника в списке, открывается только список, а на элементе не позиционируется. Справочник "материалы".
Почему так происходит и как все-таки спозиционироваться на нужном элементе?
Процедура ОбработкаЯчейкиТаблицы(Расшифровка,Флаг)
Флаг = 0;
ОткрытьФорму("Справочник.Материалы#"+ЗначениеВСтрокуВнутр(Расшифровка),);
КонецПроцедуры
Почему так происходит и как все-таки спозиционироваться на нужном элементе?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Не делай так как в (2) никогда... Т.е не порти в ПриОткрытии у справочника для такой ерунды...
Процедура ОбработкаЯчейкиТаблицы(Расшифровка,Флаг)
Если ТипЗначенияСтр(Расшифровка)="Справочник" Тогда
Флаг = 0; Конт="";
ОткрытьФорму("Справочник.Материалы",Конт);
Конт.АктивизироватьОбъект(Расшифровка);
КонецЕсли;
КонецПроцедуры
(3) У меня такой метод применяется в отдельной обработке с ТЗ обработке
Перем КонтСправочника;
//--------------------------------------------------------------------------------------------
Процедура ПриОткрытии()
КонтСправочника=Форма.Параметр;
КонецПроцедуры
//--------------------------------------------------------------------------------------------
Процедура ОткрытьВСправочнике()
Если ТипЗначенияСтр(КонтСправочника) = "ГрупповойКонтекст" Тогда
КонтСправочника.АктивизироватьОбъект(тзАвто.Авто);
Иначе
ОткрытьФорму("Справочник.Автомобили.ФормаСписка",тзАвто.Авто);
КонецЕсли;
КонецПроцедуры
//--------------------------------------------------------------------------------------------
Показать
Ребята, можете смеяться, но у меня из отчета открываются 2 справочника - подчиненный и владелец. Владелец должен открываться списком, подчиненный - просто форма.
Если делать как (2), то еще можно как-то это реализовать. Но мне, действительно, добавлять код в конфигурацию - не желательно. (3) Может еще есть какая проверка, чтобы 2 справочника открыть разными способами?
Если делать как (2), то еще можно как-то это реализовать. Но мне, действительно, добавлять код в конфигурацию - не желательно. (3) Может еще есть какая проверка, чтобы 2 справочника открыть разными способами?
Я вот как сделала. У Владельца - нет владельца, а у подчиненного - есть!
Спасибо всем огромное!
Процедура ОбработкаЯчейкиТаблицы(Расшифровка,Флаг)
Если ПустоеЗначение(Расшифровка.Владелец) = 1 Тогда
Флаг = 0; Конт="";
ОткрытьФорму("Справочник.Материалы",Конт);
Конт.АктивизироватьОбъект(Расшифровка);
Иначе
ОткрытьФорму(Расшифровка, Расшифровка);
КонецЕсли;
КонецПроцедуры
ПоказатьСпасибо всем огромное!
(8)
Некошерно так делать вообще... Во-первых, в ОбработкаЯчейкиТаблицы может прилететь помимо справочника всё что угодно - ТЗ,СЗ,Документ,Счет,Строка,Число и т.д...
а во-вторых, лучше условия поставить..
Некошерно так делать вообще... Во-первых, в ОбработкаЯчейкиТаблицы может прилететь помимо справочника всё что угодно - ТЗ,СЗ,Документ,Счет,Строка,Число и т.д...
а во-вторых, лучше условия поставить..
Процедура ОбработкаЯчейкиТаблицы(Расшифровка,Флаг)
Если ТипЗначенияСтр(Расшифровка)="Справочник" Тогда
Если Расшифровка.Вид() = "Материалы" Тогда
Флаг = 0; Конт="";
ОткрытьФорму("Справочник.Материалы",Конт);
Конт.АктивизироватьОбъект(Расшифровка);
КонецЕсли;
КонецЕсли;
Флаг=1;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот