Функция СведенияОВнешнейОбработке() Экспорт
Назначения = Новый Массив;
ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
ПараметрыРегистрации.Вставить("Вид", ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта());
ПараметрыРегистрации.Вставить("Назначение", Назначения);
ПараметрыРегистрации.Вставить("Наименование","Отображение имен реквизитов объекта на форме как в конфигураторе");
ПараметрыРегистрации.Вставить("Версия","1.0.0.1");
ПараметрыРегистрации.Вставить("Информация","Отображение имен реквизитов объекта на форме как в конфигураторе");
ПараметрыРегистрации.Вставить("БезопасныйРежим",Ложь);
НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
НоваяКоманда.Представление = НСтр("ru = 'Имя как в конфигураторе'"); //Вжух!
НоваяКоманда.Идентификатор = "ОтобразитьПутьКДанным";
НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыЗаполнениеФормы();
Возврат ПараметрыРегистрации;
КонецФункции
Процедура ВыполнитьКоманду(ИмяКоманды, ОбъектыНазначения, ПараметрыВыполнения) Экспорт
ОтобразитьПутьКДанным(ПараметрыВыполнения.ЭтаФорма, Истина);
КонецПроцедуры
Процедура ОтобразитьПутьКДанным(Форма, Показать = Ложь)
Элементы = Форма.Элементы;
Для каждого Элемент Из Элементы Цикл
Если ТипЗнч(Элемент) <> Тип("ПолеФормы") Тогда
Продолжить;
КонецЕсли;
Если Показать Тогда
Элемент.Подсказка = Элемент.ПутьКДанным;
Элемент.ОтображениеПодсказки = ОтображениеПодсказки.ОтображатьСнизу;
Иначе
Элемент.Подсказка = "";
Элемент.ОтображениеПодсказки = ОтображениеПодсказки.Авто;
КонецЕсли;
КонецЦикла;
// Таблицы формы, отображение во всплывающей подсказке и пустых полях колонок
Для каждого ЭлементТаблицы Из Элементы Цикл
Если ТипЗнч(ЭлементТаблицы) <> Тип("ТаблицаФормы") Тогда
Продолжить;
КонецЕсли;
УстановитьСвойстваДляПодчиненныхЭлементов(ЭлементТаблицы.ПодчиненныеЭлементы, Показать);
КонецЦикла;
КонецПроцедуры
Процедура УстановитьСвойстваДляПодчиненныхЭлементов(ПодчиненныеЭлементы, Показать)
Для Каждого Элемент Из ПодчиненныеЭлементы Цикл
// В таблицах могут быть группы, обрабатываем рекурсивно, для поиска всех вложенных полей
Если ТипЗнч(Элемент) = Тип("ГруппаФормы") Тогда
// Для некоторых групп корректно можно вывести подсказу, только если выводить в шапку не группу, а сами поля
// (Пример ЗаказПоставщику.ФормаДокумента.Товары.ТоварыГруппаПолучатель)
Элемент.ОтображатьВШапке = Ложь;
УстановитьСвойстваДляПодчиненныхЭлементов(Элемент.ПодчиненныеЭлементы, Показать);
Продолжить;
// Отображение пути только для полей формы
ИначеЕсли ТипЗнч(Элемент) <> Тип("ПолеФормы") Тогда
Продолжить;
КонецЕсли;
Если Показать Тогда
Элемент.Подсказка = Элемент.ПутьКДанным;
// Выше устанавливается «отображение снизу», для таблиц это не нужно
Элемент.ОтображатьВШапке = Истина;
Элемент.ОтображениеПодсказки = ОтображениеПодсказки.Авто;
Иначе
Элемент.Подсказка = "";
Элемент.Заголовок = "";
КонецЕсли;
КонецЦикла;
КонецПроцедуры