FormEx. Быстрый поиск в поле ввода 2.1

05.03.12

Задачи пользователя - Поиск данных

Универсальный инструмент пользователя, требует FormEx  v2.0.5.0 - http://dorex.pro/?projects&formex&download
Реализация механизма быстрого поиска элемента по первым символам непосредственно в поле ввода.
Ограничения: Не работает для полей ввода многострочной части.

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

Наименование Файл Версия Размер
DemoFindField211
.1190813878 47,67Kb
763
.1190813878 47,67Kb 763 Скачать бесплатно

Внедрение: всунуть обработку "БыстрыйПоиск" в конфигурацию; при начале работы системы написать
ОткрытьФорму("Обработка.БыстрыйПоиск") - при таком запуске обработка проинициализирует необходимый ей дополнительный глобальный модуль.

 

26.09.2007 2.0 Поддержка полей большинства агрегатных типов, кроме типов "Счет" и "Документ".
01.10.2007 2.1 Исправлен принцип старта поиска, вследствие чего исчезли падения системы.
Доработана поддержка групп справочника.
09.10.2007 2.1.1 Исправлена ошибка в определении типа НомерДок и ДатаДок

См. также

HTTP сервер 1С 7.7 + HTTP асинхронный клиент: внешние компоненты для 1С 7.7

Разработка внешних компонент WEB-интеграция Платформа 1С v7.7 Конфигурации 1cv7 Платные (руб)

Компонента HttpSrv7 позволяет создавать веб-сервисы в среде 1С 7.7 и даже, используя файлы HTML, несложные веб-сайты. С помощью нее можно обеспечить доступ к данным 1С 7.7 из браузера. Дополнительно используя компоненту HTTP_Async или синхронный клиент HTTP для 1С 7.7 (публикация № 1152364) можно наладить обмен данными между удаленными информационными базами. С помощью компоненты HTTP_Async можно параллельно посылать много запросов к сайтам, веб-сервисам (в т.ч. к HttpSrv7), а затем обрабатывать данные по мере их поступления.

2000 руб.

27.05.2022    7811    20    13    

31

Компонента ExchangeStruc (Структура Обмена). Прямой обмен данными между потоками, сессиями и окнами.

Разработка внешних компонент Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 Платформа 1С v8.1 Россия Платные (руб)

Аддон "Структура Обмена" (ExchangeStruc) - это компонента, которая обеспечивает доступ к разделяемым процессом структурам, аналогичным структурам 1С. Обеспечивает прозрачную передачу данных примитивных типов, в том числе Двоичных данных, в режиме Реального времени между разными контекстами (формами) или потоками одного процесса. В перспективе функционал будет расширен для обмена между процессами, даже разных версий платформ. Совместим с версиями Windows рабочих станций и серверов, с платформами 1С разных версий и релизов в режиме Native начиная с 8.2, и в режиме COM начиная с версий 7.7. По скорости чтения и записи лишь немногим уступает стандартной структуре 1С. НОВОЕ: Добавлен функционал регистрации компоненты COM в качестве OLE Auto (COMОбъект) для поддержки её работы в серверах старых версий 1С: 8.0 и 8.1, где работа с компонентами исключена. Теперь можно коммуникацию с Фоновыми заданиями на этих версиях проводить.

7200 руб.

19.04.2023    4799    1    0    

3

Выбор из большого списка (для 1С 7.7)

Разработка внешних компонент Платформа 1С v7.7 Платные (руб)

Компонента для выбора значения из больших списков значений.

1200 руб.

02.12.2021    5776    2    19    

4

Клиент HTTP(S): внешняя компонента для 1С 7.7

Разработка внешних компонент WEB-интеграция Платформа 1С v7.7 Абонемент ($m)

Компонента позволяет использовать различные веб-сервисы интернет-ресурсов, например работать с онлайн-кассой через API, предоставленное ее разработчиком. Тестировалась на платформе 1С релиза 7.70.027.

1 стартмани

14.11.2019    18138    88    mdbruyfn    82    

15

Компонента для 1С, принимающая вес с железнодорожных, автомобильных, крановых весов

