ExtEventsFrm: API для реализации быстрого (по первым символам) поиска в списках 1С 8.2 УФ и предоставления контроля над текущей формой (без модификации конфигурации)

Публикация № 182442

Разработка - Разработка внешних компонент

Если Вам нужен быстрый поиск в списках 1С 8.2 УФ как в 8.1 или 7.7, или вы хотите расширить стандартный функционал форм объкетов без модификации конфигурации, воспользуйтесь системой "ExtEventsFrm"

Стартовал новый проект Universal Extensions (UE), который содержит весь текущий функционал, лишен глюков и не требует платы за использование. 


ExtEventsFrm: это уникальный комплекс, включающий в себя API для реалиации быстрого поиска и позиционирования по первым символам в динамических списках и доступ к текущей активной форме 1С Предприятия постредством пользовательского меню.

NB: ExtEventsFrm находится в стадии тестирования и отлавливания глюков. Поэтому НЕ РЕКОМЕНДУЕТСЯ пользоваться обработкой да рабочих базах данных, либо на базах, представляющих какую либо ценность. Автор не несет ответственности за последствия использования betta версии ExtEventsFrm.

Разработка осуществляется на основе и по технологи обработки, описаной в статье "v8.2 Управляемые формы: добавляем произвольное пользовательское меню в основное меню 1С без модификации конфигурации." и является ее логическим продолжением. 

Почему разработка называется "ExtEventsFrm"?

ExtEventsFrm "генерирует" дополнительные события форм 1С 8.2 и предоставляет возможность их обрабатывать на встроенном языке 1С. В дополнении к этому, ExtEventsFrm предоставляет интерфейс для реализации быстрого поиска в динамичесих списках 1С 8.2.

На данный момент ExtEventsFrm находится в стадии бетта тестирования. Вашему вниманию предлагается триальный вариант ExtEventsFrm.

Для того чтобы, по возможности, сократить потраченное Вами время на ознакомление со статьей, предлагаю посмотреть видео-демонстрацию возможностей системы ExtEventsFrm.

Демонстрация быстрого поиска. 

 

Демонстрация работы расширений

 

 

Если Вам понравилось то что Вы увидели, тогда идем дальше.

Техническая информация.

Система ExtEventsFrm - это внешня обработка, которая при желании м/б запущена в качестве парамерта из командной строки запуска 1С Предприятия. Для этого нужно использовать ключ "/Execute" и следом ч/з пробел указать путь к обработке: /Execute "T:\ExtEventsFrm (trial).epf" 

Возможность встраивания ExtEventsFrm в конфигурацию для триальной версии не поддерживается, но будет возможна для коммерческой.


Обработка состоит из набора форм и макетов:

Состав обработкиФорма "ФормаМеню" - API, которая организует всю работу компоненты.

Форма "Инициализация" - основная форма обработки, в которая подготавливает ВК для работы и передает в API пользовательские настройки.

Форма "МодульПоискаПоПодстроке" - форма, экспортные процедуры которого передаются в качетсве обработчиков для поиска по первым символам.

Формы с префиксами "Расширение_" - формы расширений ExtEventsFrm. Добавлены в качестве демонстрационного примера.

Макет "UserMainMenu1C82" - файл ВК, генерирующей необходимые события и организующей работу окон.

Макет "Печать" - png-файл печати, используемой для примера.


 

Настройка быстрого поиска

На данный момент в качетве настроек быстрого поиска имеются 2 параметра, которые задаются в форме "Инициализация" обработки

////////////////////////////////////////////////////
// БЛОК ПОЛЬЗОВАТЕЛЬСКИХ НАСТРОЕК.

&НаКлиенте
Функция ПолучитьПользовательскиеНастройки()
   
Настройки                                   = Новый Структура;

   
//Задержка при поиске в списках
   
Настройки.Вставить("ЗадержкаПриПоискеПоПодстрокеВСекундах",     0.3);

   
// имена форм с обработчиками, в которых будет работать поиск по строке
   
Настройки.Вставить("НастройкиПодключеняБыстрогоПоиска", Новый Массив);

   
Настройки.НастройкиПодключеняБыстрогоПоиска.Добавить(
            Новый
Структура("ИмяФормы, Обработчик",
                           
"Обработка.ПодборТоваровВДокументПродажи.Форма.Форма",
                           
"СпозиционироватьсяВСписке"
                           
)
                                                        );
   
Настройки.НастройкиПодключеняБыстрогоПоиска.Добавить(
            Новый
Структура("ИмяФормы, Обработчик",
                           
"Справочник.Партнеры.Форма.ФормаСписка",
                           
"СпозиционироватьсяВСписке"
                           
)
                                                        );

    Возврат
Настройки;
КонецФункции

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

Параметры: ИмяФормы - полный путь к форме, как она задана в конфигураторе, Обработчик - имя экспортной процедуры-обработчика в форме "МодульПоискаПоПодстроке"

Процедура-обработчик должна иметь следующий формат:

&НаКлиенте
Процедура ПроизвольноеИмяПроцедуры(СтрокаПоиска, ЗаголовокТекущейФормы) Экспорт

в качестве владельца формы передается форма, в которой "сработало" событие поиска по подстроке.

ЗадержкаПриПоискеПоПодстрокеВСекундах - задержка в секундах, после которой ExtEventsFrm передаст управление процедуре, указаной в качестве обработчика для этой формы.


В ExtEventsFrm нельзя ничего менять в форме "ФормаМеню", так как любые изменения могут привести к некорректной работе ExtEventsFrm.  

"ФормаМеню" всегда "открыта" в системе, полностью ее мы не видим, а видим только определенные ее контролы в определенные моменты.  Она отображается в списке форм, но ее нельзя никак закрыть кроме 2-х способов: 1 - через пользовательское меню; 2 - при закрытии 1С форма и вся обработка закрывается автоматически.

Откуда появляются пользовательское меню и строка поиска

Модуль формы "ФормаМеню" обфусцирован при помощи замечательного сервиса https://netlenka1c.ru/Module.

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

///////////////////////////////////////////////////////////////////////////

// ExtEventsFrm betta (trial version) by MarSeN
//                  Marchenko Sergey (c) 2013
///////////////////////////////////////////////////////////////////////////
// Данный блок не рекомендуется изменять так как это
//  может привести к некорректной работе всего модуля.
//////////////////////////////////////////////////////
&наклиенте
перем o_p,oo_p,o_pp,o_p_p,a,a_,a__,a___,_a,__a,___a,_a_;
&наклиенте
процедура init(_a__)экспорт перем b;~0:b=0;if 0=1 then goto ~3;endif;goto ~8;if 0>=-1 then goto ~4;
endif;goto
~5;~1:;~2:a___=новый массив;goto ~9;~3:b=0;~4:;~5:;~6:a___=новый массив;goto ~9;~7:goto ~2;~8:
if -
2>=-2 then goto ~7;endif;goto ~1;~9:;~10:if -1=0 then goto ~26;endif;goto ~20;if 1>=0 then goto ~11;
endif;goto
~13;if 1>-1 then goto ~19;endif;goto ~17;~11:if 1<=0 then goto ~24;endif;goto ~18;~12:;~13:
if
b=0 then goto ~15;endif;goto ~25;~14:goto ~16;~15:;~16:_a=новый массив;goto ~27;~17:goto ~10;~18:;
~19:;~20:b=0;if b=1 then goto ~12;endif;goto ~21;~21:goto ~23;~22:;~23:_a=новый массив;goto ~27;~24:;~25:
;
~26:b=0;if -1<>0 then goto ~22;endif;goto ~14;~27:;~28:b=1;~29:b=1;if 0<=1 then goto ~33;endif;goto ~31;
~30:_a_=_a__.задержкаприпоискепоподстрокевсекундах;goto ~34;~31:;~32:_a_=_a__.предупреждение;goto ~34;
~33:goto ~30;~34:;~35:b=0;~36:b=1;goto ~37;~37:__a_=_a__.настройкиподключенябыстрогопоиска;goto ~39;~38:
...
...

Организация работы расширений.

Расширения , это дополнения к текущему функционалу, выполненные ввиде отдельных форм с экспортируемым списком команд для интеграции в пользовательское меню и функций для выполнения действий над текущими формами. При выполнении команды расширения, ExtEventsFrm предоставляет функции обработки команды активную/текущую форму в качестве владельца формы. В качестве параметров функция получает "ВходящиеДанные" (переменная хранится в контексте  ExtEventsFrm) и заголовок текущего окна. Функция может вернуть произвольное значение которое будет передано при следующем вызове любой другой команды в параметр "ВходящиеДанные". 

&НаКлиенте
Функция ПолучитьКоманды() Экспорт
   
СписокКоманд    = Новый Массив;

   
СписокКоманд.Добавить(Новый Структура("ИмяКоманды,
                                            |Заголовок,
                                            |Действие"
,
                                           
"СкопироватьВБуферОбмена",
                                           
"Копировать в буфер",
                                           
"СкопироватьВБуферОбмена"
                                         
)
                         );

   
СписокКоманд.Добавить(Новый Структура("ИмяКоманды,
                                            |Заголовок,
                                            |Действие"
,
                                           
"ВставитьИзБуфераОбмена",
                                           
"Вставить из буфера обмена",
                                           
"ВставитьИзБуфераОбмена"
                                         
)
                         );

    Возврат
СписокКоманд;
КонецФункции

 

&НаКлиенте
Функция СкопироватьВБуферОбмена(ВходящиеДанные, ЗаголовокТекущейФормы) Экспорт

   
Состояние("Данные скопированы в буфер",,ЗаголовокТекущейФормы);
    Возврат
ВладелецФормы;
КонецФункции

&НаКлиенте
Функция ВставитьИзБуфераОбмена(ВходящиеДанные, ЗаголовокТекущейФормы) Экспорт
   
Состояние("Данные вставлены из буфера",,ЗаголовокТекущейФормы);
   
Приемник    = ВладелецФормы;

    ......

   
Приемник.Модифицированность = Истина;
   
Приемник.Активизировать();

    Возврат Неопределено;
КонецФункции

NB: модули "расширений" включены в обработку в качестве простых примеров для демонстрации возможности работы с текущим окном и не могут претендавать на законченность решения. Это АБСОЛЮТНО банальные примеры которые можно использовать только в качестве "пищи для размышления" но никак не в практической работе. Для этого их нужно довести до ума. 

 

В заключении хочу поблагодарить:

Abadonna - за техническую информацию по программированию.

v77 - за шаблон Native ВК для Delphi

alexk-is - за разукрашку кода

Нетленка1С.ru - за качественный онлайн обфускатор кода 1С

 

