![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
всем привет!
как лучше сделать экспорт импорт данных в программу на питоне из 1С ? Если 1C-ка "сидит" на MSSQL - это сильно упрощает задачу или нет? python 2.4.2 1C 8.0 PS сам не 1Сник |
|||
|
||||
albertn |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 368 Регистрация: 17.7.2006 Где: г. Ставрополь Репутация: 30 Всего: 34 |
Хоть я тоже не 1Сник, но если у тебя все данные лежат в MSSQL, то вся проблема заключается в коннекте с MSSQL. Если же нет, то все данные лежат в базах dbf, и просто придется работать напрямую с ними.
|
|||
|
||||
FunnyFalcon |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 76 Регистрация: 27.3.2006 Репутация: 4 Всего: 7 |
http://sourceforge.net/projects/pywin32/
А дальше ADO. Я так думаю. Или/и через bulk copy. Главное знать, чему какая таблица соответствует. В догонку: http://www.oreilly.com/catalog/pythonwin32/chapter/ch12.html |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
проблема ещё сложнее - дергать данные из 1С 8.0+ через MSSQL не получиться, из-за того, что:
1) названия таблиц в MSSQL ну очень матерные - типа document8974 и т.п. 2) при создании новой базы 1С с загрузкой данных из выгрузки названия таблиц генерируются автоматически и произвольно есть ли какая-нибудь либа, чтобы добраться до 1С через COM? |
|||
|
||||
diam |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 348 Регистрация: 23.1.2005 Где: Екатеринбург Репутация: 3 Всего: 16 |
Тебе придётся писать самому, скорее всего. Когда нам понадобился экспорт/импорт "1C - БД биллинговой системы", мы приглашали программистов 1С, и обменивались файликами dbf. К тому же, экспорт/импорт данных сильно будет зависеть как от структуры БД 1С, так и от структуры твоей БД, ты не находишь? |
|||
|
||||
megaflop |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 16 Регистрация: 5.5.2005 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Получить данные из 1С можно двумя основными способами:
1.) Подключившись через COM, как это описано в 1С-ной документации (нужен pywin32) http://sourceforge.net/projects/pywin32 как это делается можно здесь почитать, общё... http://www.boddie.org.uk/python/COM.html Но для этого на вашем компе должна быть 1С-ка установлена, что не всегда удобно. Например мне надо получать инфу из 1С для сайта, причём делает это питоновый скрипт на сервере в локалке по шедулеру. Ставить туда для этого 1С-ку и кажндный раз её грузить - не айс. Поэтому я пошёл способом вторым. 2) Брать данные прямо из MSSQL-ной базы. Для этого нужен pymssql http://pymssql.sourceforge.net/ И ещё ваш программер-1С-ник долженн оттрейсить нужный вам запрос из своего 1С-ного вида в SQL. ПММ самый лучший и быстрый способ (мой случай). Удачи. |
|||
|
||||
pythonwin |
|
||||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
сейчас разбираю именно этот способ? но меня смущает, хотя если обращаться к 1С один раз в час (реже врятли), то на хорошей 4-ке терпимо (~18Мб ОП + 2-3% процессора)
напрямую к 1С-ной базе через MSSQL не подцепишься? т,к.
хотя если в 1С-ке дергать данные и записывать в другую БД в MSSQL, то сильно облегчало бы мне задачу:
хотя у нас нет 1Сников и я к сожелению не знаю втроенный язык 1С... если у кого есть, пожалуйста, дайти ссылки на проекты интеграции питона и 1С, а также на эл, книги по встроенному языку 1С Это сообщение отредактировал(а) pythonwin - 8.2.2007, 08:38 |
||||||||
|
|||||||||
diam |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 348 Регистрация: 23.1.2005 Где: Екатеринбург Репутация: 3 Всего: 16 |
Программисты 1С подсказали: http://kb.mista.ru/. Надеюсь, поможет. |
|||
|
||||
pythonwin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2529 Регистрация: 18.4.2006 Где: за компом Репутация: 14 Всего: 36 |
спасибо ![]() |
|||
|
||||
AlexP74 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 18.7.2010 Репутация: нет Всего: нет |
А кто реально пробовал получать данные из 1с77 ?
У меня ошибка pywintypes.com_error: (-2147417851, 'Ошибка на сервере.', None, None) при выполнении: sprSklad.FindByCode(23,1) Тот же код на Delphi работает без ошибок. |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Python: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |