Снегопат https://snegopat.ru/forum/ |
|
Метод замены внутренних форм на свои https://snegopat.ru/forum/viewtopic.php?f=6&t=619 |
Страница 1 из 1 |
Автор: | Ndochp [ 11 июн 2014, 10:02 ] |
Заголовок сообщения: | Метод замены внутренних форм на свои |
Может конечно это всем тут известно, но я раньше не встречал. Оставлю здесь, потому что можно из этого сделать много хорошего, а у меня руки не дойдут. Сам не проверял, зарылся на этапе "ВнешниеОбработки.Подключить", а времени разбираться долго нету. Но нет основания не доверять. Далее копипаста с партнерки с купюрами. https://partners.v8.1c.ru/forum/topic/1252472 Платформа 8.3 → 8.3.5 - в режиме отладки открыл "Все функции" - Конфигуратор выдает "внутренние" ошибки. [...] Оказывается можно много интересно найти, если покопаться в файлах типа "mngbase_ru.res". Похоже многие системные формы, отображаемые в Предприятии - это обычные управляемые формы, код которых сохранен в платформе, а не конфигурации. [...] Прикольно.. всплыл интересный метод переопределения системных форм. Подключаем свою обработку с правильным идентификатором: ДД = Новый ДвоичныеДанные("C:\Users\Alex\Desktop\ВнешняяОбработка1.epf"); НовЭлемент = Справочники.Обработка.СоздатьЭлемент(); НовЭлемент.Хранилище = Новый ХранилищеЗначения(ДД); НовЭлемент.Записать(); ExternalDataProcessors.Connect(ПолучитьНавигационнуюСсылку(НовЭлемент.Ссылка, "Хранилище"), "StandardActiveUsers", false); и вуаля - место нормального списка активных пользователей получаем свою обработку . С точки зрения кастомизируемости приложения - это отличная возможность. Надеюсь, что она не будет закрыта. [...] Это даже в 8.2 работает)) ДвоичныеДанные = Новый ДвоичныеДанные("C:\ВнешняяОбработка1.epf"); Адрес = ПоместитьВоВременноеХранилище(ДвоичныеДанные); ВнешниеОбработки.Подключить(Адрес, "StandardActiveUsers", false); Считаю нужно разгласить все стандартные имена обработок. [...] Я нашел вот эти: QueryWizard.epf StandardActiveUsers.epf StandardDeleteMarkedObjects.epf StandardDocumentsPosting.epf StandardEventLog.epf StandardExternalDataSourcesManagement.epf StandardFindByRef.epf StandardFullTextSearchManagement.epf StandardTotalsManagement.epf [...] |
Автор: | artbear [ 11 июн 2014, 15:22 ] |
Заголовок сообщения: | Re: Метод замены внутренних форм на свои |
Спасибо за очень полезную инфу. Пригодится. |
Автор: | DrAku1a [ 16 июн 2014, 05:59 ] |
Заголовок сообщения: | Re: Метод замены внутренних форм на свои |
Платформа 8.2.19.83, пробую в режиме "Предприятие": Код: ОчиститьСообщения(); ДвоичныеДанные = Новый ДвоичныеДанные("D:\QueryWizard.epf"); УИД = новый УникальныйИдентификатор; Адрес = ПоместитьВоВременноеХранилище(ДвоичныеДанные, УИД); //Пробовал с УИД и без него Сообщить(Адрес); ВнешниеОбработки.Подключить(Адрес, "QueryWizard", false); на последней строке выдаёт ошибку: Цитата: Ошибка при вызове метода контекста (Подключить): Ошибка подключения внешних метаданных
по причине: Неправильный путь к файлу 'e1cib/tempstorage/b5c92284-a97a-4e77-b6ee-a33d77b0492b' |
Автор: | Ndochp [ 16 июн 2014, 10:44 ] |
Заголовок сообщения: | Re: Метод замены внутренних форм на свои |
А вообще нормально подключается, с "обычным" именем? У меня потому что тоже не взлетело в том же месте, но не взлетело совсем, то есть я не смог подобрать способа заставить сработать метод "подключить" вообще. Но я не долго пытался. Думаю, тестить замену надо только после успешного подключения внешней обработки. |
Автор: | vladnet [ 18 июн 2014, 16:33 ] |
Заголовок сообщения: | Re: Метод замены внутренних форм на свои |
А как вы раскапывали имена? Мне вот сейчас нужно заменить форму для "Вывести список..." |
Автор: | Ndochp [ 18 июн 2014, 17:42 ] |
Заголовок сообщения: | Re: Метод замены внутренних форм на свои |
Я никак, это копипаста с партнерки. Но вообще говоря, если включить просмотр *.res в текстовом виде, то в начале файла есть имена чего-то в явном виде. В том числе обработок. |
Автор: | vladnet [ 19 июн 2014, 10:13 ] |
Заголовок сообщения: | Re: Метод замены внутренних форм на свои |
Покопал res файлы. Больше в них ничего нет (( Возможно как то по другому остальные подключаются... |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |