Использование графического планшета для подписи в 1С

Публикация № 554962 13.10.16

Приемы и методы разработки

Графический планшет цифровая подпись.

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

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

Конкретная реализация зависит от вашего оборудования и программного обеспечения.

В нашем случае схема работы такая:

Устанавливаем на компьютер PDF принтер, в нашем случае был PDF24 Creator.

Готовим печатную форму документа с прямой печатью на PDF принтер

//Сначала удалим старые PDF

УдалитьФайлы("C:\PDF\", "*.pdf");

ТабДокумент.ИмяПринтера = "PDF24 PDF";

НаПринтер = Истина;

В настройках PDF принтера указываем, что при печати необходимо автоматически сохранять в папку, например, C:\PDF

Затем сразу после кода, который отвечает за печать, вставляем код, который запустит утилиту захвата подписи (в нашем случае батник)

СтрокаКоманды = "C:\PDF\ElPod.bat";

ЗапуститьПриложение(СтрокаКоманды,,Истина,);

Текст батника для примера: "C:\Program Files (x86)\Wacom sign pro PDF\jre7\bin\javaw.exe" -client -Djava.library.path="C:\Program Files (x86)\Common Files\Florentis;C:\Program Files (x86)\Wacom sign pro PDF\SignPro_lib" -Dfile.encoding=UTF-8 -jar "C:\Program Files (x86)\Wacom sign pro PDF\signpro.jar" c:\PDF\RKO.pdf

Сотрудник расписывается на планшете. Графический планшет берет PDF, добавляет в нее подпись и сохраняет PDF.

После закрытия утилиты графического планшета управление вернется к 1С (третий параметр ДождатьсяЗавершения = Истина ).

И мы сразу, незаметно для пользователя, прикрепляем PDF к документу 1С.         

НовыйФайл = Новый ДвоичныеДанные("C:\PDF\RKO.PDF");

НовыйХЗ = Новый ХранилищеЗначения(НовыйФайл);

НоваяКартинка = Справочники.ХранилищеДополнительнойИнформации.СоздатьЭлемент();

НоваяКартинка.ВидДанных = Перечисления.ВидыДополнительнойИнформацииОбъектов.Файл;

НоваяКартинка.ИмяФайла = "Ведомость.pdf";

НоваяКартинка.Наименование = "Ведомость";

НоваяКартинка.Объект = Ссылка;

НоваяКартинка.Хранилище = НовыйХЗ;

НоваяКартинка.Записать();

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

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

Которое к тому же очень легкое, наши пользователи порой работают с парой «Ноутбук + планшет», которые берут с собой.

В дальнейшем в PDF можно видеть человека, который подписался.

В зависимости от выбора оборудования существуют различные настройки вывода информации на планшет, в нашем случае это редактирование информации о назначении и сумме платежа:

//Отредактируем XML с настройками

ИмяПользователя = СтрЗаменить(ПользователиИнформационнойБазы.НайтиПоИмени(глЗначениеПеременной("глТекущийПользователь")).ПользовательОС, "\\GROUP1\", "");

ТекстовыйДокумент = Новый ТекстовыйДокумент;

ТекстовыйДокумент.Прочитать("c:\Users\" + ИмяПользователя + "\AppData\Roaming\Wacom\signpro\signpro.xml", КодировкаТекста.UTF8);

ТекстXML = ТекстовыйДокумент.ПолучитьТекст();

ТекстовыйДокумент = Новый ТекстовыйДокумент;

ТекстовыйДокумент.УстановитьТекст(ТекстXML);

ТекстовыйДокумент.ЗаменитьСтроку(16, "<entry key=""user_name"">" + ФизическиеЛица[0].ФизическоеЛицо.Наименование + "</entry>");

ТекстовыйДокумент.ЗаменитьСтроку(21, "<entry key=""signing_reason"">" + "Выдача денег в размере " + СуммаДокумента + " " + ВалютаДокумента.Наименование + "</entry>");

ТекстовыйДокумент.Записать("c:\Users\" + ИмяПользователя + "\AppData\Roaming\Wacom\signpro\signpro.xml", КодировкаТекста.UTF8);

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

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. kolabaister 2 13.10.16 19:02 Сейчас в теме
Реализация интересная и изобретательная, но имеет ли такая подпись какую то юридическую силу?
lerkin494; leonidol; корум; Serega-artem; madonov; sasha777666; Kott01; +7 Ответить
2. Makushimo 158 14.10.16 07:03 Сейчас в теме
(1) kolabaister,
а уничтоженный в шредере подписанный документ?
он имеет юридическую силу?
корум; madonov; +2 Ответить
9. kolabaister 2 14.10.16 13:37 Сейчас в теме
(2) Makushimo, ни малейшей. И скан тоже, без хранящегося где то оригинала, ничего не стоит. Да, как ответил (3) видимо, только для усиления чувства ответственности сотрудников сделано)
3. Red_Devil 170 14.10.16 08:34 Сейчас в теме
(0) В нашем случае ответ в (1) тут чисто формальность, "для галочки" что бы решать споры с сотрудниками) Но электронный ключ можно оформить через юр отдел, он будет иметь юридическую силу. Правда сертификат будет оформлен на компанию а не на сотрудника, но в подписи зашито ФИО сотрудника, на последнем скрине видно.
4. Ober2010 14.10.16 10:40 Сейчас в теме
Интересное решение..

Я пошел другим путем, когда делал нечто подобное, использовал Wacom-Signature-SDK (2 com объекта из SDK: Florentis.SigCtl и Florentis.DynamicCapture) , формировал обычный табличный документ, его подписывал и сохранял в pdf, pdf прикреплял к документу РКО. SDK позволяет вернуть картинку подписи в формате Base 64, а дальше дело техники.

Сокращенно как то так :

 

	DC.Capture(SigCtl,Фио,"Распишитесь: ", null, null); // окно захвата подписи
        
        SigObj = SigCtl.Signature;
        СтрокаBAse64 = SigObj.RenderBitmap("", dimensionX,dimensionY,"image/png", ТолщинаПераММ , 16711680, 16777215, -1, -1, 524288+8192+65536+1048576) ;  

	 ДвоичныеДанные = Base64Значение(СтрокаBAse64);
        
         Новый Картинка(ДвоичныеДанные,Истина);


Показать


с батником не додумался ( видать документацию плохо курил)

P.S. Оборудование Wacom STU 430 .

sanymust; корум; Muhin555; Red_Devil; +4 Ответить
5. Red_Devil 170 14.10.16 11:41 Сейчас в теме
(4) у нас Wacom STU 530 думаю разница не велика
6. Ober2010 14.10.16 11:56 Сейчас в теме
(5) у них даже инструкция одна на 430 и 530
20. 1cvoverdzhils 17.07.18 16:35 Сейчас в теме
(4) Расскажите пожалуйста по подробнее, как вы делали.
Спасибо.
26. swimdog 760 10.01.19 15:22 Сейчас в теме
(4) Более детальное описание. По заявкам сделаю отдельную публикацию, но основное написано выше.


&НаКлиенте
Процедура ПолучитьПодпись(Команда)
	
	dynCapt  = Новый COMОбъект("Florentis.DynamicCapture");
	
	SigCtl = Новый COMОбъект("Florentis.SigCtl");
	SigCtl.Licence = "eyJhbGciOiJSUzUxMiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJMTVMiLCJleHAiOjE1NTQ4ODg2ODAsImlhdCI6MTU0NzExMjY4­MCwicmlnaHRzIjpbIkNETF9BQ0NFU1MiLCJDRExfTElWRV9TVFJFQU1JTkci­LCJDRExfVEhJUkRQQVJUWV9QRU5TIiwiQ0RMX1BIVV8xMTEiLCJTSUdfU0RL­X0NPUkUiLCJTSUdDQVBUWF9BQ0NFU1MiLCJTSUdfU0RLX0lTTyIsIlNJR19T­REtfRU5DUllQVElPTiJdLCJkZXZpY2VzIjpbIldBQ09NX0FOWSIsIlJUUyIs­IkFQUExFX1BFTkNJTCJdLCJ0eXBlIjoiZXZhbCIsImxpY19uYW1lIjoiV0lM­TF9TaWduYXR1cmVfRWRpdGlvbiIsIndhY29tX2lkIjoiYzBmYjNiYjRhMmVh­NDA1MWIzMTU2MGI4YjkyZDg2ZGUiLCJsaWNfdWlkIjoiNWI1ZDRiYTYtNGE4­Zi00MGM3LWJjMzYtMzhlNGIxMjk1NzNiIiwiYXBwc193aW5kb3dzIjpbXSwi­YXBwc19pb3MiOltdLCJhcHBzX2FuZHJvaWQiOltdLCJtYWNoaW5lX2lkcyI6­W119.Kg9mXWh74Yvxw5gXAJ3-c6yplX-W5Y1jdjPsJPNV8IRri0cpnoEuYRXbgxGcQKRkHYgJQ1yoqTzwDHA9e7mazVa­LRJsCSHvoLmHk5h61cgZRif9yalwVM1zvtQexZvANbhC7XqWqXGP38-g_W8Az-ei2MHPZ0UxDfyifyupHzOI_FVVlPL2Xg7fKx48ASGHFYRNbKsFBOE7PjGq9I­DG_0rHD7i8T8eKFa6xZ09jYH3PSFnD4qB-4dBf4m3Pos3YiWMfosNHR4Rwcx6t2Q7iNp-KOYv7lqZd08K8dO9xR8AA-4ASUMNR7Bn4u5UJWROLZn_zwcpNlGMFGq-awTRhJtQ";
	
	//CaptureResult    Capture(Who, Why, What, Key)
	//Parameters:
	//Who String specifying the signatory name. 
	//	Optional if InputWho property is set
	//Why String specifying the reason for signing. 
	//	Optional if InputWhy property is set
	//What Hash object 
	//	Derived from the data set with which the captured signature is 
	//	to be bound. Typically the data set will be the contents of the 
	//	document or form signed by the user. 
	//	SigCtlXHTML: The hash is generated automatically from the 
	//	contents of the XHTML document and cannot be supplied here. 
	//	(Optional)
	//Key Key object supplied in order to detect malicious or accidental 
	//	tampering with the signature object or the signature data it 
	//	contains. 
	//	SigCtlXHTML: Key type SHA256 is supplied automatically but 
	//	an alternative can be specified. 
	//	(Optional)
	
	ФИО = "Иванов Иван Иванович";
	ПричинаПодписи = "Распишитесь: ";
	КодВозврата = dynCapt.Capture(SigCtl, ФИО, ПричинаПодписи); //, null, null); // окно захвата подписи
	
	//Return Value:CaptureResult 
	//	CaptureOK Signature captured successfully.
	//	CaptureCancel Signature not captured because user cancelled Signature 
	//		Capture Window.
	//	CapturePadError No capture service available; typically, no functioning digitizing 
	//		tablet or other device for capturing signatures found.
	//	CaptureNotLicensed The component has not been licensed to perform capture. This 
	//		may be because a suitable licence has not been set or because 
	//		a condition of the licence has not been met, for example 
	//		required hardware, such as a particular tablet type, was not 
	//		found.
	//	CaptureError System error or some other unusual error condition.
	//	CaptureAbort Signature not captured because the handler for the PreCapture 
	//			event returned False. With SigCtlXHTML, this can indicate a 
	//			failure to parse document contents
	
	CaptureOK = 0;
	CaptureCancel = 1;
	CapturePadError = 100;
	CaptureError = 101;
	CaptureNotLicensed = 103;
	CaptureAbort = 200;
	
	Если КодВозврата = CaptureOK Тогда
		
		//Parameters:
		//outputFilename Pathname of the file in which to save the image. 
		//	May be null or empty if output type specified by flags is not 
		//	RenderOutputFilename.
		//dimensionX 
		//dimensionY
		//	Dimensions specified as DPI (dots per inch) or Pixels.
		//	Negative value = DPI (the signature is not scaled)
		//	Positive value = Pixels (the signature is scaled to fit the area)
		//mimeType Specifies the image format as one of:
		//	image/bmp
		//	image/tiff
		//	image/png
		//inkWidth Specifies the signature ink width in mm
		//inkColor 
		//inkBackground
		//	Signature ink and background colours in OLE_COLOR format
		//paddingX 
		//paddingY
		//	Padding around the signature image, added to both the left and 
		//	right for paddingX, and both the top and bottom for paddingY. 
		//	Dimensions are specified as mm or Pixels.
		//	Negative value = mm
		//	Positive value = Pixels
		//Flags A combination of RBFlags values.
		//	RenderOutputBase64 0x002000 Return bitmap as a base-64 encoded string
		//	RenderOutputBinary 0x000800 Return bitmap as binary data
		//	RenderOutputFilename 0x001000 Write bitmap to file
		//	RenderOutputPicture 0x200000 Return bitmap as Picture object
		//	RenderBackground Transparent 0x010000 Render image with a transparent background
		//	RenderColor1BPP 0x020000 Render using 1 bit-per-pixel (monochrome)
		//	RenderColor24BPP 0x040000 Render colour image with 24 bits-perpixel
		//	RenderColor32BPP 0x080000 Render colour image with 32 bits-perpixel
		//	RenderColorAntiAlias 0x100000 Render colour image with antialiasing
		//	RenderEncodeData 0x400000 Encode signature data within image
		//	RenderWatermark 0x800000 Encode watermark within image
		//	RenderClipped 0x1000000 Crop signature image, omitting any parts which were outside of the original capture window.
		//	RenderRelative 0x2000000 Renders the signature image relative to the origin of the original capture window
		
		dimensionX = 320;
		dimensionY = 200;
		ТолщинаПераММ = 0.5;
		inkColor = 16711680; //0xff0000
		inkBackground = 16777215; //0xffffff
		paddingX = -1;
		paddingY = -1;
		
		RenderOutputBase64		= 8192;		// 0x002000 Return bitmap as a base-64 encoded string
		RenderColor32BPP		= 524288;	// 0x080000 Render colour image with 32 bits-perpixel
		RenderBackground		= 65536;	// 0x010000 Render image with a transparent background
		RenderColorAntiAlias	= 1048576;	// 0x100000 Render colour image with antialiasing
		RenderEncodeData		= 4194304;	// 0x400000 Encode signature data within image
		Flags = RenderOutputBase64 + RenderColor32BPP + RenderEncodeData; // 0x2000 + 0x80000 + 0x400000; //SigObj.outputBase64 | SigObj.color32BPP | SigObj.encodeData
		//Flags = RenderOutputBase64 + RenderColor32BPP + RenderBackground + RenderColorAntiAlias;
		
		SigObj = SigCtl.Signature;
		СтрокаBase64 = SigObj.RenderBitmap("", dimensionX, dimensionY, "image/png", ТолщинаПераММ , inkColor, inkBackground, paddingX, paddingY, Flags);  
		
		ДвоичныеДанные = Base64Значение(СтрокаBase64);
		
		Объект.Подпись = Новый Картинка(ДвоичныеДанные, Истина);
		//Объект.Подпись.Записать("d:\Sign.png");
		
		АдресКартинки = ПоместитьВоВременноеХранилище(Объект.Подпись);
		
	ИначеЕсли КодВозврата = CaptureCancel Тогда
		
		Сообщить("Клиент отказался от подписи");
		
	ИначеЕсли КодВозврата = CaptureNotLicensed Тогда
		
		Сообщить("Лицензия не обнаружена или просрочена");
		
	ИначеЕсли КодВозврата = CapturePadError Тогда
		
		Сообщить("Служба получения подписи недоступна");
		
	ИначеЕсли КодВозврата = CaptureError Тогда
		
		Сообщить("Ошибка планшета");
		
	ИначеЕсли КодВозврата = CaptureAbort Тогда
		
		Сообщить("Ошибка - невозможно проанализировать содержимое документа");
		
	Иначе
		
		Сообщить("Ошибка получения подписи");
		
	КонецЕсли;
	
КонецПроцедуры

Показать
sanymust; Vostr; +2 Ответить
31. user931158 26.11.19 14:36 Сейчас в теме
(26)привет, не подскажешь пожалуйста по этой реализации с графическим планшетом, столкнулся с проблемой что не могу его на сервере использовать, не подскажешь как решал эту проблему через api
32. swimdog 760 26.11.19 15:58 Сейчас в теме
(31) У нас планшеты стоят на компьютерах пользователей. Мы для этого сервер не используем.
Поэтому и процедура &НаКлиенте
33. user931158 26.11.19 16:43 Сейчас в теме
35. swimdog 760 26.11.19 18:53 Сейчас в теме
(33) Работает и в серверной, и в файловой. А в чем разница, если форма работает на клиенте?
И компонента ставится на клиенте.
36. user931158 28.11.19 14:16 Сейчас в теме
(35) возникла проблема с тем что не могу прокинуть через usb на терминал само устройство, поэтому мне постоянно возвращает ошибку формы захвата. Не подскажешь как такое решить
37. swimdog 760 28.11.19 20:24 Сейчас в теме
40. user931158 19.12.19 11:25 Сейчас в теме
(37) слушай а можно вопрос, еще спросить. Я подключил планшет на клиенте, планшет видится на терминале, но саму подпись не возвращает на терминал
7. Diego_Iv 33 14.10.16 12:10 Сейчас в теме
Прикольная и нужная штука.
Только в типовой конфигурации любой пользователь может как наприкреплять "своих подписей", так и поудалять или исправить "чужие".
В результате не получится так : "Я ничего не знаю, я этого не подписывал..." ?
8. Red_Devil 170 14.10.16 13:06 Сейчас в теме
(7) как настроишь планшет. Он может блокировать PDF от изменения. И как настроишь 1С, по умолчанию это всего лишь прикрепленный файл, дальше как хочешь блокируй.
10. perevalsky 7 19.10.16 07:37 Сейчас в теме
Очень интересное применение. У нас есть готовый продукт для аутентификации по подписи на планшете и мобильных устройствах http://www.signtologin.com/. Предлагаю интегрироваться с вашим решением. Можем предоставить API - функции.
11. Dragonim 129 19.10.16 08:46 Сейчас в теме
Такая идея с подписями хороша для тёмных сотрудников, которые ни чего про юридическую значимость и возможность электронной подделки не слышали и слышать не хотят. Немного поинтересовавшись можно узнать, юридическая силы такая подпись не имеет, подделывается проще чем реальная подпись.

Вся эта идея с подписями на электронных устройствах обычная профанация и попытка показаться защищёнными и значимыми в доме из трёх стен.
12. monkbest 112 19.10.16 10:16 Сейчас в теме
(11) Dragonim, почему не имеет? Смотря как хранить и обрабатывать подписанный документ, можно навернуть криптографию и все будет очень даже
главное, чтобы не было технической возможности отделить подпись от документа и приляпать его к другому документу
13. ne_en 70 20.10.16 14:07 Сейчас в теме
(12) monkbest, Так в том то и дело, что что бы там не навернули, юридической силы это иметь не будет все равно. В суде всегда можно заявить, что у вас есть техническая возможность обойти эти механизмы, т.к. программист может включать и выключать что угодно, и пере создавать сколько угодно документов с прикреплёнными подписями не зависимо от того, что человек документов этих в глаза никогда не видел. Принятие таких подписей в суде будет возможно только в том случае, если программа будет "сертифицирована" в отношении того, что не возможна подделка в программе подписи никем, а так же установлена надёжная блокировка от внесения изменений в программу и применения внешних программ. А до тех пор, только хранящаяся бумажная копия или свидетели (причём не все свидетели одинаково полезны) постановки этой подписи могут сделать такую подпись легитимной.
awk; dddxddd; +2 Ответить
14. sviat02 16.12.16 13:45 Сейчас в теме
Я так понимаю что это только для графических планшетов у которых есть какое то апи (SDK) типа Wacom STU 430-530, или я ошибаюсь?
15. Red_Devil 170 16.12.16 15:31 Сейчас в теме
(14) да я делал на вакоме, как остальные работают не знаю.
16. sviat02 24.01.17 13:51 Сейчас в теме
Автору респект. Реализовал у себя такое решение на УФ, встретился с такой проблемой что сам планшет пробросить в терминал сервер невозможно только через "USB over network" из-за этого есть некие тормоза при захвате именно планшетом для подписи.
Так же при открытии pdf файла в sihg pro pdf пользователю требуется нажать кнопки "добавить подписи" рис. 1 , потом подтвердить подпись рис. 2, ну а потом сам захват подписи. Подскажите есть ли возможность обойти эти промежуточные действие?
Прикрепленные файлы:
34. user931158 26.11.19 16:53 Сейчас в теме
(16) привет столкнулся с такой же проблемой что не могу пробросить планшет графический, можешь чуть подробнее рассказать как ты решил проблему с подписью
38. user931158 29.11.19 12:27 Сейчас в теме
(16) Подскажи пожалуйста, а не сталкивался ты с проблемой, когда прокидываем порт USB через "USB over network", не получаем обратно саму подпись с устройства. Ты же сталкивался с настройкой, помоги пожалуйста. Готов даже заплатить за консультацию. Просто проект уже нужно сдать, а столкнулся с такой проблемой, что не возвращается сама подпись в sign pro
39. user931158 29.11.19 12:57 Сейчас в теме
(16)Парни, есть планшет, Wacom-STU500B на локальном компьютере с Windows 7 на борту и терминальный сервер на Win2008R2. Нужно его (планшет) каким-то чудом мапить в терминалку. Как я понял, мапить нужно не только USB, но и HID. С USB проблем нет. Устройство видно и на него даже передаются данные с терминального сервера, но то, что рисуется на планшете подключенному к локальному компу, на терминальном не отображается. Как я понимаю как раз HID и не хватает? как можно решить эту проблему?
17. sanymust 36 16.02.17 04:15 Сейчас в теме
Ребят, встала похожая задача, имеется планшет Wacom stu-430, хочу интегрировать в 1С, но я так понял что ПО нужно просить у wacom, либо зарегистрировать продукт, чего сделать для России я не смог плюс я не покупал через сайт, а они просят номер счета указать. Запросил SDK у них, прислали письмо с доп. вопросами что принять решение о предоставлении ПО. Все как-то слишком заморочено я считаю, почему просто нельзя взять и скачать SDK пакет... Кто как заполучил ПО, может я не в ту степь ушел уже?
18. Red_Devil 170 16.02.17 09:08 Сейчас в теме
(17) Я не скачивал SDK. На сайте Ваком, в открытом доступе есть утилита для работы с планшетом, без всяких регистраций http://gsdt.wacom.eu/download/SignPro-PDF-download-V2.xml
19. sanymust 36 17.02.17 01:04 Сейчас в теме
(18)Спасибо! Я просто хотел использовать подпись без стороннего софта, напрямую через компоненту получать изображение и внедрять в 1С, поэтому интересно поковырять SDK. ) А на счет Sign Pro, у меня нет кода активации, который идет при покупке. Писал в тех. поддержку сказали нет кода - нет программы, запрашивайте SDK. Чем я и занялся...
21. RastaL 02.08.18 14:40 Сейчас в теме
Привет, мучаюсь с той же проблемой, не могу скачать stu sdk, Вы добились каких нибудь результатов от wacom?
41. user931158 19.12.19 11:27 Сейчас в теме
(19) привет, хотел узнать, ты решил данную проблему или нет?
просто занимаюсь подобной задачей и не могу пробросить в терминал планшет, вернее саму подпись не возвращает
42. sanymust 36 20.12.19 01:06 Сейчас в теме
(41)Приветствую, все работает как часы)
В терминал пробрасывали отдельной программой, так как надо было пользоваться с нескольких ПК на один планшет, и если у тебя клиент-сервер и компонента подключается на сервере, то и окно подписи открывается на сервере, переделал вызов подписи на клиенте и все работало.
43. sanymust 36 20.12.19 01:09 Сейчас в теме
(42)Я дмаю стоит оформить публикацию с этой работой, видимо многие работаю с такими планшетами, пусть хоть труды не пропадут. Оформлю - скину информацию, если не забуду)
45. user931158 20.12.19 12:46 Сейчас в теме
(43) просто хочется закрыть работу до нового года) буду рад помощи, а то уже на луну хочется выть. Сделай публикацию, пожалуйста
47. sanymust 36 25.12.19 04:51 Сейчас в теме
(45)В общем не сохранился материал по этой разработке, а доступа к конфигурации где это внедряли уже нет, "Василий, мы всё прос-трали-вали"...
Все что осталось, это переписка. Мне дали логин и пароль на скачку SDK, но пароль действиетелен 90 дней был, сейчас по этой ссылке не могу пройти аутентификацию. Я думаю следует написать на signature-support@wacom.eu и запросить у них доступ к SDK, как делал я. Правда пришлось немного анкету заполнить и потом еще они мне звонили на мой номер и проводили опрос на английском, еле осилил их научные термины)

Тем более к компоненте нужен ключ, а он выдается вместе с ссылкой. Без ключа на экране будет висеть водяной знак что это демо режим. Вместе с SDK есть примеры работы компоненты на нескольких языках, вполне можно понять и сделать аналогию на 1С. Обязательно ставить драйвер из комплекта, подпись будет как ручка выглядеть, а не синяя линия из Paint ) Работает без всяких танцев с бубнами и левым софтом, напрямую dll через 1с подключается.
44. user931158 20.12.19 12:40 Сейчас в теме
(42) а можешь пожалуйста подсказать как пробрасывал, потому что я что то перепробовал массу программ и не могу пробросить чтобы с сервера возвращалась подпись. Поделись опытом настройки, если не трудно пожалуйста, буду очень признателен. Так как месяц уже не могу ничего сделать по этой задаче, весь интернет перерыл
46. sanymust 36 22.12.19 11:49 Сейчас в теме
(44)пробрасывали через программу Usb over network
(45) Ну вот до нового года не обещаю, постараюсь, материала того нет под рукой уже, надо собрать и подготовить сначала
22. vlad1976 08.10.18 18:34 Сейчас в теме
Так что там с SDK? Где скачать? а то я дурак планшет купил. Некого кода в коробке нет. а Начальство просит что то похожее сделать.
23. Ober2010 10.10.18 17:48 Сейчас в теме
Пришлю поздней. Занят поиском работы.
24. vlad1976 23.10.18 18:04 Сейчас в теме
25. swimdog 760 07.12.18 14:20 Сейчас в теме
(24) Нашли SDK? Я позвонил в wacom еще до покупки, мне прислали ссылки на скачивание SDK и драйверов. Без всяких вопросах.
27. swimdog 760 10.01.19 15:28 Сейчас в теме
(24) Еще уточню свой же ответ. После регистрации в разделе developer сайта wacom.com можно скачивать любые SDK и программы к планшетам. Там же можно сформировать временные лицензии для SDK.
29. Риф 14.09.19 14:00 Сейчас в теме
(23) Могли бы вы оформить свое решение на этом сайте? Я купил бы, потому что самому программировать внешнюю компоненту на С# и сопрягать с 1С займет слишком много времени. Для одного частного образовательного учреждения нужно оформлять всякие ведомости, расписки и т.п. с подписями слушателей. Этих бумаг слишком много, а слушателей еще больше , так что требовать подпись у каждого слушателя просто нереально. И их не требуют. Но руководство этот момент постоянно вызывает зуд беспокойства. Все стороны, как ЧОУ, так и налоговая понимают бессмысленность этого требования, но это мало утешает. В общем, юристы ЧОУ уверяют, что даже картинок с подписью в 1с документах будет достаточно. Очень прошу вас опубликовать ваше решение.
28. user1194632 03.04.19 12:14 Сейчас в теме
Я расписывается на XP-Pen Star G430S Digital Drawing Tablet . Графический планшет берет PDF, добавляет в нее подпись и сохраняет PDF
30. user931158 07.11.19 18:08 Сейчас в теме
(28) а где вы апи нашли или сдк для XP-Pen Star ?
не подскажите
48. пользователь 05.07.20 11:18
Сообщение было скрыто модератором.
...
49. пользователь 05.07.20 11:24
Сообщение было скрыто модератором.
...
50. user663268_infolet 28.06.21 17:01 Сейчас в теме
Как можно заказать данное решение ?
52. perevalsky 7 04.07.21 13:20 Сейчас в теме
(50) signpush есть решение интегрированное с SDK Wacom. Есть интеграция с 1С Документооборот
user663268_infolet; +1 Ответить
53. user663268_infolet 17.08.21 15:11 Сейчас в теме
51. user1622501 03.07.21 12:21 Сейчас в теме
Есть такое ПО StudioTW (StudioUEC), которое совместимо практически со всей линейкой графических планшетов Wacom STU. Оно интегрируется с 1С через Twain (типа вызывается как сканер, но будет захватывать подпись с планшета Wacom), или его можно встроить как ActiveX-компоненту.
Прикрепленные файлы:
user663268_infolet; +1 Ответить
54. bulas 204 19.11.21 15:04 Сейчас в теме
Что за утилита захвата подписи? Есть планшет для подписи STU-540, но выскакивает ошибка 103 код завершения захвата подписи. Ели это зависит от утилиты, то её в поставке не было. На сайте wacom ничего не нашёл.
Оставьте свое сообщение

См. также

Аналог PIVOT в запросе 1С (как выполнить транспонирование таблицы в запросе 1С) Промо

Практика программирования v8 Бесплатно (free)

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

12.12.2020    4609    Eugen-S    23    

Обзор полезных методов БСП 3.1.4. Часть 2

БСП (Библиотека стандартных подсистем) v8 Бесплатно (free)

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

27.04.2021    16423    rayastar    7    

Обзор полезных методов БСП 3.1.4

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

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

25.03.2021    41935    rayastar    51    

Звуковое управление в 1С 8.3

Практика программирования v8 1cv8.cf Бесплатно (free)

В данной статье описано создание библиотеки для звукового управления (выполнение команд голосом) для платформы 1С 8.3. Задача была поставлена так, чтобы модуль функционировал непосредственно на клиенте 1С, осуществляя управление формами, и взаимодействовал с интерфейсом.

16.03.2021    7267    velemir    33    

Использование классов .Net в 1С для новичков Промо

Разработка внешних компонент Универсальные функции Практика программирования v7.7 v8 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    85908    Serginio    116    

Serverless (Faas) в 1С. Создание и вызов Yandex Cloud Functions

Универсальные функции Практика программирования v8 Бесплатно (free)

"Я не могу просто взять и скопировать код с гитхаба", "у нас 1С микросервисами окружена", "возможностей мало" - частые фразы 1С разработчиков. которым не хватает возможностей платформы в современном мире. Faas, конечно, история не новая, но нас сдерживало 152ФЗ и задержки по пингам. Для того, чтобы действительно использовать в 1С код, к примеру, на Python, надо было приложить усилия. Теперь всё намного проще - берём и используем.

28.12.2020    9001    comol    31    

Полезные функции БСП (Часть 2)

БСП (Библиотека стандартных подсистем) v8 1cv8.cf Россия Бесплатно (free)

Список полезных функций из состава Библиотеки стандартных подсистем 3.1.

10.03.2020    21027    user5300    20    

Программная работа с настройками СКД

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Нюансы программной работы с настройками системы компоновки данных в отчетах и динамических списках. Обзор всех видов настроек компоновки. Что в каких случаях правильно применять. В качестве примера рассмотрена работа с отборами и группировками.

27.01.2020    66515    ids79    26    

Как я начал администрировать сервер 1С: Предприятие 8.3 с телефона Промо

Инструменты администратора БД Мобильная разработка v8 Бесплатно (free)

Развитие инструментов управления кластером серверов 1С:Предприятие 8.3.

14.04.2017    67717    user700211_a.straltsou    30    

[СКД] Программное создание схемы компоновки данных

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Сделаем отчет на СКД полностью программно, без использования макета "схема компоновки данных".

15.01.2020    44068    John_d    22    

Последовательности событий при проведении документа 1С. Шпаргалка + про формы + про расширения

Практика программирования v8 Россия Бесплатно (free)

Собрал информацию о событиях/подписках/расширениях в одном месте.

30.12.2019    35777    kuzyara    38    

Шпаргалка (БСП). Добавление в новый документ механизма печати дополнительных печатных форм

Печатные формы БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

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

10.10.2019    30771    John_d    21    

Использование программных перечислений, ч.1: строковые константы Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

Часто ли у вас возникает необходимость в коде выполнять сравнение на строку?

10.12.2016    41180    unichkin    74    

Полезные процедуры и функции для программиста

Универсальные функции v8 1cv8.cf Россия Бесплатно (free)

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

07.10.2019    39939    HostHost    41    

Таблица значений. Нюансы

Практика программирования v8 Бесплатно (free)

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

01.10.2019    53517    Yashazz    56    

[Шпаргалка] Программное создание элементов формы

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

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

06.09.2019    103864    rpgshnik    77    

Вспомогательные инструкции в коде 1С Промо

Практика программирования v8 1cv8.cf Бесплатно (free)

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

15.10.2018    36237    tormozit    106    

Агрегатные функции СКД, о которых мало кто знает

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Пользуетесь ли Вы всеми возможными агрегатными функциями, которые предоставляет система компоновки данных? Если Вы используете только: СУММА, КОЛИЧЕСТВО, МИНИМУМ, МАКСИМУМ, СРЕДНЕЕ, то эта статья для Вас.

05.09.2019    78430    ids79    56    

Отслеживание выполнения фонового задания

Универсальные функции Инструментарий разработчика Практика программирования v8 1cv8.cf Бесплатно (free)

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

17.08.2019    45442    ids79    22    

Функции СКД: ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Подробное описание и использование внутренних функций системы компоновки данных: Вычислить, ВычислитьВыражение, ВычислитьВыражениеСГруппировкойМассив, ВычислитьВыражениеСГруппировкойТаблицаЗначений.

08.08.2019    154016    ids79    75    

Оформление и рефакторинг сложных логических выражений Промо

Практика программирования v8 Россия Бесплатно (free)

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

20.09.2012    82932    tormozit    131    

Фоновое выполнение кода в 1С - это просто

Практика программирования v8 1cv8.cf Бесплатно (free)

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

02.08.2019    61336    avalakh    27    

СКД - наборы данных и связи между ними, создание собственной иерархии, вложенные отчеты

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Набор данных объект. Использование в схеме компоновки нескольких наборов данных. Различные варианты связи наборов: объединение, соединение. Использование иерархии в отчетах на СКД. Создание собственной иерархии, иерархия детальных записей. Использование вложенных схем в отчетах на СКД.

26.07.2019    106649    ids79    17    

Обработчики событий при записи объектов. Зачем и что за чем?

Математика и алгоритмы v8 Бесплатно (free)

Программисту, имеющему немного опыта на платформе 1С 8.3, бывает сложно разобраться: ПередЗаписью, ПриЗаписи, ПослеЗаписи, на сервере, на клиенте, в модуле формы, в модуле объекта.... Эта шпаргалка была создана в процессе обучения и реального опыта с целью разложить всё по полочкам, чтобы было четкое понимание в каком случае какой обработчик нужно использовать и в какой последовательности они запускаются при записи и проведении документов. Данная статья будет полезна в большей степени начинающим разработчикам. Но и опытным позволит освежить информацию, упорядочить её.

25.07.2019    114083    AlbinaAAA    49    

Запись значения в поле ввода/формы со срабатыванием события ПриИзменении Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

Иногда возникает необходимость после записи значения в какое либо поле ввода/формы вызвать для него обработчик события ПриИзменении, а о вызове самого события приходится только мечтать. В этой статье приводится программный способ вызова этого события.

11.07.2007    54559    tormozit    51    

СКД - использование расширений языка запросов, секция ХАРАКТЕРИСТИКИ

Инструментарий разработчика Практика программирования v8 v8::СКД Бесплатно (free)

Автоматическое и не автоматическое заполнение полей компоновки данных. Использование расширений языка запросов для СКД «{…}», секция ВЫБРАТЬ, секция ГДЕ, параметры виртуальных таблиц. Автоматизированное использование дополнительных данных в запросе: секция ХАРАКТЕРИСТИКИ.

17.07.2019    48770    ids79    27    

"Меньше копипаста!", или как Вася универсальную процедуру писал

Практика программирования v8 v8::СКД 1cv8.cf Бесплатно (free)

Программист Вася разбирает подход создания универсальных методов на примере программного вывода СКД.

04.07.2019    22613    SeiOkami    53    

Создание отчетов с помощью СКД - основные понятия и элементы

Математика и алгоритмы v8 v8::СКД Бесплатно (free)

Основные принципы работы СКД. Понятия схемы компоновки и макета компоновки. Описание основных элементов схемы компоновки: наборы данных, поля, вычисляемые поля, ресурсы, параметры.

25.06.2019    76809    ids79    28    

Как сделать из &НаКлиентеНаСервереБезКонтекста почти &НаКлиентеНаСервере Промо

Практика программирования v8 1cv8.cf Россия Бесплатно (free)

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

10.09.2017    51344    tormozit    74    

Подсистема "Варианты отчетов". Используете ли Вы ее правильно?

Работа с интерфейсом БСП (Библиотека стандартных подсистем) v8 1cv8.cf Бесплатно (free)

Небольшая история про использование подсистемы "Варианты отчетов" из БСП. Используете ли Вы ее правильно?

04.06.2019    56608    YPermitin    55    

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

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

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

16.05.2019    64416    YPermitin    31    

Выгрузка документа по условию

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

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

25.04.2019    18063    m-rv    3    

Как сделать запрос на изменение данных Промо

Практика программирования v8 v8::Запросы 1cv8.cf Бесплатно (free)

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

01.06.2018    37122    m-rv    23    

Как прикрутить ГУИД к регистру сведений

Перенос данных из 1C8 в 1C8 Инструментарий разработчика Практика программирования v8 Бесплатно (free)

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

16.04.2019    23394    m-rv    18    

О расширениях замолвите слово...

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

О чём стоит задуматься при принятии решения о создании расширения конфигурации…

07.04.2019    42846    ellavs    131    

Git-репозитории для 1С-кода (опыт использования при небольших проектах)

Практика программирования v8 Бесплатно (free)

Инструкции по взаимодействию с Git-репозиторием, которые писались для тех наших программистов, которые вообще никогда не работали с Git (руководства в духе "Как получить код из git-репозитория?", "Как отправить код в git-репозиторий")...

28.03.2019    32135    ellavs    90    

Трюки с внешними источниками данных

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

Некоторые трюки для преодоления ограничений внешних источников данных.

14.03.2019    41391    YPermitin    53    

Возможности типовых шаблонов ограничения доступа на уровне записей (RLS)

БСП (Библиотека стандартных подсистем) Роли и права Практика программирования v8 v8::Права Бесплатно (free)

Краткий обзор применения типовых шаблонов ограничения доступа на уровне записей в конфигурациях, созданных на базе БСП: #ПоЗначениям, #ПоНаборамЗначений, #ПоЗначениямРасширенный, #ПоЗначениямИНаборамРасширенный

03.02.2019    66011    ids79    11    

Универсальные функции ЗУП 3.1 / ЗКГУ 3.1, которые помогут в разработке

Универсальные функции Зарплата Управление персоналом (HRM) Зарплата Кадровый учет v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Бесплатно (free)

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

14.11.2018    148035    GeterX    135    

Автоматические и управляемые блокировки применительно к типовым конфигурациям 1С

Математика и алгоритмы Практика программирования v8 v8::blocking 1cv8.cf Бесплатно (free)

Основные принципы работы с режимами автоматических и управляемых блокировок в 1С Предприятие 8. Теория и применение в типовых конфигурациях: БП, УТ, ЕРП

10.11.2018    45107    ids79    46    

Git + 1С. Часть 1. Как подключиться к команде разработки и начать использовать Git

Инструментарий разработчика Методология v8 1cv8.cf Бесплатно (free)

Первая статья из цикла инструкций по работе с Git в 1С-разработке. Рассмотрим, как настроить рабочее место, как получить свою "копию" проекта для разработки и приступить к полезным действиям. Все примеры будут изложены в рамках трёх практических кейсов: 1. Моя команда дорабатывает типовую конфигурацию, использует приватный репозиторий на BitBucket, в котором версионируются внешние отчеты/обработки, расширения конфигураций и правила обмена; 2. Я участвую в стартап-команде, которая разрабатывает свою конфигурацию с использованием Git и GitLab; 3. Я принимаю участие в развитии OpenSource-продукта на GitHub как заинтересованный разработчик (контрибьютор).

18.10.2018    93715    stas_ganiev    86    

Основные понятия и механизмы оптимизации клиент-серверного взаимодействия в 1C

Математика и алгоритмы Практика программирования v8 Россия Бесплатно (free)

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

23.08.2018    48826    Rain88    49    

Тестер: частые вопросы

Практика программирования v8 Бесплатно (free)

Ошибкам бой - тесты норма жизни!

25.07.2018    31611    grumagargler    31    

Работаем с дополнительными реквизитами на форме

Практика программирования v8 Бесплатно (free)

Пара полезных процедур для работы с дополнительными реквизитами на форме. Далее в статье: 1. Как называются дополнительные реквизиты на форме и в какой момент они появляются на форме? 2. Как проверить до записи корректность заполнения пользователем дополнительного реквизита? 3. Как заполнить значение дополнительного реквизита по другому событию и обновить данные на форме? 4. Как расположить дополнительный реквизит в указанном месте на форме?

15.07.2018    53423    papche    59    

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

Практика программирования v8 КД Бесплатно (free)

Как повысить скорость и качество разработки правил обмена? Как вести групповую разработку правил обмена? Как облегчить сопровождение правил обмена после передачи в эксплуатацию? Об этом и многом другом вы можете узнать из этой статьи.

25.06.2018    30285    olegtymko    48    

Введение в механизм представлений в ЗУП ред. 3

Практика программирования v8 v8::СПР ЗУП3.x Бесплатно (free)

В нашей организации на первом же телефонном собеседовании на должность разработчика по ЗУП ред. 3 вас обязательно спросят о том, что такое "Представления".

04.06.2018    47635    xrrg    95