Умный дом на 1С + ардуино

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

Разработка - Практика программирования

ардуино умный дом 1C arduino Smart House

Конфигурация для автоматизации быта программиста 1C и не только. В данной статье будет рассказано, как можно использовать 1С для задач, не входящих в стандартные рамки этой платформы. Например, управление домом. В качестве периферии для подключения будет использован микроконтроллер (МК) Ардуино, но на нём не будет никакой логической нагрузки, весь процесс будет проходить на сервере 1С. Работа с пинами ввода/вывода происходит напрямую из 1С.

Итак, система состоит из 3 потоков (сеансов):

1. Поток, который управляет МК по ЮСБ (серийный порт).

2. Поток, который управляет МК, подключенными по сети.

3. Основной поток, осуществляющий обработку логической части кода.

В конфигурации есть 2 регистра сведений, через которые происходит управление микроконтроллерами (COM, NET). А в общем модуле "К" есть большая часть стандартных функций, с помощью которых можно напрямую управлять МК, однако время выполнения значительно дольше времени выполнения этих команд в мк.

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

 
Пример "Поддержание в комнате температуры 15-20 градусов"
 
При вызове кокой-либо функции модуля "К" МК выполняет соответствующее ей действие, при этом 1С будет ожидать завершения этого действия, а по окончанию получит ответ и продолжит исполнять код процедуры. Если действие предпологает какой-либо ответ, то будет возвращено соответствующее значение, если нет, то Булево. Например, функция "analogRead" измерит напряжение и вернёт число от 0 до 1023, а функция "analogWrite" установит ШИМ волну с заданной скважностью и вернёт ИСТИНА.
 
 
 
Описание механизма передачи команды на МК и получение ответа после выполнения. (ЧИТАТЬ НЕОБЯЗАТЕЛЬНО. Раздел для тех кому интересно)

 

Добавлять свои обработки можно напрямую в конфигурацию, а можно как внешние обработки в справочник "Обработки". В справочники "КонтроллерыCOM" и КонтроллерыNET добавляются подключенные МК, в коде лучше использовать эти справочники как промежуточное звено, чтобы в случае изменения номера COM порта или IP адреса МК достаточно было поменять значения в этих справочниках. Однако можно указывать данные подключения МК напрямую.

Для поддержания того или иного процесса обработка должна выполняться переодически, а не разого. Для этого в конфигурации есть Регистр сведений "Процессы":

---------------------------------------

Наименование- Строка(100) - Произвольное название процесса.

РасположениеПроцедуры - (Строка, ссылка на справочник Обработки) Если обработка встроенная то указывается её название.

НазваниеПроцедуры - (Строка) Название экспортной процедуры в обработке.

Оборудование - (Ссылка на справочник оборудование) так как одна обработка может использоваться для нескольких устройств у которых могут быть разные МК ( или один МК но разные пины) нужно указывать с чем именно она будет работать (пример обработка управления светом одна, а лампочек 4)

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

Остальные поля  очевидны.

Для определения условий запуска той или иной обработки есть 2 справочника:

- Условия

- ГруппыУсловий

В первом справочнике можно написать код проверки, он должен содержать переменную "Результат" (Булево), если её нет или она равна ЛОЖЬ то проверка не пройдера. Во втором справочнике создаётся набор из нужных условий, там же их можно объеденять в группы ИЛИ.

Для хранения фиксированных параметров есть справочник "Настройки", в нём указывается имя параметра и значение, элемент справочника привязывается к оборудованию и параметры могут использоваться в процедурах обработок для этого оборудования.

Для монитринга какого либо процесса используется регистр сведений "ТекущиеДанныеОборудования" обработки в него записывают текущую информацию которую должны получить процессы других сеансов. Например вы с телефона окрываете веб клиент и хотите видеть текущую температуру в комнате (из первого примера), через этот регистр процесс обработки передаст нужную информацию.

Список стандартных функций доступных из 1С:

-pinMode
-digitalWrite
-analogWrite
-digitalRead
-analogRead
-tone
-noTone
-analogReference

Их описание в 1С можно посмотреть в общем модуле "К", а для МК на сайте http://arduino.ru/Reference

Список специфических функций:

-ОткрытьCOMПорт
-ЗакрытьCOMПорт
-ПересоздатьКомпонентуИОткрытьCOMПорт
-ПроверитьКомпонентуИСвязьCOMПорта
-ПерезапуститьАгентСервера1С
-ПерезагрузитьСервер1С
-АвтоСброс

 
 Описание специфических функций

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

-_pinModeOUTPUT_digitalWrite
-_pinModeINPUT_digitalRead
-_ТемператураВлажностьDHT11
-_analogRead_СреднееАрифметическое

 
 Описание составных функций

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

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

 

ARDUINO

Скетч для ардуины будет следующий:

 
 COM (USB) интерфейс
 
 NET (Ethernet)
 
NET (ESPDUINO Wi-Fi)
 
 NET HR911105A (Ethernet)

Среду для разработки можно скачать с официального сайта http://arduino.ru/Arduino_environment

ВАЖНО!!! Работает только в серверном режиме. Сервер 1С должен быть 32 разрядным. МК подключается к серверу.

П.С. Конфигурация недоделана, выкладываю как есть. Внешние обработки пока что не функционируют, свои поделки вставляйте в основную конфигурацию. Проект дорабатывается, обновления буду выкладывать сюда.

Архив с барахлом https://cloud.mail.ru/public/JsdY/87bMekTef

 

05.02.2019 Добавлена масса функционала (опишу позже).

02.03.2019 Новое:

  1. Почти полноценный телеграм бот который умеет:
    1. Принимать любые сообщения (загружает все типы вложений)
    2. Принимать трансляцию геоданных
    3. Отправлять Текстовые сообщения + с клавиатурой, фотографии, файлы
    4. Редактировать ранее отправленные текстовые сообщения, клавиатуры, фотографии
  2. Механизмы взаимодействия подсистем конфигурации, можно несколькими кликами сделать новую команду телеграм бота и привязать к ней нужное действие (команда контроллера), так же можно получить ответ от телеграм бота о результате выполненного действия (правда это уже посложнее)
  3. Веб хуки. Приём и обработка Get запросов, можно настроить шаблоны и совершать нужные действия при получении команды по http (это даёт возможность инициирования события на контроллере, пригодится например для умных выключателей)
  4. Добавлены обработки работы с IP камерами изображение с которых можно получить в пост запросе Get методом и камеры Dahua, видео запись реализовать не вышло, однако возможна запись фотографий с интервалом 1 сек. (так же есть механизм "трансляции видео" в телеграм, по сути это слайд шоу, в телеграм отправляется фотография которая обновляется раз в секунду но всё же
  5.  Допишу позже)

 

 

Последняя версия на Гит Хабе https://github.com/sasha777666/SmartHome

 

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

1. infostart.ru/public/372352/

 

Архив с барахлом  https://cloud.mail.ru/public/JsdY/87bMekTef

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

Наименование Файл Версия Размер
Умный дом на 1С + ардуино:

.rar 649,97Kb
06.08.17
19
.rar 649,97Kb 19 Скачать
SmartHome1C.cf

.cf 5,57Mb
19.03.19
7
.cf 5,57Mb 7 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. IvanovAV 69 08.08.17 01:26 Сейчас в теме
2. Артано 671 08.08.17 02:28 Сейчас в теме
Один вопрос - чем обусловлены ведущие символы нижнего подчеркивания в именах методов?
3. PhoenixAOD 59 08.08.17 03:26 Сейчас в теме
(2)Скорее всего привычкой))
5. sasha777666 300 08.08.17 09:03 Сейчас в теме
(2) хотел выделить процедуры которые являются комбинациями, чтобы набрав "К._" в подсказке появился их список, не знаю почему выбрал именно этот символ "_" :)
4. MaxS 1977 08.08.17 07:17 Сейчас в теме
Неужели ARDUINO не справиться с простейшими задачами? Может быть 1С полезнее использовать для конфигурирования логики и запись результата в память ARDUINO?
Иначе если после включения обогревателя зависнет 1С сервер, будет жарко.
Либо добавить простейшую логику защиты от зависания сервера. Обогреватель включается максимум на пол часа. Если за это время не получен ответ от сервера, переводим в состояние по умолчанию, заданное ранее в 1С, рекомендуется состояние по умолчанию - "выключен".
DrAku1a; dima1c; sergelemon; fvadim; starik-2005; +5 Ответить
6. sasha777666 300 08.08.17 09:11 Сейчас в теме
(4) Справится, но для этого нужно писать код для ардуины, а я хочу приобщить тех кто может писать только на 1С :)
Зависания и потеря связи предусмотрена, есть команда К.АвтоСброс(НомерПорта, ВремяВСекундах), вызвав её в МК включится таймер и если по прошествии указанного времени МК снова не получит эту команду то перезагрузится сбросив состояние всех пинов. В случае если причино стало зависание COM порта то можно перезапустить агент сервера К.ПерезапуститьАгентСервера1С, а если причина в ошибках ОС то перезагрузить сервер К.ПерезагрузитьСервер1С ... конечно если зависнет сам сервер то решать проблему нужно чем-то стороннем.
Olenevod; Serj1C; +2 Ответить
11. TODD22 19 08.08.17 17:45 Сейчас в теме
(6)
а я хочу приобщить тех кто может писать только на 1С :)

Пусть лучше освоят для разнообразия другие языки и технологии....
Novinsky; eugeniezheludkov; DrAku1a; neikist; igormiro; papami; корум; juricher; starik-2005; +9 Ответить
13. корум 284 08.08.17 17:53 Сейчас в теме
(11)
другие языки и технологии

Например, родной русский для выдачи команд сыну.
pbabincev; TreeDogNight; adapter; smakki; juricher; +5 Ответить
51. DrAku1a 1314 03.01.18 16:54 Сейчас в теме
(11) Я за! Тема интересная, вот только практической необходимости, пока что, нету.
21. OhlamOOOOn 26 09.08.17 09:55 Сейчас в теме
(6) Как вариант применения 1С, прямо скажу, для меня было неожиданно :) Классный изврат, порадовал :)
Но вот практического применения я пока увидеть не могу. Очень дорого. К всеобщему счастью, стоимость ардуины мега в китае около 400 руб, web расширения к ней того же порядка, силовые модули тоже рублей по 100 на контакт. Все, получаем веб сервер для управления. Да придется немного посмотреть уроков и почитать. Но извините меня, объем знаний для начального программирования ардуины ничтожно мал, по сравнению с применением той же БСП. Я сомневаюсь, что даже начинающий 1С-ник будет испытывать какие-либо проблемы при изучении. А вот для тех, "кто может писать только на 1С" думаю области управления устройствами лежат за пределами их интересов...

Повторюсь, спасибо за интересную идею применения, осталось только придумать область применения.
Хотя у меня уже есть вариант - управление светом на рабочем месте бухгалтера путем проведения документа "расход электроэнергии" :)
25. sasha777666 300 09.08.17 10:37 Сейчас в теме
(21) Практическая цель - возможность сделать какое-то устройство без изучения материала по ардуине. Сравнивать с какими-то специально разработанными для этого платформами не корректно. Но тут есть 2 преимущества которые являются очень весомыми для 1Сника:
1.Пишем на языке 1С
2. Доступны все фичи платформы.
13jaguar; +1 Ответить
24. disnos 09.08.17 10:31 Сейчас в теме
(6) Как чистый эксперимент интересно, но не для реального использования. Был опыт разработки связки 1с и ардуино для испытательной системы.

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

Повисла ночью у вас 1с-ка или винда или роутер и все система ушла в цикличный рестарт и сброс пинов.
Тогда надо поставить еще 1 ардуину, которая будет проверять каждое из устройств и в случае зависания ребутить комп, роутер и тд. :)
blackhole321; sasha777666; +2 Ответить
8. adapter 545 08.08.17 15:05 Сейчас в теме
т.е. умный дом теперь требует купить серверную лицензию 1С? Или мерзни как нищеброд. Вендор аплодирует )
Серверная 1С требует еще и сервер БД, даже фришный, но все равно ресурсы ест - как из пушки по воробьям.
triera2000; awk; juricher; starik-2005; +4 Ответить
9. sasha777666 300 08.08.17 15:58 Сейчас в теме
(8) размер базы несколько мегабайт, подойдёт скуль экспресс он бесплатный. У меня всё на мини ПК работает ( флешка 30 гиг, проц 1.4*4 вроде, 2 гига ОЗУ)
10. TODD22 19 08.08.17 17:42 Сейчас в теме
(9)
подойдёт скуль экспресс он бесплатный.

Но сервер 1С платный.
12. корум 284 08.08.17 17:52 Сейчас в теме
(9)
флешка 30 гиг, проц 1.4*4 вроде, 2 гига ОЗУ

... и вот это вот всё для того, чтобы включать вентилятор?
Господа, вы слишком много кушать.
awk; juricher; +2 Ответить
14. TODD22 19 08.08.17 17:56 Сейчас в теме
(12)
... и вот это вот всё для того, чтобы включать вентилятор?

Ну почему всё? Ещё 1С сервер и СУБД :) Управлять вентиляторами это вам не сыну команды отдавать! Тут серьёзно всё...
Lion_LexXx; +1 Ответить
15. juricher 6 08.08.17 19:40 Сейчас в теме
(12) Я бы сказал жиром пука...те
16. starik-2005 2180 08.08.17 19:40 Сейчас в теме
Не, мне, конечно, понравилось все это (в плане темы), но, господа! XXI-й век на дворе, стоимость "райспбери пиай" дешевле не только микросервера (я так понял, что 1С микросервер на 5 клиентов за 15 косарей выпустила именно для подобного шаманства), но и чуть ли не учебной 1С-ки. И в линухе не нужны эти все драйвера и компоненты для работы с COM-портом, эмулируемым кривыми виндовыми дровами - там уже есть порт-файл, в который ты на том же PHP/Python/C++/Go/куче всего другого можешь писать и из которого можешь читать. Это не говоря о том, что на "райспбери" (или "оранже" и прочих) девайсе ты можешь GPIO дергать вообще хоть из шелла. Кароч, за напоминание - спасибо, а за 1С в качестве управлятеля - чисто поржать.

https://www.terraelectronica.ru/news_postup.php?ID=3568
17. sasha777666 300 08.08.17 23:41 Сейчас в теме
(16) и много ли программист 1C накодит на PHP/Python/C++/Go/ ? для тех кто зная только 1С хочет что-то сделать малинка не альтернатива. Дёргать GPIO вообще опасно, 15мА превысишь и нет малинки..... и насчёт файла, ну и в винде можно писать/читать напрямую в порт "\\.\Com8" ...
27. starik-2005 2180 09.08.17 11:18 Сейчас в теме
(17) если программист не сможет что-то запилить на питоне, на котором дети 12-летние пишут вполне приличные приложения, то это, во-первых, ни разу не программист и даже в 1С ему делать нечего.

А по поводу 15мА, то это Ваше личное непонимание того, как все работает. У народа до 0,5А на выходе напруга. Но ежу понятно, что двигателем крутить надо через драйвер (это микросхема такая, а не то, что кто-то подумал). А для чтения данных с GPIO другие методы.
28. TODD22 19 09.08.17 11:45 Сейчас в теме
(27)
У народа до 0,5А на выходе напруга.

Это сила тока ;)
29. корум 284 09.08.17 12:01 Сейчас в теме
(28) Все всё искричество в ОМАХ меряют! :)
30. sasha777666 300 09.08.17 12:18 Сейчас в теме
(27) 16 мА это тех характеристики, а не моё личное мнение.
31. starik-2005 2180 09.08.17 12:43 Сейчас в теме
(30) Суть GPIO - прочитать уровень, установить уровень. Они двух вариантов: цифровой - высокий/низкий и аналоговый - это некий каскадный ЦАП (энное количество бит по количеству резисторов в каскаже). Дальше есть ШИМ - широтно-импульсная модуляция сигнала для управления скоростью вращения двигателя (ясно, что через линию управления драйвера), угла поворота или интенсивности свечения светодиода (можно и для иных моментов - генератор прямоугольного звукового сигнала на зуммерах, например). Все. Там мощи не надо. GPIO - это, считай, нога цифровая/аналоговая ардуинки - не более. То же самое для малины, апельсины и прочих девайсов (апельсинку зиро H2+ можно у кетайцев с 256 метрами и 4-мя ядрами 1,2Ггц купить за 700 рублей с учетом доставки).

Так вот, на ногах максимальная сила тока - до 0,5А = 500мА (от источника питания зависит в принципе, от ноги, от девайса). Напряжение - 5/3 вольта (в зависимости от девайса и ноги). Дальше все нетрудно посчитать, закон Ома в этих ваших интернетах описан в достаточном количестве источников. Подбираете правильный резистор и огребаете профит в виде данных с датчика, верчения пропеллером или поворота камеры на угол альфа.

И все это на питоне или даже bash-е. Для извращенцев на последние малины ставится Windows IoT.
32. sasha777666 300 09.08.17 13:13 Сейчас в теме
(31) Зачем вы всё это пишите? А на счёт МК у которого через GPIO можно пропустить 0.5 Ампера, поделитесь ссылочкой пожалуйста.
33. starik-2005 2180 09.08.17 13:44 Сейчас в теме
(32) а все зависит от того, зачем Вы пишите это:
Дёргать GPIO вообще опасно, 15мА превысишь и нет малинки.
То, что бред написан - это полбеды. Беда в том, что кто-то этот бред прочитает и подумает, что GPIO дергать вообще нельзя.
35. sasha777666 300 09.08.17 14:08 Сейчас в теме
(33)
(34) да вы батенька Не культурный человек, да и с названием раздела ошиблись
для тупых специальный раздел даже написан
судя по тому, что вы не поняли его, он явно не
для тупых

Вывод 5 вольт это 5 вольт от преобразователя напряжения, а GPIO это выводы АЦП
38. starik-2005 2180 09.08.17 16:53 Сейчас в теме
(35)
судя по тому, что вы не поняли его, он явно не
Ну расскажите нам, просветите, так сказать, темноту...
39. sasha777666 300 09.08.17 18:13 Сейчас в теме
(38) Сергей я посмотрел ваши публикации и у меня складывается впечатление, что ваш аккаунт взломали и сейчас тут другой человек. По ссылке написано что 0.3А можно взять с 5 вольтовых пинов питания, логика на малинке 3.3 вольта и на GPIO не может быть 5, я работал с малинкой и прекрасно знаю её характеристики. И то, что нельзя использовать GPIO - написали вы, я же говорил что их опасно использовать потому что есть риск спалить МК т.к. они напрямую завязаны на АЦП. И если ток ( пусть даже для поддержания логического напряжения) будет больше нормы, а это 16мА а не как не 300 то будет беда.
40. starik-2005 2180 09.08.17 19:26 Сейчас в теме
(39) хорошо, допустим ошибся я и перепутал выходы питания и ноги gpio - ошибся, умнее стал.

Но меня смутило именно то, что Ваш ответ звучал как "использовать gpio" нельзя. И тут уже вопрос сам всплывает: а как информацию сдатчиков считывать? У Вас есть вариант, как это сделать без gpio? Глупость на глупость = ничья.
41. sasha777666 300 09.08.17 19:41 Сейчас в теме
(40) я подключал ардуино нано и использовал её, а на малинке была веб морда, код писал на пхп..... по сути сейчас сделал тоже самое но с мини пк, а код на 1С. Но основная причина использования ардуины была как раз в том, что на малинке логика 3.3 вольта.
34. starik-2005 2180 09.08.17 13:53 Сейчас в теме
(32)
А на счёт МК у которого через GPIO можно пропустить 0.5 Ампера, поделитесь ссылочкой пожалуйста.
Ну вот тут, например, для тупых специальный раздел даже написан:
Что ВАЖНО знать перед работой с GPIO Raspberry Pi

Пожалуй, это самый важный раздел. Нужно помнить о некоторых особенностях GPIO и соблюдать определенные меры предосторожности, чтобы не залететь еще на 35-50$ не повредить Raspberry. Ниже приведены такие "критические особенности", а также несколько нюансов, которые просто могут быть полезны, и которые желательно помнить при разработке.
Максимальный суммарный ток обоих выводов 3.3 В равен 50 мА! Поэтому эти выводы могут использоваться для питания внешних устройств, только если их потребляемый ток меньше 50 мА.
Максимальный суммарный ток обоих выводов 5 В равен 300 мА! Эти выводы также могут использоваться для питания внешних устройств только в том случае, если их потребляемый ток меньше 300 мА.

Чуток ошибся - 300мА.
18. vano-ekt 840 09.08.17 08:10 Сейчас в теме
(16) да главное оттащить прога от регистра бухгалтерии, если у него душа лежит к робототехнике
он сам С++/пайтон в руки возьмет, потыкавшись с 1С
veretennikoff; starik-2005; +2 Ответить
19. Amedis 112 09.08.17 08:46 Сейчас в теме
"Умный дом на 1С" даже звучит страшно )))
20. awk 717 09.08.17 09:45 Сейчас в теме
Спасибо за комментарии. Ржал.... Настроение подняли с утра...
22. madonov 155 09.08.17 10:13 Сейчас в теме
ждем ЦУП на 1С =)
и желательно на клюшках.
23. sg12 17 09.08.17 10:31 Сейчас в теме
Года 3 назад выиграл у методиста бутылку текилы, за реализацию получения и записи в регистр сведений температуры с датчика ds18b20. А по теме, конечно интересная идея, но вот опускать низкий уровень в 1С мне кажется не правильно(но сама реализация интересна), я бы реализовал саму систему на ардуино, а вот управление системой на 1С.
26. stilet 50 09.08.17 10:50 Сейчас в теме
В ленивом режиме пишу нечто подобное, но с некоторым отличием:
1. 1С только как центр управления
2. Исполнительными устройствами являются MegaD 2561
36. citicat 119 09.08.17 16:14 Сейчас в теме
Для домашнего применения (выключить вентилятор) дороговато с учетом всех лицензий.
Для управлением ТСЖ, правда, не для включения вентилятора, а для похожих систем со включением- выключением электричества по подъездам можно переработать систему.
sasha777666; +1 Ответить
37. TODD22 19 09.08.17 16:31 Сейчас в теме
(36)
включением- выключением электричества по подъездам

Уже придумали датчики освещённости и датчики движения. Без всяких 1С и ардуин работает.
корум; +1 Ответить
42. vostok1.dz 38 10.08.17 14:11 Сейчас в теме
Горячая тема, для автоматизации небольших производств, я у себя на "подвластном" мне производстве окон уже заменил пару контроллеров на ардуино, и получаю тем самым, через com порт информацию о сделанных операциях станком (человеком), далее идет загрузка данных в 1с...
Реально освободил одно рабочее место кладовщика (или мастера)..., бонусом вижу когда идёт максимальная выработка по часам..., и много попутной информации...
Так же и я страдаю этим безумием ардуино ))), но уже есть реальные результаты....
AlenaR; citicat; sasha777666; +3 Ответить
43. sasha777666 300 10.08.17 15:38 Сейчас в теме
(42) Присоединяйтесь к проекту )) Сделайте модуль управления светом или климатом :) я сейчас делаю модуль управления зарядом АКБ от солнечных панелей.
44. vostok1.dz 38 10.08.17 20:00 Сейчас в теме
(43)Ближе к новому году, буду внедрять модбас в 1с, есть интерес у клиентов поуправлять БРУ (бетоно-растворный узел), правда не через ардуину, а напрямик ПЛК, с выгрузкой всего в 1С, минуя всякие АСУТП...
У меня с оконными производствами уже 2 положительных внедрения, народ в экстазе)))...
А по поводу умного дома я согласен с вышесказанным, что это немного изврат, но для тренировки полезно )))
citicat; sasha777666; +2 Ответить
45. TODD22 19 11.08.17 05:33 Сейчас в теме
(44)
а напрямик ПЛК, с выгрузкой всего в 1С, минуя всякие АСУТП...

ПЛК это не часть АСУТП?
46. sad_1 19.08.17 14:36 Сейчас в теме
Предположим, вам надо отвезти тёще мешок картошки. Как вы это сделаете?
Правильно!
Вы возьмёте танк, привяжете к нему садовую тачку, в тачку положите мешок картошки и поедите.
Причем, смотрите какое универсальное решение, если надо отправить внуков к бабушке, то к танку привязывается детская коляска и оп-ля, получается вариант пассажирской перевозки.
Вообще, танк, это очень полезная штука в хозяйстве, например, на пушке можно сушить бельё.

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

Например, вчера наши бухгалтера решили сделать типовую операцию (БГУ 2.0). Бухгалтера у нас творческие, пытливые люди. Они почитали ИТС, посмотрели на другие типовые операции и изваяли операцию. Запустили. Проводки не формируются и программа молчит как партизан. Всё нормально, хотя не понятно почему нет никаких сообщений.
Зовут меня. Мне становится интересно и я запускаю отладку. Лезу по программе и дохожу до создания Процессора компоновки данных.
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки);

Это чо? Это для создания каждой записи Журнала проводок вызывается СКД?
Даа-а!
Простые решения это не наш метод!
"Нормальные герои всегда идут в обход" (С)
BigBoss; 7fortune; +2 Ответить
48. vde69 911 29.12.17 14:23 Сейчас в теме
плюсанул как вещь которая должна дать подумать...

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

ну и скетч под ардуинку - то же не идеал :)
49. sasha777666 300 29.12.17 14:44 Сейчас в теме
(48) Проблема с ком портом действительно серьёзная, в случае зависания приходится перезапускать службу сервера :(, в общий модуль внёс процедуру для этого. "ну и скетч под ардуинку - то же не идеал" ну так присоединяйтесь )) доведём его до идеала :))
50. BigBoss 3 03.01.18 14:06 Сейчас в теме
52. maxlab 68 14.06.19 16:10 Сейчас в теме
Оживлю тему. Автору респект и уважуха. И еще больше интересных идей по скрещиванию ужа и ежа. На самом деле, не смотря на критику "бывалых" эмбедеров, есть уверенность что платформу 1С можно использовать в управлении производственными процессами не только на уровне бумаг, но и на уровне пром. оборудования. Разумеется, жесткий реалтайм не получится, но пробовать на медленно текущих производственных процессах уже можно. Вопрос, какую лепту внесет 1С в комплексный показатель надежности всей системы в целом. И конечно же стоимость такого решения под вопросом. Но, с другой стороны... стоимость всей совокупности промышленных контроллеров, участвующих в производственном процессе иногда бывает просто заоблачной. Достаточно, для примера, поинтересоваться у КИПовцев на каком нибудь современном мясокомбинате или сахарном заводе. И нельзя сказать что пром.оборудование супернадежно как на космическом корабле и безгеморройно для обслуживания персоналом. Так что у платформы 1С, и по цене , по качеству и по надежности - есть перспектива. Просто надо сосредоточится на шине CAN. Датчики и исполнительные механизмы на ардуинках (и т.п.) вешать на эту шину, а 1С контролируя эти датчики, в индивидуальных фоновых заданиях, решает задачи (ПИД например), выставляет управляющие воздействия и визуализирует состояние и события на производственной линии. Кстати, поэкспериментирую на досуге на своем самогонном аппарате :). Лиха беда начало... так можно и до крекинг-процессов дорасти.
54. vadimt_82 9 19.08.19 10:59 Сейчас в теме
У меня вопрос к автору статьи. Статью еще не прочитал, но обязательно прочитаю статьи автора. Возможно в публикациях автора уже есть ответы на мои вопросы. Я решил сначала задать вопрос.
Как организовать работу мобильного приложения 1С в среде Android с платами Arduino? Arduino управляет шаговым двигателем. Скажите пожалуйста как это сделать в 2-х словах. Я только начал изучать данный вопрос. Какие программные средства, программные объект? Какие аппаратные средства? я так понимаю через USB?
55. sasha777666 300 21.08.19 13:42 Сейчас в теме
(54) Используя эту конфигурацию возможно управлять с телефона шаговым двигателем подключенного к ардуине которая подключена к локальной сети в которой находится сервер 1С. Возможности управления контроллером подключенным к клиенту 1С в этой конфигурации нет
56. pavel_pss 266 27.02.20 10:47 Сейчас в теме
Подскажи, а dll твоя самописная или где взял.
57. sasha777666 300 27.02.20 17:30 Сейчас в теме
(56) Вы наверное имеете ввиду компоненту для паузы? где-то взял
58. pavel_pss 266 27.02.20 17:42 Сейчас в теме
59. sasha777666 300 27.02.20 19:24 Сейчас в теме
(58)
AddInNative.dll
называется также, она ваша ?
60. pavel_pss 266 28.02.20 11:11 Сейчас в теме
AddInNative.dll, она лежит у тебя в макете, вопрос ты ее писал или где-то нашел
61. sasha777666 300 28.02.20 11:46 Сейчас в теме
(60) я с вами на вы, а вы увы , на ваш вопрос ответил ещё в первой реплике
62. pavel_pss 266 28.02.20 15:11 Сейчас в теме
63. 1cv9 28.05.20 09:11 Сейчас в теме
в файловой базе, при загрузке cf и последующим обновлении базы вылетает критическая ошибка
Ошибка СУБД:
Длина ключа индекса превышает максимально допустимую '_Reference759_ByParentFieldFld1088_RLSSRL (_ParentIDRRef, _Folder, _Fld1088, _Description, _IDRRef, _Marked) UNIQUE'
64. sasha777666 300 16.06.20 13:13 Сейчас в теме
(63) Конфигурация работает только в серверном режиме, причём сервер 1с должен быть 32 разрядным
Оставьте свое сообщение

См. также

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

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

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

1 стартмани

03.07.2019    18735    4    m-rv    86    

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

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

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

3 стартмани

04.09.2019    22291    21    Stepa86    44    

Алгоритмы поиска пути в графе

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

Реализуем алгоритмы поиска пути в графе на платформе 1С 8.3, такие как алгоритм А*, поиск в ширину, жадный поиск, алгоритм Дейкстры и вконце волновой.

1 стартмани

09.07.2019    16254    11    RonX01    10    

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

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

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

1 стартмани

13.09.2018    20297    13    RocKeR_13    16    

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

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

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

1 стартмани

01.06.2018    28980    86    m-rv    57    

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

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

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

1 стартмани

27.08.2018    33178    51    dsdred    15    

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

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

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

5 стартмани

09.08.2018    26336    26    informa1555    26    

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

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

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

1 стартмани

17.07.2018    42623    17    kalyaka    16    

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

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

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

1 стартмани

08.02.2018    26728    19    mvxyz    17    

Полезные примеры составления схемы компоновки данных #2

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

Еще один набор примеров как решить частные задачи в СКД

1 стартмани

22.05.2018    28561    11    SITR-utyos    13    

Умный дом. Продолжение: подключаем счётчик воды к 1С

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

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

1 стартмани

07.12.2017    7012    2    sasha777666    10    

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

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

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

1 стартмани

06.12.2017    25606    49    kwazi    6    

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

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

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

1 стартмани

28.12.2015    26125    67    vasvl123    9    

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

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

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

1 стартмани

28.11.2017    40478    12    swimdog    41    

Макет в СКД - пример всех возможных типовых вариантов

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

Макет СКД: наглядное представление того, что, как и куда выводится при типовых настройках.

1 стартмани

09.11.2017    20550    76    freelancer    4    

Telegram-боты

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

Описание теории, разбор архитектуры и пример реализации telegram-ботов. Сразу скажу, со структурированием изложения мало что могу поделать. :) редакция от 18.07.2018 Правки последней редакции выделены жирным.

1 стартмани

01.09.2017    30316    128    PLAstic    54    

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

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

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

1 стартмани

14.08.2016    46415    36    Demanoidos    60    

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

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

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

1 стартмани

30.05.2017    121000    13    signum2009    46    

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

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

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

1 стартмани

13.03.2017    29751    112    romasna    49    

Распознавание текста с помощью нейросетей Google Cloud Vision и 1С

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

Возможности Google Cloud Vision в распознавании текста.

1 стартмани

08.02.2017    26727    120    kiv1c    18    

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

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

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

1 стартмани

01.10.2015    49503    35    ildarovich    41    

Графическая схема. Управление при помощи XDTO.

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

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

2 стартмани

16.01.2017    20487    100    Alxby    21    

Простой редактор плана помещения JavaScript

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

На ресурсе сейчас очень много решений, которые позволяют редактировать карты, используя географические схемы. Так же много решений, которые позволяют редактировать объекты онлайн веб-карт. Мне же нужно было простое решение, для того чтобы расставить квадратные объекты на плане, показать их пользователю. Ну и распечатать, опять же. Я решил написать простенький редактор на JavaScript с использованием библиотеки Raphael.

1 стартмани

23.11.2016    19683    91    igel9780    22    

Работа с двоичными данными на примере чтения файлов изображений. Новые возможности 8.3.9

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

В статье приводятся новые функции по работе с двоичными данными, появившимися в версии платформы 8.3.9 , на примере анализа формата и размера изображений. А также пример отправки изображения через API ВКонтакте с помощью новых объектов (без использования ОбъединитьФайлы())

1 стартмани

14.11.2016    23860    16    Anton64    22    

Загрузка файлов на сервер с прогрессом и докачкой

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

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

1 стартмани

04.10.2016    12263    53    mrstomak    21    

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

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

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

1 стартмани

03.10.2016    35152    95    json    25    

HTTP-сервис: отчеты [Расширение]

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

Это HTTP-сервис, который возвращает почти любой отчет в HTML, XLSX или в JSON. Сохраните вариант отчета, получите на него ссылку и можно получить данные без захода в 1С. Работает в конфигурациях на основе БСП 2.3.3+, для отчетов на СКД и в 1С 8.3.8+

2 стартмани

30.08.2016    25025    132    Stepa86    15    

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

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

Вам не хватает возможностей в платформе 1С или у Вас нет времени на углубленное изучение платформы 1С? Рассмотрены возможности использования стандартных форм, вызываемых из платформы.

1 стартмани

26.07.2016    26650    76    ZhokhovM    60    

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

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

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

2 стартмани

05.06.2016    54644    7    wowik    32    

БСП 2.3 и БСП 3.0: Просто про выполнение внешней обработки в фоне (c индикацией прогресса выполнения)

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

Простое пояснение о том, как сделать внешнюю обработку с фоновым выполнением и индикацией процесса для любой конфигурации на основе БСП 2.3.2. UPDATE 20/09/19: добавлен вариант обработки с индикацией процента выполнения и статусом выполнения для БСП 3.0.

1 стартмани

18.05.2016    58294    167    rozer    64    

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

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

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

1 стартмани

26.04.2016    54200    19    arakelyan    18    

Еще один способ расчета остатков на каждый день в запросе

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

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

1 стартмани

24.04.2016    32967    48    ildarovich    23    

Вывод печатных форм с запросом данных в форму "Печать документов" из подсистемы БСП "Печать".

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

Все не раз видели, как в типовых конфигурациях, построенных на основе БСП (Библиотека стандартных подсистем), печатные формы, построенные на основе Табличного документа, выводятся в специальную форму "ПечатьДокументов". Эта форма входит в состав подсистемы "Печать" из БСП. При разработке своих печатных форм, иногда необходимо запросить у пользователя дополнительные данные необходимые для печати. Тут встает вопрос, как в этом случае вывести печатную форму в форму "Печать документа". В этой статье я рассмотрю, как реализовать вывод печатной формы в упомянутую форму из подсистемы "Печать", в случае если мы хотим перед выводом печатной формы запросить у пользователя дополнительные данные. Здесь будут рассмотрены два случая: когда реализуется печатная форма с использованием подсистемы "Дополнительные отчеты и обработки" и когда печатная форма добавляется в конфигурацию в режиме конфигуратора, т.е. вносятся изменения в типовую конфигурацию.

1 стартмани

29.03.2016    83737    166    lopatin    13    

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

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

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

1 стартмани

22.03.2016    76791    152    igo1    53    

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

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

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

1 стартмани

03.03.2016    17090    1    Alexander.Shvets    5    

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

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

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

1 стартмани

17.02.2016    47717    50    yuraos    17    

Отображение прогресса выполнения длительных операций в БСП и их отладка в текущем сеансе.

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

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

1 стартмани

17.02.2016    51557    167    balanton    23    

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

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

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

1 стартмани

16.02.2016    22099    8    Tatitutu    5    

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

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

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

1 стартмани

29.12.2015    35912    19    milkers    4    

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

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

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

1 стартмани

06.12.2015    54446    47    YPermitin    19    

Пример связи 1С и мессенджера Telegram. Получение данных из 1С запросом из Telegram

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

В результате чтения публикации Вы получите готовую внешнюю обработку, позволяющую получать из 1С данные, запрашиваемые через Telegram. В данной статье рассмотрим следующее: Использование HTTPСоединение; Чтение JSON для версии 1С 8.3.6 и выше, а также аналог JSON для версии 1С ниже 8.3.6; Подключение обработчика ожидания; Некоторые основные возможности API Telegram; Как создать бота для Telegram; Программное создание колонок дерева на управляемой форме;

1 стартмани

19.11.2015    87911    446    Luchik    202