Заказы на доработку 1С (сервис удаленной работы)

Хранилище

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

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как сделать импорт данных в 1С из mysql?          
Vasya1976 Подменю пользователя
сообщение 01.03.19, 13:36
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0

Здраствуйте.
Есть сайт с базой данных mysql
Есть 1с с модулем доставки и оформлением ттн.
Нужен совет. Как импортировать заказы с бд
(Не знаю как правильно) в модуль или 1с. Учёт
Заказов росхода прихода в 1 с не ведётся. Нужно только
Для оформления заказов. Как правильно автоматизировать?


 ! 

Правила: 4
 


Сообщение отредактировал Vofka - 01.03.19, 14:14

Vofka Подменю пользователя
сообщение 01.03.19, 14:16
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13800
Из: Киев
Спасибо сказали: 4397 раз
Рейтинг: 3518

Идем сюда http://pro1c.org.ua/index.php?act=announce&id=9, в строке поиска пишем 1с mysql, жмем Энтер.

Bernet Подменю пользователя
сообщение 01.03.19, 16:01
Сообщение #3

Ветеран
Иконка группы
Группа: Местный
Сообщений: 844
Из: Місто щасливих людей
Спасибо сказали: 292 раз
Рейтинг: 244.6

Vasya1976 @ Сегодня, 13:36 * ,
Разные способы есть, как файлого так и "безшовного" обмена.
Я например, в качестве теста пробовал подключать MySql базу к 1С как внешний источник данных. И дальше уже работал с базой в контексте 1С, т.е. чтение/удаление/запись реализовал через 1С.


Signature
Дописываю конфигурации на платформе 8.х.
- Управление торговым предприятием для Украины
- Управление производственным предприятием для Украины
- Управление небольшой фирмой для Украины
- Бухгалтерия для Украины;
- Общепит для Украины
- Ресторан (Рарус)
- Розница

Vladal Подменю пользователя
сообщение 05.03.19, 9:06
Сообщение #4

Оратор
Иконка группы
Группа: Местный
Сообщений: 364
Из: Slovensko
Спасибо сказали: 73 раз
Рейтинг: 0

Я подключался к базам MySQL и брал оттуда данные напрямую, выполняя запросы SQL.
Одно время довольно плотно работал со сторонними базами на MySQL и даже написал "консоль запросов".

А теперь по существу: что за сайт? Может у них есть API и нет необходимости чесать ухо пяткой?
Цитата(Vasya1976 @ 01.03.19, 13:36) *
Есть сайт с базой данных mysql

Цитата(Vasya1976 @ 01.03.19, 13:36) *
Заказов росхода прихода в 1 с не ведётся. Нужно только
Для оформления заказов. Как правильно автоматизировать?

Здесь опишите всю задачу - что у Вас есть, что надо сделать ,что Вы уже сделали и что получилось, а что не получилось. Это поможет понимать способ решения задачи.

Либо будем пошагово всем миром угадывать, что хотел автор, и писать по строчке кода.
А по факту надо было изначально задачу решать по-другому.

mut Подменю пользователя
сообщение 11.03.19, 12:47
Сообщение #5

Завсегдатай
****
Группа: Пользователи
Сообщений: 170
Из: Новая Каховка
Спасибо сказали: 177 раз
Рейтинг: 0

Vasya1976 @ 01.03.19, 13:36 * ,
1С может обращаться напрямую в mysql используя ODBC драйвер. Драйвер можно найти на сайте MySQL. Примеры работы с ним - гугл. Там все просто, подключились, сделали запрос, читаем. На стороне сервера понадобится настроить разрешение доступа в базу данных.

Пример кода, подключение (1С 7.7)

ODBCDriver = createObject("ADODB.Connection");
        ConnectionString =
            "Driver={MySQL ODBC 3.51 Driver};Server="+trimAll(Server)+
            ";Database="+trimAll(DBName)+
            ";User="+trimAll(DBUser)+
            ";Password="+trimAll(Password)+
            ";Option=3;CharSet=utf8;STMT=set character_set_results=utf8;";
            
        ODBCDriver.Open(ConnectionString);


Пример кода, чтение из таблицы:

Recordset = createObject("ADODB.Recordset");
    Recordset.CursorType = 3;
    Recordset.ActiveConnection = ODBCDriver;    
    
    Recordset.Open("SELECT
                    |oc_product.product_id AS product_id,
                    |oc_product.model AS model,
                    |oc_product_description.name AS name,
                    |oc_product_description.description AS description
                    |FROM oc_product
                    |LEFT JOIN oc_product_description
                    |    ON oc_product.product_id = oc_product_description.product_id");
                    
    if Recordset.EOF()=0 then  ......

Batchir Подменю пользователя
сообщение 13.03.19, 13:54
Сообщение #6

Живет на форуме
Иконка группы
Группа: Команда
Сообщений: 3560
Из: Киев
Спасибо сказали: 1407 раз
Рейтинг: 1062.9

Скорее всего нужно отталкиваться от того что хотите(можете) доработать и как оперативно должны появляться данные в 1С.

Самый верный способ (ИМХО) -
1. Разработка web/http сервиса в 1С.
2. Разработка вызова методов сервиса 1С непосредственно на сайте.
т.е. в момент попадания заказа в базу сайта сразу же заказ попадает в базу 1С, генерируется ТТН и 1С сразу может (если это необходимо) в качестве ответа вернуть данные по этой ТТН обратно сайту.
Плюс - качественное решение по обмену только согласованными между системами данными. Надежность и безопасность. Базы могут находится на разных территориально разнесенных серверах. Данные оперативно отражаются в обеих системах. И программист 1С и веб программист занимаются каждый своей разработкой, не отвлекаясь на изучение не своей области.
Минус - дорабатываются обе системы, трудозатраты на разработку больше.

Способ №2 - это уже описанный способ подключения напрямую к базе MySQL из 1С.
Плюс - Дорабатывается только 1С.
Минус - Заказы в базу попадают не оперативно. Своеобразная настройка коннекта через ODBC (у которой есть свои ограничения). Разработчик 1С может выполнить какой-то "не правильный" запрос над базой сайта.
Необходимо разбираться программисту 1С во внутренних таблицах MySQL (что, где и как хранится)

Способ №3 - это способ для веб программистов. Можно в базу 1С писать через протокол oData.
Плюс - дорабатывается только веб сайт.
Минус - Нужно разбираться в протоколе и структуре 1С что б понимать что куда писать. Разработчик сайта сможет выполнить какой-то "не правильный" запрос над базой 1С

Файловый способ обмена не рассматриваю, т.к. он подразумевает не оперативный обмен файлами в согласованном формате. А в этом случае уже лучше делать способ №1 и обмениваться уже этими форматами. А ещё это лишний узел в обмене (имею ввиду место где будут хранится файлы обмена), на котором могут возникнуть свои дополнительные проблемы.

Сообщение отредактировал Batchir - 13.03.19, 13:54

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 15.08.22, 23:27
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!