Разработка внешних компонент Платформа 1С v7.7 Платформа 1С v8.3 Транспорт, автопарки, такси Россия Платные (руб)

Программа "Компонента приёма веса для 1С, версия 3.0" позволяет принимать и заносить вес с весов непосредственно в программу "1С" - то есть, прием веса осуществляется целиком и полностью из программы "1С".

26400 руб.

09.04.2019    16062    2    8    

5

Формирование строки json в 1С: 7.7

Универсальные функции Платформа 1С v7.7 Конфигурации 1cv7 1С:Комплексная 7.7 Абонемент ($m)

Предлагается набор функций 1с 7.7 для формирования строки json стандартными средствами.

1 стартмани

10.12.2018    10094    malovandrey    2    

18

Оболочка для работы с последними драйверами ККМ АТОЛ для 1С 7.7, 8.1

Разработка внешних компонент ККМ Кассовые операции Оперативный учет 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Внешняя компонента - оболочка для работы в среде 1С 7.7 или 1С 8.1 с последними версиями драйверов ККМ от АТОЛ. Поддерживаются драйвера x32 начиная с версии 9.11. Присутствует внешняя обработка для полноценной работы с данными драйверами (поддержка ревизий 2.0, 2.1, 2.2, поддержка протокола ОФД 1.0, 1.0.5, 1.1).

1 стартмани

09.08.2017    53674    348    asdfghgghjdhg    141    

18
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. chirinna 27.09.07 10:09 Сейчас в теме
У меня получилось запустить только с одноуровневым справочником :-( Но идея классная! +1
2. artbear 1448 27.09.07 11:25 Сейчас в теме
Идея, конечно, не нова, но, в принципе, очень хорошо получилось, с некоторыми ограничениями :)
Ограничения/недостатки:
1) если в обрабатываемой форме или основном глобальнике есть обработчики событий ФормЕк, используемые в доп. глобальнике обработки, например, ПриНажатииКнопкиКлавиатуры, то механизм не будет работать :(
2) При поиске не видно, какие еще элементы с подобными наименованиями есть в справочнике :(

3) поиск по первым символам не всегда удобен. Намного удобнее, по опыту, поиск по подстрокам!
Простой пример - если нужно найти товар "электровыключатель", а он может быть заведен как "выключатель электрический" или ""электровыключатель" или в начале могут быть пробелы (менеджеры могут вводить как угодно, мы это все знаем). Удобно искать по строке "выключатель" или "выключ".
И существуют уже готовые реализации такой схемы.

Например, в своей демо-конфигурации "Репозитарий полезных классов 1С++/ФормЕкс"
http://www.1cpp.ru/forum/YaBB.pl?num=1169222935/156#156

Народ, реализована еще одна уникальная возможность

На базе набора классов "Поля выбора значения аля v8" от Алексея Диркса реализован универсальный механизм по созданию подобных полей выбора на любой форме без изменения кода самой формы.

Т.е. при открытии формы спец.класс анализирует атрибуты типа 1CEDIT. Если у данного атрибута значение имеет тип Справочник, то для данного поля появляется возможность обалденно быстрого выбора значений без открытия формы самого справочника.

Обратите внимание - поиск возможен по любым подстрокам, а не только по первым символам, как в примере или версии 1Cv8 :) !!


Для ДБФ баз работает только в разделенном режиме, для скуля в любом.

Использованы Перехватчик 1С++ 2.5 (нужно скачать новую сборку!!) и новый метод ФормЕкс ДобавитьАтрибут (также нужна последняя версия)

Выкладываю скриншот
Обратите внимание, что на самом деле модуль формы-примера пуст!!
И механизм не зависит от кода модулей форм и наличия в них соответствующих обработчиков событий ФормЕкс.
Вот скриншот http://www.1cpp.ru/forumfiles/Attachments/SelectInEditFieldAkaV8.jpg

ЗЫ в этой конфигурации еще много отличных универсальных механизмов, добавленных мной. Для ввода всего множества этих универсальных механизмов нужно всего лишь прописать пару строк в глобальнике конфигурации и все :)
Почитай указанную ветку.
7. item 221 27.09.07 15:03 Сейчас в теме
(2) Artbear, будешь смеяться, но я до сих пор не юзаю 1с++.
Да, идея моя не нова, идея моя стара :), и над первой версией ты так не издевался.
3. CheBurator 3119 27.09.07 12:32 Сейчас в теме
> Для ДБФ баз работает только в разделенном режиме, для скуля в любом.
сам алгоритм проверяет в каком режиме база ДБФ и запускает "стандартный" вариант, если не удалось "продвинутый"...?
4. artbear 1448 27.09.07 12:47 Сейчас в теме
Нет, там используется схема быстрого поиска наименований в справочнике с помощью прямых запросов 1С++, которая для ДБФ работает только в разделенном режиме - ограничение ДБФ варианта 1С :(

Хотя в принципе можно сделать и для монопольного режима упрощенную схему, без быстрого поиска - типа поиск производим после набора несколько букв, например, после 3 символов уже можно выполнять поиск.

Но эта вариант будет годиться или для небольших однопользовательских баз или для разработчиков :)
Все равно большая/подавляющая часть пользователей работает в сетевой версии :)
6. CheBurator 3119 27.09.07 13:48 Сейчас в теме
(4) это понятно.
ты не понял.
установил эту допвозможность.
пофиг где ее использую: должна сама разбираться - если это скуль и есть возможность задействовать "красоту" (т.е вдобавок к скулю есть Формекс и 1С++) - задействуем ее. Чего либо не хватает - работает по штатной схеме 1Сины.
есть такое?
10. artbear 1448 27.09.07 17:31 Сейчас в теме
(6) Ага, теперь понял.
Если ДБФ и работа в монопольном режиме, механизм просто ничего не делает :) и используется штатный механизм работы 1С, т.е. выбор через спец. кнопку и ручной поиск.
5. chirinna 27.09.07 13:39 Сейчас в теме
Потестировал еще - ошибку по поводу иерархического справочника исправил. А в полях табличной части документов подбор и не должен работать? - было бы еще более интересно!
8. item 221 27.09.07 15:09 Сейчас в теме
(5) В полях табличной части существует одна трудность - определить, находится ли поле в режиме редактирования пользователем. Ищем...
9. artbear 1448 27.09.07 17:30 Сейчас в теме
(0) "Издеваюсь", надеюсь, в ироничном смысле сказано :)
Я же не ругаю обработку в целом :), а указываю ее отдельнее недостатки, которые могут помешать ее эксплутации, и показываю вариант, которые с моей точки зрения более функционален и удобен.
Основная цель - информирование народа о различных вариантах :)

А 1С++ просто нельзя не использовать, хотя бы с точки зрения повторного использования кода, т.е. классы и ООП.
Про все остальные навороты просто не говорю, слишком долго перечислять :)
11. item 221 28.09.07 11:24 Сейчас в теме
(9) Прасчаю :)
Насчет ограничений
> 1) если в обрабатываемой форме или основном глобальнике есть обработчики событий ФормЕк ...
Пробовал, не жалуюсь, хотя корявки в обработке событий есть, поскольку периодически система при поиске вылетает, не знаю почему.
> 2) при поиске не видно, какие еще элементы с подобными наименованиями есть в справочнике...
> 3) поиск по первым символам не всегда удобен. Намного удобнее, по опыту, поиск по подстрокам...
Согласен, все это минус, но как плюс я считаю как раз стандартный доступ к базе плюс простота внедрения,
которое может произвести и начинающий админ.
Вообще, "НайтиПоНаименованию" имеет и еще один существенный недостаток:
4) Косяки с группами в справочнике в случае, если справочник имеет свойство ГруппыВпереди = "1".
Вопрос с группами во многом неоднозначен, и я склоняюсь к тому, что-бы вообще
не использовать этот "быстрый поиск" к многоуровневым справочникам.
Более того, для "полноценного" внедрения механизма в конфигурацию, когда можно указать в метаданных признак "быстрого поиска" для отдельно взятого поля, использовал бы стандартное свойство "БыстрыйВыбор", для которого значение 1 является идеальным условием для работы моего алгоритма.
Но, к сожалению это вовсе сузит применение :(,
к тому по не понятным причинам FormEx не поддерживает атрибут БыстрыйВыбор в объекте АтрибутФормы.
12. artbear 1448 28.09.07 11:28 Сейчас в теме
(11) По поводу "БыстрыйВыбор" у тебя устаревшие сведения :)
Все нормально работает.
В показанном мной механизме как раз и используется сброс данного поля.
ЗЫ какая версия ФормЕкс у тебя?
13. item 221 28.09.07 11:32 Сейчас в теме
14. artbear 1448 28.09.07 11:34 Сейчас в теме
(12)+ Версия у тебя 2.5
Точнее, какой у тебя номер сборки?
15. item 221 28.09.07 11:45 Сейчас в теме
16. artbear 1448 28.09.07 11:47 Сейчас в теме
Используй 71.
Скоро Алексей еще одну выложит, я там еще кое-что по мелочи правил.
17. item 221 01.10.07 13:23 Сейчас в теме
2.1 Исправлен принцип старта поиска, вследствие чего исчезли падения системы.
Доработана поддержка групп справочника.
18. item 221 09.10.07 11:20 Сейчас в теме
Благодаря В.Кучмину обнаружена и исправлена ошибка в определении типа НомерДок и ДатаДок.
Как оказалось, формекс для этих полей выдает ТипЗначенияСтр() = ""
19. artbear 1448 09.10.07 16:29 Сейчас в теме
>> формекс для этих полей выдает ТипЗначенияСтр() = ""
Это как, расшифруй, плиз?
РасширениеФормы.ТипОбъекта/ПолныйТипОбъекта выдают "" ?
или еще что?
ЗЫ если в ФормЕкс ошибка, я или АльФ сможем ее поправить :)
20. item 221 10.10.07 12:57 Сейчас в теме
(19) Для полей ввода НомерДок и ДатаДок метод
объекта АтрибутФормы.ТипЗначенияСтр() выдает пустую строку.
21. artbear 1448 18.10.07 19:18 Сейчас в теме
(20) Я этот баг исправил + еще несколько
Вышла новая версия ФормЕкс 2.0.5.77
Подробнее http://www.1cpp.ru/forum/YaBB.pl?num=1191404333/2#2
22. Aleksey.Bochkov 3660 19.10.07 08:21 Сейчас в теме
Вставил обработку в типовую ТиС..
При подборе контрагента договор устанавливается срабатывает только после 2-х нажатий Enter после окончания поиска.
Т.е. процедуры определенные для элемента диалога не отрабатывают после быстрого поиска...
Нельзя ли как-то это поправить?
23. Aleksey.Bochkov 3660 19.10.07 08:27 Сейчас в теме
На первый взгляд помогло изменение
Процедура ПослеЗакрытия()
Если Форма.Параметр = 1 Тогда
Сервис = СоздатьОбъект("Сервис");
Сервис.ЭмулироватьКлавиатуру("{F4}");
Иначе
Сервис = СоздатьОбъект("Сервис");
Сервис.ЭмулироватьКлавиатуру("{Enter}");
КонецЕсли;
КонецПроцедуры //ПослеЗакрытияФормы
24. Aleksey.Bochkov 3660 19.10.07 08:29 Сейчас в теме
Похоже фигурные скобки сайт не переваривает...
Процедура ПослеЗакрытия()
Если Форма.Параметр = 1 Тогда
Сервис = СоздатьОбъект("Сервис");
Сервис.ЭмулироватьКлавиатуру("(F4)");
Иначе
Сервис = СоздатьОбъект("Сервис");
Сервис.ЭмулироватьКлавиатуру("(Enter)");
КонецЕсли;
КонецПроцедуры //ПослеЗакрытияФормы
26. item 221 22.10.07 17:39 Сейчас в теме
(24) Принял.
По правде, я уже это подправил, не выкладываю потому-что ковыряюсь еще с атрибутами многострочной части.
25. artbear 1448 19.10.07 18:34 Сейчас в теме
Оставьте свое сообщение