gifts2017

Удаленное управление 1С

Опубликовал Moolex.ru (moolex) в раздел Администрирование - Системное

Удаленное управление 1С через браузер c использованием всего трех файлов php. Работает с компьютера, планшета, смартфона. Все сделано в минимальном варианте, так чтобы можно было самим программистам все добавить, изменить.

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

  Идея пришла на конференции Infostart. Позвонил клиент и попросил добавить в эталонную базу один элемент справочника, всего то код и наименование добавить. Сами как всегда добавлять боятся, работа стоит. А я на легке, у меня только телефон на Android. Сижу слушаю выступление и думаю, ну как же так! На дворе 2013 год, неужели нет ничего простого, Взять сотовый, ввести два-три слова и чтобы где-то что-то добавилось.

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

 Список необходимых файлов (в приложенном архиве):

rm1c.epf - обработка для 1С 8.1 (для 8.2 и 8.3 просто один раз открыть в конфигураторе)
index.html - стартовая страница html
rm1c.php - скрипт php для стартовой страницы, обрабатывает ввод вопроса
rm1c-wait.php - скрипт php, ждет появление ответа от 1С
rm1c-unload.php - скрипт php, нужен для загрузки ответа от 1С на web-сервер.

 Настройка со стороны web-сервера:

Web-сервер должен поддерживать работу php. В наше время это не проблема. Через ftp заходим в корневую папку вашего сайта: public_html или www. Создаем в ней папку, например rm1c-2013-11-16-10-11-13. В эту папку копируем наши 4 файлы (кроме обработки для 1С). Все. Теперь по адресу www.ваш-сайт.ru/rm1c-2013-11-16-10-11-13 должен открыться диалог с вопросом. После того как все будет настроено в 1С, можно начинать задавать вопрос с любого устройства, у которого есть доступ в интернет.

 Настройка со стороны 1С:

В 1С надо запустить обработку rm1c.epf. Затем перейти на закладку 'Настройка'.
Здесь важно задать 'Адрес в интернете для управления', например: www.ваш-сайт.ru/rm1c-2013-11-16-10-11-13 и завести возможные логины пользователей. Все готово для работы, остается только нажать кнопку 'Пуск'. Все. Переходим в браузер и задаем ваши вопросы к 1С.
Я специально выложил минимальный вариант обработки (никаких созданий справочников, документов). На одном из рисунков к публикации можно посмотреть список рабочих команд. Все остальное может настроить программист 1С для себя сам.

 Безопасность:

Обязательно используйте длинный и сложный 'Адрес в интернете для управления'.
Также поменяйте внутри обработки переменнную 'КодДляВыгрузкиНаСайт'. Если Вы ее поменяли, то придеться и подредактировать строку в файле: rm1c-unload.php. Там, где идет проверка "if (md5($addcode)...", надо проставить свой md5 для значения переменной 'КодДляВыгрузкиНаСайт'.

 Рабочий пример:

 Как это все выглядит, можно посмотреть по адресу http://moolex.ru/rm1c-2013-11-16-10-11-13/index.html . Рабочие логины: Директор, Бухгалтер, Менеджер, Кладовщик. Только просьба, без фанатизма, а то упадет мой сайт:)  И работу данной ссылки в режиме 24/7 я не гарантирую. Самый простой вариант спросить: "сколько денег в кассе". Очень интересный вопрос. Особенно для тех программистов, которые хотят сделать подарок своему руководству на новый год. Уедет ваш Директор на море, и всегда сможет посмотреть сколько денег в кассе:)

Надеюсь обработка поможет программистам 1С в наших рутинных делах. :)

P.S. Пример по выгрузке файлов на сайт через http средствами 1С взял здесь: http://infostart.ru/public/20017/

P.S.S. Php начал изучать две недели назад, просьба не ругать :)

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

