Недокументированное использование стандартных форм

08.02.22

Разработка - Инструментарий разработчика

Вам не хватает возможностей в платформе 1С или у Вас нет времени на углубленное изучение платформы 1С? Рассмотрены возможности использования стандартных форм, вызываемых из платформы.

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

Наименование Файл Версия Размер
Анализ ресурсов 1С (расширенный)
.epf 114,87Kb
84
.epf 114,87Kb 84 Скачать
Преобразование стандартных управляемых форм
.epf 100,32Kb
104
.epf 100,32Kb 104 Скачать
Стандартная форма "Все функции" для УТ
.epf 10,51Kb
13
.epf 10,51Kb 13 Скачать
Стандартная форма "Все функции" для ERP
.epf 10,73Kb
11
.epf 10,73Kb 11 Скачать

Первоисточник: Недокументированное использование стандартных обработок из меню "Все функции".

Отличие:

  • Используются стандартные формы, вызываемые из платформы.

В этой статье я буду писать про недокументированное использование стандартных форм.

LF - это стандартная компилированная управляемая форма, вызываемая платформой. В платформе 1с предприятия есть стандартные формы: "Все функции", "Все сообщения", "Выбрать цвет", "Выбрать тип документа", "Выбрать шрифт" и т.д. тому подобно.

Первичная цель: Как перенести данные из стандартной управляемой формы в форму внешней обработки с модулями?

Порядок выполнения действий "Преобразование стандартных форм":

  1. Открыть обработку, нажать на кнопку "Получить список ресурсов", отметить необходимые ресурсы, выбрать каталог и нажать "Распаковать и упаковать".
  2. В выбранном каталоге открыть любую обработку в режиме конфигуратора.
  3. Открыть форму внешней обработки, восстановить в ней связи между элементами и реквизитами, записать и закрыть.
  4. Открыть записанную обработку в режиме предприятия.

Что делает обработка "Преобразование стандартных форм":

  1. Получает встроенную в виде отдельного файла LF.
  2. Получает готовый шаблон внешней обработки из макета обработки и сохраняет его во временный файл.
  3. Распаковывает временный файл внешней обработки во временный каталог.
  4. Заменяет файл "<guid.0>" на содержимое файла LF.
  5. Упаковывает в обработку обратно в обычный каталог.

Чтобы сделать самому себе обработку "AllFunction.lf", имея на руках V8Unpack, нужно выполнить следующее действие:

  1. Создать в конфигураторе новую обработку.
  2. Создать в ней новую управляемую форму.
  3. Сохранить обработку.
  4. Распаковать получившуюся обработку с помощью V8Unpack.
  5. Там должен быть один файл с именем вида <guid>.0 - поменять его содержимое на содержимое файла "AllFunctions.lf".
  6. После этого обратно собрать обработку с помощью V8Unpack.

Чтобы получить встроенную в виде отдельного файла "AllFunctions.lf", нужно выполнить код:

КопироватьФайл("v8res://mngbase/AllFunctions.lf","C:\AllFunctions.lf");

Информация обо всех файлах в формате LF лежит в файлах:

C:\Program Files (x86)\1cv8\хх.хх.хх.хх\bin\mngbase_root.res

C:\Program Files (x86)\1cv8\хх.хх.хх.хх\bin\mngbase_ru.res

Помимо этого была сделана внешняя обработка для тестирования для конфигураций 1С: Предприятия 8. Все изменения касательно внешней обработки "Все функции":

  1. Восстановлена связь между элементами и реквизитами.
  2. Закомментирован код закрытия формы обработки после выбора формы.
  3. Изменено поведение Enter в форме обработки выбора.
  4. Изменено поведение Esc (запрашивает подтверждение при закрытии приложения).

Выражаю благодарность awa за оказанную помощь. Мир его праху.

Второисточник: Просмотр ресурсов 1С методами встроенного языка (8.3.9).
Автор r0610201 любезно разрешил опубликовать расширенный анализ ресурсов 1С со ссылкой на второисточник. За что ему большое спасибо!

Отличие:

  • Добавлено преобразование стандартных форм (*.clf, *.lf, *.f).
  • Сохранение всех файлов с ресурсами одним нажатием кнопки.

В последнее время авторы жалуются на отсутствие информации о стандартных обычных формах.

Вторичная цель: Как вытащить обычные формы?

В файле mngbase*.res лежат управляемые формы (*.lf), а обычные формы (*.f) в basicui*.res.

