Снегопат

Обсуждение Снегопата
Текущее время: 23 ноя 2024, 04:19

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Быстрый выбор типа XDTO
СообщениеДобавлено: 20 окт 2016, 00:15 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
Здравствуйте.
Последнее время часто и много приходится работать с XDTO-пакетами, в частности, с корявыми xsd-схемами. И постоянно случается такая ситуация:
1. загружаем в конфигуратор схему XSD.
2. Платформа создает новый пакет XDTO с именем ПакетXDTO1, в котором абы как перечислены свойства и типы.
И дальше нужно мышкой клацать на каждое свойство каждого типа и выбирать его тип, зачастую, один и тот же для нескольких полей. А список выбора крайне неудобный, особенно при наличии большого количества различных пространств имен.
И очень уж хочется иметь в этом месте такое же окно выбора, как при открытии окна отбора по подсистемам - чтобы со списком последних выбранных и быстрым поиском по вхождению строки.
Делать нечего, копирую скрипт ChoseSubSystem.js, исправляю названия классов, заголовок, и упираюсь вот здесь:
Код:
 var form = dlgInfo.form
         //Message("Сработал думодал");
         //debugger;
         // вот тут не понятно, как понять, какая форма открыта
            var treeSubSystem   = form.getControl('eMDTreeCtrl')
            var checkParents    = form.getControl('eParentCheck')
            var checkChilds     = form.getControl('eChildCheck')

Откуда взялись вот эти имена eMDTreeCtrl, eParentCheck, eChildCheck ? Как вы их узнали?
Если у кого то более опытного есть интерес к такому скрипту - напишите сами, буду очень благодарен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 20 окт 2016, 00:24 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
Посмотри https://snegopat.ru/main/wiki?name=%D0% ... %201%D0%A1
Только там ссылка на исправленный derb устарела, бери https://snegopat.ru/downloads/derb-5-7.zip и ICU скачивай 5.7
А может за основу взять type_finder от прошлого снегопата и портировать под реборн?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 20 окт 2016, 00:46 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
orefkov писал(а):
Посмотри https://snegopat.ru/main/wiki?name=%D0% ... %201%D0%A1
Только там ссылка на исправленный derb устарела, бери https://snegopat.ru/downloads/derb-5-7.zip и ICU скачивай 5.7
А может за основу взять type_finder от прошлого снегопата и портировать под реборн?

спасибо за ссылку, посмотрю.
я не понял о чем вы, но я только за)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 20 окт 2016, 01:24 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
А, что-то я затупил.
Можно просто в цикле перебрать все контролы на форме и для каждого вывести name. Вот так и берём.

А type_finder - это вот такой скрипт - https://snegopat.ru/video/type_finder
Подобное надо?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 20 окт 2016, 01:30 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
orefkov писал(а):
А, что-то я затупил.
Можно просто в цикле перебрать все контролы на форме и для каждого вывести name. Вот так и берём.

У меня очень плохо с яваскриптом, покажите пример кода, пожалуйста.
Как обойти циклом все контролы формы, пришедшей мне в dlgInfo ?

orefkov писал(а):
А type_finder - это вот такой скрипт - https://snegopat.ru/video/type_finder
Подобное надо?

Конечно надо, это везде надо, в любом месте, где происходит какой либо выбор из длинного списка, или я не прав?

_________________
Нет никакого рая, каждое сердце - темница


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 20 окт 2016, 22:03 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
Вроде получилось 8-)
Скрипт ведет себя так же, как быстрый выбор подсистемы (ибо по сути тем же самым скриптом и является, только "список подсистем" заменен на "список типов XDTO"), при начале выбора типа XDTO появляется форма, в которой есть поиск по строке, и, ради чего, собственно, и затевалось - вверху списка находятся последние выбранные значения (по умолчанию их 5, настраивается в макросе "Настройка").
Лично мне кучу времени сэкономит.


Вложения:
choiseXDTOType.zip [3.74 КБ]
Скачиваний: 596
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 21 окт 2016, 12:00 
Не в сети

Зарегистрирован: 24 авг 2011, 15:32
Сообщения: 722
Полезная вещь. Тоже мучаюсь каждый раз с этим.
В официальный репо бы включить


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 23 окт 2016, 01:21 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
JohnyDeath писал(а):
Полезная вещь. Тоже мучаюсь каждый раз с этим.
В официальный репо бы включить

Стыдно в официальный репо включать такую сырую поделку, там куски от оригинального скрипта еще внутри, которые не выдавали мне ошибок, поэтому я их и не трогал.. И вобще, объединить бы оригинальный скрипт быстрого выбора подсистемы с этим, сделать некий скрипт "Универсальный выбор чего угодно откуда угодно"... Но сам я не смогу, простите уж.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 23 окт 2016, 01:31 
Не в сети
Аватара пользователя

Зарегистрирован: 17 апр 2012, 20:54
Сообщения: 124
Откуда: Октябрьский
orefkov писал(а):
А type_finder - это вот такой скрипт - https://snegopat.ru/video/type_finder
Подобное надо?


Безусловно, надо, но
1. В относительно новых версиях платформы при выборе типа объекта уже есть поиск по вхождению строки, пусть и не такой удобный, как дает скрипт, и без запоминания последних вариантов выбора, но он там есть.
2. Касаемо конкретно данной ситуации и данной проблемы, которую скрипт решает - это же по сути не выбор типа объекта метаданных, это выбор типа ХДТО. По сути, просто оптимизация поиска в длинном дереве (даже не в списке, а в дереве). И, мне кажется, что type_finder эту проблему не решит.. ну или решит, если его так написать, что он будет понимать, где выбор типа объекта метаданных, а где выбор типа ХДТО. А какие еще бывают необычные списки выбора? Может, если уж делать, то сразу для всех?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Быстрый выбор типа XDTO
СообщениеДобавлено: 23 окт 2016, 15:09 
Не в сети
Администратор
Аватара пользователя

Зарегистрирован: 24 авг 2011, 15:04
Сообщения: 2052
Я в своё время начинал пробовать разработать "универсальный выбиратель", что угодно из чего угодно, но нашлись более приоритетные дела.
А так то да, было бы хорошо иметь такую вещь. Например, таблицы и поля в конструкторе запросов.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB