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

Публикация № 883237 09.08.18

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

позиционирование по Wi-Fi нейросети карта склада план помещения геопозиционирование нейронная сеть

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

Интерактивная карта

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

Для создания такого редактора использовал внешнюю компоненту NativeDraw из публикации //infostart.it-titan.ru/public/378415/

С ней очень удобно работать, но вот только я не нашел как получить координаты мыши относительно Холста. Доступны общие координаты на экране, но холст занимает часть экрана. Поэтому пришлось немного поколхозить – т.к. мне нужны координаты точки на холсте то перед началом работы с редактором обработка просит провести калибровку. Нужно указать координаты левого верхнего и правого нижнего угла (тут имеется ввиду углы прямоугольника, обведенные черной рамкой). Предполагается что работа с картой будет проводиться при окне 1С раскрытом на полный экран, т.е. коодинаты холста не будут смещаться никогда, иначе позиция мыши относительно холста будет неверной.  Тогда можно провести повторную калибровку и для этого есть кнопка «Сбросить калибровку». В целом это единственное затруднение. Может его можно обойти по другому и кто то подскажет как?

Работа с картой построена на добавлении 3х видов объектов: ячеек (имеются ввиду стеллажи вид сверху), меток и просто текстовых надписей. При добавлении ячейки можно задать количество ячеек, размер на карте, направление в котром они будут отрисованы и нумероваться. При добавлении текста и меток указывается текст. Когда добавляется объект – происходит добавление строки в таблицу объектов (справа) а потом отрисовка на карте. Можно работать с объектом через таблицу – например поменять координаты X и Y и тогда объект сдвинется. Или удалить объект, например ячейку в центре ряда.

Также чтобы не рисовать схему на чистом листе удобно «подложить» реальную фотку плана склада. Для этого используется кнопка «Установить фон карты»

В таблице есть галка «отправить на ТСД» и «Название ТСД». Это выбор мест на карте которые будут отпрвлены на клиент, а название – как оно будет отображаться на ТСД на первичном обучении. Оно заполняется по умолчанию и его можно подредактировать чтобы оператору было понятнее. Когда есть эта пометка на карте такие объекты выделяются красным. Кстати тут подумалось что из этого получился бы неплохой «морской бой» т.к. ячейки с красным выделением очень похожи на «ранен»))

В целом получается что все объекты карты просто хранятся в таблице и их можно в любой момент отредактировать. В базу они записываются в Хранилище значений и потом из него достаются. Как в векторных редакторах.

 

Получился редактор, который можно еще развить и использовать в различных целях. Если кому то не интересно позиционирование, но он хочет например визуализировать лог перемещений кладовщика по ячейкам то достаточно передавать в «лог координат» координаты ячеек. Перемещение можно изобразить в виде многоугольника. В текущем редакторе текущее положение отображается в виде зеленого кружочка.

 

Позиционирование

Для позиционирования используется принцип измерения уровня сигнала от роутеров Wi-Fi расположенных в разных разнесенных точках помещения. В текущей реализации мне было достаточно 3х роутеров. Повысится ли точность измерения если добавить еще роутеров – возможно да.

Самое интересное начинается при обработке этой информации. Как я выяснил для подобного позиционирования используется 2 принципа: 1) триангуляция (такой метод использует Cisco) 2)метод паттернов – запоминание состояния сигналов во всех точках. Мне было интересно предложить и испробовать свой метод.

Сначала нужно пояснить особенности задачи:

1-я особенность заключается в том, что на складе постоянно меняется заполняемость стеллажей это влияет на уровень сигнала. Так, коробки с чем то металлическим являются препятствием и сильно ослабляют сигнал. А завтра их уберут и уровень сигнала в той же точке будет совсем другим. Но нам то надо показать на карте то же самое место...

2-я особенность заключается в том что мы постоянно получаем точные данные от WMS о сканировании ячеек. А ячейки привязаны к конкретным координатам. Т.е. мы постоянно получаем точные данные для корректировки. Как видно 2я особенность позволяет бороться с 1й и это существенно влияет на методику.  Если делать систему без учета этой особенности то она будет не очень достоверной.

