Если вдруг python оказался друг

04.10.23

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

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Получение данных из python.epf
.epf 11,52Kb ver:1
13
13 Скачать (1 SM) Купить за 1 850 руб.

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

Одно из решений это подключение через COM-объекты. Python позволяет регистрировать свои COM-объекты через библиотеку win32com. Решение было подсмотрено в статье на хабре https://habr.com/ru/articles/332082/. Для этого создаётся свой класс со спецификацией, где указываются методы, которые будет доступны.

 

 

Чтобы вызвать нужный метод, достаточно просто подключиться к нужному COM-объекту.

OnePY = Новый COMОбъект("OnePY");	

Ответ = OnePY.getsum(1, 7);

Передавать между python и 1С через COM-объект можно значения простых типов: строки, числа и списки. Для более сложных структур, например, словарей, их можно конвертировать в обычный json, и он будет передан как обычная строка. В обработке представлены несколько вариантов передачи значений.

 

 

Можно попробовать и более интересные вещи, например, сделать визуализацию данных с помощью библиотеки matplotlib в виде графика и передать его в 1С. Примеры вариантов графиков можно посмотреть тут https://matplotlib.org/stable/plot_types/index.html.

 

 

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

Тестирование проводилось на платформе 1С (8.3.21.1624).

См. также

Внешние источники данных Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование Конфигурации 1cv8 Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

28500 руб.

15.11.2022    21605    22    49    

39

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

24.04.2017    51851    104    165    

91

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    25689    25    1    

27

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 10 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

05.10.2022    11280    13    8    

15

Розничная торговля Внешние источники данных Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Бухгалтерский учет 1С:Бухгалтерия 3.0 Фармацевтика, аптеки Россия Бухгалтерский учет Платные (руб)

Внешняя обработка загрузки данных из файла-выгрузки, сформированного в программе F3 TAIL версии 3.4 (и выше) или еФарма версии 2.1, в базу конфигурации 1С: Бухгалтерия предприятия 8, ред. 3.0 (базовая, ПРОФ, КОРП, ФРЕШ).

13200 руб.

19.12.2016    47774    88    105    

68
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. stopa85 43 04.10.23 05:33 Сейчас в теме
Интересно, а можно ли на питоне ВК разработать. Чтобы под линуксом функционировала?
3. agentz 40 04.10.23 10:35 Сейчас в теме
(1) можно. делаете свой REST АПИ который с ВК работает и к этому апи обращаетесь из 1С
11. ltfriend 05.10.23 01:20 Сейчас в теме
(3) а почему rest написано латинскими буквами, а апи кириллицей? API - application programming interface. Тогда уж ППИ - прикладной программный интерфейс. И вопрос: что вы понимаете под REST?
gucci76; sewell; +2 1 Ответить
14. DrAku1a 1748 06.10.23 13:32 Сейчас в теме
(11)
- Превед компилятор!
- Правильно писать "Привет". И запятую поставь, там обращение. А что такое компилятор?
simuljakr; +1 Ответить
2. laperuz 47 04.10.23 05:34 Сейчас в теме
Одним из неудобных моментов такой схемы является

использование COM

Ну есть же кроссплатформенные те же REST/SOAP, которые на питоне реализуются не сложнее, чем в вашем примере..
starik-2005; John_d; agentz; G_116449793522595596167; +4 Ответить
4. friskdb 33 04.10.23 11:19 Сейчас в теме
Это уже микро сервис получается. Тут кому как удобней.
7. starik-2005 3096 04.10.23 13:59 Сейчас в теме
(4)
Это уже микро сервис получается. Тут кому как удобней.
Ну а чем микросервис плох? Если в сети конторы разместить - сразу со всех компов конторы работает. Если в глобальной - вообще со всех компов, которые инет видят. Ну и кроссплатформенно все, ибо СОМ - прошлый век и не работает на приличных осях. А микросервис даже на телефоне работать будет, если телефон в нужной сети.
A1WEB; EvgeniyOlxovskiy; Bassgood; baracuda; +4 Ответить
8. friskdb 33 04.10.23 16:26 Сейчас в теме
(7) Никто не говорит, что микросервисы плохие. Хотя там тоже есть свои плюсы и минусы. У меня самого работают несколько простых микросервисов на flask. А пример работы через COM тоже показался довольно интересным для демонстрации обмена.
5. Dimanchik00 04.10.23 11:51 Сейчас в теме
ошибку исправьте на скринах "Примеры передати данных"
6. friskdb 33 04.10.23 13:56 Сейчас в теме
9. baracuda 2 04.10.23 17:48 Сейчас в теме
А вообще конечно круто было бы если бы питон добавили в дистрибутив установки 1С, хотя бы в виде галочки при установке, чтоб те кому нужен ставили.
Ну и разумеется дали бы доступ к Питон интерпретатору из 1С, вот раздолье бы было..
10. ltfriend 05.10.23 01:15 Сейчас в теме
Я смотрю, некоторые комментаторы употребляют аббревиатуру REST, толком не понимая, что она означает.
12. webester 26 05.10.23 16:44 Сейчас в теме
(10)
некоторые комментаторы употребляют аббревиатуру

Срочно! Скорее! Нас надо спасать! Кто то употребил аббревиатуру, толком не понимая что она означает! Какой кошмар! Расскажите же скорее, что, же она означает? И где ошибаются "некоторые комментаторы"?
13. PerlAmutor 155 06.10.23 06:34 Сейчас в теме
Ждем когда в 1С появится нативная поддержка gRPC - https://grpc.io/docs/languages/ как альтернатива COM.
15. yermak 51 10.10.23 13:33 Сейчас в теме
Оставьте свое сообщение