Всем привет.
Не первый раз наступаем на грабли с функциональными опциями. Поделитесь соображениями кто как локализует источник проблем в таких ситуациях.

Имеем документ, в нём реквизит шапки "Подразделение". В документе он НЕ отображается, хотя Элементы.Подразделение.Видимость = Истина.
На реквизит НЕТ функциональных опций. При этом в глубинах кода огромных процедур применяется ФО и он по итогу пропадает из документа.

КАК это можно понять кроме как проходить под отладчиком десятки тысяч строк кода? Почему нет в платформе никакого инструмента диагностики?
---
у реквизита правой кнопкой дополнительно - закладка ФО. Ну вот если в коде устанавливается ФО то тут только да отладчиком искать.
Может коллеги знают еще варианты.
---
если реквизит объекта, то правой кнопкой по нему и Ссылки на Обьект - покажет где используется этот реквизит в других объектах конфигурации.

Если реквизит формы, то только в свойствах реквизита формы можно узнать чисто визуально.
---
первый вариант не работает. Нет там никакой прямой ссылки. ФО - булево и никак не связана с реквизитом.
В свойствах реквизит ФО нет.
---
здесь не нашли ответ?
https://infostart.ru/1c/articles/1009429/
---
вы наверное не поняли вопрос
Я знаю как работаю ФО и как они устроены. Проблема в том, что в конкретной ситуации если не понимаешь почему не отображается реквизит (как пример) и нет НИКАКИХ инструментов диагностики, которые хоть как-то бы указывали на то, что сработала ФО.

Вот как можно понять почему не отображается реквизит если свойство Видимость = Истина?
По-моему это косяк платформы. Должно быть Ложь.Тогда можно было бы хотя бы укрупнённо отлидчиком пройтись не заходя в процедуры и локализовать место, где видимость выключилась.

А так как искать?
---
где видимость выключилась.
А так как искать?
Ctrl-F, в появившемся окошке Элементы.Подразделение.Видимость

если не помогло значит где то есть что-то типа Элементы["Подразделение"].Видимость?
причем возможно "Подразделение" не в явном виде, а через переменную.
т.е. если не нашли Элементы.Подразделение ищем просто "Подразделение" (тут кавычки — часть строки поиска)
---
святая наивность)))
Ctrl+F я сделал в первые 5 секунд))
Нет в модуле формы ничего. И нигде нет. Там метод что-то вроде ПрименитьФункциональнуюОпциюПоПодразделениям() который применяется в 20-25 вложении процедур общих модулей и ВСЁ!
---
То есть вы все таки нашли? Тогда тему можно закрывать =)
---
Так тема не о той конкретной проблеме, а вообще о методе диагностики подобных ситуаций. Это уже не первый случай когда полдня-день работы 2-3 рараб-ов убиваются на подобную ерунду.
---
Если известно, что искать - попробуйте замер производительности использовать, и искать в нем.
---
а вот это мысль, сейчас попробую
---
не работает, можете сами проверить у кого ERP
ФО = ВыполнятьРасчетЗарплатыПоПодразделениям
Если она выключена (значение Ложь), то в документе "Табель учёта рабочего времени" реквизит "Подразделение" не отображается, хотя свойство Видимость = Истина

Сделал замер производительности в двух предопределённых процедурах которые выполняются при открытии формы и поиском там не нашел эту ФО по имени.

Вот такое вот.
---
так мало того - ничего не даёт даже поиск по имени процедуры ПрименитьОтборПоФункциональнойОпцииВыполнятьРасчетЗарплатыПо­Подразделениям()
которая и проверяет значение ФО
---
А можете приложить замер? А то ЕРП под рукой нет.
---
Спасибо.
Но ведь если процедуры нет в замере, значит она не выполнялась в тот момент когда документ открывается.
---
совершенно правильно замечание, поэтому и решил перепроверить ещё раз ФО реквизита документа.
---
у реквизита правой кнопкой дополнительно - закладка ФО. Ну вот если в коде устанавливается ФО то тут только да отладчиком искать.
Может коллеги знают еще варианты.
---
да, вот этот совет был верным - я недоглядел - выла ФО на реквизите
Но неужели трудно им приделать кнопку "Показывать только включенные"?
---
А разве поиск по "УстановитьПараметрыФункциональныхОпцийФормы" не помогает найти места, где устанавливаются ФО формы?
---
имеете в виду глобальным поиском по всей конфигурации искать? Так там может быть сотни таких команд.
---
Чтобы узнать, какая сработала, можно включить замер производительности перед открытием формы и выключить после открытия.
И после этого прощелкать по результатам глобального поиска - если строка выполнялась, рядом с ней будет отметка от замера.
А далее самом замере можно выполнить поиск.
При этом в замере ищет не с начала строки а в любом месте, то есть найти в замере где вызвалось УстановитьПараметры... - это достаточно просто.