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

Публикация № 625457 23.05.17

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

ActiveX Delphi программирование Игры

Пишем игру "очко". Программный код состоит из двух частей: 1.Разработка компоненты работы с графикой на Delphi 2.Логическая реализация игрового процесса на 1С

Часть 1. Пишем компоненту работы с графикой на Delphi.

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

Открываем старый и добрый Дельфи 7, и создаем новый проект.

Переходим на вкладку ActiveX и выбираем ActiveX Form

Вводим имя ActiveX

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

и загружаем в TImage колоду карт найденную в интернете:

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

Теперь опишем методы работы с изображением. Их будет два:

1. Отображение на канве формы нужной игральной карты.

2. Очистка самой канвы.

Открываем Type Library

И добавляем 2 метода: AddCard и ClearCanvas

у метода AddCard вводим параметры: x,y - это координаты отображения карты. row, column - это номер игральной карты из загруженного нами изображения. Например 0 ряд 2 карта.

Опишем реализацию методов в модуле:

//вырезаем и отображаем на канве нужную нам игральную карту
procedure Tw0rm21.AddCard(x, y, row, colimn: Integer);
const
  h=215; //высота карты
  w=148; //длина карты
begin
  Canvas.CopyRect(Rect(x, y, x+w, y+h), Image1.Canvas, Rect(colimn*w ,row*h, (colimn*w)+w, (row*h)+h));
end;

//Очищаем канву
procedure Tw0rm21.ClearCanvas;
begin
  InvalidateRect(0, nil, true);
end;

На этом реализация компоненты закончена. Вы можете ее в дальнейшем доработать как вам нужно.

Осталось только зарегистировать компоненту.

2. Реализуем игровую логику на 1С

Создаем внешнюю обработку. На форму обработки размещаем наш компонент:

Располагаем контролы (кнопки, надписи) на форме:

И описываем реализацию логики игры:

Перем КолодаКарт, ОбщийСчетИгрок, ОбщийСчетПК;
Перем ИгрокX, ИгрокY,  КомпX, КомпY, ШагКарты;
Перем карта1ПК,	карта2ПК;
Перем СтоимостьКарт;


Процедура КнопкаВыполнитьНажатие(Кнопка)
	Колонка = ПолучитьСлучайноеЧисло(0, 12);
	Ряд = ПолучитьСлучайноеЧисло(0, 3);
	ЭлементыФормы.ЭлементУправления1.AddCard(1,1, Ряд, Колонка);
КонецПроцедуры


Функция ПолучитьСлучайноеЧисло(Мин,Макс) 

	//вместо Randomize 
	Для н = 1 По 100 Цикл 
		Уник = Новый УникальныйИдентификатор; 
	КонецЦикла; 

	//генерируем GUID 
	Уник = СокрЛП(Новый УникальныйИдентификатор); 

	//оставляем только цифры 
	Уник = СтрЗаменить(Уник,"-",""); 
	Уник = СтрЗаменить(Уник,"a",""); 
	Уник = СтрЗаменить(Уник,"b",""); 
	Уник = СтрЗаменить(Уник,"c",""); 
	Уник = СтрЗаменить(Уник,"d",""); 
	Уник = СтрЗаменить(Уник,"e",""); 
	Уник = СтрЗаменить(Уник,"f",""); 

//знаменатель должен иметь такое же количество нулей + 1 
	Знаменатель = 10; 
	Для н = 2 По (СтрДлина(СтрЗаменить(Уник,Символы.НПП,""))) Цикл 
		Знаменатель = Знаменатель * 10; 
	КонецЦикла; 

	Случ = Число(Уник) / Знаменатель; //здесь получается дробное случайное число от 0 до 1 

	//преобразуем его в случайное число из заданного интервала, округляем до целого 
	ЧислоИзИнтервала = Мин(Макс(Окр(Мин + (Макс-Мин)*Случ),Мин),Макс); 

	Возврат ЧислоИзИнтервала; 

КонецФункции