Чуть не забыл! ExtEventsFrm находится в стадии бетта тестирования. Это обозначает что в ней должны быть глюки. Возможны падения 1С по красной ошибке. Но, как я понимаю, это равносильно выключению света. Ограничение триальной версии - это рекламма ввиде текста, которую вы можете видеть на видео выше и ограниченное количество итераций использования системы. Это оброзначает, что после того как лимит будет исчерпан - ExtEventsFrm автоматически закроет обработку. При этом Вы можете запусить ExtEventsFrm заново. 

Вроде все. Не забываем плюсовать, если понравилось.

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

Наименование Файл Версия Размер
ExtEventsFrm betta trial

.epf 318,56Kb
12.04.13
22
.epf 318,56Kb 22 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. andrewks 1283 12.04.13 12:36 Сейчас в теме
Скачать "ExtEventsFrm betta trial"

Размер: 0 kb

это точно так задумано?
2. MarSeN 975 12.04.13 12:47 Сейчас в теме
3. MarSeN 975 12.04.13 13:49 Сейчас в теме
(1) andrewks,
Я перезалил файл и выложил его в посте №2
Спасибо что написали об его отсутствии... не знаю в чем причина была - вроде заливал )
andrewks; +1 Ответить
4. andrewks 1283 12.04.13 13:57 Сейчас в теме
5. MarSeN 975 12.04.13 14:01 Сейчас в теме
(4) andrewks,
Надеюсь на конструктивную критику )
8. andrewks 1283 12.04.13 14:19 Сейчас в теме
(5) идея красивая, но посмотреть смогу только в выходные, сегодня некогда.

кстати, не совсем уяснил один момент - это ознакомительный релиз будущего коммерческого продукта, или это пре-релиз будущего фриварного продукта? :)
11. MarSeN 975 12.04.13 14:26 Сейчас в теме
(8) andrewks,
Да, это будующий комм продукт, но цена за него относителльно недорогая будет.

Я вот думаю как только проект встанет на коммерческие рельсы, то если разработчик разработает бесплатное расширение под это дело, и это расширение повлечет за собой продажу ExtEventsFrm, то отстеговать бонус разработчику с продажи
13. tango 486 12.04.13 14:30 Сейчас в теме
(11) просто продавать вместе.
однако - сколько раз триал даст ответ перед сворачиванием коврика?
**
упс - еще и реклама? не айс
14. MarSeN 975 12.04.13 14:35 Сейчас в теме
(13) tango,
Там 100 итераций - очень много чтоб понять на что способен продукт.
а "реклама" - этогромко сказано. Над закладками появляется "ExtEventsFrm trial... "+ копирайт и обратный счетсик итераций. Все это хорошо видно в видео.
Никакой "рекламы" о продаже тапочек или кафе за углом нет )))
6. tango 486 12.04.13 14:09 Сейчас в теме
Возможность встраивания ExtEventsFrm в конфигурацию для триальной версии не поддерживается

это все ограничения?
7. MarSeN 975 12.04.13 14:13 Сейчас в теме
(6) tango,
+
...ограниченное количество итераций использования системы. Это оброзначает, что после того как лимит будет исчерпан - ExtEventsFrm автоматически закроет обработку. При этом Вы можете запусить ExtEventsFrm заново.


а так весь текущий функционал представлен в полном объеме.
"Полный функционал" - это то что предоставляет система. Расширений это не касается. Их можно стряпать сколько угодно )
9. tango 486 12.04.13 14:21 Сейчас в теме
(7) и сколько раз за один раз ее можно попросить?
12. MarSeN 975 12.04.13 14:29 Сейчас в теме
(9) tango,
"попросить"? не совсем понял про что, поэтому отвечу как понял)
вы можете переоткрывать обработку неограниченное количество раз как сами, закрывая ее, так и после того как система закроет ее после окончания лимита. т.е. фактически безлимит.
Единственное что ограничивает боевое использование это "реклама" и возможные падения 1С )
10. tango 486 12.04.13 14:21 Сейчас в теме
15. andrewks 1283 13.04.13 14:07 Сейчас в теме
итерации утекают, как вода сквозь пальцы, хотя ещё не воспользовался ни одной функцией. просто хожу по закладкам.

даже просто перемещение от одного элемента к другому в дин.списке забирает одну итерацию
16. andrewks 1283 13.04.13 14:11 Сейчас в теме
у меня так и не получилось включить быстрый поиск в подборе.
1С:Предприятие 8.2 (8.2.17.169)
Управление торговлей, редакция 11.0 (11.0.9.5)
ОС win xp sp3
18. MarSeN 975 13.04.13 16:10 Сейчас в теме
(16) andrewks
На каком подботе пробуешь, быстрый поиск сейчас работает на подборе оторый используется при продажах. На видео есть его демонстрация. На закупках не подключен. Чтоб подключить нужно в форме иницмализация добавит 1 строку.
19. andrewks 1283 13.04.13 20:09 Сейчас в теме
(18) на продажах и пробую.
видео смотрел, там, типа, нажмите тут левой кнопкой мыши, и курсор нужный появляется.
ну, так у меня ничего не происходит - ни курсора, ни окошка поиска не появляется
20. MarSeN 975 13.04.13 20:49 Сейчас в теме
(19) andrewks
Странно
Шелкаешь мышкой на список и начинаешь набирать и не появляется поле ввода?
21. andrewks 1283 13.04.13 22:52 Сейчас в теме
(20) разобрался, теперь появляется.
эффект следующий: при загруженной компоненте, а особенно после использования подбора, происходят падения 1с, причём в самых разных местах.
надо чистить код
22. MarSeN 975 14.04.13 13:50 Сейчас в теме
(21) andrewks,
Я паденья наблюдал при отктытии отдельных окон . Стабильное, если нажать ESC. Работаю над исправлением. Меня на самом деле волнует именно идея. Стоит ли продолжать работу над пректом. Что-то ни отзывов, ни оценок. С выложенной компонентой в комментах даже теперь и скачивания не видно.
Как бы труды не оказались никому не нужными.
Не пойму, не ужели никому не нужна универсальность продукта? Или всех пугает его коммерциализация?
На инфостарте много тем поднято о том как сделать доработки с минимальным изменением конфы. Эта система дает возможность вообще не трогать формы а наворачивать функционал поверх стандартного, плюс быстрый поиск..... а в ответ тишина....
andrewks, как ты считаешь, есть персективы у данной разработки (понятное дело если она будет без глюков) ?
23. andrewks 1283 14.04.13 16:44 Сейчас в теме
(22)
Я паденья наблюдал при открытии отдельных окон. Стабильное, если нажать ESC


у меня наблюдалось: при закрытии формы подбора, при закрытии документа, и даже при закрытии Предприятия (нажал на крестик, на секунду появилось окошко подтверждения выхода, затем сразу всё закрылось)

сами падения тоже разные - то просто всё свернётся, то дамп начинает крутить.


есть перспективы у данной разработки (понятное дело если она будет без глюков) ?

могу однозначно сказать, что у бесплатной разработки с таким функционалом перспективы офигительные, а вот у коммерческой - сложно сказать. зависит от цены, возможностей, и готовности пользователей платить за это

попробовать-то можно в любом случае, раз уже проделана большая работа. на крайняк, если не выгорит, можно будет потом с пафосом сделать разработку бесплатной :)
32. MarSeN 975 27.05.13 09:35 Сейчас в теме
(23) andrewks,
(13) tango,
(30) soba,
Выделил отдельно подбор номенклатуры и сделал фри версию. Версия без глюков потому что не приходится обрабатывать все активные. Обработка с открытым кодом. Работает сейчас на УТ11. Адаптировать можно к любой версии УФ.
Обработка не содержит меню и никак не меняет интерфейс, кроме как при начале подбора добавляет окно для набора текста. Так-же не требуется модификации самого подбора, работает при простом открытии ч/з файл-открыть и можно встроить в конфу.
http://infostart.ru/public/188259/
andrewks; +1 Ответить
38. MarSeN 975 28.03.14 16:03 Сейчас в теме
(23) andrewks,
Вышла бесплатная полнофункциональная переписанная версия ExtEventsFrm под новым именем Universal Extensions - http://infostart.ru/public/266022/. Полностью переработанный продукт. Работает как в режиме закладок так и в режиме отдельных окон (с небольшими отличиями)
33. CaSH_2004 361 13.08.13 01:49 Сейчас в теме
(22)Автор, я полностью поддерживаю твою идею универсальных решений. Однако стараюсь сам их писать целиком, только на встроенном языке, ну иногда использую скрипты. Дополнительный функионал в виде бантиков - только для красоты, чтобы если начнет глючить отключить без ущерба функциональности.
Для использования платных решений имеются следующие препятсвия особенно данное:
1. У меня 99,99% клиентов работают на 8-ке без УФ. Есть 0,01% на 7-ке. Данное же решение я так понял только расчитано на УФ. Рынок явно маловат, учитывая что управляемый и обычный режим развиваются паралельно и не пересекаются. На УФ на мой взгляд работают следующие категории:
- спецы которым нужно было решать задачи которые можно было решить только с новым функционалом (у меня самого есть один такой случай)
- новички которым все равно что осваивать или нет понимания
- энтузиасты которым хочется попробовать чего-то нового и некуда девать энергию :)
Все остальные сидят в обычном режиме и не тратят время на изучение того что особо ненужно. И таких наверняка подавляющее большинство. Нет желания сделать для обычного режима?
2. Имею опыт покупки решений и ОЧЕНЬ большой опыт использования ВК начиная с 7-ки. В любых ВК есть куча багов, иногда явных, иногда нет - кто интересно заплатит за проблемы когда начнет падать система в фирме где милионные обороты в день? Мне с этих милионов ничего не перепадает, так что я особо не рвусь использовать непроверенные решения. Ведь если продаеш клиенту свое решение базирующееся на чужой разработке, то и отвечать мне потом за нее. Возьмеш умеренную цену, а потом отвечаеш по полной когда что-то работает не так.
3. Кто будет поддерживать решение при обновлении ОС, сейчас WIn8, завтра еще что, как будем жить если разработка откажется работать или будет глючить? Фирма купила Win за мой счет? Кто заплатит за поиск багов?
4. Система лицензирования и цена очень интересует. Скажем за универсальное, стабильное, документированное решение которое не привязано к количеству пользователей, железу, базе я готов нормально заплатить. Но вроде с ценой не определились как и с политикой. Если упустил - укажите.