F - это стандартная компилированная обычная форма, вызываемая платформой.

Была проблема с извлечением ресурсов *.f через 'КопироватьФайл("v8res://....")'. Порыскал в интернете и нашёл инфу о том, что можно распаковать ресурсы непосредственным чтением двоичных данных res-файла, которые другими способами извлечь не получается.

Порядок выполнения действий "Анализ ресурсов 1С (расширенный)":

  1. Открыть обработку, нажать "Выбрать расширения", снять все ресурсы, выбрать ресурс "f" или "lf", нажать на кнопку "Выбрать" и "Анализ".
  2. Поставить галочку ".f (...)", выбрать каталог в поле "Каталог" и нажать "Преобразовать форму(ы)".
  3. В выбранном каталоге открыть любую обработку в режиме конфигуратора.

Третичная цель: Есть ли возможность вытащить формы, вызываемые методами ПоказатьПредупреждение и ПоказатьВопрос? Вопрос TMV.

Эти формы нет ни в mngbase*.res (*.lf) ни в basicui*.res (*.f), оказывается что есть еще форма CLF в mngcore*.res.

Порядок выполнения действий "Анализ ресурсов 1С (расширенный)":

  1. Открыть обработку, нажать "Выбрать расширения", снять все ресурсы, выбрать ресурс "f" или "lf", нажать на кнопку "Выбрать" и "Анализ".
  2. Поставить галочку ".clf (...)", выбрать каталог в поле "Каталог" и нажать "Преобразовать форму(ы)".
  3. В выбранном каталоге открыть любую обработку в режиме конфигуратора.

Идеи для разработки:

  • Получить системную папку bin 1С, прочитать файл mngbase_root.res, найти в нём позицию первого ".lf" и нулевой байт и читать пока идут печатаемые символы или нулевой байт.
  • Уметь сравнивать ресурсы: какие ресурсы добавлены, а какие удалены. Например, сравнить 2 файла mngbase_root.res разных версий платформы.
  • Анализировать ресурсы всех файлов.
  • Преобразовать стандартные обычные формы (*.f).

Не стоит забывать, что такое использование стандартных форм является недокументированным.

См. также

SALE! 20%

Infostart Toolkit: Инструменты разработчика 1С 8.3 на управляемых формах

Инструментарий разработчика Роли и права Запросы СКД Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Платные (руб)

Набор инструментов программиста и специалиста 1С для всех конфигураций на управляемых формах. В состав входят инструменты: Консоль запросов, Консоль СКД, Консоль кода, Редактор объекта, Анализ прав доступа, Метаданные, Поиск ссылок, Сравнение объектов, Все функции, Подписки на события и др. Редактор запросов и кода с раскраской и контекстной подсказкой. Доработанный конструктор запросов тонкого клиента. Продукт хорошо оптимизирован и обладает самым широким функционалом среди всех инструментов, представленных на рынке.

10000 8000 руб.

02.09.2020    122420    673    389    

716

SALE! 25%

Infostart PrintWizard

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

18000 15300 руб.

06.10.2023    7344    22    6    

39

SALE! 20%

Infostart УДиФ: Управление данными и формами

Инструменты администратора БД Инструментарий разработчика Роли и права Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8000 руб.

10.11.2023    3642    11    1    

34

SALE! 30%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

3600 2520 руб.

14.01.2013    177842    1074    0    

852

Многопоточность. Универсальный «Менеджер потоков» 2.1

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Восстановление партий или взаиморасчетов, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

5000 руб.

07.02.2018    99383    239    97    

296

[ЕХТ] Фреймворк для Расширений 1С

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Платные (руб)

"Фреймворк для Расширений 1С" это универсальное и многофункциональное решение, упрощающее разработку и поддержку создаваемых Расширений. Поставляется в виде комплекта из нескольких Расширений с открытым исходным кодом. Работает в любых Конфигурациях в режиме Управляемого приложения с режимом совместимости 8.3.12 и выше без необходимости внесения изменений в Конфигурацию.

3000 руб.

27.08.2019    18142    6    8    

40

1С HTML Шаблоны / HTML Templates

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Быстрая и удобная обработка для работы с шаблонами HTML. Позволяет легко и быстро формировать код HTML.

2040 руб.

27.12.2017    28127    3    10    

15

Выполнение произвольного кода или запроса с параметрами через Web-сервис (замена COM-подключений)