Наименование Файл Версия Размер
rm1c 54
.rar 24,03Kb
01.12.13
54
.rar 1 24,03Kb Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение
Комментарии
1. Владислав Охотников (OVladius) 02.12.13 19:46
У меня появилась необходимость удаленно получать данные с 1с например как у вас остаток на счете но так же была необходимость добавлять в справочник элементы. Я написал своего рода API в 1с используя Web-сервисы. И теперь с любого устройства у меня есть доступ к 1с.

Зачем этот весь гемор с php? Или я чего то не догоняю?
2. Moolex.ru (moolex) 02.12.13 20:08
(1) OVladius, а можно пример или ссылку? В самой конфигурации надо что-то настраивать? на телефон надо что-то устанавливать? В данном решении ни на телефон не надо ничего ставить, ни в конфигурации ничего не надо менять.
3. Роман Цованян (pfihr) 02.12.13 23:23
На вэб-сервере делается примитивная страничка с полями запрос-ответ, javascript-ом коннектится на вэб-сервис 1с. Просто, быстро, и не нужно изобретать велосипед :)
Пример js смотри тут http://stackoverflow.com/questions/124269/simplest-soap-example-using-javascript
4. Moolex.ru (moolex) 02.12.13 23:50
(3) pfihr, "вэб-сервис 1с" - вот это ключевое слово в вашем комментарии. "Обязательным условием для публикации является наличие установленного веб-сервера и установленные модули расширения веб-сервера". В моем решении никакого веб-сервиса 1С не нужно, никакого модуля расширения не нужно. И тут еще можно поспорить, кто изобрел велосипед? я или 1С :) Надо быть проще в конечных решениях. Особенно если клиент(владелец бизнеса) просит простой ответ на простой вопрос.
Конечно можно все по другому сделать, устроить бурную деятельность, главное, чтобы владелец бизнеса видел, что идет непомерно тяжелая работа, требуется куча лицензионного софта, а как же еще отбить бюджет. Знаем мы все это :)
Я не спорю, что есть проекты где без веб-сервера и модулей расширения веб-сервера не обойтись. Но есть и задачи, когда все можно решить проще, и легче.
5. Алексей Бочков (Aleksey.Bochkov) 03.12.13 08:45
В моем решении никакого веб-сервиса 1С не нужно, никакого модуля расширения не нужно. И тут еще можно поспорить, кто изобрел велосипед? я или 1С :) Надо быть проще в конечных решениях.

но в вашем решении есть PHP, и тут уже можно поспорить - что легче: установить на веб-сервер php и правильно его настроить, или одним кликом опубликовать веб-сервисы 1С на веб-сервере.

Особенно если клиент(владелец бизнеса) просит простой ответ на простой вопрос.

А простой ли он? Вы знаете как работать с PHP, другие, например, нет. Во сколько встанет сопровождение этого решения для владельца бизнеса, если вы уйдете?

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

Веб-сервисы создавать не сложнее, чем писать подобный код на PHP.

требуется куча лицензионного софта, а как же еще отбить бюджет.

Схема с веб-сервисами не требует дополнительных лицензий.
6. Андрей Акулов (DrAku1a) 03.12.13 09:04
Тут есть в магазине неплохая компонента:
Библиотека ExpoServer – многопоточный кэширующий веб сервер.

