Bluetooth сканер штрихкодов и мобильное приложение 1С (Android)

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

Администрирование - Администрирование данных 1С - Сервисные утилиты

bluetooth сканер штрихкод сканер штрихкода фоновый режим broadcast разрыв клавиатуры Netum Android

Сервис для работы со сканером штрихкодов и передачи данных в мобильное приложение 1С.

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

Предыстория

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

Как работает сканер штрихкодов?

На данный момент, обычный (современный) сканер имеет два режима работы: режим разрыва клавиатуры и режим эмуляции com-порта (другое название SPP Mode).

В режиме разрыва клавиатуры сканер - это клавиатура. В таком случае необходимо чтобы:

  • Экран был включен
  • Курсор стоял в поле ввода
  • Необходимо разрабатывать особый алгоритм отработки данных

В режим SPP - это обычное устройство подключенное через com-порт, которое посылает на него сообщения (в данной случае считанный штрихкод)

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

Очевидно, режим SPP это то что нам нужно.

Как подключить беспроводной сканер к мобильному устройству в режиме SPP Mode?

На первый взгляд все просто: включить bluetooth, найти устройство в окружении, подключиться к нему. Да, устройство подключится, но толку от него не будет. Для того чтобы работать со сканером в режиме SPP Mode необходимо дополнительное приложение, которое будет с ним работать. А именно поддерживать подключение и принимать сообщения. И тут на помощь приходит Java. С ее помощью можно разработать то самое приложение, которое нам требуется.

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

раз Управляемый Android Service перехвата сообщений Broadcast со сканера штрих-кодов в 1С

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

Сервис для работы с беспроводным сканером в режиме SPP Mode

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

Немного о сервисе:

  • Сервис предоставляет функцию получению УИД устройства (только спаренного, то есть подключенного). Полученный УИД можно будет сохранить где-нибудь в константе и далее использовать его для подключения
  • Сервис предоставляет функцию подключения к сканеру (с помощью ранее полученного УИДа) и обеспечивает фоновую работу с устройством.
  • Сервис выполняет фоновую отправку уведомления в мобильное приложение 1С.
  • Сервис работает со всеми сканерами которые имеют функцию SPP Mode

Как это выглядит в 1С ---->>>>

 

 

Вот основное действие для запуска сервиса

#Если МобильноеПриложениеКлиент Тогда
	Попытка
		Запуск = Новый ЗапускПриложенияМобильногоУстройства();
		Запуск.Действие = "com.bluetoothscanersender.action";
		// Для ServiceState есть два действия
		// 1. GetBTAdress  - получаем адрес блютуса
		// 2. start - выполняет подключение к сканеру и запускает процедуру для работы с сообщениями от сканера
		Запуск.ДополнительныеДанные.Добавить("ServiceState","start"); 
		Запуск.ДополнительныеДанные.Добавить("BTAdress",ЗначениеКонстант.АдресBluetooth); 
		// получим идентификатор базы, так как при нескольких базах при входящем сообщении
		// будет появляться ошибка "Уведомление для неизвестного приложения"
		СистемнаяИнформация = Новый СистемнаяИнформация;
		// при одной базе указать значение ""
		Запуск.ДополнительныеДанные.Добавить("ServiceBase_Name","");
		// результат запуска будет в виде всплывающего окна "toast" из запускаемого приложения
		Запуск.Запустить(Истина);
	Исключение
	// сообщаяем что что-то не работает	
	КонецПопытки;
#КонецЕсли

Вот процедура для обработки уведомлений из сервиса (все возвращаемые значения имеют тип "Строка")

// выполняет подключения обработчика событий, который будет мониторить локальные уведомления
//
Процедура ПодключитьГлобальноеСобытиеОповещения()  Экспорт
	#Если МобильноеПриложениеКлиент Тогда
		ОП = Новый ОписаниеОповещения("ОбработчикЛокальныхУведомлений", ЭтотОбъект);
		ДоставляемыеУведомления.ПодключитьОбработчикУведомлений(ОП);  
	#КонецЕсли
КонецПроцедуры // ПодключитьГлобальноеСобытиеОповещения()

// Подключает процедуру-обработчик получения уведомления
//
// Параметры:
//  Уведомление - Объект, содержащий данные уведомления, у которого заполнены только поля "Текст" и "Данные", остальные содержат значения по умолчанию.
//  Локальное - тип Булево. Истина - уведомление было создано локально операционной системой. Ложь - было получено Push-уведомление. 
//  Показано - тип Булево. Указывает, что уведомление было показано пользователю средствами операционной системы.
//
Процедура ОбработчикЛокальныхУведомлений(Уведомление,Локальное,Показано,ДопПараметр) Экспорт
	ГлобальноеСобытиеОповещения(Новый Структура("Отправитель,Текст",Уведомление.Текст,Уведомление.Данные));
КонецПроцедуры // ОбработчикЛокальныхУведомлений()

// Обработчик перехваченного события
//
Процедура ГлобальноеСобытиеОповещения(Сообщение)
	Отправитель = Сообщение.Отправитель;
	Если Отправитель = "SenderBarcode" Тогда
		// получили штрих код
		Оповестить(Отправитель,Сообщение.Текст, "Сканирование ШК");
	ИначеЕсли Отправитель = "GetBTAdress" Тогда
		// получили адрес bluetooth нашего сканера в формета "Имя сканера /// Адрес сканера"
		Оповестить(Отправитель,Сообщение.Текст, "Адрес bluetooth");
	Иначе 
		Возврат
	КонецЕсли;	
КонецПроцедуры 

 

Баги, фичи и прочие факи

При разработке приложения на Java проблем не было. Они начались при попытки "подружить" сервис и мобильного приложения 1С. 

Итак, имеем следующие баги (или если хотите недоработки) в мобильной платформе 1С:

  • Самая важная проблема - мобильное приложение не может принимать внешние оповещения. Вернее в каких то версиях могло принимать, а в каких то нет. В комментариях к этой (Публикация) публикации это упоминалось. Чиниться это просто:

в файле платформы permissions.xml по адресу Android\prjandroid-arm\bin (точно также как описано в публикации) добавляем android:exported="true" и добавляем фильтр на получаемые уведомления 

<intent-filter>
     <action android:name="com.google.android.c2dm.intent.RECEIVE" />
</intent-filter>

в итоге должны получить следующее: 

    <LocalNotification>

        <uses-permission android:name="android.permission.VIBRATE"/>

        <target xpath="/manifest/application" >

            <receiver
                android:name="com.e1c.mobile.LocalNotificationReceiver"
                android:enabled="true"
                android:exported="true">
				<intent-filter>
                    <action android:name="com.google.android.c2dm.intent.RECEIVE" />
                </intent-filter>
            </receiver>
        </target>
    </LocalNotification>

именно по этому адресу сервис будет отправлять сообщения в 1С, а 1С соответственно получать их.

В сервисе это выглядит так (сообщение отправки списка блютуз устройств):

Intent intentFor1C = new Intent("com.google.android.c2dm.intent.RECEIVE");
intentFor1C.putExtra("text", "GetBTAdress");
intentFor1C.putExtra("title", "1C");
intentFor1C.putExtra("data", (Serializable) TextOfDevice);
intentFor1C.putExtra("base", BaseName);

Есть некоторые "фичи":

  • При сворачивании мобильного приложения 1С, и при следующем возвращении к нему, запущенный клиентский ранее сеанс зависает. И при этом требуется перезапустить приложение. Можно ли это как исправить?Если кто-то знает может поделиться информацией.

Оборудование и программное обеспечение.

При разработке я использовал:

  1. Сборщик мобильных приложений 1С версии 2.0.7.48 (в сборщике использовал ANT 1.10.5, JDK 1.8.0_181 )
  2. Мобильная платформа 1С версии 8.3.9.91 (Версия 8.3.12.67 вообще не собралась, опытным путем решил что там ошибок больше чем в выбранной 8.3.9)
  3. Планшет Samsung Galaxy Tab A (Android 5.1)
  4. Сервис для работы со сканером написан на Java c помощью Android Studio 3.2.1, с поддержкой api level 15 (взял минимальный для того чтобы приложение работало на большинстве устройств)
  5. Сканер штрих кодов Netum RD-1698LY (Вот ссылка на его описание). Сразу скажу что режим SPP Mode у него работает только с Windows и Android.

Улучшение сервиса

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

 

 

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

Наименование Файл Версия Размер
Тестовая мобильная конфигурация

.cf 24,53Kb
31.10.18
19
.cf 24,53Kb 19 Скачать
Сервис работы со сканером

.apk 1,49Mb
05.11.18
16
.apk 1,49Mb 16 Скачать
Исходники сервиса работы со сканером

.zip 12,28Mb
05.11.18
14
.zip 12,28Mb 14 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. s.kochnev 12.11.18 14:01 Сейчас в теме
Спасибо, очень полезная штука. Не знаю, чем так принципиально отличается приложение из сборщика от типового APK, но у ОбработчикЛокальныхУведомлений() должно быть четыре параметра для типовой платформы, хоть это и не описано в СП.
2. Isonic 188 15.11.18 08:55 Сейчас в теме
(1) Да Вы правы.Поправил. Спасибо)
3. s.kochnev 19.11.18 14:37 Сейчас в теме
Здравствуйте!

При сканировании штрих-код почему-то делится на две части, обычно это первая цифра, а потом остальное. Соответственно получается два разных ШК. Выяснил, что приходит именно два события, то есть обработчик уведомлений вызывается дважды. Платформа 8.3.9.91 (в 8.3.11 так же точно), Android 7.1.2, сканер Motorola CS3070. Когда пробовал первый раз, вроде всё нормально было. Пока не могу попробовать на другом устройстве.
4. Isonic 188 19.11.18 15:45 Сейчас в теме
(3) Предполагаю что у двух обработчиков платформы одинаковые фильтры стоят, то есть в файле платформы "permissions.xml" в двух секциях, скорее всего в <PushNotification> и в <LocalNotification>, в обработчике <receiver> стоят одинаковые значения. Можете показать две эти секции?
5. s.kochnev 19.11.18 15:57 Сейчас в теме
(4)
У меня стандартный apk от 1С, разобрал apktool'ом, там такого файла нету, в AndroidManifest.xml вот такое:

<receiver android:enabled="true" android:name="com.e1c.mobile.PushNotificationReceiver">
  <intent-filter>
    <action android:name="com.google.android.c2dm.intent.RECEIVE"/>
      <category android:name="com.e1c.mobile"/>
  </intent-filter>
</receiver>

и
<receiver android:enabled="true" android:name="com.e1c.mobile.LocalNotificationReceiver"/>


Сборщик приложений у меня, видимо, недоступен по подписке, так что других вариантов нету.
6. Xershi 980 19.11.18 16:33 Сейчас в теме
Добрый день!
Планирую написать генератор баркодов на андроиде.
В этой теме изучаю вопрос: https://forum.infostart.ru/forum15/topic202825/
Можете поделиться информацией как продвинуться дальше нуля?
7. user1151163 15.02.19 22:06 Сейчас в теме
а можно в это приложение добавить мобильный принтер (этикеток) ?
8. Isonic 188 18.02.19 08:04 Сейчас в теме
(7) Вы про формирование штрихкода в мобильном приложении? Или про вызов печати из приложения?
9. Mechanik21 21 27.02.20 17:00 Сейчас в теме
А как подключить к 1с на компе блютуз сканер с SPP? два ком-порта у меня есть, что делать с ними не знаю, тест драйвера говорит, что они заняты
10. KAV2 98 10.03.20 18:16 Сейчас в теме
Фидбэк:
Если установить службу, открыть в 1С форму настроек и включить запуск при старте, но при этом не указать ни одного сканера для подключения (АдресBluetooth пустой),то при старте служба крашится, а в месте с ней и 1С.
11. starik-2005 2176 10.03.20 18:30 Сейчас в теме
А зачем сложно-то так? Есть внешняя компонента 1С (в ней и мобильная компонента есть) для подключения сканера (с версии 8, если правильно помню - актуальная сейчас). Сканер подключается к телефону по блютусу, работает как HID-устройство (клавиатура). Компонента просто из макета в модуле сеанса подключается и дальше в любой форме через обработчик внешнего события в МП передается сосканированный ШК.
12. KAV2 98 10.03.20 20:41 Сейчас в теме
(11) Это в БПО для мобильных приложений? А не подскажите как называется макет с внешней компонентой в конфигурации?
13. Isonic 188 11.03.20 08:40 Сейчас в теме
(11) Для того чтобы сканер работал как клавиатура никаких компонент не нужно, просто подключаешься к сканеру и готово. А данная публикация показывает как работать со сканером в фоновом режиме.

Или Ваша компонента может работать в режиме SPP Mode?
14. starik-2005 2176 11.03.20 10:25 Сейчас в теме
(13) компонента от 1С может работать на мобильной платформе в фоновом режиме, перехватывая клавиатуру и генерируя внешнее событие для формы или модуля сеанса. Это стандартная компонента из библиотеки подключаемого оборудования. Поэтому, ИМХО, изобретать велосипеды тут не нужно - там все очень стабильно работает. Эта компонента используется, в частности, в мобильной рознице, которую можно скачать с гуглплэя даже...
15. Isonic 188 11.03.20 10:53 Сейчас в теме
(14) чтобы не быть голословным, можете скинуть ссылку сия чуда?
17. starik-2005 2176 11.03.20 11:40 Сейчас в теме
(15)
(16)
По поводу макета, то это общий макет, называется как-то типа ДрайверВнешнейКомпонентыСканераБлаБлаБла... - ну реально посмотрите внимательно сами в БПО, у меня сейчас на компе ее нет. Я в МП просто выдернул этот макет и назвад "drv", подключается так:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
	НачатьПодключениеВнешнейКомпоненты(Новый ОписаниеОповещения("ПослеПодключения1", ЭтаФорма, ), "ОбщийМакет.Drv", "InputDevice", ТипВнешнейКомпоненты.Native);
КонецПроцедуры

&НаКлиенте
Процедура ПослеПодключения1(Рез, Доп) Экспорт

	Т = Mainer.Добавить(); // таблица на форме
	Т.Код = "После подключения!";

	Если Рез = Ложь Тогда 
		Т = Mainer.Добавить(); // таблица на форме
		Т.Код = "ОПА!";
	Иначе
		ВК = Новый("AddIn.InputDevice.InputDevice"); // создаем это самое
		Версия = ВК.GetVersion(); // получаем версию (можно и без нее)
		П1 = "";
		П2 = "";
		П3 = "";
		П4 = "";
		П5 = "";
		П6 = "";
		П7 = "";
		
		ВК.ПолучитьОписание(П1, П2, П3, П4, П5, П6, П7); // получаем описание

		Параметры1 = "";

		ВК.ПолучитьПараметры(Параметры1); // получаем параметры
		СтрокаПараметры = Параметры1;

		ВК.УстановитьПараметр("BluetoothDevice", "DEV_KEYBOARD"); // устанавливаем тип сканера блютус девайЗ
		ВК.УстановитьПараметр("OutputDataType", 0); // тип данных выходных

		ОК = ВК.Подключить(""); // подключаем компоненту 
		Если НЕ Ок Тогда
			ВК.ПолучитьОшибку( П7 ); // если ошибка
			Т = Mainer.Добавить();
			Т.Код = П7;
		Иначе
			Mainer.Добавить().Код = "Подключено" // если без ошибок
		КонецЕсли;
	КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные) // внешнее событие, генерируемое компонентой
	Строки = Mainer.НайтиСтроки(Новый Структура("Код", Данные));
	Если Строки.количество() = 0 Тогда 
		Т = Mainer.Добавить(); // добавляем строку
		Т.Код = Данные;  // данные - это ШК
	Иначе
		Т = Строки[0]
	КонецЕсли;
	Т.Количество = Т.Количество + 1;
	СтрокаКод = "";
КонецПроцедуры
Показать


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

В манифест-файле вот такие слова:
<?xml version="1.0" encoding="UTF-8"?>
<bundle xmlns="http://v8.1c.ru/8.2/addin/bundle" name="com_1c_ScanOPOS">
<component os="Windows" path="ScanOPOSNativeWin32_9_0_7_5.dll" type="Native" object="" arch="i386" client="" clientVersion="" xmlns="" />
<component os="Windows" path="ScanOPOSNativeWin64_9_0_7_5.dll" type="Native" object="" arch="x86_64" client="" clientVersion="" xmlns="" />
<component os="Linux" path="ScanOPOSNativeLin32_9_0_7_5.so" type="Native" object="" arch="i386" client="" clientVersion="" xmlns="" />
<component os="Linux" path="ScanOPOSNativeLin64_9_0_7_5.so" type="Native" object="" arch="x86_64" client="" clientVersion="" xmlns="" />
<component os="Windows" path="AddInChromeSetup.exe" type="plugin" object="com.1c.enterprise.scanoposnative.native.9.0.7.5" arch="i386" client="Chrome" clientVersion="" xmlns="" />
<component os="Windows" path="AddInChromeSetup.exe" type="plugin" object="com.1c.enterprise.scanoposnative.native.9.0.7.5" arch="i386" client="Firefox" clientVersion="40.*" xmlns="" />
<component os="Windows" path="AddInChromeSetup.exe" type="plugin" object="com.1c.enterprise.scanoposnative.native.9.0.7.5" arch="x86_64" client="Chrome" clientVersion="" xmlns="" />
<component os="Windows" path="AddInChromeSetup.exe" type="plugin" object="com.1c.enterprise.scanoposnative.native.9.0.7.5" arch="x86_64" client="Firefox" clientVersion="40.*" xmlns="" />
<component os="Windows" path="PackageIE.cab" type="plugin" object="1C-SoftScanOPOSNative_9_0_7_5_IE.AddInServiceEx" arch="i386" client="MSIE" clientVersion="" xmlns="" />
<component os="Android" path="libcom_1c_ScanOPOS_i386_9_0_7_5.so" codeType="c++" type="native" arch="i386"/>
<component os="Android" path="com_1c_ScanOPOS_9_0_7_5.apk" codeType="java" type="native" arch="i386"/>
<component os="Android" path="libcom_1c_ScanOPOS_ARM_9_0_7_5.so" codeType="c++" type="native" arch="ARM"/>
<component os="Android" path="com_1c_ScanOPOS_9_0_7_5.apk" codeType="java" type="native" arch="ARM"/>
<component os="Android" path="libcom_1c_ScanOPOS_ARM64_9_0_7_5.so" codeType="c++" type="native" arch="ARM64"/>
<component os="Android" path="com_1c_ScanOPOS_9_0_7_5.apk" codeType="java" type="native" arch="ARM64"/>
<component os="Android" path="libcom_1c_ScanOPOS_x86_64_9_0_7_5.so" codeType="c++" type="native" arch="x86_64"/>
<component os="Android" path="com_1c_ScanOPOS_9_0_7_5.apk" codeType="java" type="native" arch="x86_64"/>
</bundle>
Показать
KAV2; Isonic; +2 Ответить
18. Isonic 188 11.03.20 11:53 Сейчас в теме
(17) Спасибо. Надо изучить этот вопрос. Кажется мне, что не все сканеры поддерживаются данной компонентой.
19. starik-2005 2176 11.03.20 11:55 Сейчас в теме
(18)
Кажется мне, что
Там есть эти самые параметры, в них список портов и названий устройств - в формате XML. В данном случае настроено на внутренний сканер ТСД, который сконфигурирован как клавиатурный эмулятор (в настройках андройда на ТСД). А так в этих параметрах список подключаемых устройств - 1С в БСП парсит этот файл и возвращает для каждого параметра список возможных настроек в виде формы настроек подключаемого оборудования (да, такая фича и в мобильной БСП есть, которая является неотъемлемой частью самой БСП).
20. KAV2 98 12.03.20 14:15 Сейчас в теме
(17) Сергей, огромное спасибо за такой подгон! А вы не знаете, надо ли передавать в компоненту мак адрес сканера? или вы вот точно так его подключали как в вашем примере?
21. starik-2005 2176 12.03.20 14:49 Сейчас в теме
(20)
или вы вот точно так его подключали как в вашем примере?
Я подключал локальный сканер, ТСД (встроенный),, который настроил на генерацию событий клавиатуры.

Предположу, что при получении параметров компонента сама передает список возможных устройств - нужно просто пропарсить xml, возвращающий настройки. У меня под рукой нет сейчас никакого сканера.
16. KAV2 98 11.03.20 11:12 Сейчас в теме
(14) Подскажите пожалуйста как называется макет с внешней компонентой в БПО?
Оставьте свое сообщение

См. также

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

Сервисные утилиты v8 Абонемент ($m)

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

1 стартмани

08.04.2019    14792    14    slozhenikin_com    37    

Создание *.dt файла из рабочей базы на сервере 1С без завершения работы пользователей

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Предлагаемая обработка создает *.dt файл (выгрузку ИБ) из рабочей базы на сервере 1С:Предприятие 8.3 без завершения работы пользователей.

1 стартмани

19.01.2020    9079    59    Sedaiko    15    

Командный интерпретатор для 1С

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Инструмент для выполнения команд CMD / PowerShell из 1С.

2 стартмани

15.11.2019    9976    20    YPermitin    41    

Simple UI: простой конструктор мобильных приложений для устройств на Android.Самый быстрый способ создания рабочего места на смартфоне или ТСД. Обновление от 30.05.2020: июньский пак дополнений

Мобильная разработка v8 УУ Абонемент ($m)

Simple UI – это бесплатная платформа для создания мобильных рабочих мест на Android. Конструктор позволяет создавать мобильные клиенты для учетных систем и самостоятельные приложения на телефонах, ТСД (терминалах сбора данных), планшетах, электронных киосках и других устройствах. При этом не нужно разбираться в мобильной разработке, Android SDK ведь основная цель платформы – максимально упростить процесс разработки и поддержки, сделать его визуальным, собирать приложения из готовых блоков с минимумом кода. Причем код обработчиков можно писать на языке учетной системы либо задавать логику обработки событий с помощью команд REST, SQL и визуального конструктора. Проект постоянно развивается изыскивая новые способы упрощения разработки и повышения функционала и является пожалуй самым быстрым способом как создать MVP-проект так и продакшн-систему под конкретное внедрение или тиражный продукт.Тестировалось на 1С: Предприятие 8.3 релиз 8.3.13.1865.

5 стартмани

14.11.2019    10798    94    informa1555    71    

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

Чистка базы Сервисные утилиты Администрирование данных 1С v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

04.11.2018    33649    357    Eugen-S    34    

ODa - Android приложение для подключения к любой конфигурации 1С, используя OData протокол

Мобильная разработка v8 1cv8.cf Абонемент ($m)

В платформе 1С реализована прекрасная возможность работы с открытым веб-протоколом OData, который предоставляет любой другой платформе интерфейс доступа - возможность запрашивать и обновлять данные из базы 1С. Далее в статье будут описаны особенности работы мобильного приложения ODa, которое без программировании на стороне Android'a позволит разработчикам публиковать базы 1С, что даст возможность обычным пользователям взаимодействовать с объектами метаданных, используя нативные элементы интерфейса платформы Android.

1 стартмани

22.10.2019    8184    8    Kosigo    11    

Закрытие незавершенных сеансов

Сервисные утилиты Администрирование СУБД v8 1cv8.cf Россия Абонемент ($m)

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

1 стартмани

20.09.2019    10217    46    AnatolPopov    8    

Мониторинг потребления ресурсов базами кластеров сервера

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Обработка позволяет, в графической форме, производить мониторинг потребляемых ресурсов базами данных кластера сервера 1с для платформ 8.3, 8.2. Обработка работает на платформе не ниже 8.3.6

2 стартмани

17.07.2019    7070    29    IVC_goal    34    

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

Стартеры 1С Сервисные утилиты Администрирование СУБД v8 1cv8.cf Россия Абонемент ($m)

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

5 стартмани

05.12.2018    13704    13    RomikR    9    

Мобильное приложение 1С: Список покупок и анализ расходов

Мобильная разработка Финансовый учет и бюджетирование (FRP) Финансовый учет и бюджетирование (FRP) v8 v8::Mobile Домашние учет и финансы Россия УУ Абонемент ($m)

В публикации рассмотрено небольшое домашнее мобильное приложение для составления списка покупок и анализа расходов. В приложении реализованы: работа с штрихкодами (сканирование встроенной камерой), поиск наименования товара по штрихкоду из интернета, загрузка чеков из ФНС по QR-коду, вывод QR-кода ранее загруженного чека и др.

1 стартмани

06.06.2019    8863    28    vasilievil    5    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

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

3 стартмани

04.05.2019    17086    66    MarkoSokolov    47    

Bash-скрипт для установки 1С:Предприятие 8.3 и СУБД PostgreSQL на сервер CentOS 7

Сервисные утилиты v8 Россия Абонемент ($m)

Данный скрипт позволяет полностью установить сервер 1С и СУБД PostgreSQL на одном хосте. Потом это же скрипт можно использовать для обновление платформы и дистрибутивов установки

1 стартмани

07.04.2019    13317    34    Sedaiko    29    

Конструктор мобильного клиента 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    39316    245    informa1555    200    

Утилита для регистрации ComConnector и консоли администрирования сервером по установленным версиям платформы

Сервисные утилиты v8 1cv8.cf Россия Абонемент ($m)

Утилита для разработчиков и пользователей с большим количеством установленных платформ 1С, для быстрой регистрации необходимых версий COMConnector и консоли администрирования серверов из одного места.

1 стартмани

20.03.2019    7752    28    vardeg    10    

LicDataDecoder - расшифровка файла программной лицензии 1С

Сервисные утилиты v8 1cv8.cf Россия Абонемент ($m)

Представляю вашему вниманию утилиту, предназначенную для работы с файлами программных лицензий 1С (*.lic).

1 стартмани

10.02.2019    25663    243    GeraltSnow    59    

Удобная консоль регламентных и фоновых заданий

Универсальные обработки Сервисные утилиты Администрирование данных 1С v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

06.02.2019    12664    148    Alxby    20    

Приложение Android для идентификации/распознавания образов (с обучением с одного раза, One-Shot Learning) с возможностью работы с 1С через веб-сервис Промо

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

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

1 стартмани

19.06.2018    13623    4    informa1555    15    

Универсальный монитор лицензий 1С

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Хотите узнать, какие программные лицензии установлены на сервере и все их технические подробности? А может быть, вам нужна информация по использованию всех видов лицензий кластера? Нет ничего проще, читай далее, чтобы быть в курсе!

3 стартмани

03.01.2019    24771    210    Xershi    67    

Скрипт обновления конфигурации

Сервисные утилиты v8 Абонемент ($m)

Как обновить конфигурацию базы? Столько всего сделать надо: И базу заблокировать, и пользователей выгнать. А ещё надо дождаться загрузки конфигурации и после этого применить её. Если же конфигурация на БСП, то запустить с ключом /C ЗапуститьОбновлениеИнформационнойБазы. И только потом можно пускать пользователей. А ещё на каждом этапе надо ждать окончания предыдущего. Это скучно. Давайте заливать конфигурацию в базы весело!

1 стартмани

11.12.2018    9314    42    MrWonder    18    

Чистка кэша 1С (теперь в .exe)

Сервисные утилиты v8 Абонемент ($m)

Попробуйте поискать в интернете "Очистить кэш 1С". Практически везде вы наткнетесь на всякие батники, ps-скрипты, рекомендации зайти и удалить вручную, поставить /ClearCache для баз на УФ и т.д. В подавляющем большинстве случаев предлагается бездумно удалить все содержимое \Roaming\1C\1cv8\ и \Local\1C\1cv8\, но это как переустановить Windows, чтобы почистить Temp.

1 стартмани

18.11.2018    14128    92    riposte    42    

Скачиваем релизы с сайта users.v8.1c.ru Промо

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

Обработка позволяет настроить список релизов, доступных пользователю, на сайте users.v8.1c.ru, проверять - вышли ли новые обновления и, если вышли, скачивать их и раскладывать по папочкам. Требует установки curl и openssl

10 стартмани

18.08.2014    37292    24    Demonobond    31    

Go. Разбор лога технологического журнала. Достойная альтернатива perl'у

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

Началось все с того, что я познакомился с перловыми скриптами для парса ТЖ которые размещены на kb.1c.ru (например в этой статье https://kb.1c.ru/articleView.jsp?id=113). По началу мне дико понравилось то, что перл разбирал гигабайты логов за считанные минуты, но позитив мой угасал обратно пропорционально с тем, насколько глубже я погружался в "кроличью нору" ....

1 стартмани

24.10.2018    18920    6    lazarenko    39    

Обнаружено нарушение целостности системы

Сервисные утилиты v8 1cv8.cf Россия Абонемент ($m)

Ошибка «Обнаружено нарушение целостности системы», причины и варианты устранения ошибки.

1 стартмани

03.10.2018    98610    470    Palmer1976    47    

Кое-что простое о сложных штрих-кодах

Сканер штрих-кода Бухгалтерский учет Розничная торговля Розничная торговля v8 1cv8.cf УУ Абонемент ($m)

На просторах и-нета часто встречаю публикации, в которых авторы с энтузиазмом рассказывают о том, как в штрих-код внести информацию о нескольких сущностях: например, как сделать, чтобы при сканировании одного штрих-кода на ярлыке товара, 1С определяла что это за товар, его качество и приходную накладную по которой этот товар поступил. Увы, но делается это "в лоб". Я предлагаю более разумный способ. Он очевиден - так что не претендую на лавры первооткрывателя.

1 стартмани

28.09.2018    14329    7    torch    15    

V8 Viewer. Открытие и сравнение внешних обработок в Проводнике + исходники Промо

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

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

2 стартмани

06.03.2013    64214    118    Evil Beaver    157    

1С:Коммандер (УФ)

Сервисные утилиты v8 v8::УФ 1cv8.cf Абонемент ($m)

Коммандер для просмотра файлов на клиенте и сервере.

1 стартмани

07.09.2018    8211    21    Student1C    9    

1C + Arduino + сканер отпечатков пальцев + RFID считыватель

Терминал сбора данных Сервисные утилиты Учет рабочего времени Учет рабочего времени v8 1cv8.cf Абонемент ($m)

Связываем 1C, Arduino, сканер отпечатков пальцев и RFID считыватель для системы учёта рабочего времени или пропускной системы.

1 стартмани

21.08.2018    21820    14    DGorgoN    39    

Мониторинг журнала регистрации при помощи Powershell

Сервисные утилиты Журнал регистрации v8 Абонемент ($m)

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

1 стартмани

12.07.2018    12369    5    user768334    7    

Tool1CD: отрежем донорскую почку

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

Ваша база мертва? Что ж, кое-что в ней ещё теплится.

1 стартмани

15.05.2018    17783    23    baton_pk    13    

Мобильный клиент + HTTP Сервис + Расширение конфигурации

Мобильная разработка v8 v8::Mobile 1cv8.cf Россия Абонемент ($m)

Пример использования Мобильного клиента, http сервиса и расширения. 10.04.2018 фирма 1С выпустила релиз 8.3.12.1412, с долгожданным мобильным клиентом. Платформа содержит еще ряд долгожданных функций, например возможность работы с расширением через хранилище, но разговор пойдет именно о Мобильном клиенте.

1 стартмани

16.04.2018    29745    41    dsdred    27    

Мониторинг изменений рабочих конфигураций. Часть 1. Сохранение конфигураций из базы SQL без конфигуратора

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

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

1 стартмани

28.02.2018    18648    17    user768334    25    

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

Сервисные утилиты v8 Абонемент ($m)

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

1 стартмани

14.11.2017    20139    86    bonv    15    

Сборка мобильного приложения 1С под IOS

Мобильная разработка v8 v8::Mobile Абонемент ($m)

В статье представлена инструкция по сборке мобильного приложения 1С под iOS с использованием бесплатного аккаунта разработчика Apple.

1 стартмани

29.01.2018    26833    61    Isonic    51    

“Заставим сканер пищать!” или Получаем обратную связь из 1С при сканировании штрихкодов

Сканер штрих-кода Учет ТМЦ Учет ТМЦ v8 1cv8.cf Абонемент ($m)

Получаем обратную связь из 1С при сканировании штрихкодов.

1 стартмани

10.01.2018    40701    100    vadnevzorov    70    

Практика доступа в базу 1С через протокол oData. Чтение данных

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

Для чего нужен доступ в базу 1С через REST-интерфейс по протокол oData? Как его организовать? Как не будучи гуру в JavaScript и .NET получить быстрый визуальный доступ к данным базы 1С? Попробую дать ответ на эти вопросы и прокомментирую некоторые нюансы, с которыми я столкнулся.

1 стартмани

11.12.2017    87430    300    Dementor    48    

Мобильное приложение "Отчет по проделанной работе" Промо

Мобильная разработка Учет рабочего времени Учет рабочего времени v8 Россия УУ Абонемент ($m)

Приложение выполняет фиксацию рабочего времени у клиентов, а также заявок на работы, пригодится как шаблон для разработки своего или как готовое решение для работников в сфере услуг, которые фиксируют время у клиентов. В приложении 2 документа: первый "отчет за день", второй "заявка" и полезный инструмент "Отчет задачи", который в свою очередь создан для просмотра, анализа и закрытия заявок. Тестировал на Iphone 6s.

10 стартмани

01.12.2017    19853    10    olejnikov_m    6    

V8 Log Scanner - утилита для быстрого парсинга логов ТЖ

Сервисные утилиты v8 Россия Абонемент ($m)

Как можно быстро настраивать logcfg.xml и парсить логи технологического журнала с помощью самописной open-source утилиты V8LogScanner. Без необходимости погружаться в регулярные выражения.

1 стартмани

07.11.2017    17730    5    ripreal1    27    

Графическая оболочка для консольной утилиты cnvdbfl.exe

Сервисные утилиты v8 Абонемент ($m)

Графическая оболочка для консольной утилиты cnvdbfl.exe предназначенной для преобразования размера внутренней страницы файла базы 1С.

1 стартмани

25.10.2017    36672    258    frkbvfnjh    43    

Мобильное приложение для склада с функцией голосового ввода

Мобильная разработка Учет ТМЦ Учет ТМЦ v8 1cv8.cf УУ Абонемент ($m)

Несложное приложение под Андроид предназначенное для выполнения операций по наборке и приемке товаров на складе, а также выполнения других складских операций. Мобильная часть решения написана под терминалы сбора данных на Android. Транспорт данных - POST - запрос на HTTP сервис. Серверная часть - сервис на базе 1С сервера.

2 стартмани

08.08.2017    15068    16    Prometeus2011    21    

Очистка регистров накопления, сведений, расчета или бухгалтерии Промо

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

Очистка регистров накопления, сведений, расчета или бухгалтерии (обычная и управляемая форма)

2 стартмани

25.12.2009    59256    256    sebe    20    

Удаление данных напрямую в SQL

Сервисные утилиты Чистка базы v8 v8::СКД 1cv8.cf Абонемент ($m)

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

1 стартмани

08.07.2017    14053    90    denacid    29    

[mobile] Простое мобильное приложение на мобильной платформе 1С

Мобильная разработка v8 v8::Mobile 1cv8.cf Россия Абонемент ($m)

Приложение демонстрирует некоторые возможности мобильной платформы 1С

1 стартмани

21.05.2017    25056    131    leobrn    21    

Android беспроводной Bluetooth сканер 1D/2D штрихкода и терминал сбора данных для 1С Промо

Сканер штрих-кода Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 1cv8.cf УУ Абонемент ($m)

Бесплатное приложение, превращающее Android-смартфон в беспроводной 1D/2D Bluetooth сканер и терминал сбора данных для 1С и прочих POS систем. Не требует драйверов и доработки конфигураций.

1 стартмани

12.09.2017    39153    24    kuld    45    

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

Сервисные утилиты v8 1cv8.cf Абонемент ($m)

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

1 стартмани

03.04.2017    29019    70    slava_1c    49