Инструментарий разработчика Обмен между базами 1C Платформа 1С v8.3 Платные (руб)

В процессе работы в 1С часто возникает потребность получить данные из другой базы.  Обычно это делается через COM-соединение, и время выполнения запроса при этом оставляет желать лучшего. В данной публикации представлено универсальное решение, позволяющее практически моментально выполнить произвольный код или запрос с параметрами в другой информационной базе через Web-сервис.

2400 руб.

24.09.2019    23611    15    15    

32
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. klinval 337 26.07.16 13:41 Сейчас в теме
А "Все действия" - "Настроить список" - эту форму/обработку можно получить вашей обработкой?
2. ZhokhovM 725 26.07.16 14:21 Сейчас в теме
(1) klinval, конечно, есть стандартная форма "UniversalListSettings.lf". В ней нужно восстанавливать связи между элементами и реквизитами непосредственно в обработке, такие как: Filter, Order, Group и т.д.
3. LSV79 1 27.07.16 07:14 Сейчас в теме
А зачем такие сложности?
http://infostart.ru/public/369487/ тут вариант значительно проще
Yashazz; serg_infostart; Spacer; ardn; kraynev-navi; JohnyDeath; kuntashov; +7 3 Ответить
4. ZhokhovM 725 27.07.16 09:24 Сейчас в теме
(3) LSV79, там нет вариантов со стандартными формами, только упоминания в комментариях
TreeDogNight; +1 Ответить
5. Serj1C 483 28.07.16 07:38 Сейчас в теме
Ой, ой, ой... На фоне шумихи с вирусом для 1С... Т.е. теперь можно подложить файлы в каталог бин и пользователь сам когда-нибудь да откроет обработку.
А также можно обойти ограничение на открытие внешних обработок...
Большая-большая дыра в безопасности каждой компании, где у пользователей есть доступ на запись в каталог bin
kser87; TreeDogNight; frkbvfnjh; Danil.Potapov; uncle_Vasya; kiv1c; Sergey-MX; ZhokhovM; AnryMc; ixijixi; +10 Ответить
6. ixijixi 1777 28.07.16 09:02 Сейчас в теме
9. пользователь 29.07.16 22:31
Сообщение было скрыто модератором.
...
66. seeges 28.02.21 18:03 Сейчас в теме
(5) Все намного интереснее.
Если вы заходите в 1С с рабочей машины (с личного компьютера, а не с терминала) то скорее всего вы там админ и можете делать в каталоге bin все что угодно.
Если вы заходите в 1С с терминала, то вам никто не мешает скопировать папку с установленной 1С и запустить 1С-клиент оттуда. А в вашей копии 1С конечно в папке bin вы можете делать что угодно.

Но вообще хранение в ресурсных файлах открытого кода, который можно не только прочитать, но и модифицировать - это редчайшая дырявая дыра. И это скорее всего дыра не для вирусов, а для продвинутых пользователей, которые хотят получить расширенный доступ к вашей базе (имея при этом достаточно ограниченные права даже без запуска обработок через Файл-Открыть).
Если глянуть повнимательнее файлы типа mngbase_*.res, то можно увидеть что в них в обработках описан также и серверный код. Т.е. внеся изменения в серверный код, мы получаем "свой" программный код выполняемый уже на сервере. А кто нам мешает там установить привелигированный режим или, зная код типовой конфигурации, вызвать серверную функцию которая нам установит необходимый уровень прав в системе?

По правильному, такие ресурсы (всевдовстроенные обработки и формы) надо не хранить на клиенте, а получать от сервера где эти ресурсные файлы должны лежать и ждать когда их запросят. Когда-нибудь это пофиксят, но наверное ждут пока гром грянет.
7. vano-ekt 123 29.07.16 05:19 Сейчас в теме
екарук писала уже, но плюсану за обработку, лень копаться :-)
8. ZhokhovM 725 29.07.16 09:29 Сейчас в теме
10. fishca 1254 30.08.16 14:11 Сейчас в теме
11. ZhokhovM 725 30.08.16 15:06 Сейчас в теме
12. dolter 119 21.01.17 22:47 Сейчас в теме
А действительно... можно ли вытянуть стандартную форму, слегка ее переделать (например вставить попытку открыть другую форму из состава конфигурации в случае ее там присутствия) и поместить ее обратно в bin?
13. ZhokhovM 725 22.01.17 14:13 Сейчас в теме
(12)я знаю только вытянуть и переделать форму но поместить ее обратно в бин нет, не пробовал
14. dolter 119 28.01.17 22:40 Сейчас в теме
Нашел инструмент у Орефкова на сайте... Полностью разобрать получилось, а вот собрать пока не очень...
15. ander_ 18.05.17 05:55 Сейчас в теме
Что-то я не в теме. А зачем все это? Поясните плиз где и как это может пригодиться
16. ZhokhovM 725 18.05.17 09:51 Сейчас в теме
(15)
где и как это может пригодиться

