Распознавание лиц в 1С - забавная штука

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

Разработка - Инструментарий разработчика

Распознавание лиц в 1С на основе OpenFace

В свое время мной был реализован проект вывода в веб геометрического положения всех сотрудников с анализом, кто сколько отработал в офисе: //infostart.ru/public/237336/. На входе этого решения - база данных событий засвета карточек СКУД (а также базы ЗУП, и ActiveDirectory). И это обстоятельство мешает сделать решение универсальным: в каждом офисном центре своя система СКУД с жестким ограничением прав на доступ. При всем желании руководства видеть на экране смартфона, кто где находится, прав на чтение данных СКУДа они могут и не дать человеку, которого они не знают лично, например. А сделать решение коробкой мешает тот факт, что баз СКУД существует большое множество - то есть нужно получать доступ и настраивать запросы на их таблицы.

Теперь, с развитием опен-сорсных технологий распознавания, родилась идея создать распознающий сервер, генерирующий базу данных событий по типу базы данных СКУДа. Это бы гарантировало универсальность решения. Но, забегая вперед, надо сказать, что это решение не может пока являться полной заменой СКУДу - ни одна технология распознавания не обеспечивает даже 99% точности. Но в любом случае это вопрос времени: комбинируя распознавание лица с распознаванием походки, например, в будущем смогут достигнуть точности 99,9% например и это уже будет выше, чем точность СКУДа. Поясню: я работал в реальном бизнес-парке и могу сказать, что постоянно есть поток ошибок, который "разгребается" вручную. У ошибок разные причины, но они всегда есть: как правило, это что-то типа "Иванов с Петровым случайно перепутали карты", или глюк оборудования, либо человек забыл карту, ему выдали гостевую, но в ней неправильно прописали фамилию. В общем, можно смело говорить, что реальная точность карточного СКУД не превышает 99,9%. Так что, по сути, когда-то наступит время, когда от карточного СКУДА откажутся по этой причине. 

Технология распознавания лиц развивается (есть коммерческие решения, но они почему-то заоблачно дорогие, несмотря на существование открытого решения OpenFace), но под 1С еще ничего нет. Надо восполнить этот пробел. Наверное, многие видели публикацию на habrahabr "Обучение машины — забавная штука .." (https://habrahabr.ru/post/306568/). В сети есть куча проектов на основе OpenFace, взял некий шаблон за основу и его допилил под свои нужды. Прежде всего, необходима была интеграция с 1С для того, чтобы формировать базу данных событий типа "Камера А, лицо Б, время В". То есть по сути, то же самое, что мы видим в базе данных СКУД (откуда строится мое веб-решение (//infostart.ru/public/237336/), показывающее, кто где находится и сколько кто отработал в офисе. 

Из всех версий Openface была выбрана одна, в которой реализуется распознавание онлайн по 2д-ландмаркам - его скомпилированная версия выложена тут в качетсве демки. Вы можете поиграться с этой версией и увидеть, насколько хорошо она осуществляет захват лиц. Я доработал проект так, что генерация события происходит только при появлении лица в кадре. Так же доработан был вывод информации о лице, таким образом, чтобы можно было интегрировать с 1С - каждое новое событие это новый файл. Для ускорения работы этот файловый поток размещен на виртуальном диске, очистка файлов выполняется алгоритмом из 1С, после того как проведен анализ и загружен лучший кадр в базу данных. Результат вы можете увидеть на прилагаемом видео (https://youtu.be/N3-OOevjkMc).

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

Что мы получаем в итоге: система распознавания уже сейчас может быть создана на основе бесплатных технологий и может быть внедрена за небольшие деньги в любом бизнес-центре или бизнес-территории. Единственное ограничение - система не может быть использована как единственная и основная, она должна ставиться параллельно с карточным СКУДом. Со временем, с развитием опен-сорс проекта, наступит такой момент, что ее можно будет использовать как единственную, но практика показала, что пока этот момент не настал. 

Отдельно следует написать про нейросетевое распознавание, ибо за ним будущее. Если вы провели мониторинг проекта OpenFace, то вы наверняка увидели его реализацию с нейросетью на Docker. Все это уже сейчас отлично работает и бесплатно, вопреки распространенному мнению, что это все должно очень дорого стоить. Если посмотреть на коммерческие реализации - это и MS Azure и отечественные фирмы (не помню название, да и не хочу им делать рекламу) - они предлагают решения в стиле "абонентская плата от 1000 уе" что необоснованно дорого (решение на Azure при этом в разы дешевле). Проблема тут не в том, что обученная нейросеть является ноу-хау, - как я написал выше, есть ее бесплатный вариант, проблема в интеграции. С Azure боятся иметь дело из-за отвратительной политики микрософта "сегодня работает - завтра нет, и бесполезно звонить на линию поддержки", а OpenFace работает в Docker под Ubuntu, и найти специалиста, чтобы он грамотно все это внедрил - это сложная проблема. Видимо, этим всем и объясняется высокая стоимость предлагаемых ныне коммерческих решений. Хотя понятно, что эти времена "срубания бабла на нейросетях" закончатся, тем быстрее, чем больше мы, простые программисты, будем внедрять за_недорого эти все удивительные, пока, технологии. Этой публикацией хотелось бы открыть обсуждение практических реализаций (на платформе 1С) систем распознавания на базе опен-сорсных технологий. Позже выложу ролики реальной эксплуатации этой системы в реальном офисе.

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

Наименование Файл Версия Размер
Распознавание лиц в 1с - забавная штука:

.rar 45,04Mb
45
.rar 45,04Mb 45 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. marsohod 122 11.04.17 19:16 Сейчас в теме
2. nano1c 143 11.04.17 20:03 Сейчас в теме
(1) нет, спасибо за ссылку. но там, как я понял, не совсем распознавание а детектирование без нейросети. вся прелесть проекта OpenFace как раз в бесплатной, обученной на большой выборке, нейрости, которая превращает лицо в 128-вектор, который уже совсем просто обработать, хотя-бы в той же 1с. хотя конечно то, что там просто решается проблема детектирования, это уже большое достижение и возможно некое гибридное решение с нейросетью OpenFace..
maxopik2; marsohod; +2 Ответить
30. informa1555 1846 19.06.17 10:36 Сейчас в теме
(2) Я правильно понимаю, что этот "128-вектор" - это выход c convolutional слоя в виде расположения сработавших "фильтров" , а "обработать" это типа fullconnected слой создать на 1С? Или там какя то другая архитектура? Судя по картинке там вроде CNN да?
31. nano1c 143 20.06.17 09:22 Сейчас в теме
(30) тут главное понимать что такое нейросеть и в чем ее прелесть. до конца я это осознал когда написал на 1с сравнение 2д-лендмарков. результат просто никакой. а если сравнивать выход нейросети, вот эти 128-вектора то это уже совсем другое дело. вы можете и свою нейросеть написать прямо на 1с, но это очень долго и в итоге будет тормозить. на создание вот этой опенсорсной нейросети опенфейс ушли годы и при всех ее минусах (докер под линукс, проблемы с интеграцией) она является сейчас единственным бесплатным вариантом, который при этом хоть както работает...
3. zekrus 153 12.04.17 08:05 Сейчас в теме
Доброе утро!
Тема весьма актуальная.
Вопросы:
- Код обработки 1С (пример использования) где?
- Исходный код от файла OpenFace.exe где?
С уважением
sasha777666; Mi4man; KroVladS; +3 1 Ответить
4. nano1c 143 12.04.17 10:13 Сейчас в теме
(3) код обработки вам ничего не даст. исходников конкретно этого экзешника нету - разработчик (это не я) им не поделился - я доводил его под себя в рефлекторе на языке ms_il. еще раз прочитайте текст и поймите что на текущий момент решение нельзя бесплатно скачать в виде коробки. бесплатно скачивайте проект OpenFace и доводите его до ума под свои нужды. но это не будет "простой код" а будет куча всего: нейросервер + видеосервер + всякие костыли для интеграции + 1с. таким образом "коробкой" тут можно условно назвать только образ системы на которой все это развернуто. проще говоря, на данный момент все сложно, и именно поэтому нужны примеры конкретных реализаций, над чем я сейчас и работаю...
maxopik2; unmensch; tkv44; +3 2 Ответить
6. zekrus 153 12.04.17 13:42 Сейчас в теме
(4)Очень удобно, теперь нужно в рефлекторе и ваше приложение разбирать.
Не понимаю из вашей публикации - при чем тут 1С (судя по вложениям)?
Эта публикация больше похожа на статью, а не на приложение для скачивания.
sasha777666; DC; +2 1 Ответить
7. nano1c 143 12.04.17 13:59 Сейчас в теме
(6) это и есть статья, - если вам станет от этого легче. "не нравится не читай". могу вам помочь разобрать программу в рефлекторе, я на это потратил кучу времени. 1с тут при том, что все мои решения строятся на нем. Читайте внимательней - на 1с мое решение по анализу движений сотрудников, и это решение наглядно доказало свое превосходство на существующими системами СКУД - запросы в 1с выполняются просто мгновенно по сравнению с тормозами примитивной оболочки СКУД. Сейчас обкатываю еще одну надстройку - захват и распознавание лиц. Готовое такое решение вам никто не отдаст за бесплатно, будьте реалистом)
13. zekrus 153 13.04.17 07:45 Сейчас в теме
(7) Вы видимо не в курсе чем отличается статья от публикации коллега. За чтения статьи с получателей вашего вложения не снимают стартмани (а во вложении пустышка - и 1с(ом) не пахнет). Если у вас есть коммерческий контент, в чем же дело продавайте (но вводить в заблуждение это дурной тон).
Новиков; sasha777666; alur; +3 1 Ответить
14. nano1c 143 13.04.17 09:12 Сейчас в теме
(13) все ворчите? коммерческий контент есть и он отлаживается но вам я его не продам ибо такой клиент - это головная боль, замучаете своим нытьем)

ps а если серьезно, то я вам раскрыл все карты как построить решение на базе того что есть в открытом доступе, но вам этого мало и вместо спасибо вы тут возмущаетесь и минусуете. самому лень пройти по моему пути или в чем причина? в коммерции есть такое понятие как проблемный клиент - много случаев было когда человек покупает машину и потом начинает отсуживать с автосалона деньги, типа того что машина в чем-то не устраивает. в чечне это превратилось в бизнес и бмв и мерседес даже использовали термин "покупательский экстремизм". вот так и вы: вам мало того что вам дали рецепт, вы еще хотите чтобы вам все сделали. и не надо быть Вангой, чтобы понять, что даже если бы вам все кто-то добрый сделал, то вы бы его непременно кинули на деньги ибо ваш экстремизм виден неворуженным глазом. поэтому садитесь за рефлектор и допиливайте интеграцию сами - я показал выше что это не просто возможно но и не так сложно...
maxopik2; FreeArcher; unmensch; +3 3 Ответить
16. zekrus 153 13.04.17 13:00 Сейчас в теме
(14) Речь не про доработку технологии в целом. А именно в вашей публикации, ну не тянет она на нее (статья за глаза). Жаль потраченного 1 старт мани (стер как мусор).
Новиков; sasha777666; +2 Ответить
17. tkv44 13.04.17 14:49 Сейчас в теме
(16) Это из-за одного стартмани вы столько вони тут развели?
ZUL_MTFKA; Tolpinski; FreeArcher; Новиков; dgolovanov; Anchoret; nano1c; Makushimo; +8 2 Ответить
18. nano1c 143 14.04.17 12:45 Сейчас в теме
(17) +1 теперь представьте что этот человек купит какое-либо 1с-решение. Я даже не говорю про такие коробки от франчей как Итилиум, в котором надо сразу устранять ошибки чтобы он заработал, можно взять хороший пример УТ 11 первых релизов. Примерно половина клиентов откатывалась назад на УТ 10.3, списывая при этом затраты, достигающие иногда сотен тысяч рублей. Мое решение не дотягивает пока даже до такого и я об этом открыто пишу. Ну да, я мог бы сейчас выложить в продажу хакнутый мной экзешник - он дает правильный файловый поток, который удобно принимать в 1с. Но, представим, себе что покупатель-экстремист купит его, скажем за 1 тыр (представьте какие это большие для него деньги!) и допустим его не устроит там что-то - например для ip-камеры нужны костыли, название вирт.диска жестко прописано, при его переполнении программа зависает да мало ли чего еще... Именно поэтому я и не хочу ничего продавать, если кому надо - могу помочь в достижении именно того что конкретно нужно, в общем случае это слишком все абсткратно и сложно, да и не понятно какое именно применение этой системы "взлетит". я тут поделился мыслями почему у наших "нейросетевых компаний" не взлетает сервис распознавания - у них нет понимания кому это нужно и за какие деньги они это готовы купить. А сидеть на 2-3 клиентах которые готовы сорить деньгами - это как минимум ненадежно...
Новиков; tkv44; +2 2 Ответить
5. madonov 155 12.04.17 10:46 Сейчас в теме
А если показать камере фотографию другого сотрудника (например на планшете или смартфоне) ?
Как она поймет, что её обманывают? =)
shard; Makushimo; +2 Ответить
8. nano1c 143 12.04.17 14:03 Сейчас в теме
(5) Конечно нет) Существуют несложные методики обмана любых распознавателей. Поэтому я и написал что на текущий момент нет никакого смысла покупать дорогие ком.решения - они в любом случае не могут быть использованы как основная СКУД, они сильно проигрывают карточным системам или по отпечаткам пальцев. Вот если будет опен-сорс проект где и анализ лица и анализ походки и мимики - вот тогда на такую систему уже можно будет положится, но все равно будут пути обмана типа научится походке и создать реалистичную маску)
9. feva 440 12.04.17 14:31 Сейчас в теме
А если я сейчас скачаю смогу на вашем решении разработать жизнеспособный проект? В том плане у вас приложен для скачивания готовый механизм?
10. nano1c 143 12.04.17 14:40 Сейчас в теме
смотря что вы имеете в виду под "жизнеспособный", скачайте и поиграйтесь, и увидите например что там нельзя подключить ip-cam то есть это уже надо городить костыли. это я не говорю о том какие сложности будут в модификации кода ил. на данный момент я запускаю все это в реальном офисе и не хочу сейчас сказать что да, это все реально круто работает. Это можно будет сказать по прошествии реальной эксплуатации. То что могу сказать сейчас: распознавание по 2д-ландмаркам совсем слабенькое, но даже нейросеть (которая обеспечивает лучший результат на данный момент) очень чувствительна к бороде и очкам - тут непонятно как быть.
11. feva 440 12.04.17 17:33 Сейчас в теме
А на неуправляемых формах стартанёт?
12. Сурикат 338 12.04.17 23:04 Сейчас в теме
Изобретаете жуткий велосипед =(
Ни в коем случае не нужно такие штуки интегрировать в 1С. Оставьте это специализированным ПО
15. nano1c 143 13.04.17 09:14 Сейчас в теме
(12) странно на форуме 1с слышать советы "не надо интегрировать с 1с", вы не ошиблись ли форумом? я выше писал про базу 1с дублирующую СКУД и она в сотни раз быстрее работает, а когда я ее писал тоже приходилось выслушивать "зачем это надо", но когда запустилось все были в шоке от скорости работы...
maxopik2; sasha777666; +2 Ответить
20. sasha777666 309 14.04.17 16:02 Сейчас в теме
(12) а чем 1С не специализированное ПО?
maxopik2; +1 Ответить
21. Сурикат 338 14.04.17 21:19 Сейчас в теме
(20)
А тем что 1С не может выступать как приложением верхнего уровня в системе безопасности, т.к. не умеет управлять настройкой доступа.
Т.е. на предприятии где уж запарились доступом, какое-то ПО верхнего уровня стоит (а то бегать и перенастраивать контроллеры, как на заре времен было у BOLID, ой как нехорошо).
И вот тут если бы автор написал об опыте интеграции с известными брендами на рынке СКУД цены бы статье не было, а так мало ли неокрепшие умы начнут все в 1С пихать.

Вроде бы забить на доступ и использовать для учета рабочего времени сотрудников, НО!
Распознавание лиц штука очень ненадежная, не важно какие дескрипторы используются. Изменение освещенности может все поломать координальным образом. Если вы не купили себе нормальный СКУД, то нормальные камеры (которые баланс белого шустро исправляют и с большим динамическим диапазоном) тоже уж ставить не будете.

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

В свое время очень впечатлило способность SURF дескрипторов распознавать предметы за препятствиями. Жаль их вычисление довольно ресурсоемкая задача.

Если кому интересно, есть система Artec Broadway 3D. Там примерно тоже самое только используются 3d карты лиц. Такой подход как раз снимает все проблемы с изменением градиента
22. sasha777666 309 16.04.17 14:04 Сейчас в теме
(21) что вы под этим
управлять настройкой доступа
имеете ввиду?
24. Сурикат 338 16.04.17 15:34 Сейчас в теме
(22)
Прочитал вашу статью по управлению Arduino =)
Не знал о такой возможности, век живи - век учись

Сделаю дополнение к моему предыдущему комментарию:
Я имею ввиду готовые решения для интеграции с решениями СКУД, представленными на рынке.
Чтобы быстро можно наладить обмен данными, а не убить на это человекамесяцы
25. nano1c 143 17.04.17 23:28 Сейчас в теме
(21)
И вот тут если бы автор написал об опыте интеграции с известными брендами на рынке СКУД цены бы статье не было, а так мало ли неокрепшие умы начнут все в 1С пихать.

а какая разница с какой конкретно системой интегрировать? Я интегрировал с Lyrix но для меня это просто sql-таблицы, и по сути без разницы что за система. Скорость работы достигается только при прямых запросах к скулю. Могу интрегрироваться с любой системой таким образом. Более того, даже к ЗУПам у меня прямые запросы к шифрованным таблицам 1с. И в итоге мы получаем профит в виде мгновенной обработки таких запросов как постройка табелей т-13 за месяц, любые отчеты хоть за месяц, хоть за год строятся практически мгновенно. Посмотрите как подобные вещи строит Lyrix - без слез на это не взглянешь: можно просто не дождаться отчета даже по одному сотруднику). В общем мое решение применяется в большом бизнес-парке и можно уверенно сказать что оно справится с любыми объемами данных. Но я уже повторяюсь - это все вроде как описано в той публикации. В этом решении важна именно архитектура, например если заменить прямые запросы к зупам на "правильные методы 1с" типа ком, то скорость упадет даже не 100 раз, а наверное в 1000 ) Да и вообще, если сталкивались с зуп, то знаете как ужасно он спроектирован и в итоге вместо запроса к одной таблице надо соединять 5 таблиц или еще чего хуже. А учитывая что таблицы 1с зашифрованы - получаем неплохое развлечение. Это мое ноу-хау, которое я не выкладываю, либо делаете все сами либо просите помощи.
С распознаванием тоже примерно так: важна сама информация что решение возможно и надо делать так-то и так-то - чем я с вами и поделился. Не менее важна информация о том что точность пока не очень - это камень в огород фирм впаривающих это распознавание за космические деньги. Это не может стоить дорого просто потому, что сотрудник пару дней не побреется и его уже система примет за другого человека) Ну а про лазерные сканеры 3д - это вроде бы надежно, хотя вот интересно насчет бороды и очков - вы уверены что и с ними сканеры справятся? Я вот не уверен, так что по сути остаются пока только отпечатки пальцев, помимо обычного скуда. Решений по походке пока не видел - но было бы интересно, конечно. Я пока остановился на гибриде обычного скуда с захватом лиц в базу через этот опенфейс - это для борьбы с передачей карты другому сотруднику (по ошибке или умышленно), а распознавание то идет но оно скорее пока как эксперимент..
19. sasha777666 309 14.04.17 15:56 Сейчас в теме
Да причём тут фин. претензии, вы сами всё в деньги переводите. Прекрасно понимаю предыдущего пользователя, я например скачивая рассчитывал увидеть пример обвязки функционала в виде обработки, ведь публикация называется "Распознавание лиц в 1С - забавная штука"
23. Сурикат 338 16.04.17 15:21 Сейчас в теме
У более менее приличных СКУД обычно бывает следующая архитектура:
1. Локальные контроллеры доступа (в зависимости от бренда с/без энергонезависимой памятью)
2. Центральные контроллеры
3. ПО верхнего уровня, в котором осуществляется управление доступом по зонам/группам доступа (аналоги профилей, групп доступа на последних версий БСП)

Т.е. конфигурирование контроллеров осуществляется на уровне ПО. А аппаратная часть служит только для обеспечения отказоустойчивости.
26. DimonDnepr 27.04.17 08:35 Сейчас в теме
Доброго дня уважаемые, у меня вопрос околоСКУДный :)

Может кто-нибудь подсказать/надоумить как в управляемых формах на Win7-64 можно достучаться к веб-камере и получить фото?

То, что нашел, работает или на обычных формах или максимум на WinXP...
27. IvanovAV 77 16.06.17 03:32 Сейчас в теме
Мы реализовали, аналогичную систему на сканерах лица и отпечатков пальцев Anviz. К нашему удивлению все работает. Далее настроил интеграцию 1С и СУБД Anviz, через СОМ -соединение. На практике оказалось проще, чем я думал.
28. nano1c 143 16.06.17 12:39 Сейчас в теме
(27) что за сканеры лиц? ком слишком медленный, прямые запросы ну раз в 1000 наверное быстрее...
29. IvanovAV 77 16.06.17 12:49 Сейчас в теме
(28) нечто похожее как на видио https://www.youtube.com/watch?v=c0T3SeaHKj0 у него своя база данных, туда пишется таблица таблица с ИД человека и временем сканирования. К которой я программно подключился через компоненту,
32. KAV2 21.06.17 14:01 Сейчас в теме
Если алгоритм написан не на языке 1С, тогда это уже не распознавание на 1С, а вопрос подключения сторонник библиотек ))
33. ShelbyWhite 08.02.19 13:24 Сейчас в теме
эта система Опен Фейс в 1с внедрена в массы? Юрий П, можете связаться со мной? shelby.nastya@icloud.com Есть ли вообще программы которые могут открывать смену сотрудника и закрывать? Подскажите.( про Битрикс24 в курсе)
34. nano1c 143 08.02.19 17:23 Сейчас в теме
(33) Поскольку я все это делал на энтузиазме, и учитывая что не нашел спонсора на серьезное внедрение этого проекта то, на данный момент никакой новой информации нет. Я делаю сейчас совсем другой проект - может по его окончании и вернусь к этой интересной теме..
Оставьте свое сообщение

См. также

Внешний регламент для 1С Промо

Прочие инструменты разработчика v8 Россия Абонемент ($m)

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

1 стартмани

05.03.2020    4496    7    moolex    6    

Подсистема "Показатели объектов"

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

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

2 стартмани

06.03.2021    3059    5    pila86    16    

FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы "Режим сравнения форм") на примере ERP 2.5

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

Данная публикация является продолжением описания функционирования обработки "FormCodeGenerator " в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.

5 стартмани

21.12.2020    4000    19    huxuxuya    11    

Вам нравятся запросы в 1С?

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

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

1 стартмани

03.07.2019    23669    6    m-rv    90    

Установка предопределенных элементов: просмотр, исправление и поиск ошибок (задвоенных и отсутствующих) Промо

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

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

2 стартмани

06.10.2014    159302    2671    ekaruk    168    

Модель объекта

Инструментарий разработчика v8 Абонемент ($m)

Подсистема позволяет описать модель данных объекта, где описана зависимость между реквизитами, и затем использовать эту модель в разных сценариях работы с объектом. Версия платформы: 8.3.6 и выше. С небольшими доработками будет работать на 8.2.

1 стартмани

30.06.2019    14275    0    vadim1980    5    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019)

Инструментарий разработчика Сканер штрих-кода Терминал сбора данных Мобильная разработка Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ Оптовая торговля Производство готовой продукции (работ, услуг) Розничная торговля Учет ОС и НМА Учет ТМЦ v8 v8::Mobile БУ УУ Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    50792    262    informa1555    234    

Работа с публикациями "Инфостарт"

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    24368    13    RocKeR_13    16    

[Расширение] Контроль отрицательных остатков по регистру бухгалтерии при проведении Промо

Универсальные функции Инструментарий разработчика Учет ТМЦ Учет ТМЦ v8 1cv8.cf Россия БУ Абонемент ($m)

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

1 стартмани

17.08.2015    49988    168    ekaruk    32    

Управляемая консоль запросов, отчетов 3.8.9 (расширение, внешняя обработка)

Консоль запросов v8 v8::УФ v8::Запросы v8::СКД 1cv8.cf Абонемент ($m)

Работа с запросом и СКД, Полная поддержка пакетных запросов, временных таблиц, Сравнение результатов, текстов, Разбор структуры запроса в виде дерева, Анализ плана запроса, Групповая обработка

5 стартмани

14.08.2018    107471    2725    Evg-Lylyk    722    

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции

Инструментарий разработчика Практика программирования v8 Абонемент ($m)

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    31385    28    informa1555    26    

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

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

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

1 стартмани

17.07.2018    56598    21    kalyaka    16    

Faster - многофункциональный ускоритель работы программиста 1С и других языков программирования Промо

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

Программа Faster 9.4 позволяет ускорить процесс работы программиста (работает в любом текстовом редакторе). Подсказка при вводе текста на основе ранее введенного текста и настроенных шаблонов. Программа Faster позволяет делится кодом с другими программистами в два клика или передать ссылку через QR Код. Исправление введенных фраз двойным Shift (с помощью speller.yandex). Переводчик текста. Переворачивает текст случайно набранный на другой раскладке. Полезная утилита для тех, кто печатает много однотипного текста, кодирует в среде Windows на разных языках программирования. Через некоторое время работы с программой у вас соберется своя база часто используемых словосочетаний и кусков кода. Настройка любых шорткатов под себя с помощью скриптов. Никаких установок и лицензий, все бесплатно.

1 стартмани

24.05.2012    80603    961    moolex    147    

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар")

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

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    32909    88    m-rv    58    

Регистры правил [Расширение]

Инструментарий разработчика Информационная безопасность v8 v8::Права УТ11 Абонемент ($m)

Регистры правил - права доступа, запрет редактирования, автоподстановка реквизитов и т.д.

10 стартмани

15.03.2018    20005    28    33lab    5    

Заполняем по шаблону (по умолчанию)

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

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

1 стартмани

08.02.2018    30916    20    mvxyz    17    

Консоль запросов + ТЗ как параметры Промо

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

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

2 стартмани

12.11.2010    39058    442    Kashemir    24    

Печатная форма, сделанная как расширение конфигурации для БП 3.0. Новые возможности БСП

Практика программирования Универсальные печатные формы v8 БП3.0 Абонемент ($m)

Печатные формы на внешних обработках скоро канут в лету. На смену им приходят ПФ, реализованные в виде расширений конфигурации. Не нашел на сайте примеров таких расширений. Привожу пример подобного расширения для БП 3.0.

1 стартмани

06.12.2017    29422    56    kwazi    6    

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

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

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

1 стартмани

18.11.2017    36620    42    bonv    11    

Расширения конфигураций 1С: учимся перехватывать методы

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

В этой статье я на примерах разберу некоторые механизмы расширений конфигураций 1С. А именно «перехваты» методов модуля объекта и «перехваты» событий формы и элементов формы. Данная статья написана с учебными целями, чтобы показать, как при помощи расширений конфигурации можно делать такие доработки, ради которых раньше приходилось снимать конфигурацию с поддержки.

1 стартмани

30.05.2017    147818    13    signum2009    48    

[x1c.ru] 1CDBin: Работа с файлами *.1CD на низком уровне средствами языка 1С с возможностью чтения таблиц (поддерживается формат 8.3.8.0) Промо

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

Обработка позволяет просматривать файловые базы 1CD на низком уровне средствами встроенного языка. Реализована часть функциональности Tool_1CD, но на языке 1С Предприятия. Показываются таблицы, параметры таблиц, поля таблиц, записи таблиц, значения полей BLOB, есть 16-ричный просмотр страниц базы и консоль кода. Можно использовать для изучения структуры файлов 1CD, просмотра баз 1CD для выявления повреждений, создания своих обработок для выгрузки данных без открытия исследуемой базы в 1С:Предприятии.

1 стартмани

07.10.2014    57360    363    GusevNA    77    

Набор подсистем "Умные таблицы"

Инструментарий разработчика v8 Беларусь Россия Казахстан Абонемент ($m)

Данный набор подсистем – прикладная библиотека, призванная помочь программисту 1С быстрее решать ряд типовых задач бизнес-логики, таких как: ведение статусов объектов, отправка почтовых сообщений в определенное время, ведение произвольных таблиц с возможностью редактирования, сохранения и группировки, ориентированные на расчет бюджетных таблиц (план продаж, ретробонусы B2C, проценты по договорам B2B и договорные условия по КАМ), расчет коммерческой политики для бюджетных таблиц, исполнение произвольных алгоритмов с хранением кода в информационной базе, определение рабочих баз, хранение файлов во внешних СУБД (Postgre SQL, MS SQL и MongoDB) и выполнение произвольного кода после изменений ссылочного объекта вне транзакции изменения.

1 стартмани

22.05.2017    35212    104    Silenser    34    

Конструктор-тестер http запросов в 1С

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

Данная обработка позволяет в несколько кликов конструировать http запросы на языке 1С и просматривать результаты их выполнения.

3 стартмани

19.08.2016    44918    307    hlopik    18    

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут

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

Как сделать автоматические уведомления о разных событиях из 1С в корпоративный чат MyChat для сотрудников компании

1 стартмани

14.08.2016    50969    36    Demanoidos    60    

Подсистема обмена данными с порталом ИМНС по электронным счетам-фактурам (автоматический обмен)

Внешние источники данных WEB Инструментарий разработчика v8 1cv8.cf Беларусь БУ НДС Абонемент ($m)

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

1 стартмани

28.07.2016    35735    19    c1nil    4    

Навигатор по структуре и данным баз 1С 8

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

Просмотр структуры и данных информационных баз 1С:Предприятие 8.2, 8.3. Состав, типы объектов, табличных частей, движений. Размер, структура хранения объекта. Для администраторов и разработчиков. Версия 1 - на обычных формах, версия 2 - на управляемых.

1 стартмани

11.07.2016    30860    136    o.nikolaev    17    

Хранение файлов в томах на диске (для УПП 1.3)

Практика программирования v8 УПП1 Абонемент ($m)

Доработка типовой УПП 1.3 в плане хранения присоединенных файлов вне базы данных

2 стартмани

05.06.2016    61904    11    wowik    32    

Остатки на каждый день в запросе

Практика программирования Учет ТМЦ Учет ТМЦ v8 1cv8.cf УУ Абонемент ($m)

Запрос формирует остатки товаров на каждый день в пределах выбранного периода.

1 стартмани

26.04.2016    66959    19    arakelyan    22    

Консоль запросов "Запросник" для управляемых форм с подсветкой синтаксиса

Консоль запросов v8 1cv8.cf Абонемент ($m)

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

1 стартмани

19.04.2016    40117    259    1С_Мастер    42    

Выполнение JavaScript кода из 1С в объекте Поле HTML Документа (HTML 5) и вызов события в 1С ПриНажатии

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

Пример выполнения JS кода из 1С в Поле HTML Документа под управляемыми формами, с удобным получением результата в 1С(С помощью вызова привязанного события ПриНажатии к элементу ПолеHTMLДокумента)

1 стартмани

22.03.2016    87683    165    igo1    54    

Количество дней недели (понедельников/вторников/...) в заданном диапазоне одним запросом

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

При реализации периодического авто-заполнения маршрутных листов по графику (недельному) необходимо было просчитать стоимость всего периода, с условием выездов только по определенным дням. Заморачиваться с обходом результата не хотелось. Пришлось написать "Небольшой" запрос.

1 стартмани

03.03.2016    20237    1    Alexander.Shvets    5    

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

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

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

1 стартмани

17.02.2016    54055    54    yuraos    18    

Яндекс.Деньги "Благотворительность"

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

Яндекс.Деньги теперь в 1С. Форма для приема благотворительных взносов. Форму легко сделать и вставить на любую страницу сайта или блога. Платежи будут приходить на ваш кошелек. На форме есть три способа платежа: из кошелька, с банковской карты, с баланса мобильного.

1 стартмани

16.02.2016    25315    8    Tatitutu    5    

Мастер рассылки e-mail 2.2 для управляемых форм

Практика программирования Email v8 v8::УФ ERP2 БП3.0 УТ11 Абонемент ($m)

Для пользователей: переделанный из старый разработки под 8.2 с использованием библиотеки Мастер рассылки e-mail 2.2 (ERP, УТ, БП) (Только управляемые формы), который теперь может запускаться под любой версией платформы с разрешенными или запрещенными модальными/синхронными вызовами в конфигурации. Также удобный выбор e-mail и их владельцев с помощью отбора динамического списка по любым критериям и галочки исключения.

1 стартмани

29.12.2015    42364    20    milkers    4    

Нечеткий поиск одним запросом

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

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

1 стартмани

28.12.2015    30536    72    vasvl123    9    

Передача больших пакетов через веб-сервисы

Практика программирования Администрирование данных 1С Внешние источники данных v8 Абонемент ($m)

Реализация механизма передачи больших пакетов через веб-сервисы. С его помощью передать файл размером в несколько гигабайт не составит проблем.

1 стартмани

06.12.2015    60745    50    YPermitin    19    

Интерфейс сопоставления объектов для обмена (для типового регистра СоответствиеОбъектовДляОбмена)

Инструментарий разработчика Универсальные обработки Перенос данных из 1C8 в 1C8 v8 КА1 БП2.0 ЗУП2.5 УТ10 УПП1 Абонемент ($m)

Вы внедряете обмен данными между двумя типовыми или основанными на типовых БД и вам необходим инструмент, чтобы сопоставить между собой справочники этих конфигураций? Вы хотите навести порядок в обмене данными, потому что вам надоело вылавливать дублирующиеся объекты? Вам очень хочется перепоручить сопоставление объектов обменивающихся баз пользователям, но нет подходящего и понятного пользователям интерфейса? Тогда вам нужна именно эта обработка!

4 стартмани

11.11.2015    42811    108    catsam    8    

Exec - Выполнение кода, консоль запросов и не только!

Консоль запросов v8 1cv8.cf Абонемент ($m)

Незаменимый инструмент администратора БД и программиста: Выполняйте произвольный код из режима 1С Предприятие; сохраняйте/загружайте часто используемые скрипты; выполняйте запросы с замером производительности запроса в целом и каждой из временных таблиц в частности, а также с просмотром содержимого временных таблиц; произвольным образом изменяйте любые объекты БД, редактируя даже не вынесенные на формы реквизиты и записывая изменения в режиме "ОбменДанными.Загрузка = Истина"; легко узнавайте ИД объектов БД; выполняйте прямые запросы к SQL с замером производительности и не только!

5 стартмани

10.11.2015    43116    76    catsam    11    

Быстрое определение интервалов в запросе

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

В статье описывается новый метод определения интервалов между данными различных записей в запросе. В отличие от общеизвестного метода, время работы предлагаемого метода зависит от объема данных ЛИНЕЙНО. Это обеспечивает ему значительный выигрыш по быстродействию на больших объемах данных. В качестве иллюстрации возможностей метода приведен отчет, показывающий гистограмму распределения времени между продажами.

1 стартмани

01.10.2015    55668    35    ildarovich    41    

Полезные приемы при работе с Excel из 1С (Версия 3.1)

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

Программисту 1С часто приходится работать с таблицами Excel из 1С. Я постарался собрать небольшой FAQ и набор функций для работы с файлами Excel. Надеюсь, кому-то будет полезна данная статья.

1 стартмани

22.09.2015    223838    477    Zerocl    76    

Code First и Linq to EF на примере 1С версии 7.7 и 8.3 часть I

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

Данный проект является чисто исследовательским примером использования Code First и Linq to EF на примере 1С версии 7.7. Так как сам я программист 1С, то мне всегда было интересно, как можно перенести модель объектов 1С на компилируемые языки, и использовать мощь Linq to EF. С появлением Code First давно хотел прикрутить, но все как-то руки не доходили, и вот, наконец ..

1 стартмани

28.08.2015    24243    3    Serginio    2    

Работа с push сервисами только средствами 1С 8.2

Сервисные утилиты Инструментарий разработчика Универсальные обработки v8 Абонемент ($m)

Обработка для настройки, тестирования и использования с предустановками для 3-х сервисов. Текст модуля для внедрения в конфигурацию или другие обработки. Уведомления на телефон, компьютер, браузер.

1 стартмани

18.08.2015    32469    46    anig99    1    

Универсальная учетная система с конструктором документов и справочников в режиме 1С: Предприятие

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

Заголовок статьи звучит фантастично, но это не шутка. Занимаясь внедрениями, я часто сталкивался с ситуацией, когда надо было к типовой конфе приделать простенький модуль учета чего-нибудь, не специфичного для самой конфы. Например в УТ учет материалов в эксплуатации. Модуль обычно состоял из пары справочников (2-3), 3-х документов и регистра или пары регистров. Однажды подобные пристройки понадобились одновременно на 3 проектах. Скучно делать одинаковую работу, и я подумал, а что, если сделать универсальный инструмент, в котором пользователь сам сможет нарисовать себе справочники, реквизиты к ним, документы и движения. Т.е. конструктор полноценных документов в пользовательском режиме. Это оказалось не так сложно - все дело в подходящей архитектуре данных.

1 стартмани

29.07.2015    33295    142    informa1555    41    

Конвертация данных. Найдется все! И еще немного...

Поиск данных Инструментарий разработчика v8 КД Абонемент ($m)

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

2 стартмани

25.06.2015    29895    41    tomvlad    7