Форум Кладовочки АЛьФ`а

Обсуждение проектов => FormEx => Тема начата: АЛьФ от 21 февраля 2024, 15:38

Название: Хотелки в работе
Отправлено: АЛьФ от 21 февраля 2024, 15:38
В эту тему буду перетягивать разные хотелки, которые обещал посмотреть/реализовать.
Так будет и мне проще запоминать, и вам следить что сейчас в работе.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 21 февраля 2024, 15:48
Цитата: Злоп от 20 февраля 2024, 21:34Ещё иногда хочется ПРОСТЫМ методом положить кнопку (типа как стандартная кнопка с действием на форме) на тулбар формы (по крайней мере для внешних обработок) - это тулбар где кнопки сохранить/восстановить значенмн

Вот это самому хотелось, но только если в отдаленной перспективе либо если будет особое вдохновение.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 12 марта 2024, 14:52
Цитата: trad от 12 марта 2024, 10:05
Цитата: Djelf от 11 марта 2024, 15:19Видимо это стоит постить в хотелки FormEx: Событие: ТаблицаЗначенийПриПоиске
по логике, должно быть нечто похожее на ПриАктивизацииСтроки
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 18 марта 2024, 09:28
Цитата: sau от 17 марта 2024, 21:40Вопрос не в исправлении, а в добавлении новой (другой) функции ДлинаОчередиПечати
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 18 марта 2024, 09:28
Цитата: sau от 17 марта 2024, 21:44
Цитата: АЛьФ от 17 марта 2024, 20:49
Цитата: sau от 17 марта 2024, 18:35
Цитата: АЛьФ от 17 марта 2024, 09:38
Цитата: sau от 17 марта 2024, 00:59Можно ли получить событие изменения ширины колонки МногострочнойЧасти (ТаблицыЗначений)? Для реализации возможности сохранения пользовательских настроек.

Для этого не обязательно отслеживать именно изменение ширины, достаточно во время сохранения прочитать ширину.
Или я чего-то не понял.
Ширина колонок "сбивается" (возвращается в первоначальное состояние) даже при простом переключении фокуса между формами. Зачем сохранять настройки, если они не менялись? Возможно (как вторичный эффект) сгенерируется событие, когда "сбивается" (возможно восстановить).

А если просто отключить автоширину колонок?
Отключена обязательно.
Т.е. если изменить ширину колонки (мышью), а затем переключиться на любое другое другое окно (дочернее в 1С) и вернуться обратно, то восстанавливается ширина заданная в конфигураторе.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 18 марта 2024, 09:29
Цитата: sau от 17 марта 2024, 01:25Можно ли отследить нажатие мышью на заголовке колонки в МногосточнойЧасти (ТаблицеЗначений)?
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 22 марта 2024, 10:09
Цитата: АЛьФ от 22 марта 2024, 10:08
Цитата: Титович Эдуард от 22 марта 2024, 09:36
Цитата: АЛьФ от 22 марта 2024, 09:07Вот меня подводит память или в 7.7 в зарплатной части как раз был календарь на форме?
Совершенно верно, был и есть. )
Фукционал объекта ограничен одним ресурсом "часы", поэтому и использовать его вне "офисной" зарплаты в общем бессмысленно.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 28 марта 2024, 22:17
Цитата: item от 28 марта 2024, 22:10Теперь, когда АктивныйКонтекст распознает объект Текст, применение оного может несколько расшириться.
Вот, имеем в справочнике строку неограниченной длины, по факту текст,
а редактировать его на форме практически невозможно из-за отсутствия табуляции.
А тексты могут быть не маленькими, например шаблоны приказов или писем в делопроизводстве.
Теперь есть возможность вынести это текст для редактирования в собственное окно, благо заголовок позволяет зафиксировать информацию об элементе-хозяине, но вот как сохранить его обратно в реквизит справочника, вопрос.
Напрашивается аналогия с ПриЗаписиТаблицы, событие ПриЗаписиТекста, или точнее, ПередЗаписьюТеста, чтобы не открывать диалог сохранения файла.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 07 апреля 2024, 10:38
Цитата: item от 01 апреля 2024, 20:37Есть одно фундаментальное препятствие для использования перехвата клавиатуры и мыши в полях многострочной части - невозможно определить, находится ли многострочная часть в режиме редактирования, или нет.
Аналога Форма.АктивныйЭлемент() в формексе нету, а он жизненно необходим, причем чтобы работал этот метод для МногострочнойЧасти так: в случае, если она находится в режиме редактирования, возвращал атрибут ТекущаяКолонка, а если нет - собственно МногострочнаяЧасть.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 10 апреля 2024, 09:02
Цитата: item от 09 апреля 2024, 16:04Можно, если не указан Дескриптор контрола, не выбивать ошибку на ПоказатьКалендарь(), а просто открыть системный календарик, сам по себе?
А если указан неверный Деспритор, то можно и поругаться.
Знаю, что можно решить это другой командой, но если это не трудно, для полноты метода и красоты ради.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 10 апреля 2024, 09:16
Цитата: alyuev от 09 апреля 2024, 17:44Добавить макрос IMAGE в выпадающий список.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 17 апреля 2024, 22:21
Цитата: Злоп от 17 апреля 2024, 19:56Сейчас метод возвращает штатный объект "Текст"
Сервис = СоздатьОбъект("Сервис");
СписокВсехФорм = Сервис.СписокВсехФорм();
СписокВсехФорм.Показать("СписокВсехФорм");

Но для штатного объекта "Текст" отсутствует методы работать с "Текст" как с одной многострочной строкой, например, чтобы штатно найти какую-нибудь подстроку придется сначала Текст загнать в ТЗ/СЗ/Строку...
Хочется расширить возможности метода, типа
Сервис.СписокВсехФорм(Режим), где Режим:
0/"Текст" - (по умолчанию), возврат объекта "Текст"
1/"Строка" - возврат в виде многострочной строки
2/"ТЗ" - возврат одноколоночной ТЗ
3/"СЗ" - возврат СЗ

м.б. для "ТЗ" второй параметр, указывающий вариант - одноколоночная ТЗ или многоколоночная ТЗ (колонки соответствуют разделению по точкам в наименовании форм, тогда удобно будет фильтровать/группировать ТЗ

Родственная ветка https://forum.dorex.pro/index.php?topic=107.0
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 23 апреля 2024, 14:47
(http://www.dorex.pro/images/ok.jpg)

Цитата: alyuev от 23 апреля 2024, 14:18Делаю так:

Рез=Сервис.ЗагрузитьВнешнююОбработку("d:\Restored\CopyAC\ExtForms2\Обработки\ТСД800.ert","Обработка.ТСД800");
Сервис.СписокВсехФорм().Показать();

В списке форм не вижу новую.

Это можно поправить?
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 24 апреля 2024, 15:40
(http://www.dorex.pro/images/ok.jpg)

Цитата: Arbuz от 24 апреля 2024, 15:38реализовать получение Расшифровки методом ОкноСообщений.ПолучитьСтроку()?
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 25 апреля 2024, 11:35
Цитата: Пиит от 25 апреля 2024, 11:31РасширениеФормы.УстановленСписокЭлементов и ПолучитьСписокЭлементов

Есть такой замечательный метод в форме списка справочника - ИспользоватьСписокЭлементов(<СписокЗначений>).
Когда-то в методической конфигурации из ИТС был даже цельный пример на нём постоен, по отбору остатков в форме списка.
И всё бы хорошо, но для универсальных инструментов, например для отбора в незнакомой форме справочнике по каким-то условиям, нет в коде после выполнения метода ни флагов, ни самого списка, чтобы понять, установлен ли уже такой режим в форме, или нет. Например, для повторного отбора таким способом, необходимо учитывать, что один отбор уже перед этим произведён.
Должен же где-то храниться в форме этот установленный список.  Что скажете?
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 20 мая 2024, 12:30
Цитата: sau от 18 мая 2024, 23:06Или ПоложениеКолонкиТаблицы сделать функцией с возвращаемым значение
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 04 октября 2024, 16:51
Цитата: Arbuz от 03 октября 2024, 15:06Объект Таймер в отличие от Сервис.ОбработкаОжидания не принимает обработчик с (всеми) необязательными параметрами.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 09 декабря 2024, 16:41
Цитата: Харлампий Дымба от 09 декабря 2024, 14:31С одним нюансом при работе с формами, в которых ещё нет ни одной строки - раскраска по умолчанию красит и первую пустую строку, а выборочная только существующую.
Название: Re: Хотелки в работе
Отправлено: АЛьФ от 21 января 2025, 11:04
Цитата: АЛьФ от 21 января 2025, 09:08
Цитата: Злоп от 20 января 2025, 13:20@АЛьФ
А как разные внешние обработки загружать под одним и тем же именем? (например затягивать обработки в цикле)..?
По идее должно в один объект нормально грузить разные обработки. Попробую потестировать этот момент дополнительно.

И по поводу чтения описания решил доработать методы ПолучитьМодульОбъекта, ПолучитьФормуОбъекта и ПолучитьОписаниеОбъекта чтобы можно было туда передавать полное имя файла внешней обработки. Будет дублирование некоторых методов, но и пусть.