Это не придирки, а реальные проблемы которые не раз вставали передо мной и пока нет ясного и четкого ответа на них, нет и интереса к платным решениям, тут и с бесплтатными замучаешся кувыркатся.
34. MarSeN 975 13.08.13 09:25 Сейчас в теме
(33) CaSH_2004, спасибо за развернутый отзыв!
Я так полагаю, что данный функционал не нужен на неуправляемых формах. Если нужен, то напишите что именно заинтересовало в данной разработке. По политике и цене не определяюсь так как разработка не получила, ИМХО, должного отклика со стороны сообщества.
По багам - в данной разработке dll действительно глючит. Не дорабатываю, так как надо потратить время, и по факту, получится в пустую (.
У меня такое впечатление что сообщество не прониклось идеей данной разработки. Чтоб развеять эти сомнения я выделил быстрый поиск из этого проекта, убрал баги и выпустил новый продукт "QuickSearch: поиск номенклатуры по первым символам в подборе". Определился с лицензией по нему (DonateWare). Результат как видишь, не больше, чем если бы я сделал перенумератор )
У меня 99,99% клиентов работают на 8-ке без УФ.

Думаю это не на долго, поэтому свой проект "Инсталлятор пакетов 1С 8.2: Автоматическая установка Вашей доработки на конфигурацию клиента." делаю именно для УФ
35. CaSH_2004 361 13.08.13 12:12 Сейчас в теме
(34)
Думаю это не на долго

Как раз надолго, возможно навсегда в 50%, т.к. при обкатке какого-то решения я его ставлю легко и быстро всем другим, а зачем придумывать велосипед если за это никто не платит? Один клиент сидит на ТиС уже лет 5 и никуда не уйдет. Других вполне устраивает УТ 10.3, и меня тоже. Все изучено, разработано, внедрено. Практически никому функционал УФ ничего не дает, есть один клиент, но и то интернет такой рваный у нас в Краснодаре что полноценно пользоватся не можем, чисто в качестве задела на будущее.
У меня такое впечатление что сообщество не прониклось идеей данной разработки.

Мне кажется это скорее из-за того что большинство все же сидят в обычном режиме. Было бы неплохо провести опрос на спрос :) Я что-то не видел на инфостарте статистику по том сколько людей пользуются/обслуживают какие решения. Думаю нужно эту идею подкинуть администрации чтобы сделали такой механизм, заодно кто готов покупать платные решения и в каком направлении. Я думаю для потенциальных комерческих разработок это было бы светом в конце тунеля. Может ты им подкинеш идею?

Если уж говорить про формы, события и ерспективы платности - то я бы посоветовал занятся перехватом событий форм. У chessman в этом плане ограмная наработки, почти готовое решение, но к сожалению есть один баг который он не хочет/не успевает устранить, и не коммерческий проект у него. В итоге приходится в каждую форму засовывать свой код. Такое бы решение я бы разово купил для внедрения в свои продукты.
36. MarSeN 975 13.08.13 13:35 Сейчас в теме
(35) CaSH_2004,
Может ты им подкинеш идею?

Да, идея хорошая. Попрошу, может что выйдет )

Если уж говорить про формы, события и ерспективы платности - то я бы посоветовал занятся перехватом событий форм. У chessman в этом плане ограмная наработки, почти готовое решение, но к сожалению есть один баг который он не хочет/не успевает устранить, и не коммерческий проект у него. В итоге приходится в каждую форму засовывать свой код. Такое бы решение я бы разово купил для внедрения в свои продукты.


В этой разработке как раз реализован перехват событий форм для внутренних нужд dll (в основном для контроля активной формы и быстрого поиска). И как раз код в формы встраивать не надо ). Но только для УФ.
Я готов написать подобный функционал с перехватом событий форм без внедрения кода в сами формы (текущая технология) для не УФ. Для этого нужно будет вплотную разбираться с структурой окон в не УФ.
Если интересно, пиши в личку, за сколько бы ты купил такую разработку.
17. andrewks 1283 13.04.13 14:20 Сейчас в теме
а вот печать вставляется нормально.
правда, хранение оной в макете обработки - не айс (для демки, конечно, сойдёт). лучше в базе, в присоединённых файлах
24. andrewks 1283 14.04.13 16:45 Сейчас в теме
кстати, сам код компоненты насколько привязан к Win? реально ли его будет портировать под Lin-клиентов?
25. MarSeN 975 14.04.13 22:14 Сейчас в теме
(24) andrewks,
В основном идет работа с окнами, поэтому все зависит как 1С реализовала работу окон в линукс. Надо будет провести обследование больного, сделать анализы и уже после этого можно будет говорить о точном диагнозе ).
В текущем варианте используются API процедуры для работы с окнами и перехват оконных процедур.
26. dr00p 15.04.13 11:52 Сейчас в теме
+ за идею.
универсальность меня всегда привлекает.
вот только надо вылеты пофиксить.
27. MarSeN 975 15.04.13 11:55 Сейчас в теме
(26) dr00p,
спасибо. Как раз чищу код )
28. soba 16.04.13 16:17 Сейчас в теме
Как предполагается коммерциализировать? С привязкой к рабочему компу (что сразу негативно сказывается на числе заинтересовавшихся) или без. Предполагаемая цена вопроса.
29. MarSeN 975 16.04.13 16:32 Сейчас в теме
(28) soba,
думал по поводу привязки к базе данных.
цена вопроса думаю от 5 до 10 тр. пока не определился.
да и вообще в сильных раздумьях по коммерциализации. все больше задумываюсь о том чтоб сделать ее бесплатной и выложить электронный кошелек для донаций. потому как не очень сообщество отреагировало на разработку и вкладыватсья еще и в защиту для продукта... не знаю
30. soba 17.04.13 13:53 Сейчас в теме
Более разумно. По крайней мере разработчики маловероятно станут брать себе вариант с привязкой. А то от ключей защиты и прочих "дополнений" при замене компа запаришься выяснять где ,чего и чем было защищено.
37. MarSeN 975 19.03.14 17:29 Сейчас в теме
(30) soba,
Стартовал новый проект Universal Extensions(UE), который содержит весь текущий функционал, лишен глюков и не требует платы за использование.
Данный проект закрыт.
31. wirg 17.04.13 15:19 Сейчас в теме
Оставьте свое сообщение

См. также

Альтернативный способ добавления элементов и реквизитов на формы Промо

Работа с интерфейсом v8 ERP2 УТ11 Россия Абонемент ($m)

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

1 стартмани

09.09.2019    9902    11    bmk74    2    

Открыть форму внутри другой формы - наконец-то возможно!

Работа с интерфейсом v8::УФ Абонемент ($m)

Я давно мечтал о возможности открытия форм 1С внутри других форм, мне время от времени попадаются задачи, где это бы пригодилось. И вот в версии 8.3.16 наконец-то это можно реализовать! Конечно, это не совсем то, что я ожидал, но получилось все равно интересно. Давайте посмотрим.

1 стартмани

15.04.2020    10694    6    CyberCerber    52    

Делаем из СКД Excel (ну, почти)

Работа с интерфейсом v8 Абонемент ($m)

Несложный в использовании способ внедрить в обычный отчет СКД возможность редактировать значения ресурсов отчета (а-ля Excel) и получать отредактированные значения для дальнейшей обработки.

1 стартмани

26.01.2020    7814    10    herfis    16    

Декомпиляция условного оформления

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Обработка автоматически генерирует полный код создания условного оформления формы любой сложности. Достаточно настроить для формы в конфигураторе условное оформление, а затем выбрать данную форму в обработке. В результате будет сгенерирован программный код создания условного оформления.

1 стартмани

23.12.2019    6621    31    XilDen    4    

Внешняя компонента для работы по Web-socket протоколу Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

5 стартмани

30.03.2018    24413    34    Ditron    68    

[Взрыв шаблона!] Новый способ программной настройки условного оформления

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

01.12.2019    10071    36    mszsuz    11    

Удобный выбор из таблицы/дерева в УФ

Практика программирования Работа с интерфейсом Разработка v8 v8::УФ 1cv8.cf Абонемент ($m)

Выбор из таблицы значений или дерева значений в выпадающем списке рядом с полем ввода - УФ, быстро и просто!

1 стартмани

12.08.2019    11745    7    Yashazz    18    

[Механизм интерфейса] Свой флажок (чекбокс)

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Создадим свой флажок для интерфейса, используем простой универсальный алгоритм.

1 стартмани

09.08.2019    14278    16    rpgshnik    43    

Менеджер открытых форм Промо

Работа с интерфейсом v8::УФ 1cv8.cf Абонемент ($m)

Обработка получает информацию об открытых формах и позволяет ими манипулировать.

1 стартмани

13.04.2017    20489    36    SeiOkami    19    

Программное добавление элементов на управляемую форму

Работа с интерфейсом v8::УФ 1cv8.cf Россия Абонемент ($m)

Пример добавления Команд, Полей ввода, Групп, Страниц, Реквизитов, Обработчиков событий.

1 стартмани

13.02.2019    30041    21    spec8s    19    

Внешняя компонента для выполнения регулярных выражений

Разработка внешних компонент v8 Абонемент ($m)

Внешняя Native API компонента для выполнения регулярных выражений на платформе 1С:Предприятие 8. Написана на C++. Используется движок boost::regex (v 1.69, v 1.68 - для Android). Версия синтаксиса Perl Compatible Regular Expressions.

1 стартмани

12.11.2018    11376    28    KAV2    62    

Открывашка ячеек таблиц

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Глобальное сочетание клавиш для открытия объекта по ссылке из текущей ячейки любой таблицы в большинстве управляемых форм

1 стартмани

27.10.2018    15929    12    tormozit    31    

Расширенная настройка динамического списка УФ Промо

Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

31.05.2017    30845    147    tormozit    23    

Рисуем и распознаем нарисованное при помощи нейросети

Практика программирования Работа с интерфейсом v8 v8::УФ 1cv8.cf Абонемент ($m)

Используем нейронную сеть для распознавания нарисованных объектов.

1 стартмани

03.10.2018    13480    44    DO_WHILE_LOOP    28    

Рисуем диаграммы в metadata.js

Инструментарий разработчика Работа с интерфейсом v8 v8::СКД 1cv8.cf Абонемент ($m)

Не одной же литературой заниматься?

1 стартмани

20.09.2018    15657    3    1c-intelligence    77    

TextRadar - нечеткий поиск в тексте

Разработка внешних компонент Поиск данных v8 1cv8.cf Абонемент ($m)

В отличие от нечеткого сравнения строк, когда обе сравниваемых строки равнозначны, в задаче нечеткого поиска выделяются строка поиска и строка данных, а вычислить необходимо не степень похожести двух строк, а степень присутствия строки поиска в строке данных. Нормированный коэффициент, находящийся между 0 и 1 позволяет отсечь заведомо низкие результаты, организовать поиск по синонимам и т.д. Наглядное отображение результатов в кратком и детальном виде поможет быстро найти интересующий фрагмент.

1 стартмани

19.09.2018    16065    18    TSSV    18    

Лучший подарок для бухгалтера - счёты 8.2 (со звуком) Промо

Работа с интерфейсом v8 1cv8.cf Россия Абонемент ($m)

(Толстый клиент) Подарите бухгалтеру счеты, и он(а) Вас никогда не забудет.

1 стартмани

13.05.2011    39158    24    Tatitutu    45    

Класс-обработка “Работа с картами Яндекс”

Разработка внешних компонент WEB v8 Абонемент ($m)

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    22653    191    RSConsulting    15    

Визуализация событий на временной шкале средствами "Поле HTML документа"

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Интересный способ наглядно отобразить события на временной шкале. Например, может быть применен для красивого вывода документов по клиенту. Тестировалось на платформе 8.3.12.1469

1 стартмани

31.07.2018    22507    137    Plotks2017    27    

Продвинутое рисование в табличном документе (стрелок и не только)

Практика программирования Работа с интерфейсом v8 Абонемент ($m)

Вспоминаем геометрию и основы компьютерной графики. Матрицы и аффинные преобразования на плоскости.

1 стартмани

24.07.2018    14508    18    WalterMort    29    

Использование сборок .NET в 1С 7.x b 8.x. Создание внешних Компонент. Промо

Разработка внешних компонент v7.7 v8 1cv8.cf 1cv7.md Абонемент ($m)

Данная разработка создана для использования сборок .Net в 1С через преобразование объектов и классов в COM-объекты, которые можно использовать в 1С. Достигается это путем создания класса, реализующего методы интерфейса IReflect public class AutoWrap: IReflect.

1 стартмани

28.11.2013    80697    234    Serginio    71    

Распознавание лиц (off-line). Демонстрационная база.

Разработка внешних компонент v8 Абонемент ($m)

Распознавание лиц входит в нашу жизнь стремительными темпами, бизнес стремится за событиями. В публикации находится описание и пример использования нейросетей для распознавания лиц.

1 стартмани

17.07.2018    15176    72    nomadon    45    

Работа с данными выбора

Практика программирования Работа с интерфейсом v8 Россия Абонемент ($m)

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

1 стартмани

17.07.2018    42623    17    kalyaka    16    

Tool1CD Beta в деле

Разработка внешних компонент v8 Абонемент ($m)

Пс, парень! Не хочешь немного сырых байтов?

1 стартмани

09.05.2018    24309    28    baton_pk    26    

Интерактивный интерфейс Промо

Рабочее место Работа с интерфейсом v8 1cv8.cf Россия Абонемент ($m)

Обработка (отдельная панель меню), позволяющая настраивать интерфейс пользователя интерактивно (права не настраивает). Мне очень пригодилось, так как приходится прописывать индивидуальный интерфейс, каждому пользователю (а их уже сотни). Выложил 2 версии одна в виде таблицы, вторая в виде выпадающего меню

1 стартмани

29.10.2011    17187    2    Vin_Tik    9    

Тестирование интерфейса в обычном приложении 8.2 при помощи SikuliX

Инструментарий разработчика Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Как же не хватает клиента тестирования на платформе 8.2. Не кликнешь на кнопку, не выберешь из списка, не проверишь видит ли надпись пользователь. Воспользуемся внешним инструментом SikuliX, который позволит нам протестировать функционал форм. Данный инструмент легко встраивается в линию сборки и может "дружить" с уже известным многим Open-source продуктами.

1 стартмани

03.01.2018    27910    5    kraynev-navi    41    

Программное формирование форматированной строки в стиле html+inline CSS

Работа с интерфейсом Инструментарий разработчика v8 1cv8.cf Абонемент ($m)

Если вам приходилось работать с форматированными строками программно, то вы знаете, какая это боль. Данное решение облегчает программное формирование таких строк.

1 стартмани

18.11.2017    29605    32    bonv    10    

Программное создание элементов графической схемы (через XSLT)

Практика программирования Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

20.07.2017    19840    58    lazarenko    16    

Управляемые формы. Итоги в динамических списках

Универсальные обработки Работа с интерфейсом v8::УФ 1cv8.cf Россия Абонемент ($m)

Многие задаются вопросами расчета итогов динамических списков в управляемых формах. Здесь мы не будем претендовать на академичность, оставим споры, что мол это не нужно, что это все равно что считать бородатых мужиков на движущемся эскалаторе, что это дополнительная нагрузка. Все это понимают, Кто не понимает - поймет на практике. Поэтому основываемся на... "снегопад, снегопад, если женщина просит..." или "..а мня плевать - мне очень хочется.." Я попытался решить практические проблемы при расчете и выводе итогов. В приложении примеры расчета итогов в иерархическом справочнике и журнале документов.

1 стартмани

15.12.2016    35317    12    argut    13    

Простой редактор плана помещения JavaScript

Практика программирования Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

На ресурсе сейчас очень много решений, которые позволяют редактировать карты, используя географические схемы. Так же много решений, которые позволяют редактировать объекты онлайн веб-карт. Мне же нужно было простое решение, для того чтобы расставить квадратные объекты на плане, показать их пользователю. Ну и распечатать, опять же. Я решил написать простенький редактор на JavaScript с использованием библиотеки Raphael.

1 стартмани

23.11.2016    19683    91    igel9780    22    

1С+Классы. Версия-0

Разработка внешних компонент Математика и алгоритмы v8 1cv8.cf Абонемент ($m)