Мне она пригодилась для тестирования для конфигураций: "Управление торговлей, редакция 11" и "Управление предприятием, редакция 2". На всякий случай указал первоисточник.
17. ander_ 18.05.17 16:35 Сейчас в теме
(16)
а еще чуть подробней.. :)
что здесь имеется ввиду под "тестированием"?
может пример тестового сценария, в котором это используется... может так понятнее будет :(
18. ZhokhovM 725 18.05.17 17:26 Сейчас в теме
(17)ну изначально я тестировал руками все формы, вызываемые через меню все функции, например, открыть и закрыть формы документа или справочника, но после длительного использования были проблемы, что автоматически закрывается стандартная форма "Все функции" после выбора любой формы и деактивируется строка дерева значений "Table" после переоткрытия стандартной формы "Все функции", что практически невозможно было выбрать следующую форму нажатием стрелочки "вниз" или "вверх", так вот решил создать тему https://partners.v8.1c.ru/forum/topic/1510855, но ответа там до сих пор не дали, затем вспомнил про статью "Недокументированное использование стандартных обработок из меню "Все функции"" на инфостарте от автора екарук и мне нужно было придумать как стандартную форму "Все функции" вызываемую из платформы перенести во внешнюю обработку с формой для этого и была придумана мной статья. Все изменения касательно внешней обработки "Все функции" я писал выше.
19. ander_ 19.05.17 07:20 Сейчас в теме
(18)
Спасибо, теперь более-менее понятно.
47. buganov 200 05.06.19 18:12 Сейчас в теме
(18) а через ОткрытьФорму(...) нельзя было протестить?
48. ZhokhovM 725 05.06.19 18:54 Сейчас в теме
(47)так список форм нужен был не полный, а тот который в стандартной форме "Все функции". если открывать все формы, то там большинство не ошибки. например, при проверке материалов или совместимо 1с проверяет практически все формы и не все из них является ошибками.
20. ZhokhovM 725 19.05.17 09:15 Сейчас в теме
21. ZhokhovM 725 28.07.17 11:50 Сейчас в теме
28.07.2017:
Что изменилось:
Добавил внешнюю обработку "Стандартная форма "Все функции" для ERP". Проверял на версии ERP 2.4.1.126. На УТ данная обработка не подходит, так как к каждой конфигурации проверяется право доступа "TotalsControl", "CollaborationSystemInfoBaseRegistration" и т.д.
22. tormozit 7138 15.04.18 12:40 Сейчас в теме
Спасибо. Познавательно. Пометки в списке не учитываются при выгрузке (ошибка). Добавил формы истории данных
	л_Формы.Добавить("DataHistoryVersionData", "Data history data");
	л_Формы.Добавить("DataHistoryVersions", "Data history versions");
	л_Формы.Добавить("DataHistoryVersionsDiff", "Data history difference");
23. ZhokhovM 725 15.04.18 13:13 Сейчас в теме
35. tormozit 7138 01.06.19 22:20 Сейчас в теме
(22) 1С:Предприятие 8.3 (8.3.13.1865)
DataHistoryVersions - открывается
DataHistoryVersionData - не открывается (ошибка - форма не обнаружена)
DataHistoryVersionsDiff - не открывается (ошибка - форма не обнаружена)

При выгрузке в файл аналогично -
{ВнешняяОбработка.ZhokhovM_ConversionOfStandardForms.МодульОбъекта(39)}: Ошибка при вызове метода контекста (КопироватьФайл)
КопироватьФайл("v8res://mngbase/"+п_Форма.Значение+".lf",п_Файл.ПолноеИмя);
по причине:
Ошибка копирования файлов
по причине:
Файл не обнаружен 'v8res://mngbase/DataHistoryVersionData.lf'. Ресурс не найден

Нашел похожие формы
DataHistoryVersionDataRuForm
DataHistoryVersionsDiffRuForm
Но уже с русскими именами параметров
ZhokhovM; acanta; +2 Ответить
36. tormozit 7138 01.06.19 22:56 Сейчас в теме
(35) DataHistoryVersionsDiffRuForm DataHistoryVersionDifferenecesRuForm
39. ZhokhovM 725 04.06.19 15:34 Сейчас в теме
(36)Добавил. Список изменений предоставил. Файлы, которые выгружаются с ошибками - рекомендуется выгружать на старых платформах. Похожие формы обнаруживаются только в новых платформах.
37. ZhokhovM 725 02.06.19 01:58 Сейчас в теме
24. ZhokhovM 725 19.04.18 14:46 Сейчас в теме
19.04.2017:
Что изменилось:
Добавлены формы:
BorderChoose
ChartLabelArea
ChartAxis
ChartScale
GanttChartChoiceValue
DataHistoryVersions
DataHistoryVersionsFilter
DataHistoryVersionsFilterUser
DataHistoryVersionData
DataHistoryVersionsDiff
ECSMainForm
fdSave
fullscreen
moxelName
moxelNames
moxelDupName
NotificationsDlgNew
TrendLines
Исправлена ошибка, в которой не учитываются пометки в списке при выгрузке.
25. romankoav 4 02.08.18 17:57 Сейчас в теме
А как программно открыть такую форму? Например DataHistoryVersions
26. ZhokhovM 725 02.08.18 18:25 Сейчас в теме
(25)воспользоваться обработкой "Преобразование стандартных форм.epf" и вызвать форму методом ОткрытьФорму("ВнешняяОбработка.DataHistoryVersions.Форма");
27. romankoav 4 03.08.18 17:38 Сейчас в теме
(26) То есть без вынесения из конфигурации никак?
28. ZhokhovM 725 03.08.18 19:44 Сейчас в теме
(27)Никак.
Есть пример в первоисточнике:
&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
ПодключитьВнешнююОбработкуНаСервере();
ОткрытьФорму("ВнешняяОбработка.StandardFindByRef.Форма");
КонецПроцедуры

&НаСервере
Процедура ПодключитьВнешнююОбработкуНаСервере()
ВнешниеОбработки.Подключить("v8res://mngbase/StandardFindByRef.epf", "StandardFindByRef", false);
КонецПроцедуры

но сделать так же для стандартной формы не получится
ВнешниеОбработки.Подключить("v8res://mngbase/DataHistoryVersions.lf", "DataHistoryVersions", false);
65. seeges 28.02.21 17:50 Сейчас в теме
(28) ВнешниеОбработки.Подключить("v8res://mngbase/DataHistoryVersions.lf", "DataHistoryVersions", false); - это синтаксис подключения внешней обработки.
А подключение/открытие формы делается по другому - как и с обычной формой. Описал в (64)
64. seeges 28.02.21 17:47 Сейчас в теме
(27) на самом деле подсказку надо искать внутри файла mngbase_*.res. Там встречаются вызовы стандартных форм как путем получения формы так и путем открытия формы.
Пример из файла mngbase_ru.res (брал например из 8.3.18):
OpenForm("sysForm:DataHistoryVersionsFilterDialog",
New Structure("Data, Filter", Parameters.Data, Filter),
,,,,
New NotifyDescription("SetFilterCallback", ThisForm));

или

Form = GetForm("sysForm:HelpDlg");

а форма заполнения списка значений (куда уже давно фирме 1С надо было добавить загрузку списка из буфера обмена) можно вызвать:
OpenForm("sysForm:ValueListForm");

Возможно в разных версиях синтаксис вызова разный, но важно что эти системные формы можно вызывать без перебрасывания во внешние обработки.


Из интересного про вызов обработок лежащих в ресурсных файлах:
Вот нашел такой пример внутри файла mngbase_ru.res:

Try
ActiveUsers = New(""ExternalDataProcessorObject.StandardActiveUsers"");
Except
Try
ExternalDataProcessors.Connect(""v8res://mngbase/StandardActiveUsers.epf"", ""StandardActiveUsers"", false);
ActiveUsers = New(""ExternalDataProcessorObject.StandardActiveUsers"");
Except
Message(ErrorDescription());
EndTry;
EndTry;

Т.е. вызов обработки находящейся в ресурсном файле уже считается вызовом обычной внешней обработки и не надо указывать путь к ресурсному файлу
ixijixi; Aili; SeiOkami; BigB; user1450085; ZhokhovM; +6 Ответить
67. ZhokhovM 725 28.02.21 20:06 Сейчас в теме
29. unknown181538 151 13.10.18 20:14 Сейчас в теме
А настройка панели навигации в списке есть?
30. ZhokhovM 725 13.10.18 21:39 Сейчас в теме
31. unknown181538 151 13.10.18 23:07 Сейчас в теме
(30)
dcschangesettingsstructure
похоже на то. Понять бы еще, как ее отключить.
32. needmic 15 20.12.18 17:58 Сейчас в теме
А для обычных форм (не управляемых) что-то есть? Нужно стандартные обработки под обычным приложение достать. Или если это расписывалось где-то подкинте ссылку. Спасибо.
33. ZhokhovM 725 20.12.18 18:38 Сейчас в теме
(32)для обычных форм не делал. здесь только стандартные формы, а в первоисточнике - стандартные обработки.
56. ZhokhovM 725 06.11.19 18:10 Сейчас в теме
(32)Пока в разработке - обычные формы.
34. needmic 15 21.12.18 10:38 Сейчас в теме
Ясно. Жаль. Просто стандартные обработки есть и в режиме запуска обычного приложения. Вот про эти обработки\формы (операции-проведения документов) хотелось узнать. Буду искать. Спасибо.
38. ZhokhovM 725 04.06.19 15:30 Сейчас в теме
04.06.2019:
Что изменилось:
Добавлены формы:
dcsgroupselecteditems_mobile
dcstableselecteditems_mobile
dcschartselecteditems_mobile
dcssettingselecteditems_mobile
dcsnestedsettingselecteditems_mobile
image
StandardPeriodM
moxelGoToCell
moxelInsert
moxelSplitCell
moxelRowHeight
moxelColumnWidth
moxelDeleteCell
MoxelHeadersAndFooters
moxelSectType
FontChooseDlgMobile
HelpM
PrintInfo
PageSettings
About
InputPurchaseEmu
SelectFileDlg
ChartPaletteDescription
ChartRefLines
ChartRefBands
DCSChartRefLine
DCSChartRefBand
ChartTypeChoose
DataHistoryChangeHistoryEnForm
DataHistoryChangeHistoryRuForm
DataHistoryVersionDataEnForm
DataHistoryVersionDataRuForm
DataHistoryVersionDifferencesEnForm
DataHistoryVersionDifferencesRuForm
DataHistoryVersionsFilterDialog
DataHistoryUsersChooseDialog
ECSSettings
SearchForm
SearchForm_ru
ECSMainFormMA
ECSMainFormMA2
ECSConvAddMA
ECSConvTitleMA
ECSConvMembersMA
ECSUserInfoMA
ECSContextConvSmallMA
ECSContextConvLargeMA
ECSFullUserInfoDlgMA
TypeDomainDlgMA
ECSSettingsMA
ECSContextConvSmallMAv13
ECSContextConvLargeMAv13
ECSConvAddMAv13
ECSConvMembersMAv13
ECSFullUserInfoDlgMAv13
ECSMainFormMAv13
ECSMainFormMA2v13
CertificateInfo
CryptoCertManager
Тестировал на платформе 8.3.14.1779.
40. SlavaKron 04.06.19 15:44 Сейчас в теме
Может просто обработкой получить системную папку bin 1С, прочитать файл mngbase_root.res. Найти в нём позицию первого ".lf" + нулевой байт и читать пока идут печатаемые символы или нулевой байт.
41. ZhokhovM 725 04.06.19 15:48 Сейчас в теме
(40)Тоже об этом подумал, но времени пока не нашлось.
45. пользователь 04.06.19 21:16
Сообщение было скрыто модератором.
...
46. ZhokhovM 725 04.06.19 23:39 Сейчас в теме
(45)О, спасибо! Постараюсь внести изменения в ближайшие дни.
49. ZhokhovM 725 07.06.19 09:55 Сейчас в теме
(45)В список ресурсов попадает не только ресурс .lf, но и .mxl, .txt, .zip, .epf и т.д. Нужно слегка подправить код.
50. ZhokhovM 725 07.06.19 10:20 Сейчас в теме
07.06.2019:
Что изменилось:
Получение списка ресурсов непосредственно из файлов "mngbase_root.res" и "mngbase_ru.res".

Чтобы получить нужную системную папку bin 1С нужно запускать конкретную версию платформы.
43. ZhokhovM 725 04.06.19 16:26 Сейчас в теме
(40)А еще нужно уметь сравнивать формы: какие добавлены, а какие удалены.
42. acanta 04.06.19 15:52 Сейчас в теме
Для других языков свои версии формы истории данных?
44. ZhokhovM 725 04.06.19 16:53 Сейчас в теме
(42)Для языка RU в некоторых формах есть код или форма на русском.
51. ZhokhovM 725 10.10.19 16:41 Сейчас в теме
10.10.2019:
Что изменилось:
Добавлено сравнение ресурсов с другими каталогами.

Порядок действий:
Запустить 1С:Предприятие в режиме толстого клиента - открыть обработку преобразования стандартных форм - нажать на кнопку "Сравнить с другими каталогами (толстый-клиент)" - выбрать другую системную папку bin 1С и нажать "Выбор папки" - будут отображены отличия в специальном окне (см. скриншот в публикации).

Пример системной папки:
C:\Program Files (x86)\1cv8\хх.хх.хх.хх\bin\
52. frkbvfnjh 786 06.11.19 13:30 Сейчас в теме
(51) А есть форма предварительного просмотра табличного документа?
53. ZhokhovM 725 06.11.19 14:16 Сейчас в теме
(52)Не нашел форму, вроде нет.
54. frkbvfnjh 786 06.11.19 14:35 Сейчас в теме
55. ZhokhovM 725 06.11.19 14:39 Сейчас в теме
(54)используйте типовую форму "ОбщаяФорма.ПечатьДокументов".
60. kuzyara 1902 06.08.20 08:44 Сейчас в теме
(51) Почему толстый клиент?
61. ZhokhovM 725 06.08.20 11:44 Сейчас в теме
(60) Некоторые проверки под толстым клиентом не будут работать в тонком клиенте. Можете попробовать проверить в тонком и отличить от толстого.
62. пользователь 07.08.20 05:04
Сообщение было скрыто модератором.
...
63. ZhokhovM 725 07.08.20 10:24 Сейчас в теме
(60) Если клиент серверная база, то сохранять нужно в серверной папке. Если у клиента, то узнавать куда есть доступ с сервера.
57. пользователь 07.11.19 10:55
Сообщение было скрыто модератором.
...
58. ZhokhovM 725 07.11.19 22:21 Сейчас в теме
07.11.2019:
Что изменилось:
Добавлена возможность анализировать ресурсы всех файлов и преобразовать стандартные обычные формы без модуля(*.f).
59. TreeDogNight 22 31.01.20 15:16 Сейчас в теме
Можно ли таким образом выгрузить стандартную форму Обсуждений Системы взаимодействий?
68. AlexO 135 24.03.21 11:18 Сейчас в теме
Кто-то видел встроенную "ФормаПользователяБД"?
69. Obertone 74 08.10.21 07:39 Сейчас в теме
Кстати, а эта обработка получает встроенные в предприятие редакторы файлов HTML и географических схем?
70. ZhokhovM 725 08.10.21 11:20 Сейчас в теме
(69)получает ресурс geoschemedocument.lf, другого htmldocument.lf нет в списке ресурсов.
71. Obertone 74 14.12.21 09:48 Сейчас в теме
(70) Возможно ли в будущем получение "htmldocument.lf" в обработке?
72. ZhokhovM 725 14.12.21 17:54 Сейчас в теме
(71)Имя тестируемой формы HTML документа по коду
НайтиОкноПоЗаголовку("Новый1").ПолучитьПодчиненныеОбъекты()[0].ИмяФормы выявить не удалось.

В будущем возможно, нужно смотреть что есть в новых платформах 8.3.20, 8.3.21 и т.д.
73. TMV 14 28.01.22 13:09 Сейчас в теме
Интересно, есть ли возможность вытащить формы, вызываемые методами ПоказатьПредупреждение и ПоказатьВопрос?
74. ZhokhovM 725 28.01.22 17:33 Сейчас в теме
(73)только вызвать стандартную форму путем получения и открытия формы
Form = GetForm("sysForm:MessageBox",, ThisObject);
Form.Элементы.Message.Заголовок = "Предупреждение!";
Form.Элементы.Icon.Картинка = БиблиотекаКартинок.ДиалогВосклицание;
Form.РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс;
Form.Элементы.Button0.Видимость = Истина;
Form.Элементы.Button0.Заголовок = "ОК";
Form.Элементы.Button0.КнопкаПоУмолчанию = Истина;
Form.Open();
вытащить не нашел, т.к. нет имени ресурса MessageBox.lf или MsgBox.lf
Danil.Potapov; TMV; +2 Ответить
75. ZhokhovM 725 08.02.22 16:12 Сейчас в теме
(73)Да, теперь есть возможность вытащить.
76. ZhokhovM 725 08.02.22 16:16 Сейчас в теме
08.02.2022:
Что изменилось:
Добавлена возможность преобразовать стандартные формы (*.clf).
Danil.Potapov; SeiOkami; +2 Ответить
78. akademik 01.06.23 10:50 Сейчас в теме
(76) Добрый день!
Подскажи, как обратиться к форме Настройка панели разделов ?
79. SlavaKron 01.06.23 11:22 Сейчас в теме
(78)
ОткрытьФорму("sysForm:CMICustomization")
Но какой в этом толк, ведь платформа при использовании этой формы дополнительно подготавливает ее перед открытием.
Настройка разделов может быть программно изменена через объект НастройкиКомандногоИнтерфейса.
ZhokhovM; +1 Ответить
80. ZhokhovM 725 01.06.23 11:25 Сейчас в теме
(78)добрый! открываем обработку ванесса(vanessa automation) в базе с параметром запуска /TESTMANAGER, подключаемся к клиенту тестирования, открываем в главном меню клиента тестирования "Настройки" - "Настройка панели разделов..." - в обработке ванессы открываем закладку "Работа с UI" - "Форма" - "Исследователь формы" - нажать "Выбрать окно" - выбрать строку "Настройка панели разделов" и нажать "Ок" - разворачиваем первую строку - видим имя стандартной формы "CMICustomization" во второй строке. Пишем и запускаем код (с параметрами или без).
п_Форма = ПолучитьФорму("sysForm:CMICustomization",, ЭтотОбъект);
п_Форма.Открыть();

Если не хватает параметров, извлекаем / выгружаем форму CMICustomization (*.clf, *.lf, *.f) с помощью любых обработок:
1.Анализ ресурсов 1С (расширенный)
2.Преобразование стандартных управляемых форм
3.Распаковщик / запаковщик файлов (https://infostart.ru/public/1691321/) - распаковать нужный ресурс.
81. akademik 01.06.23 11:34 Сейчас в теме
(80)
CMICustomization

Как раз для ванессы пишу шаг открытия это формы, и вот через клиент тестирования не догадался посмотреть!
Спасибо большое!
82. ZhokhovM 725 01.06.23 11:39 Сейчас в теме
77. MarSeN 984 27.10.22 13:18 Сейчас в теме
Спасибо за обработку!
Единственное, не сохраняет в клиент серверном варианте в каталог (выгрузка выполняется в модуле объекта). Более детально не смотрел. Но в каталоге пусто. Просто вернул часть "исходного" кода
ZhokhovM; +1 Ответить
83. ixijixi 1777 04.08.23 14:49 Сейчас в теме
ZhokhovM, не натыкались на форму "Сравнение файлов"? По содержимому подходит CompareFilesDlg.f из frame_ru.res (платформа 8.3.23.1437), но открыть или скопировать ее не выходит.
Прикрепленные файлы:
84. ZhokhovM 725 04.08.23 18:33 Сейчас в теме
(83)она и есть CompareFilesDlg.f, форма обычная без исходного кода.
85. ixijixi 1777 04.08.23 20:37 Сейчас в теме
Как думаете, можно ее как-то использовать?

Понадобилось вызывать СравнениеФайлов, но в тонком клиенте объект не поддерживается
86. ZhokhovM 725 05.08.23 01:03 Сейчас в теме
(85) в тонком да же не видит формы ни sysform:CompareFilesDlg ни sysform:CompareFilesDlgForm. В Ванессе имя формы не известно. Думаю нет возможности.
87. ixijixi 1777 05.08.23 15:27 Сейчас в теме
88. Alexwarsis 10.08.23 12:27 Сейчас в теме
А есть мысли как для произвольной ссылки вызвать форму принудительного снятия пессимистической блокировки? для таких случаев как сотрудник когда кто-то заблокировал физлицо и ушел или ещё что-то произошло что у него не сеанс грохать а именно забрать блокировку физ лица
89. ZhokhovM 725 10.08.23 12:41 Сейчас в теме
Оставьте свое сообщение