А по сути разработки - не удобно что надо вводить запросы вручную. Пишешь длинный текст, ошибся в одной букве - не получил результат. Можно же просто забыть формулировку вопроса - и как тогда?
7. Алексей Ко (Жолтокнижниг) 03.12.13 09:36
А можете пояснить как происходит связь php и 1с?
8. Франко Деллиани (Franco) 03.12.13 10:15
Может быть, стоит обратить внимание на
https://link.1c.ru/
Позволяет подключаться к информационной базе через веб-браузер.
Доступен для подписчиков ИТС-Техно и ИТС-Проф.
С другой стороны, положительной стороной Вашего решения является система 'вопрос-ответ', что делает его гибким с точки зрения бизнеса - не нужно тратить времени на долгое подключение, выбор, установка параметров и отборов, формирование отчёта - например, по той же кассе всегда можно быстро получить остаток. Возможно, стоит сами вопросы вывести на странице гиперссылками - вначале пользователь авторизуется, затем видит варианты вопросов. Причём каждый - свои: у директора одни, у кладовщика - другие.
9. Франко Деллиани (Franco) 03.12.13 10:26
(7) Жолтокнижниг, запуском 1С с обработкой (Путь_К_1С /Execute какой_то_путь\rm1c.epf). Параметры ('вопрос'),наверное, пишутся в файл на диске, который обработка и читает.
10. Алексей 1 (AlX0id) 03.12.13 10:28
Тащемта, да. К публикации необходимо описание архитектуры решения.
11. Роман Ложкин (webester) 03.12.13 10:30
Каждый 1Сник в своей жизни, должен написать либо конф по учету денег\задач либо что то вроде вот такого велосипеда. И он ни в коем случае! не должен обращать внимания на существующие решения. А то это же не 1Сник. Поздравляю со вступлением в ряды :)
anchovy; DrAku1a; Aleksey.Bochkov; AlX0id; +4 Ответить
12. Алексей Ко (Жолтокнижниг) 03.12.13 10:41
(9) Franco, Афигеть оригинал.
наверное
я тоже могу кучу предположений запостить. Нужно описание принципов/алгоритмов работы. Понятным языком, без получасового ковыряния в коде.
13. Владислав Охотников (OVladius) 03.12.13 11:28
(2) moolex, Опубликовываете базу на веб сервере, создаете веб сервис добавляете к нему метод пишите код в модуле и добавляете аргументы для метода. На инфостарте есть пример веб сервиса.

Мне надо было что бы торговые представители у себя на планшете видели кое какие данные, для этого я писал андроид приложение на java.
14. Алексей 1 (AlX0id) 03.12.13 11:33
(13) OVladius, а базу-то зачем публиковать? Веб-сервисов достаточно ж..
15. Moolex.ru (moolex) 03.12.13 11:59
(5) Aleksey.Bochkov,
установить на веб-сервер php
- у многих хостеров он по умолчанию идет.
Вы знаете как работать с PHP, другие, например, нет
- в данном примере с php вообще работать не надо, надо только скопировать 4 файла. Все добавляем/изменяем в 1С, на языке программирования понятном многим на данном сайте.
Конечно можно взять идею Franco и доработать ссылки, но это уже другая задача.
Веб-сервисы создавать не сложнее
- я купил коробку 1С 8.1 бух однопользовательскую, покажите мне пример организации удаленного доступа, который будет проще этого?
16. script Мальчинко (script) 03.12.13 12:01
Опишите пожалуйста методику применения вашей разработки для задачи обмена заказами и остаками с сайтом.
Пытаюсь найти практическое применение.
17. Anton Podobin (a.podobin) 03.12.13 12:35
Уважаемые коллеги, автор данной темы не претендует на грандиозность и "мегапохлаву" от Вас.
Считаю что данная идея имеет место быть как не у Вас, так у других начинающих!
Данная идея очень не плохая и интересная, ИМХО, по крайней мере мысль есть, которая требует, естественно, допила как и любой типовой функционал, но тут уже дело каждого, кому-то и этого решения достаточно.

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

Автору РЕСПЕКТ!
Простите если кого обидел, но наболело!
rhtr; AlbertBug; DrSender; СаморезикРу; Stas_Gromov; Odinas; anchovy; kolia; +8 Ответить 2
18. poyson (poyson) 03.12.13 13:28
19. Франко Деллиани (Franco) 03.12.13 15:28
(17) a.podobin, абсолютно согласен.
20. Владислав Охотников (OVladius) 03.12.13 15:40
(14) AlX0id, ну, можно убрать галочку "Публиковать тонкий клиент и веб клиент" и будут тогда опубликованы только веб сервисы.
21. Франко Деллиани (Franco) 03.12.13 16:53
А как решить вопрос безопасности - сумму остатка в кассе/расчётном счету предлагаете отсылать обычным http. Чтобы поднять https, нужно либо сертификат выкупать, либо пользоваться самоподписанным, либо тунель строить. А без шифрования конкуренты перехватят трафик 'Директора на море' и будут знать его финансовое состояние и сколько попросить за его возвращение.
moolex; a.podobin; +2 Ответить 1
22. BAZIL BAZIL (wbazil) 04.12.13 08:49
когда то решал задачу с остатком для директора немного по другому и на Delphi, 2-3 раза в день остаток просто отправлялся директору, на почту, потом усложнили, и остаток отправлялся когда было изменение, а почту то он может проверить где угодно.

Автору плюс, решение интересное
23. Павел Парамонов (anchovy) 04.12.13 11:01
Согласен, что плюс решения в том, что не нужно доп лицензий и трафик минимальный. Конечно, для автоматизации взимоотношений с клиентами данное решение не годится, но для отправки команд серверу почему бы и нет.
24. Татьяна Фролова (Мать Тереза) 04.12.13 15:08
Для руководства неплохо-может само посмотреть остатки денег и долги.
25. Александр (nikaleks) 04.12.13 17:44
Если было бы можно поставил +10, а не +1. Идея отличная! МОЛОДЕЦ.
За последнее время это лучшая идея, к сожалению появилась тенденция выставлять обработки за реальные деньги, хотя они даже и 100 рублей не стоят.
(21) Franco, О какой безопасности идёт речь? Автор сразу написал, что выкладывается идея и пример её реализации. Вы можете использовать эту идею и доработать её для своих нужд так, как требуется это Вам. Скажите, а скольких Директоров Вы выкупили с моря?. Функционал обработки не ограничивается в остатке в по кассе, Вы же это понимаете?
26. Франко Деллиани (Franco) 04.12.13 17:51
(25) nikaleks,
Заметьте, я поставил +
Своим вопросом я НЕ критикую, а просто спрашиваю - как?
И ещё - ни одного не выкупал. Но если не буду заботится о безопасности - придётся...
27. Александр (nikaleks) 04.12.13 18:05
(26) Franco, Если рассуждать о безопасности, то от этой обработки вообще нужно будет отказаться, либо переписать модули на PHP, чтоб можно было поднять Https и так далее... на самом деле уже был ответ чуть выше (17) на все поставленные задачи.
Если Вашей компании нужно защитить так данные, почему не развернуть 1С Web как вариант?
Поймите, прелесть всего этого заключается в том, что обработка работает достаточно быстро. А если поднять Https, с сертификатами да и ещё можно генерировать СМС сообщения с одноразовыми паролями, то нужная информация будет доставляться курьером почтовой службы уже лично в руки, а не 5-10 секунд, как задумано автором.
28. dmitriy29 (DmitriyDI) 05.12.13 12:37
однозначно в избранное )
29. Стас Громов (Stas_Gromov) 06.12.13 11:47
так, господа, остановите этот срач не по теме! кто там про безопасность? как ты собрался перехватывать пакеты от "директора на море"?! автор молодец, накидал компактное решение, к тому же быстрореализуемое! не нравится - не пользуйся! вариантов много - можно также запустить на сервере регзадание, которое каждые 30 мин будет генерить отчет по интересующим показателям и слать его на мыло диру, можно генерить такое письмо при каждом чихе юзеров в базе - в общем тут главный ограничитель - фантазия! так что не скулите, просто рассмотрите данный "велосипед" просто как пульт от телевизора, не обсуждая того, что телевизор не поддерживает 3Д, что у него криво работает wi-fi или что для 2х ядер маловато оперативки!
30. Lubov Filippova (laf) 10.12.13 05:35
Здорово, +. Побольше бы таких авторов.
31. Владислав Огурцов (ogursoft) 10.12.13 07:54
Идея отличная, респект автору
32. Борис (soap) 10.12.13 16:57
Отличная идея простенько и со вкусом всяко +
33. Мастер Йода (master_yoda) 06.02.14 09:11
Автор жжет напалмом......однозначно плюс - молодца.....