Разработано ООП-расширение языка 1С, включающее (но не ограничивающееся): Классы как абстрактные типы данных с элементами «переменная», «свойство», «функция», «процедура»; Интерфейсы как абстрактные классы без элементов состояния («переменная») и без привязки к реализации методов (свойств, процедур, функций) при определении; Имплементация (реализация) интерфейсов классами; - одиночное открытое наследование; Области видимости «внутренняя» (private), «экспорт» (public), «защищенная» (protected); Статические элементы классов (общие для всех экземпляров класса); Замещение (переопределение реализации) методов при наследовании – «виртуальные методы, свойства»; Сокрытие (затенение) обычных (не замещаемых) элементов при наследовании; Перегрузка процедур и функций по количеству и типам данных аргументов; Конструкторы класса; Деструктор класса; Слабые ссылки; Делегаты.

1 стартмани

28.10.2016    19806    1    IntelInside    68    

Настройка начальной страницы (Рабочего стола)

Работа с интерфейсом Рабочее место Универсальные обработки v8 1cv8.cf Абонемент ($m)

Альтернатива стандартной настройке начальной страницы. В типовой доступны лишь те формы, что явно "разрешены" разработчиком в режиме конфигуратора. Эта обработка позволяет собрать "Рабочий стол" из любых подходящих форм в пользовательском режиме. Без программирования. БСП не используется. Не расширение. Универсальна, т.е. подойдет для любой конфигурации (в т.ч. самописной).

2 стартмани

19.10.2016    35541    213    Erne100    24    

"Внешнее событие" и мобильная платформа 1С

Разработка внешних компонент Мобильная разработка v8 Абонемент ($m)

Внешние компоненты в Android для Мобильной Платформы 1С или как вызвать внешнее событие, когда его нет.

1 стартмани

09.09.2016    36409    87    dewersia    52    

HTTP-сервис: отчеты [Расширение]

Практика программирования Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Это HTTP-сервис, который возвращает почти любой отчет в HTML, XLSX или в JSON. Сохраните вариант отчета, получите на него ссылку и можно получить данные без захода в 1С. Работает в конфигурациях на основе БСП 2.3.3+, для отчетов на СКД и в 1С 8.3.8+

2 стартмани

30.08.2016    25024    132    Stepa86    15    

Организация файлового хранилища на базе MS SQL Server с доступом из 1С

Разработка внешних компонент Сервисные утилиты v8 Абонемент ($m)

Пример реализации хранения файлов в базе MS SQL Server с использованием различных технологий. Подробно рассмотрен потоковый доступ к файлам с использованием технологии FileStream.

1 стартмани

27.07.2016    23954    41    tohandr    37    

Проект внешней компоненты для 1С:8 (сделай сам)

Разработка внешних компонент v8 Абонемент ($m)

Как их делают? Как регистрируют? С чего начать? Где взять стартовый проект? Вопросов вообще много можно задать, но лучше один раз увидеть!

10 стартмани

11.03.2016    15072    0    ture    36    

Простые радости жизни программиста 1С: выбор типа значения

Работа с интерфейсом Практика программирования v8 1cv8.cf Абонемент ($m)

Предлагаемая в работе обработка включает обычную и управляемую формы, которые максимально точно реализуют функциональность системного диалога выбора типа в толстом клиенте обычное приложение (включая оформление диалога). Эти формы имеют дополнительные интерфейсные удобства и могут быть использованы в качестве альтернативных диалогов выбора типа.

1 стартмани

17.02.2016    47717    50    yuraos    17    

Снимок экрана для 1С

Универсальные обработки Разработка внешних компонент v8 1cv8.cf Россия Абонемент ($m)

Довольно часто люди сталкиваются с необходимостью сделать снимок экрана. Если вы или ваши сотрудники основную часть времени проводят в 1С и у вас есть необходимость прикреплять графические файлы, то эта компонента для вас.

1 стартмани

08.02.2016    26846    33    linkforget    11    

Связь Asterisk и 1С, внешняя компонента

Разработка внешних компонент Телефония, SIP v8 1cv8.cf Россия Абонемент ($m)

Поддержка ROM-Asterisk прекращена, на 1С: Предприятии 8.3.6 вылетает. Пишем свою.

6 стартмани

28.01.2016    45595    267    BigTaur    82    

Внешняя компонента для хранения данных во внешней обработке/отчете

Разработка внешних компонент v8 1cv8.cf Абонемент ($m)

Шаблон внешней обработки с внешней компонентой, демонстрирующей возможность хранения любых сериализуемых данных непосредственно во внешней обработке или отчете.

1 стартмани

14.01.2016    17641    34    frkbvfnjh    36    

Передача реквизитов объекта из основной формы в дополнительную и обратно на управляемых формах

Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

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

1 стартмани

02.11.2015    30984    10    Wolex    29    

Инструмент для создания веб приложений на основе 1С REST сервиса

Инструментарий разработчика WEB Работа с интерфейсом v8 1cv8.cf Абонемент ($m)

Обзор платформы-конструктора для создания веб-приложений, использующих в качестве источника базы данных 1С

1 стартмани

13.10.2015    25678    77    dmzubr    23    

Асинхронная загрузка данных на Управляемую Форму. Прогресс бар (УФ 8.3). Индикация состояния процесса

Работа с интерфейсом Универсальные функции Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Часто бывает, что возникает необходимость загрузить множество данных из разнообразных источников в определенную форму или рабочее место. В процессе загрузки пользователь в неведении — информация готовится или нет. Прием позволяет загружать данные из нескольких источников асинхронно, не блокируя форму\интерфейс, а также отображать ошибки и состояние прогресса. По мере готовности данных, они будут отображены на форме

1 стартмани

09.10.2015    34566    127    pbazeliuk    6