Сначала я хотел сделать триангуляцию с постоянной корректировкой данных от сканирования ячеек. Но потом подумал «это же очень похоже на обучение с подкреплением» и решил проверить как поведет себя простейший перцептрон из моего же поста с обработкой этих данных.

 

Для того чтобы иметь возможность постоянно снимать данные с ТСД, параллельно работая в другой программе я сделал нативного клиента для андроид устройств, который имеет свой web-сервер для приема запросов от 1С (используется NanoHTTPD https://github.com/NanoHttpd/nanohttpd) Подобная технология «очень тонкий клиент на Android+ обмен HTTP запросами» очень хорошо себя показала как замена связки RDP+1C. Ну и возможностей у нативного приложения конечно несравнимо больше чем у 1С мобильной платформы. Данное решение можно рассматривать как пример такого рода взаимодействия на котром можно строить другие решения, тот же WMS-клиент или клиент для службы доставки.

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

Со стороны 1С также публикуется веб сервис для приема запросов (в процессе обучения).

В 1С в константе надо указать адрес сервиса приложения без "http://":

 

Первичное обучение. Нужно выделить объекты по которым надо получить координаты. И нажать кнопку «Запустить первичное обучение на ТСД». На ТСД появится такой диалог.

Далее надо переходить (ногами) к точкам указанным на экране и отправлять данные в 1С нажимая на кнопку. В результате в 1С данные будут записаны в регистр «Лог координат» с пометкой «Первичное обучение». Собственно это и есть данные для обучения. После того как точки кончатся на клиенте всплывет тост о том что обучение закончится. В 1С надо нажать кнопку «Обучить сеть в 1-й раз». После этого можно включать показ координат и пользоваться картой.

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

Ну и собственно результат. Нажав на кнопку «Включить показ положения» запускается обработчик ожидания который периодически посылает запрос клиенту, получает данные о сигнале, отправляет в 1С, 1С это пропускает через нейросеть которая выдает координаты X и Y на карте и рисуется зеленый кружок.

 

Области применения

 

  • Как API для приложения клиентов в торговых центрах для того, чтобы покупатели могли ориентироваться в ТЦ/магазинах. Например мебельных, строительных – там где большая территория
  • Размещение товара в торговом зале/складе по принципу «товаровед поставил метку – отправил задание – исполнителю высветилось место назначения/маршрут»
  • Складские территории с сложной топологией для облегчения ориентирования
  • Как технология для автоматизированных складов

 

Итоги

Я специально не стал писать о том какая сеть используется, сколько скрытых слоев и нейронов и т.д. Это все достаточно индивидуально и может быть настроено в обработке под конкретное помещение. Также можно использовать другие архитектуры или другие мат. методы, можно пользоваться сервисами Azur например или кому что нравится. Как показали отзывы к моей статье про нейросети в сообществе есть люди отлично разбирающиеся в вопросе. Единственное что можно порекомендовать – точки для обучения должны охватывать в том числе границы объекта – т.е. если это комната  то померить в 4й углах и где нибудь в центре.

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

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

Наименование Файл Версия Размер
Демо база с обработкой "Карта склада"

.dt 268,13Kb
21
.dt 268,13Kb 21 Скачать
apk-файл

.apk 1,22Mb
14
.apk 1,22Mb 14 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. nyam-nyam 09.08.18 10:48 Сейчас в теме
Никак не могу придумать зачем это может понадобиться на практике., хотя если ещё калькулятор калорий прикрутить и запись треков с показом на карте...
ivorontsov; kild; +2 Ответить
2. neikist 09.08.18 10:53 Сейчас в теме
(1) В смысле? Как раз для ориентирования по складу. Ну или для ремонтников поиск конкретного оборудования в цехах. И еще куча вариантов.
SergeyTerentyev; +1 Ответить
5. nyam-nyam 09.08.18 11:29 Сейчас в теме
(2)На сколько я понял, поиск идёт некого терминала, который считывает коды со стелажей и товара. Так что поиск нужен будет только в случае если терминал где-то оставит сотрудник. Оборудование в цехах - ну если только сломанного робота беглеца искать, остальное оборудование либо стационарное, либо тот же терминал, у которого есть хозяин.. :)
6. neikist 09.08.18 11:40 Сейчас в теме
(5) Угу, стационарное, а как это стационарное оборудование найти если помещение 100x50 метров, и станков сотни? Я скорее говорю не про применимость конкретного решения, а про концепт определения координат внутри помещений по косвенным признакам.
8. nyam-nyam 09.08.18 11:44 Сейчас в теме
(6)Концепт хорош, спору нет. Интересно узнать что сподвигло автора на разработку кроме академического интереса.
10. informa1555 2283 09.08.18 11:52 Сейчас в теме
(8) Хотелка заказчика. Чисто эксперимент получится или нет. Такая организация склада сырья что адреса конечно есть но ориентироваться в "вон та куча песка" или "вон тот брус" сложновато
19. wertep 21.12.18 10:32 Сейчас в теме
(10) Слишком академическая, много если должно быть выполнено.
На практике решается более надежным способом "разметкой пола" и "навесными знаками". Вот так например.
3. informa1555 2283 09.08.18 11:11 Сейчас в теме
(1) Когда то я занимался теплицами и очень не хватало этого. Сейчас я занимаюсь проектом с большими территориями с наземным хранением и это необходимо. Ну а глобально, если в процессе наработается хорошая точность, то это шаг к автоматизированным складам с небольшими затратами - ну знаете где людей нет, вкалывают роботы)) Ну это так, мечты. Разработкой позиционирования занимаются многие, как я писал Cisco, Нокия занималась да много кто. Это вроде как нужная штука.
EvgenURNN; +1 Ответить
4. neikist 09.08.18 11:19 Сейчас в теме
(3) Не думали еще дополнительно для большей точности механизмы инерциальной навигации прикрутить?
9. informa1555 2283 09.08.18 11:47 Сейчас в теме
(4) Честно говоря даже не знал про такое. Если можно скиньте ссылки?
11. neikist 09.08.18 11:56 Сейчас в теме
(9) к сожалению несмотря на широту кругозора - он у меня в стиле "слышал о многом, но краем уха")) Так что все мои знания ограничиваются тем что есть такой способ навигации, и он когда то даже использовался на практике, причем как бы не на механике сделали отображение на бумажной карте текущее. (и вроде как иногда и сейчас используется)
12. nyam-nyam 09.08.18 12:50 Сейчас в теме
(4) Инерциальная навигация в данном случае не подходит - нет акселерометра и гироскопа чтобы вычислять ускорение и угловые скорости. Но если мониторинг идёт постоянно, то можно ещё сделать проверки "скачков", чтобы не было как в навигаторах в центре Москвы - то ты едешь по Тверской, то бах - и в Шереметьево.
7. nyam-nyam 09.08.18 11:41 Сейчас в теме
(3)Если можно по подробнее о теплицах - что там на WiFi и требует позиционирования? Про большие территории - опять же отслеживать перемещение сотрудников по их терминалам? Чтобы не спали в тихих уголках? :) Скорее актуально для поиска несанкционированных WiFi устройств.
13. zakiap 11.08.18 13:42 Сейчас в теме
Прикрути создание карты покрытия WiFi сигнала, чтобы в живую можно видеть уровень сигнала WIFI в виде закрашиваемых зон по складу, будет более актуально для контроля устойчивого покрытия
informa1555; +1 Ответить
14. informa1555 2283 11.08.18 14:29 Сейчас в теме
(13) Отличная идея! Так и сделаю
15. nafa 656 15.08.18 09:34 Сейчас в теме
Идея замечательная. Но все же про точность хотелось бы подробнее. Вы пишете что расчет идет в пиксеклях, но Вы же знаете размер картинки и соответствнно можете перевести его на метры ?
informa1555; +1 Ответить
16. informa1555 2283 15.08.18 10:38 Сейчас в теме
(15) Да я пробовал так. При 1 пикселе =11 см примерно, разбег по 1 оси от 0 до 7-8 пикселей примерно. Основная масса примерно в +/-5-6 пикселей попадает. Опять же при условии что стеллажи нарисованы точно там где они есть+сканируют адрес с примерно одинакового расстояния (контроль производится при сканировании адресов) Думаю что точность можно увеличить экспериментируя с сетью.
17. nafa 656 15.08.18 14:48 Сейчас в теме
Очень хороший показатель.
18. CheBurator 3075 28.08.18 17:35 Сейчас в теме
20. papami 53 05.01.19 09:54 Сейчас в теме
Дмитрий, а какое минимальное количество точек порекомендуете для первоначального обучения?

Кстати, публикация в топе 5 при запросе в Google "позиционирование в помещении"
21. informa1555 2283 05.01.19 10:32 Сейчас в теме
(20) Мне кажется для прямоугольного помещения - минимально 5 точек - по углам и в центре.
Кстати, публикация в топе 5 при запросе в Google "позиционирование в помещении"
- наверное мало материалов по этой теме
22. papami 53 05.01.19 18:48 Сейчас в теме
Думаю, что неправильно сформулировал вопрос. Я про набор данных. Обычно же сотнями-тысячами измеряются количество примеров для обучения. Ну если теорию читать.
Возможно, получится развернуть что-то подобное, только на Bluetooth LE.
23. informa1555 2283 05.01.19 19:23 Сейчас в теме
(22) Сотни тысячи? Это если не вычислять зависимости( чем занимается сеть) а тупо снимать паттерн в каждой точке . Тогда да в каждой точке надо будет померить 3 сигнала (ну или сколько там роутеров), запихнуть в таблицу а потом когда надо определить местоположение типа найти максимально похожий (с минимальными дельтами т.е.) набор значений. Тогда да. Я так понимаю Cisco так делает. Кстати на моей инфраструктуре вы легко можете воспроизвести и этот метод.Но тогда придется побегать по помещению. Альтернатива - триангуляция. Там есть формулы. Но я ленивый человек и не хочу курить формулы, потом еще вносить в них корректирующие коэффициенты (помехи, и расположение роутеров), поэтому аппроксимация возлагается на нейросетку. Насколько я знаю такого метода никто больше не использует, видимо его придумал я)) Но ничего сверхестественного тут нет - это та же триангуляция только вместо формул - аппроксимация на нейросети. Вот и все.
24. papami 53 05.01.19 19:44 Сейчас в теме
Я экспериментировал с OpenCV - дрессировал на поиск одной конкретной игрушки в кадре - набирал несколько сотен снимков, чтобы работало. Но там задача другая конечно. Еще был какой-то пример с классификацией цветков по размерам чего-то там из Тензор Флоу - там тоже много было примеров. А вот подобное еще не пробовал. Но вопрос позиционирования нейросеткой затронут в каком-то видео Майкрософта на ютуб (смотрел давно, надо будет поискать). И об этом много публикаций в англоязычном интернете. Как правило в PDF сразу - как научный труд).
25. gudun_ku 62 14.03.19 13:18 Сейчас в теме
Хорошая тема, непонятно только зачем использовать именно нейросеть, если конкретно есть измерение уровня сигнала от трех источников, которое может быть сведено к решению уравнения множественной регрессии?
26. informa1555 2283 14.03.19 14:29 Сейчас в теме
(25) Спасибо. Ну я шел наугад, использовал первое что попалось под руку. Можно и множественную регрессию, да - инфраструктура же есть, алгоритм в 1Ске прикрутить можно любой.
27. boss_kuz 104 29.05.21 07:33 Сейчас в теме
Я тоже думал о таком "подходе" для позиционирование терминала на складе. Но я только в начале пути. Не хотели бы вы поделиться кодом клиентского приложения ? Можно за деньги.
28. informa1555 2283 29.05.21 08:13 Сейчас в теме
(27) Я сейчас понял страшную вещь - я похоже потерял исходник)))) Но там все пишется на 1 страницу кода. Я имею ввиду сам код получения уровня сигнала с роутеров это - несколько строчек. Остальное - обвязка.
29. boss_kuz 104 29.05.21 10:11 Сейчас в теме
Может поможете? На ставите на истинный путь. Хочется с, экономить время. Предыдущее предложение в силе.
30. informa1555 2283 29.05.21 10:44 Сейчас в теме
(29) Гуглится же легко:
WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);

// Level of a Scan Result
List<ScanResult> wifiList = wifiManager.getScanResults();
for (ScanResult scanResult : wifiList) {
  int level = WifiManager.calculateSignalLevel(scanResult.level, 5);
  System.out.println("Level is " + level + " out of 5");
}

// Level of current connection
int rssi = wifiManager.getConnectionInfo().getRssi();
int level = WifiManager.calculateSignalLevel(rssi, 5);
System.out.println("Level is " + level + " out of 5");
Показать
Оставьте свое сообщение

См. также

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

Инструментарий разработчика Анализ учета Платформа 1С v8.3 Запросы Абонемент ($m)

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

2 стартмани

11.08.2020    7453    33    vozhd    4    

Функции "слоупока": как заставить открываться "Все функции" в 97 раз быстрее!

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Наверное, каждый программист 1С (да и не только программист), открывая «Функции для технического специалиста» (ранее «Все функции») на массивных конфигурациях вроде ERP 2.4 и т.п., в своей жизни много раз задавался вопросом – почему же они так долго открываются?? Действительно, в зависимости от мощностей сервера «Все функции» могут открываться от 20 секунд до 2 минут! «Ну, слишком много объектов в конфигурации, огромное количество констант, справочников, документов, регистров… – Отвечали себе страдающие пользователи. – Пока программа обойдёт в цикле все метаданные, пока построит дерево… Тут ничего не поделаешь…». И все они были не правы! Я провёл собственное расследование, которое показало, что 97% времени построения дерева метаданных тратится на…

1 стартмани

09.03.2022    14110    63    XilDen    74    

Программное формирование существующих печатных форм

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Получение списка печатных форм, формирование выбранной печатной формы и сохранение ее в файл.

1 стартмани

17.12.2021    5618    16    RocKeR_13    3    

Универсальный редактор данных (УРД)

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Универсальный редактор данных (УРД) - это лучший инструмент в своем классе, который позволяет редактировать реквизиты и движения объектов

1 стартмани

27.08.2021    11203    177    Adeptus    53    

Тестирование проводок в ЕРП и КА Промо

Инструментарий разработчика Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Бухгалтерский учет Абонемент ($m)

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

1 стартмани

02.09.2020    5482    28    JohnConnor    7    

HTTP-клиент

Инструментарий разработчика Платформа 1С v8.3 Мобильная платформа Конфигурации 1cv8 Абонемент ($m)

Подсистема 1С для работы с HTTP.

1 стартмани

28.07.2021    10522    34    SpaceOfMyHead    46    

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

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

2 стартмани

06.03.2021    11138    6    pila86    16    

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

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

5 стартмани

21.12.2020    15069    28    huxuxuya    11    

Навигатор по конфигурации базы 1С 8.3 Промо

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Платформа 8.3, управляемые формы. Версия 1.1.0.89 от 04.08.2022

3 стартмани

28.10.2018    52498    471    ROL32    72    

А1Э - альтернативная стандартная библиотека для 1С

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

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

14.08.2020    17935    0    Enigma    47    

Консоль кода для управляемых форм

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

17.07.2020    36621    523    salexdv    394    

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

Инструментарий разработчика Платформа 1С v8.3 Россия Абонемент ($m)

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

1 стартмани

05.03.2020    12974    12    moolex    12    

Удаление и/или копирование сохраненных в 1С настроек (например настроек печати табличных форм) Промо

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Иногда нужно удалить сохраненную в 1С "покореженную" настройку или скопировать "удачную" другому пользователю...

1 стартмани

01.09.2012    72541    1403    AnryMc    46    

Консоль запросов 9000

Инструментарий разработчика Платформа 1С v8.3 Запросы Конфигурации 1cv8 Абонемент ($m)

Простая и удобная консоль запросов 1С для управляемых форм 8.3, работает на любой конфигурации без ее модификации. Возможность использования как внешней обработки или в составе расширения. С перехватом любых запросов и поддержкой всех типов данных во временных таблицах. Анализ плана запроса, запроса на уровне СУБД. Обработка результата кодом.

1 стартмани

24.02.2020    33576    582    kuza2000    160    

Конвейер проверки качества кода

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.

3 стартмани

04.09.2019    46254    33    Stepa86    46    

Запуск 1С под любым пользователем (без необходимости указания пароля)

Пароли Инструменты администратора БД Инструментарий разработчика Платформа 1С v8.3 Управление правами Конфигурации 1cv8 Абонемент ($m)

Предназначается для запуска сеанса другого пользователя из своего сеанса 1С (если пароль вам неизвестен).

1 стартмани

02.07.2019    35631    407    sapervodichka    0    

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

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

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

1 стартмани

24.05.2012    90300    973    moolex    157    

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

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

30.06.2019    20646    2    vadim1980    5    

Переводим рутину ручного тестирования 1C на рельсы Jenkins-а и ADD

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Вы все еще тестируете свои конфигурации 1С вручную? Да вы просто тратите жизнь впустую! В данном туториале попробуем скрестить ADD и jenkins для автоматического запуска тестов.

1 стартмани

03.06.2019    46754    12    ripreal1    92    

Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

13.05.2019    45923    189    Diversus    44    

Блин, мы забыли включить регламентные задания…

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Привет, Инфостарт! Сегодня расскажу, как я решил проблему с выключенными регламентными заданиями в рабочих базах. Желая исключить человеческий фактор и минимизировать количество ошибок, я написал небольшую конфигурацию.  В конфигурации два регламентных задания. Первое периодически подключается к кластеру и сохраняет текущие параметры: имя, Сервер БД, базу СУДБ, блокировки входа и регламентных заданий и т.д. Второе задание периодически проверяет эти параметры на ошибки.

1 стартмани

08.04.2019    30378    22    slozhenikin_com    37    

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

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

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

5 стартмани

09.01.2019    70445    280    informa1555    239    

Легкое и гибкое управление списком доступных баз 1С у пользователей

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Когда в локальной сети много пользователей, а еще большое количество различных баз и при этом каждому нужны свои, то администрирование этого зоопарка превращается в АД! Этот комплекс позволяет централизованно управлять списком доступных баз в разрезе пользователей. За пару кликов можно добавить или убрать базу у всех пользователей.

7 стартмани

05.12.2018    26197    27    RomikR    11    

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек.

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    61546    599    Eugen-S    36    

Консоль Внедренца v.3.6.2

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

27.08.2018    45628    499    evvakra    42    

HTTP Сервисы: Путь к своему сервису. Часть 3

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.

1 стартмани

27.08.2018    67468    85    dsdred    17    

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

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Абонемент ($m)

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

5 стартмани

14.08.2018    143485    3310    Evg-Lylyk    796    

Консоль HTTP-запросов с генерацией кода

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

25.05.2018    38490    369    leongl    20    

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

Инструментарий разработчика Платформа 1С v8.3 Управление правами 1С:Управление торговлей 11 Абонемент ($m)

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

10 стартмани

15.03.2018    28037    33    33lab    5    

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

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

08.02.2018    39771    23    mvxyz    17    

Паузы при исполнении кода (Sleep для 1С)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Решил проверить все найденные варианты паузы для 1С. В результате получилась обработка для тестирования и небольшая статья с итогом.

1 стартмани

28.11.2017    86169    21    swimdog    57    

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

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

18.11.2017    51574    54    bonv    13    

Быстрое удаление неиспользуемых версий 1С:Предприятие 8, кэша метаданных и информационных баз

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

14.11.2017    33974    102    bonv    15    

Трансформатор 1С - SQL

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

28.06.2017    48855    419    Synoecium    54    

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

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

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

1 стартмани

22.05.2017    43323    112    Silenser    34    

Автокликер для 1С

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

03.04.2017    41799    86    slava_1c    67    

Регулярные выражения – это просто. Построитель и отладчик регулярных выражений

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

13.03.2017    45615    129    romasna    54    

Сценарное тестирование в помощь программисту 1С

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

11.11.2016    35617    61    grumagargler    62    

Несколько шаблонов для доработки типовых конфигураций

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Абонемент ($m)

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

1 стартмани

03.10.2016    47265    106    json    25    

Управление задачами: Канбан доска

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Конфигурация "Управление задачами" с использованием БСП. Канбан доска. Открытый код.Загрузка изменений из хранилища конфигураций 1С и связь с задачами. Проект выложен на github (ссылка в публикации). Управляемые формы. Рассылка уведомлений.

1 стартмани

02.10.2016    91271    716    BlizD    330    

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

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

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

3 стартмани

19.08.2016    53795    338    hlopik    19    

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

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Беларусь Бухгалтерский учет НДС Абонемент ($m)

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

1 стартмани

28.07.2016    42164    21    c1nil    4