поделитесь кто как вычисляет функциональные опции, которые скрывают реквизиты?

1. impextr 88 15.07.21 17:19 Сейчас в теме
Всем привет.
Не первый раз наступаем на грабли с функциональными опциями. Поделитесь соображениями кто как локализует источник проблем в таких ситуациях.

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

КАК это можно понять кроме как проходить под отладчиком десятки тысяч строк кода? Почему нет в платформе никакого инструмента диагностики?
furman2000; +1 Ответить
Вознаграждение за ответ
Показать полностью
Найденные решения
4. titanium2008 42 15.07.21 18:02 Сейчас в теме
у реквизита правой кнопкой дополнительно - закладка ФО. Ну вот если в коде устанавливается ФО то тут только да отладчиком искать.
Может коллеги знают еще варианты.
kasper076; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
8. nomad_irk 76 15.07.21 18:18 Сейчас в теме
(1)если реквизит объекта, то правой кнопкой по нему и Ссылки на Обьект - покажет где используется этот реквизит в других объектах конфигурации.

Если реквизит формы, то только в свойствах реквизита формы можно узнать чисто визуально.
9. impextr 88 15.07.21 18:20 Сейчас в теме
(8) первый вариант не работает. Нет там никакой прямой ссылки. ФО - булево и никак не связана с реквизитом.
В свойствах реквизит ФО нет.
2. titanium2008 42 15.07.21 17:43 Сейчас в теме
3. impextr 88 15.07.21 17:46 Сейчас в теме
(2) вы наверное не поняли вопрос
Я знаю как работаю ФО и как они устроены. Проблема в том, что в конкретной ситуации если не понимаешь почему не отображается реквизит (как пример) и нет НИКАКИХ инструментов диагностики, которые хоть как-то бы указывали на то, что сработала ФО.

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

А так как искать?
10. -AI- 15.07.21 18:30 Сейчас в теме
(3)
где видимость выключилась.
А так как искать?

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

если не помогло значит где то есть что-то типа Элементы["Подразделение"].Видимость?
причем возможно "Подразделение" не в явном виде, а через переменную.
т.е. если не нашли Элементы.Подразделение ищем просто "Подразделение" (тут кавычки — часть строки поиска)
11. impextr 88 15.07.21 18:36 Сейчас в теме
(10) святая наивность)))
Ctrl+F я сделал в первые 5 секунд))
Нет в модуле формы ничего. И нигде нет. Там метод что-то вроде ПрименитьФункциональнуюОпциюПоПодразделениям() который применяется в 20-25 вложении процедур общих модулей и ВСЁ!
Fox-trot; +1 Ответить
12. Sashares 34 15.07.21 18:38 Сейчас в теме
(11)То есть вы все таки нашли? Тогда тему можно закрывать =)
13. impextr 88 15.07.21 18:41 Сейчас в теме
(12) Так тема не о той конкретной проблеме, а вообще о методе диагностики подобных ситуаций. Это уже не первый случай когда полдня-день работы 2-3 рараб-ов убиваются на подобную ерунду.
14. Sashares 34 15.07.21 18:44 Сейчас в теме
(13)Если известно, что искать - попробуйте замер производительности использовать, и искать в нем.
15. impextr 88 15.07.21 18:46 Сейчас в теме
(14) а вот это мысль, сейчас попробую
16. impextr 88 15.07.21 18:57 Сейчас в теме
(14) не работает, можете сами проверить у кого ERP
ФО = ВыполнятьРасчетЗарплатыПоПодразделениям
Если она выключена (значение Ложь), то в документе "Табель учёта рабочего времени" реквизит "Подразделение" не отображается, хотя свойство Видимость = Истина

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

Вот такое вот.
17. impextr 88 15.07.21 19:00 Сейчас в теме
(16) так мало того - ничего не даёт даже поиск по имени процедуры ПрименитьОтборПоФункциональнойОпцииВыполнятьРасчетЗарплатыПо­Подразделениям()
которая и проверяет значение ФО
18. Sashares 34 15.07.21 19:01 Сейчас в теме
(16) А можете приложить замер? А то ЕРП под рукой нет.
19. impextr 88 15.07.21 19:01 Сейчас в теме
20. Sashares 34 15.07.21 19:12 Сейчас в теме
(19)Спасибо.
Но ведь если процедуры нет в замере, значит она не выполнялась в тот момент когда документ открывается.
22. impextr 88 15.07.21 19:22 Сейчас в теме
(20) совершенно правильно замечание, поэтому и решил перепроверить ещё раз ФО реквизита документа.
4. titanium2008 42 15.07.21 18:02 Сейчас в теме
у реквизита правой кнопкой дополнительно - закладка ФО. Ну вот если в коде устанавливается ФО то тут только да отладчиком искать.
Может коллеги знают еще варианты.
kasper076; +1 Ответить
21. impextr 88 15.07.21 19:21 Сейчас в теме
(4) да, вот этот совет был верным - я недоглядел - выла ФО на реквизите
Но неужели трудно им приделать кнопку "Показывать только включенные"?
5. Sashares 34 15.07.21 18:10 Сейчас в теме
А разве поиск по "УстановитьПараметрыФункциональныхОпцийФормы" не помогает найти места, где устанавливаются ФО формы?
6. impextr 88 15.07.21 18:12 Сейчас в теме
(5) имеете в виду глобальным поиском по всей конфигурации искать? Так там может быть сотни таких команд.
7. Sashares 34 15.07.21 18:18 Сейчас в теме
(6)Чтобы узнать, какая сработала, можно включить замер производительности перед открытием формы и выключить после открытия.
И после этого прощелкать по результатам глобального поиска - если строка выполнялась, рядом с ней будет отметка от замера.
А далее самом замере можно выполнить поиск.
При этом в замере ищет не с начала строки а в любом месте, то есть найти в замере где вызвалось УстановитьПараметры... - это достаточно просто.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот