Готовый сервер xml-rpc для 1С средствами python

15.05.13

Интеграция - Внешние источники данных

Доступ к 1С посредством xml-rpc протокола из любого другого приложения.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
xml-rpc.zip
.1244037451 7,59Kb
143
143 Скачать (1 SM) Купить за 1 850 руб.
Пример COM объекта на python
.1245153316 2,34Kb
46
46 Скачать (1 SM) Купить за 1 850 руб.
Вызов COM (python) объекта в 1С
.1245153343 34,00Kb
49
49 Скачать (1 SM) Купить за 1 850 руб.
Класс для создаия демона под linux на python
.1245153711 3,57Kb
31
31 Скачать (1 SM) Купить за 1 850 руб.
Серверная часть из примера с СОМ
.1245153746 1,37Kb
37
37 Скачать (1 SM) Купить за 1 850 руб.
Сам сервер для примера
.1245153772 2,55Kb
38
38 Скачать (1 SM) Купить за 1 850 руб.
Графический интерфейс на питоне для вызова функции сканирования
.1245153850 0,99Kb
41
41 Скачать (1 SM) Купить за 1 850 руб.

Готовый сервер xml-rpc для 1С средствами python.
Принцип работы

1. Создаем классы 1С++ с названием rpc_name и методами с англ. именами с одним параметром param, пример:

function getInfo(param) export 
param.result = 0;
return param;
endfunction

2. Прописываем методы которые должны быть доступны удаленно в defcls.prm как открытые

function getInfo(param);

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

3. В файле конфигурации сервака settings.py прописываем строку запуска.

4. Запускаем v77xmlrpc_server.py (что бы небыло видно консоли можно задать расширение pyw), для остановки сервера stop_server.py

5. Дальше читаем google xmlrpclib.

Пример на стороне вызывающей методы программы (в моем случае веб-интерфейс)

import xmlrpclib
client = xmlrpclib.ServerProxy("http://192.168.16.1:888/") # "куда хотим подключиться?"
client.system.listMethods() # покажет все доступные методы на сервере
result = client.rpc_partner_GetMessages({"idpartner":"10"}) # получить список сообщений для партнера с id = 10
if result["result"] == 1: # если на стророне 1С все в порядке, то обработаем дальше полученный список
msg_list = result["table"]
else:
error = result["msg"]

Этот сервак используется и по сей день в комбинации с веб интерфейсом (ubuntu apache mod_python django). вызов методов менее 1сек при загрузке 10 пользователями. Дополнительно использую memcached, поэтому отклик моментальный :).

 Дополнительные ресурсы:
http://ru.wikipedia.org/wiki/XML-RPC
http://docs.python.org/library/xmlrpclib.html
http://1cpp.ru/

16.06.09
Выкладываю еще пример того как можно использовать вызовы удаленных процедур внутри 1С.
На практике этот код служит для получения информации по картам c сервака под ubuntu.

См. также

Зарплата Внешние источники данных Бухгалтер Расчет 7.7 1С:Зарплата и кадры 7.7 Россия Бухгалтерский учет Абонемент ($m)

Загрузка электронных листов нетрудоспособности (электронных больничных) в ЗиК 7.7 из файлов, например, из СБИС. Не нашел похожих разработок, может, плохо искал, для 1С 7.7 ЗиК.

1 стартмани

14.04.2020    8734    4    hvv2002    2    

2

Внешние источники данных Программист Платформа 1С v7.7 1C77 Украина Абонемент ($m)

Рабочий механизм чтения/записи строк в формате JSON для 1С 7.7. Тестировалось на релизах 7.70.25 и 27.

1 стартмани

16.12.2019    23332    66    Volvo32    33    

25

Внешние источники данных Файловый обмен (TXT, XML, DBF), FTP Программист Руководитель проекта Платформа 1С v7.7 1С:Комплексная 7.7 Оптовая торговля, дистрибуция, логистика Управленческий учет Абонемент ($m)

Обработки обмена номенклатурой (SKU), дополнительными штрихкодами (AltSku), приемкой (AdvancedShipNotice), подтверждением приема (ASNClosed), выдачей (ShipmentOrder), подтверждением выдачи (CustomerOrderLoaded) для учетной системы 1С 7.7. Здесь выгрузка и загрузка для 1C 7.7.

1 стартмани

21.10.2019    16441    1    ksnik    0    

2

Внешние источники данных Программист Платформа 1С v7.7 1C77 Абонемент ($m)

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

2 стартмани

09.10.2019    17487    82    Malice    16    

12

Внешние источники данных Оптовая торговля Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v7.7 Россия Управленческий учет Абонемент ($m)

Обработка позволяет реализовать обмен данными между решением SalesWorks и 1c 7.7.

5 стартмани

16.07.2019    16194    6    vv-adm    2    

2

Внешние источники данных Программист Оперативный учет 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Обработка выгружает данные контрагентов и создает два файла: один текстовый со всеми данными, другой формата vcards.vcf для загрузки контактных данных в андроид.

1 стартмани

10.05.2019    9713    4    rid636674    1    

0
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. orefkov 1156 10.06.09 08:54 Сейчас в теме
Я конечно незнаю что такое xmlrpc, однако же питон, 1С++, классы - однозначно плюсую.
2. Ёпрст 1066 10.06.09 09:03 Сейчас в теме
Неплохо бы еще и мини-пример присоплить...
3. stilet 50 10.06.09 09:34 Сейчас в теме
А к 8ке можно прикрутить? И можно поподробнее?
4. quick 584 16.06.09 16:37 Сейчас в теме
Добавил немного новых примеров + скрины.
5. Вадимыч 05.07.09 15:17 Сейчас в теме
6. flamps 11.12.09 15:19 Сейчас в теме
у меня не запускается сервер
8. quick 584 05.02.14 14:21 Сейчас в теме
(6) flamps, тестировал только на версии питона 2.7. Возможно что на 3.0 не взлетит
7. xzxzxz 25.09.12 15:18 Сейчас в теме
Спасибо тебе, добрый человек, за такую качественную халяву, что редко встретишь в мире 1С :)
Оставьте свое сообщение