Как сделать синхронизацию сайта с MySQL базой 1c УТ?
Добрый день. Возник вопрос о том, как грамотно синхронизировать базу данных на сайте MySql с базой заказчика, который использует 1С: Управление торговлей.
Использую Битрикс.
Пока из предположений есть только вариант отгрузки по ftp xml файла, но хотелось бы real-time интеграцию.
Вариантов масса.
Можно чаще отправлять по FTP xml файл.
Можно поднять на стороне 1с веб сервис и подключаясь скриптом из сайта забирать нужные данные
Можно отправлять данные из 1с прямо на сайт используя API сайта.
Первый вариант на крайний случай, файл просто много весит и долго обновляется. Выгрузка получается далеко до real-time. Товар могут купить, а на сайте он еще будт минут *дцать висеть.
Второй не получилось, из-за особенности структуры номенклатуры в 1с, остатки и цены в партиях, и дефолтными методами обмена выгрузить их не удалось, надо обработку переделывать на 1с.
Про третий можно по подробней?
И вот насколько я понял в 1с MySQL бд, и все просто по таблицам и хранится, нельзя ли просто как к обычно БД подключиться и самому на sql выборку нужную написать?
И вот насколько я понял в 1с MySQL бд, и все просто по таблицам и хранится, нельзя ли просто как к обычно БД подключиться и самому на sql выборку нужную написать?
Там не так просто разобраться, если честно. Но если задача только читать, то можно заморочиться.
И вот насколько я понял в 1с MySQL бд, и все просто по таблицам и хранится, нельзя ли просто как к обычно БД подключиться и самому на sql выборку нужную написать?
В 1с информация хранится в файловой базе собственного формата, либо в базе MSSQL, либо в базе PostgreSQL.
Причем в этой базе хранится и информация (собственно данные) и метаинформация (данные о структуре конфигурации и внутренних объектов)
Поэтому вот так просто заглянуть в базу и вытащить запросом нужную информацию не получится - она раскидана по таблицам и надо сильно заморачиватся, разбираться в каждом случае в каких таблицах хранится нужная информация, и хранится ли вообще или ее надо будет рассчитывать.
Ничего невозможного конечно, разобраться можно, но задачка явно нетривиальная и делать такую грандиозную работу ради банального обмена это уж слишком.
В общем подключится к 1с и написать выборку - вообще не проблема для человека более менее знакомого с 1с.
А подключиться к БД напрямую и выдернуть данные оттуда это на порядок сложнее и требует больших знаний о 1с.
АртемЪ, лицензионная политика 1с запрещает прямые запросы в бд, т.к в этом случае не гарантируется работоспособность бликировок в таблицах с остатками. Человек про партии пишет, значит точно надо дёргать остатки.