Последнее обновление: 17 Май 2012 в 11:03
Подпишись на RSS
rss Подпишитесь на RSS, чтобы всегда быть в курсе событий.
26 февраля 2012 ·

Когда-то на заре своего изучения платформы 8.х я писал обработку для печати реестра сертификатов для управления торговлей, а также для печати картинок сертификатов. Сейчас решил переписать обработки используя «более современные технологии», а также улучшить функционал. Внешняя печатая форма для печати реестра сертификатов работает на конфигурациях «Управление торговлей ред. 10.3″ и «Бухгалтерия ред. 2.0″, в том [...]


25 ноября 2009 · Анализ, Всячина

Начало истории можно прочесть в моей статье  «Россгострах. Страховой случай по ОСАГО«. В продолжении истории могу сказать, что спустя 2 недели после проведения экспертизы «экпертами от Росгостраха» как ни странно на сберкнижку «капнуло» 33 с копейками тысячи рублей. Я загнал машину на независимую экспертизу при сервис-центре ВАЗ «Симбирск-Лада», а заодно и в ремонт. Эксперт осмотрел [...]


Метки

Метки записей
Спутниковое ТВ восстановить нумерацию связь сбились номера документов Оптимизация контент-провайдер Удаление партий вирус SMS Проблемы Бухгалтерия jaws Фото Отзывы пакетный запуск 1С День жестянщика 1с и MySQL Анализ ПДЗ Загрузка с компакт - диска Интерент скачать конвертер office 2003-2007 заблокирован Свертка по партиям Скачать 1С удаляем пароли Интернет вирус эмулирует нажатие Win LiveCD Dr.Web СМС оплата Интересные места Asus Eee Установка Windows расчет ПЗД Финансы удаление документов 1с реестр Обработки XPE Интренет Работа Автомобили автозапуск взломать пароль Альпинизм Экстремальные игры Взлом Zver DVD Свертка 1С Спорт дравер MySQL скачать Армия бесплатно Драйвера Ошибки 1С Мужчина и женщина перенумарация сайт office 2003 Жизнь программы для слепых Взлом 1 уменьшить размер базы Юмор Видео Свертка базы 1С Методика свертки 1С антивирусы Обзоры Oracle Кино Windows XP СМС новости узнать пароль Делаем LiveCD Драйвер ODBC скачать Структура 1С редактирование DBF Взлом 1С Новая форма счет-Фактуры Лирика Файлы 1С Программы для 1С Вся перенос документов свертка Drivers office 2007 Игры Вопросы Командная строка Программы Подключить 1С к MySQL Вирусы homachi локальная сеть через интернет Добавить новую метку Оборудование просроченная дебиторская задолженность открыть xlsx docx вирус Сайты HP Pavilion dv6000 свертка в картинках печать от поставщика свертка торговли автоматизация Отчет Отношения Пошаговая свертка Печатные формы ZverCD переустановка windows партии Экономика Система мошенничество Деньги сверка базы 1С антивирус
24 октября 2009

1С и MySQL. Обмен данными. Пример переноса данных справочника

Автор статьи: , 24 октября 2009 в рубрике , Вопросы и ответы. Метки: , . Просмотров: 9 842

Цель взаимодействия MySQL и 1С

В последнее время наблюдается активное развитие интернет-магазинов в России, где продавцы предлагают заказать товар напрямую с сайта.

В то же время  программы для бухгалтерского и управленческого учета остаются старыми — в основном это 1С Предприятие.

Необходимо уйти от ручного труда и автоматизировать обмен данными между базами данных 1С и MySQL, переносить справочники, например номенклатуру, контрагентов, цены, скидки и другие, а так же переносить заказы.

phpmyadmin gotovo 1С и MySQL. Обмен данными. Пример переноса данных справочника

Заполненная таблица

Авторские права на предоставленный материал принадлежат автору сайта http://extremallife.ru

Мне поставили задачу перенести справочники из 1С в базу данных MySQL, как это сделать в кратце я описывал в статье Как подключить 1С к базе данных MySQL. Теперь я постараюсь описать процесс более подробно и с примерами переноса данных. В интернете предлагают в начале сделать выгрузку во внешний файл, а потом загрузить его в MySQL. Я расскажу как можно обойтись без этих файлов, а выполнить перенос напрямую через ODBC-драйвер.

Как настроить обмен 1С с MySQL через ODBC — драйверУстановка и настройка ODBC — драйвера

Необходимо скачать и установить ODBC — драйвер.

Запускаем файл «MySql.Data.msi». Выбираем типовую установку. Ничего сложного в этом нет.

odbcsetup 1С и MySQL. Обмен данными. Пример переноса данных справочника

Установка ODBC Драйвера

Далее заходим в Пуск — Настройка — Панель Управления — Администрирование , находим там Источники данных (ODBC)

odbcicon 1С и MySQL. Обмен данными. Пример переноса данных справочника

Админиcтрирование ODBC

Кликаем 2 раза по иконке Источники данных (ODBC) и в появившемся окне ищем что-то вроде MySQL, если не находим, то жмем добавить и добавляем драйвер.

odbcnew 1С и MySQL. Обмен данными. Пример переноса данных справочника

Добавляем соедниение ODBC

Далее выбираем драйвер и щелкаем «настройка». В появившемся окне указываем параметры базы данных MySQL. Так как тестил я на localhost — на локальном сервере «Апач», то указываем параметры подключения

Data Source name — MySQL ODBC 5.1 Driver

Description - MySQL ODBC 5.1 Driver

Server — 127.0.0.1

Port — 3306

User — root (можно любого другого пользователя)

Password — пароль от учетной записи (на локалхосте чаще всего пустой)

Выбираем базу данных — в моем случае — это «test»

Нажимаем кнопку Test, все должно пройти успешно, если возникли ошибки, то проверяем параметры подключения, запущен ли Apache, есть ли в MySQL такая база данных (test).

odbcok 1С и MySQL. Обмен данными. Пример переноса данных справочника

Тест подключений к MySQL прошел успешно

На этом данный пункт закончен. Мы настроили сисемное подключние к MySQL через ODBC.

Настройка базы данных MySQL

База MySQL уже создана и имеет заданную структуру, которую смотрим любым способом. Мои познания в MySQL ограничены, поэтому я использую стандартные средства phpmyadmin.

Открываем браузер и вбиваем адрес — http://localhost/tools/phpmyadmin/

На экране должна отобразиться панель управления базами данных.

Заходим в необходимую нам базу данных и смотрим структуру.

Для примера сделаем простую загрузку номенклатуры из 1С в MySQL. Имеем таблицу «tovar«, которая имеет 2 поля — «kod» и «name«. В первое запишем код товара в 1С Предприятие, а в поле name - наименование товара.

phpmyadmin 1С и MySQL. Обмен данными. Пример переноса данных справочника

Структура таблицы в MySQL

В принципе все. Далее мы переходим к 1С

Обработка 1С для подключения к MySQL и переноса данных

Запускаем конфигуратор 1С, создаем новый внешний отчет

Я сделал на форме 2 кнопки — подключить, при нажатии на которую мы будем подключаться к базе данных  MySQL, и перенести, которой будем переносить товары.

1ckey 1С и MySQL. Обмен данными. Пример переноса данных справочника

Форма обработки 1С

Далее переходим к процедурам

Процедура Подключить()
Соединение = СоздатьОбъект(«ADODB.Connection»);
СтрокаСоединения = «DRIVER=MySQL ODBC 5.1 Driver;SERVER=localhost;DataBase=test;UID=root;PWD=;
Соединение.ConnectionString = (СтрокаСоединения);
Попытка
Соединение.Open();
Сообщить(«MySQL база подключена!!!»);
Исключение
Сообщить(«Не могу подключиться к базе!!!»);
КонецПопытки;
КонецПроцедуры

Эта процедура выполняет подключение

Строку соединения я прописал жестко, но ее параметры можно задавать и в элементах формы.

Вторая же процедура будет переносить данные

Процедура Перенос()
Т = СоздатьОбъект(«Справочник.Номенклатура»);
Т.ВыбратьЭлементы();
Пока Т.ПолучитьЭлемент() = 1 Цикл
Если Т.ЭтоГруппа() = 1  Тогда
Продолжить;
КонецЕсли;
Стр = «INSERT INTO `tovar` SET `kod`  =»+»"»"+Т.Код+ «»"»+»,  `name`  =»+»"»"+Строка(Т.Наименование)+»"»";
Соединение.Execute(Стр);

Сообщить(«Перенесли — » + Т.Наименование);
КонецЦикла;
КонецПроцедуры

Соединение.Execute(Стр); — выполняет запрос, который заносит в базу данных MySQL необходимые данные

Стр = «INSERT INTO `tovar` SET `kod`  =»+»"»"+Т.Код+ «»"»+»,  `name`  =»+»"»"+Строка(Т.Наименование)+»"»"; — сам текст запроса

После отрабатывания обработки мы получаем заполненную таблицу базы MySQL

phpmyadmin gotovo 1С и MySQL. Обмен данными. Пример переноса данных справочника

Заполненная таблица

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

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




К записи "1С и MySQL. Обмен данными. Пример переноса данных справочника" оставлено 39 коммент.

Прошу прощения,нельзя ли ОЧЕНЬ ПОДРОБНО остановиться на синтаксисе и построении запроса(Начиная со «Стр=……).Очень-очень нужно.Заранее благодарен.

Ответить

Константин, напиши своё мыло, я тебе вышлю готовый ert, мой предыдущий пост дядя админ уничтожил, как обычно! =(

Ответить

Макс3 Reply:

Привет, а можешь мне выслать готовый ert?

Ответить

Александр Reply:

Добрый день! Если есть возможность, вышлите пожалуйста готовый ert. И вопрос, аналогичным способом можно вытянуть из 1с остатки?

Ответить

Александр Reply:

вот мыло: padremanuel@mail.ru

Ответить

Посты с внешними ссылками удаляются автоматом, потому как спама много.)))
Видимо в комментарии ссылка была.
Руками я практически ничего не удаляю, тем более в таких темах.

Ответить

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

Ответить

А вот такие, как выше, комментарии я чищу руками. Потому как содержат ссылку на твой сайт, Евсенкин Максим Александрович)))
Если хочешь, чтобы была ссылка на твой блог/сайт — отпиши прямо, хочу ссылку — договоримся)))

Ответить

Чтоб всем было хорошо, и тебе и мне и сайты продвигались)))

Ответить

Макс!!заранее благодарен…berconst@ukr.net

Ответить

Макс!!тоже буду очень благодарен… manoulenko@ukr.net

Ответить

Макс М. отправил =)

Ответить

помогите, пожалуйста! не могу разобраться. у меня после процедуры переноса данных из 1с в MySQL все русские символы в базе отображаются кракозяблами. Как решить эту проблему???

Ответить

Евгений, кодировки должны быть одинаковы как в MySQL так и в 1С

Ответить

Здравствуйте. Ищу готовое решение синхронизации 1С и Joomla-VirtueMart не программист и самостоятельно синхронизировать не потяну. Может у вас есть готовое решение? Напишите мне или в асю  стукните: 473737041

Ответить

У меня готового решения нет, а что переносить хочешь? У тебя интернет — магазин? Остатки-продажи?
VirtueMart  — это надстройка на Джумлу?

Ответить

Респект тебе админ!! Спасибо за статью!! Я новичок в 1с поэтому хочу ваш совет. Вообщем картина такая, есть магазин который работает на 1С, так вот этот магазин делает себе интернет магазин.Задача такая: при каждой операции по продаже 1С должна вносить соответствующее изменение в Mysql базу интернет магазина. Так вот какое я вижу решение: подкорректировать конфигурацию 1С в тех местах где происходят операции с таблицами товаров чтобы при каждой операции например продаже товара совершалось обращение к Mysql базе посредством sql запросов. Что можете сказать? 

Ответить

Во-первых надо разобраться откуда куда и какие данные должны передаваться. Обычно из интернет-магазина передаются данные о продажах, а из 1С в интернет-магазин — об остатках (для наличия).
Если это так, то зачем передавать данные о продажах из 1С в mySQL. Такое может понадобиться, например для того, чтобы клиенты могли отслеживать состояние своего заказа. Если этого нет, то я не вижу смысла.
Во-вторых. Передавать каждую продажу так сказать он-лайн имеет смысл, если интернет-сервер, на котором крутится сайт, лежит здесь же, в локалке, и нет проблем со связью. Если же сайт лежит на внешнем хостинге, то есть такое понятие, как канал связи и он может быть не всегда стабильным… В этом случае, думаю, необходимо организовать периодический обмен (например, каждые 10 минут, или час, или сутки, в зависимости от нюансов работы фирмы).
Естественно, надо будет запрограммировать обработку ошибок…

Ответить

Было бы так же интересно увидеть и импорт заказов.

Ответить


Оставить комментарий

*

Блог программиста 1С. Программирование 1С
Приветствую на моем блоге. Надеюсь вы найдете здесь много интересного и полезного

Сохраните меня в социальных сервисах

Видео

Избранное видео

Комментарии

Присоединяйтесь к обсуждению
  • OPS: Можно смотреть как SD, так и HD каналы. Его полное название Dr.HD F-15. Цены везде разные. Заказать можно по...
  • сергей: а вообще где F-15 продают ,заказывать нужно? сколько бабосов стоит? можно ли hd каналы смотреть?
  • Серж: Это та, которая орёт в рупор: «на посадку, автобус следует по маршруту и т.д.»? ))
  • Леха: Пардон! Прошивка отстой сплошные глюки, придется переходить на старую!!!
  • Леха: Прошивка отстой сплошные глюки, придется перодить на старую!!!

Статистика

Ссылки

Друзья

Twitter

Наш микроблог на Twitter