IE 2016

Деструктивный анализ формы

Опубликовал asady в раздел Программирование - Инструментарий

Универсальная обработка которая демонстрирует работу алгоритма деструктивного анализа формы

Универсальная обработка которая демонстрирует работу алгоритма деструктивного анализа формы.
Обработка может использоваться как конечный продукт.
Пользователь может в интерактивной форме выбрать любую форму любого документа любой конфигурации платформы 1С 8.1
и получить отчет по всем элементам выбранной формы.
Деструктивный анализ формы описан в
http://www.kb.mista.ru/article.php?id=650&

09.12.2011

Добавил код отключающий срабатывание обработчика ПриСменеСтраницы обрабатываемой формы

Добавил файл, сконвертированный под платформу 8.2

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Деструктивный анализ формы (8_2)
.epf 19,90Kb
19.08.14
54
.epf 19,90Kb 54 Скачать
Деструктивный анализ формы (8_1)
.1219321801 19,81Kb
19.08.14
281
.1219321801 19,81Kb 281 Бесплатно

См. также

Комментарии

1. tormozit 22.08.2008 00:48
Я применил. Все работает!
# Ответить
2. Minotavrik 22.08.2008 07:33
Да ты молодчик, я улучшил свою систему прав (алгоритм в общей системе заполнения) !!! Ставлю плюсик не жалея!
# Ответить
3. Minotavrik 22.08.2008 07:35
Можно вопрос почему деструктивный анализ?
# Ответить
4. German 22.08.2008 10:52
Эх, а что же действия выводятся только для кнопки....
Ответили: (10)
# Ответить
5. Sergey K 03.09.2008 13:08
все хорошо.. только вот не учитывает она страницы самой формы..
очень пригодилась +
# Ответить
6. YOr!k 04.09.2008 12:20
если страница, следующая за удаляемой невидима, то предприятие зависает
# Ответить
7. YOr!k 04.09.2008 16:08
а точнее: если после удаления страницы все оставшиеся на панели страницы - невидимые
# Ответить
8. gladkov_valery 20.12.2008 14:33
Конечно, мелочь. Но правильней будет "структурный анализ форм" )))
Ответили: (9)
# Ответить
9. tormozit 20.12.2008 16:06
(6, 7) Это баг платформы.
(8) Тогда уж деструктивный структурный анализ формы. "деструктивный" здесь играет очень важную роль. Т.к. это требует значительного времени, требует объект (менеджера) порождающего форму сколько угодно раз, т.к. она портится, кроме того могут быть и другие способы изобретены (например через внутреннее представление формы)..
# Ответить
10. artbear 05.02.2009 10:35
Автору плюс.
(4) Для полного описания действий произвольного элемента формы на текущей платформе придется для каждого элемента управления составить список его событий.
В этом случае очень просто получить наименования обработчиков из формы.

Мне данная задача понадобилась для решения задач тестирования произвольных форм, например, отчетов/обработок - получение настроек из формы и получение действий из кнопок.
Буду внедрять использованный здесь способ.

Сейчас я могу без проблем получить основные действия не только для кнопок командной панели, но и для простых кнопок + некоторых элементов управления.

Правда, пока немного непонятно, как же полученные обработчики действий вызвать :) из собственного кода, если они не описаны как экспортные. Да и вообще нет полной уверенности в возможности решения этой проблемы.
# Ответить
11. artbear 05.02.2009 10:54
(10+) Похоже, что без экспортирования не удается получить доступ к внутренним методам-обработчикам событий формы и элементов управления :(
Если для внешних отчетов/обработок можно выгрузить, добавить Экспорт, и загрузить обратно через v8Unpack, то, что делать по встроенным формам, совсем непонятно :(

ЗЫ блин, как же мне моего Информатора из 1С++ и 77 не хватает :)
# Ответить
12. MSensey 27.07.2009 17:24
Нужно добавить код
фСтраница=фПанель.Страницы.Найти(тИмяСтраницы);
-->> фПанель.УстановитьДействие("ПриСменеСтраницы", Неопределено);
Если фСтраница<>неопределено Тогда
фПанель.Страницы.Удалить(фСтраница);
КонецЕсли;

Иначе могут вылазить ошибки в форме.
# Ответить
13. РазДва 22.09.2011 10:32
Спасибо. Хорошая обработка
# Ответить
14. РазДва 09.11.2011 14:05
Еще раз спасибо
# Ответить
15. Gasdrubal 14.12.2011 08:33
добавьте список событий, еще немногорефлексии и это начнет напоминать reflections в java

как говорится, ещ немного, еше чуть - чуть.
Неясно, почему анализ деструктивный.
# Ответить
16. shomo 14.12.2011 14:04
Удобно использовать при больших формах. плохо что панели неразбирает...
Ответили: (17)
# Ответить
17. asady 14.12.2011 15:42
shomo пишет:

Удобно использовать при больших формах. плохо что панели неразбирает...
(16) shomo,

Я не понял - что значит не разбирает?
Если про вложенные панели? То должна разбирать - приведи пример формы которую данный алгоритм не разбирает.
# Ответить
Внимание! За постинг в данном форуме $m не начисляются.
Внимание! Для написания сообщения необходимо авторизоваться
Текст сообщения*
Прикрепить файл