Процедура РаздатьКартыНажатие(Элемент)
	СтоимостьКарт = "11;2;3;4;5;6;7;8;9;10;2;3;4";
	СтоимостьКарт = СтрЗаменить(СтоимостьКарт, ";", Символы.ПС);
	ЭлементыФормы.ЭлементУправления1.ClearCanvas();
	ИнициализоватьКолоду();
	СчетИгрок = 0;
	СчетПК	= 0;
	ИгрокX = 2; ИгрокY = 3;
	КомпX = 2;  КомпY = 500;
	Шагкарты = 180;
	карта1ПК = Неопределено;
	карта2ПК = Неопределено;	
	
	карта1Игрок =ПолучитьКарту();
	карта2Игрок =ПолучитьКарту();
	СчетИгрок = СчетИгрок + карта1Игрок.Стоимость;
	СчетИгрок = СчетИгрок + карта2Игрок.Стоимость;
	ЭлементыФормы.ЭлементУправления1.AddCard(ИгрокX, ИгрокY, карта1Игрок.Ряд, карта1Игрок.Колонка);
	ИгрокX = ИгрокX + Шагкарты;
	ЭлементыФормы.ЭлементУправления1.AddCard(ИгрокX, ИгрокY, карта2Игрок.Ряд, карта2Игрок.Колонка);
	
	карта1ПК =ПолучитьКарту();
	карта2ПК =ПолучитьКарту();
	ЭлементыФормы.ЭлементУправления1.AddCard(КомпX, КомпY, 4, 2);
	КомпX = КомпX + Шагкарты;
	ЭлементыФормы.ЭлементУправления1.AddCard(КомпX, КомпY, 4, 2);
	
	КомпX = 2;
	
	ОбновитьФорму(Ложь, Истина, Истина);
	
	Если СчетИгрок = 21 Тогда 
		Предупреждение("У ВАС ОЧКО! Вы победили!");
		ОбщийИгрок = ОбщийИгрок + 1;
		ОбновитьФорму(Истина, Ложь, Ложь);
		Возврат;
	КонецЕсли;	

	Если СчетИгрок = 22 Тогда 
		Предупреждение("У ВАС ЗОЛОТОЙ! Вы победили!");
		ОбщийИгрок = ОбщийИгрок + 1;
		ОбновитьФорму(Истина, Ложь, Ложь);
		Возврат;
	КонецЕсли;

	
КонецПроцедуры

Процедура ИнициализоватьКолоду()
	Колонка = 13;
	Строк  = 4;
	КолодаКарт = Новый Массив(Строк, Колонка);
	Для а = 0 по Строк-1 Цикл 
		Для б = 0 по Колонка-1 Цикл 
			КолодаКарт[а][б] = 0;
		КонецЦикла;	
	КонецЦикла;	
КонецПроцедуры	

Функция ПолучитьКарту()
	Карта = Новый Структура;
	КартаНайдена = Ложь;
	
	
	Пока КартаНайдена = Ложь Цикл 
		
		Колонка = ПолучитьСлучайноеЧисло(0, 12);
		Ряд = ПолучитьСлучайноеЧисло(0, 3);	

		Если КолодаКарт[Ряд][Колонка] = 0 Тогда 
			Карта.Вставить("Ряд", Ряд);
			Карта.Вставить("Колонка", Колонка);
			Стоимость = СтрПолучитьСтроку(СтоимостьКарт, Колонка+1);
			Карта.Вставить("Стоимость", Число(Стоимость));
			//Сообщить(Стоимость);
			КолодаКарт[Ряд][Колонка] = 1;
			КартаНайдена = Истина;
		КонецЕсли;	
			
	КонецЦикла;	
	
	Возврат(Карта);
КонецФункции	

Процедура ВзятьКартуНажатие(Элемент)
	ИгрокX = ИгрокX + Шагкарты;
	карта = ПолучитьКарту();
	ЭлементыФормы.ЭлементУправления1.AddCard(ИгрокX, ИгрокY, карта.Ряд, карта.Колонка);
	СчетИгрок = СчетИгрок + карта.Стоимость;
	Если СчетИгрок > 21 Тогда 
		Предупреждение("У ВАС ПЕРЕБОР! Вы проиграли!");
		ОбщийПК = ОбщийПК + 1;
		ОбновитьФорму(Истина, Ложь, Ложь);
	КонецЕсли;	
КонецПроцедуры

Процедура ХватитНажатие(Элемент)
	ОбновитьФорму(Ложь, Ложь, Ложь);	
	Пауза(2);
	ЭлементыФормы.ЭлементУправления1.AddCard(КомпX, КомпY, карта1ПК.Ряд, карта1ПК.Колонка);
	СчетПК = СчетПК + карта1ПК.Стоимость;
	Пауза(2);
	КомпX = КомпX + Шагкарты;
	ЭлементыФормы.ЭлементУправления1.AddCard(КомпX, КомпY, карта2ПК.Ряд, карта2ПК.Колонка);
	СчетПК = СчетПК + карта2ПК.Стоимость;
	
	Если СчетПК = 22 Тогда 
		Предупреждение("У Меня ЗОЛОТОЙ! Я Победил!");
		ОбщийИгрок = ОбщийИгрок + 1;
		ОбновитьФорму(Истина, Ложь, Ложь);
		Возврат;
	КонецЕсли;

	
	Пока СчетПК < 17 Цикл  
		Пауза(2);
		КомпX = КомпX + Шагкарты;
		картаПК =ПолучитьКарту();
		ЭлементыФормы.ЭлементУправления1.AddCard(КомпX, КомпY, картаПК.Ряд, картаПК.Колонка);
		СчетПК = СчетПК + картаПК.Стоимость;
	КонецЦикла;
	
	ОбновитьФорму(Истина, Ложь, Ложь);
	
	Если СчетПК > 21 Тогда 
		Предупреждение("У меня перебор! ВЫ ВЫЙГРАЛИ!");
		ОбщийИгрок = ОбщийИгрок + 1;
		Возврат;
	КонецЕсли;	
	
	Если СчетПК = 21 Тогда 
		Предупреждение("У меня ОЧКО! Я победил!");
		ОбщийПК = ОбщийПК + 1;
		Возврат;
	КонецЕсли;
	
	Если СчетПК = СчетИгрок Тогда 
		Предупреждение("Ничья!");
		Возврат;
	КонецЕсли;	
	
	Если СчетПК > СчетИгрок Тогда 
		Предупреждение("Я победил!"); 
		ОбщийПК = ОбщийПК + 1;
		Возврат;
	КонецЕсли;	
	
	Если СчетПК < СчетИгрок Тогда 
		Предупреждение("Вы Победили!");
		ОбщийИгрок = ОбщийИгрок + 1;
		Возврат;
	КонецЕсли;	


	
КонецПроцедуры

Процедура Пауза(Секунд)
	
  КонДата = ТекущаяДата() + Секунд;
  Пока ТекущаяДата() < КонДата Цикл
      // ждемссс....
  КонецЦикла;	
  
КонецПроцедуры	

Процедура ПриОткрытии()
	ОбщийИгрок = 0;
	ОбщийПК = 0;
	ОбновитьФорму(Истина, Ложь, Ложь);
КонецПроцедуры

Процедура ОбновитьФорму(РаздатьКарты, ВзятьКарту, Хватит)
	ЭлементыФормы.РаздатьКарты.Доступность = РаздатьКарты;
	ЭлементыФормы.ВзятьКарту.Доступность   = ВзятьКарту;
	ЭлементыФормы.Хватит.Доступность       = Хватит;
КонецПроцедуры

Вызов наших методов из компоненты написанной на Delphi выглядит так: ЭлементыФормы.ЭлементУправления1.AddCard(1,1, Ряд, Колонка); и ЭлементыФормы.ЭлементУправления1.ClearCanvas();

запускаем и проверяем

На этом у меня все! Вы можете сами доработать правила игрового процесса, так как считаете нужным.

Архив с примером выкладываю ниже.

Перед тем как запустить обработку из архива необходимо зарегистрировать компоненту w0rm21Proj1.ocx. 

Готов ответить на вопросы.

Спасибо за внимание!

 

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

Наименование Файл Версия Размер
Пишем игру 21 (очко). Пример использования 1С и ActiveX (Программный код 1С и Delphi):

.zip 1,49Mb
2
.zip 1,49Mb 2 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. rpgshnik 3363 23.05.17 10:29 Сейчас в теме
Это круто!
Прикрепленные файлы:
DrAku1a; Tolpinski; Romakon92; CyberCerber; TDAlleaMebeli; Smirnov1980; +6 Ответить
2. BackinSoda 23.05.17 10:39 Сейчас в теме
Что это за правило такое - "Золотой" ?
CyberCerber; Smirnov1980; +2 Ответить
3. user621724_Dimav1979 387 23.05.17 10:52 Сейчас в теме
(2) в данном случае это когда два туза сразу выпало...
Smirnov1980; +1 Ответить
7. CyberCerber 978 23.05.17 13:01 Сейчас в теме
(3) Не заметил в коде, а где-то проверяется, что это именно два туза, а не, например 10 + 10 + 2?
8. user621724_Dimav1979 387 23.05.17 17:48 Сейчас в теме
(7) Проверка на Золотой сразу после раздачи первых двух карт, если счет будет 22 - то это и есть 2 туза
4. smirnov.es 21 23.05.17 11:17 Сейчас в теме
Респект таким парням. Ждем реализации на мобильной платформе
CyberCerber; Smirnov1980; madonov; rpgshnik; +4 Ответить
5. Smirnov1980 7 23.05.17 12:07 Сейчас в теме
Это cool !

ps В базовую поставку 1С уже давно требуется пасьянс "косынка" )))).
AlexGroovy; rpgshnik; +2 Ответить
6. CyberCerber 978 23.05.17 13:00 Сейчас в теме
Круто! Лет 10 назад делал тоже 21 на Делфи 7... Интересно, можно будет его теперь в 1С встроить :-)
9. quick 582 23.05.17 22:22 Сейчас в теме
А слабо на делфях в 7-ку сделать форму, да что бы калбэки уходили в 1С? ;)
Если делфи еще интересно, могу посоветовать глянуть https://github.com/WorldException/v7SimpleAddIn
там уже XE2, но сам принцип использовать RTTI для внешних компонент может быть интересен.
rpgshnik; +1 Ответить
10. user621724_Dimav1979 387 24.05.17 04:41 Сейчас в теме
(9) Если кому интересно, могу статью опубликовать отлавливание событий из формы ActiveX в 1С...можно на примере игры морской бой или на примере ведения карты склада ячеистого газобетона
smirnov.es; user657734_YGREEN; Rain88; Trancer64; monsterZE; inf012; +6 Ответить
12. rpgshnik 3363 24.05.17 17:45 Сейчас в теме
(10) Нужно бооооольше уроков
Прикрепленные файлы:
11. user621724_Dimav1979 387 24.05.17 08:11 Сейчас в теме
Выкладываю обработку с компонентой
Прикрепленные файлы:
21_example.zip
wowik; monsterZE; +2 Ответить
13. PerlAmutor 129 24.05.17 21:35 Сейчас в теме
Немного полезной критики =) Delphi? Гхм, пора бы ей уже на покой. Компонента не переносима на другие платформы, про веб-клиент, можно забыть. В безопасном режиме работать не будет. Тут возникает главный вопрос, зачем было связывать это вообще с 1С? Хотите того же самого - используйте HTML5 и JavaScript. К сожалению тоже будет не переносимо, т.к. Internet Explorer нет в Linux. Легких путей, к сожалению, разработчики 1С нам не предлагают. Управляемые Формы, опять же к сожалению, оказались менее управляемые чем Обычные. Надеюсь они когда нибудь встроят в свою платформу браузер Chromium и позволят управлять всем исходным кодом страницы при использовании веб-клиента.

Старайтесь вот так не писать (красиво, но не практично), я обжегся уже на этом
Перем КолодаКарт, ОбщийСчетИгрок, ОбщийСчетПК;


1С настолько тупа, что по Ctrl+Space не находит переменных ОбщийСчетИгрок и ОбщийСчетПК объявленных через запятую.

Только так будет находить:

Перем КолодаКарт;
Перем ОбщийСчетИгрок;
Перем ОбщийСчетПК;
14. DrAku1a 1590 25.05.17 02:34 Сейчас в теме
(13) Delphi - это классика.
HTML5 не обязателен, обычного HTML + JS достаточно будет.
16. orefkov 1151 27.05.17 15:25 Сейчас в теме
(13)
1С настолько тупа, что по Ctrl+Space не находит переменных ОбщийСчетИгрок и ОбщийСчетПК объявленных через запятую.

Ну, может человек снегопат использует и знать не знает ни о ctrl+space, ни о таких тонкостях его использования :)
rpgshnik; +1 Ответить
15. orefkov 1151 27.05.17 13:54 Сейчас в теме
Получение следующей карты сделано конечно плоховато. На такой игре, как очко, конечно сойдёт, так как много карт всё-равно не выходит, но для игр с длинной раздачей - для последних карт может кучу раз цикл вхолостую крутить, пока попадёт в еще не выданные карты. Обычно делают нормальное тасование колоды. Для 1С например, можно сделать ТЗ с колонками ЗначениеКарты и КлючСортировки. Заполнить КлючСортировки случайными числами и отсортировать по ней. Потом брать последовательно карты из отсортированной ТЗ.
rpgshnik; +1 Ответить
17. user621724_Dimav1979 387 27.05.17 16:02 Сейчас в теме
(15) Александр полностью с вами согласен. Алгоритм можно оптимизировать до бесконечности...но главная цель данной статьи не в алгоритме игры...а в навыках применения компоненты актив икс
asmuk; Fox-trot; +2 Ответить
Оставьте свое сообщение

См. также

GGraphics - внешняя компонента для работы с картинками jpg (jpeg), png, bmp, gif, tif

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

3600 руб.

02.09.2010    72598    71    253    

187

Внешняя компонента для сканирования (замена TWAIN-компоненты БСП) (Native Win 32/64)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer). Работа с PDF основана на проекте PDFium из состава проекта Chromium/Chrome, для работы с TWAIN использован свободный проект twpp https://github.com/xricht17/twpp.

2400 руб.

12.05.2020    21371    110    84    

68

Внешняя компонента печати PDF (Native Win 32/64)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

1500 руб.

17.09.2018    31639    95    121    

102

Внешняя компонента WebSocket для 1С (c поддержкой Authorization token bearer)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента в виде библиотеки (.dll файл), позволяющая посылать команды и получать ответы по протоколу WebSocket из 1С. Компонента работает только на стороне "клиента".

4440 руб.

22.06.2020    13637    9    26    

14

Внешняя компонента для подключения 1С к телефонии Asterisk

Разработка внешних компонент Телефония, SIP Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

1200 руб.

04.05.2018    41311    104    64    

55

Разработка внешней компоненты по технологии Native API. Мониторинг файловой системы в 1С

Разработка внешних компонент Платформа 1С v8.3 Россия Абонемент ($m)

Пример разработки внешней компоненты по технологии Native API для мониторинга выбранной папки файловой системы (изменение, переименование, удаление) файлов.

1 стартмани

12.03.2023    5165    4    binx    3    

45

Конвертор из PDF

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Native компонента для рендеринга PDF в картинки, и (или) извлечения текста из PDF файлов.

2 стартмани

25.01.2023    3041    22    bmk74    12    

23

Пишем внешнюю компоненту для 1С, NativeAPI на С++, для ОС Linux, с использованием Qt Creator

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

В статье рассмотрен процесс создания внешней компоненты для 1С в среде Qt Creator для операционной системы Linux (ubuntu, debian, mint и им подобных). На примере компоненты для сбора данных от внешней аппаратуры и сохранение их в базе, посредством 1С. В качестве внешней аппаратуры в данном примере будем использовать Arduino UNO.

1 стартмани

13.05.2022    8897    5    user1779098    34    

61

Делаем табло в обозревателе из 1Ски с нуля за полчаса. Без бутстрапов, реактов и ангуляров. Жизнетрюки от kuzkov.info

Разработка внешних компонент WEB-интеграция Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

02.05.2022    9716    127    Steelvan    0    

67

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

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

29.11.2021    8764    20    Prometeus2011    14    

36

Внешняя компонента для мобильного приложения

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

Внешняя компонента для дополнения мобильной платформы некоторыми функциями.

1 стартмани

02.11.2021    8963    28    Prometeus2011    45    

37

Распознавание речи в мобильном приложении 1С на Android

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

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

1 стартмани

15.07.2021    10118    9    salexdv    6    

36

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

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

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

16.03.2021    10437    velemir    36    

81

Внешняя компонента: Android tools

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

Несколько дополнительных функций для мобильного приложения\клиента под Android. Размер архива внешних компонент под архитектуры ARM и x86 - 390KB.

1 стартмани

12.01.2021    14316    39    KAV2    46    

16

GraphViz1С: внешняя компонента 1С Native API для построения графов

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Внешняя компонента Native API для Windows с исходными кодами на C++ для построения графов посредством библиотеки GraphViz. Граф строится на основании текстового описания в формате dot. Реализован экспорт в большинство графических форматов. Поддерживаются версии платформы от 8.3.14 и выше до 8.3.18.

22.12.2020    10908    214    kandr    15    

66

Использование встроенного сканера ТСД на Android в мобильном клиенте и мобильном приложении (драйвер сканера Android для 1С)

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

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

3 стартмани

09.10.2020    53225    378    ltfriend    221    

107

Мониторинг учетных записей пользователей Windows Server 2008/2012

Разработка внешних компонент Информационная безопасность Россия Абонемент ($m)

Программа позволяет отслеживать журнал событий безопасности действий над учетными записями пользователей (удаление, создание, блокировка, смена пароля и т.д.), и отправлять на E-mail уведомление системному администратору в случае изменения конфигурации пользователей Windows Server.

3 стартмани

10.09.2020    6924    0    ClickUp    0    

2

Внешняя компонента на C# для парсинга страниц через Phantom JS на сервере 1С х32,х64

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

PhantomJS - это браузер без окна, используемый для автоматизации взаимодействия с веб-страницами. PhantomJS предоставляет JavaScript API, обеспечивающий автоматическую навигацию, снимки страницы, эмуляции поведение пользователя, что делает его распространенным инструментом, используемым для запуска модульных тестов на основе браузера в автономной системе, такой как среда непрерывной интеграции . PhantomJS основан на WebKit, что делает его похожей на Safari и Google Chrome средой просмотра. Это программное обеспечение с открытым исходным кодом, выпущенное под лицензией BSD.

1 стартмани

06.08.2020    12251    8    DrZombi    7    

22

Внешняя компонента Native API для управления окнами и буфером обмена, получения снимков окон Windows и Linux

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

Внешняя компонента Native API для Windows и Linux с исходными кодами на C++. Возможности компоненты: получение списка окон и списка процессов, управление размерами и положением окна, снимок окон и снимок экрана, доступ к данным буфера обмена, взаимодействие по протоколу WebSocket.

2 стартмани

16.04.2020    12187    24    kandr    13    

30

Android Java и NativAPI C++ внешняя компонента для широковещательных сообщений (отправка и прием). Подключаем сканер ШК и клавиатуру к "1С мобильное приложение"

Оптовая торговля Розничная торговля Сканер штрих-кода Разработка внешних компонент Мобильная разработка Мобильная платформа Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Подключаем сканер ШК и клавиатуру к "1С мобильное приложение", на терминале сбора данных "ATOL Smart.Lite android 7.0". Работаем с буфером обмена. В архиве к теме; 1. исходник компоненты (папка package готовый zip); 2. исходник "AccessibilityService" для перехвата клавиатуры (папка package готовый apk); 3. cf - тестовая конфигурация

1 стартмани

15.04.2020    18632    105    SanyMaga    102    

20

Конвертация PDF в 1С

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

COM-компонента для работы с PDF (32/64 bit)

4 стартмани

31.03.2020    32685    157    SerVer1C    143    

77

Получение фото с веб-камеры

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Получение фото с веб-камеры без ActiveX. Внешняя компонента по технологии Native API.

1 стартмани

25.03.2020    21293    190    berezdetsky    51    

27

Быстрая печать этикеток (ZPL, EPL, TSPL, EZPL, GEPL, TSPL-EZ)

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

Качественная и быстрая печать на внутреннем языке принтеров этикеток.

4 стартмани

02.02.2020    23020    80    Johny_v    20    

35

Сканирование по TWAIN в 1С (обычные и управляемые формы)

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

Обработка показывает пример, как можно в 1С проводить сканирование с помощью компоненты TWAIN.

3 стартмани

03.01.2020    15560    50    Denr83    0    

20

Маленькая и скромная мобильная внешняя компонента

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

21.10.2019    21708    18    ripreal1    34    

67

Native внешняя компонента для оповещения по UDP или TCP

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Native внешняя компонента для оповещения по UDP или TCP, которая реализует возможность в 1С передавать сообщения с сервера на клиента. Исходный код компоненты также представлен.

1 стартмани

06.10.2019    23144    50    vdv2701    40    

48

PinkRabbitMQ - Native API компонента 1С с открытым исходным кодом, для обмена сообщениями через RabbitMQ

Разработка внешних компонент Платформа 1С v8.3 Бесплатно (free)

PinkRabbitMQ представляет собой Native API компоненту для 1С Предприятия 8 (Windows 32bit и 64bit) с открытым исходным кодом на с++ (можно собрать компоненту самостоятельно). PinkRabbitMQ это низкоуровневая компонента которая реализует обмен по протоколу AMQP с брокером сообщений RabbitMQ. Для организации высокоуровнего обмена между информационными базами предназначен Адаптер. Компонента разрабатывается в рамках проекта Адаптер.

29.07.2019    39120    1856    Begemoth80    255    

206

Компонента для 1С, принимающая вес с железнодорожных, автомобильных, крановых весов

Разработка внешних компонент Платформа 1С v7.7 Платформа 1С v8.3 Транспорт, автопарки, такси Россия Платные (руб)

Программа "Компонента приёма веса для 1С, версия 3.0" позволяет принимать и заносить вес с весов непосредственно в программу "1С" - то есть, прием веса осуществляется целиком и полностью из программы "1С".

26400 руб.

09.04.2019    14847    2    8    

5

Внешние компоненты мобильной платформы 1С для ОС Андроид

Разработка внешних компонент Мобильная разработка Мобильная платформа Бесплатно (free)

На трех простых примерах описана процедура разработки внешних компонент для Андроид. Статья написана по мотивам доклада на конференции INFOSTART 2018 EDUCATION.

31.01.2019    23250    IgorKissil    29    

80

Эмулятор ККМ по стандарту ФФД 1.1

Разработка внешних компонент Кассовые операции ККМ Платформа 1С v8.3 1С:Розница 2 1С:Управление торговлей 11 Россия Абонемент ($m)

Эмулятор драйвера ККМ по стандарту ФФД 1.1 предназначен для использования всех возможностей программы, при отсутствии физической кассы. Подойдет как программистам при разработке интерфейса РМК, например, так и пользователям для тестирования возможностей программы.

1 стартмани

30.12.2018    38309    189    Matveymc    31    

28

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

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

Создание внешней компоненты по технологии Com "с нуля", используя ассемблер goAsm.

1 стартмани

26.11.2018    12201    chessman    42    

137

WebSocket Клиент / Сервер. Внешний компонент

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Реализация протокола WebSocket. Клиентская часть для взаимодействия с внешними сервисами. Серверная часть для организации собственного сервера, принимающего клиентские соединения в многопоточном режиме. Возможно взаимодействие RabbitMQ Slack Asterisk и другие

1 стартмани

16.11.2018    34268    166    nomadon    74    

32

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

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

12.11.2018    24336    62    KAV2    121    

82

TextRadar - компонента нечеткого поиска

Разработка внешних компонент Поиск данных Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Компонента предназначена для организации нечеткого поиска в текстовых данных, решения задач сопоставления списков и т.д. Вычисляемый коэффициент релевантности (похожести) - нормированный, лежит в диапазоне между 0 и 1. В случае необходимости (опционально) формируются данные для отображения найденных фрагментов. Расчет коэффициентов происходит в многопоточном режиме (на уровне компоненты). Для 32 и 64 разрядных систем.

19.09.2018    31483    42    TSSV    19    

19

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

Разработка внешних компонент WEB-интеграция Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

01.08.2018    45759    307    RSConsulting    21    

74

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

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

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

1 стартмани

17.07.2018    25128    84    nomadon    45    

117