Jump to content
Sign in to follow this  
w00

Автоматизация процесса импорта данных о товаре

Recommended Posts

Уважаемые знатоки, помогите советом!

Имеется складская программа, работающая на базе Microsoft SQL Server 7.0 и интернет-магазин на Opencart . Сейчас обмен данными происходит через промежуточный файл .xls, т.е. мы сначала выгружаем файлы из складской программы, затем загружаем в интернет-магазин. Т.к. товара очень много (~90000 строк), то грузится долго, грузим частями из-за чего сайт уходит в офлайн минут на 30. Сейчас открыли еще 2 магазина, и оператор тратит часа полтора в день на обновление.

Посоветуйте, как лучше автоматизировать процесс обновления? Я вижу два варианта:

  1. На сервере учетной системы по крону происходит выгрузка в файл, затем файл автоматически скидывается на сервер интернет-магазина, после загрузки срабатывает скрипт импорта интернет-магазина.
  2. По крону запускается скрипт, который из базы учетной системы переносит данные в базу интернет-магазина.

Сам не особо разбираюсь в программировании, нужен совет, какой из вариантов лучше? Критерии: безопасность, скорость, простота/стоимость реализации и полная автоматизация процесса.

Так же интересно, влияет ли на скорость импорта тип файла? Вот сейчас я импортирую обычный эксельный файл, а если попробовать текстовый с разбивкой csv, будет ли быстрее?

Share this post


Link to post
Share on other sites

логичнее - напрямую из Microsoft SQL Server 7.0 тягать данные в Opencart.

само собой - по cron`y.

уточните, какие данные о товаре вы переносите каждый раз из MSSQL в Opencart.

Так же интересно, влияет ли на скорость импорта тип файла?

конечно влияет.

Вот сейчас я импортирую обычный эксельный файл, а если попробовать текстовый с разбивкой csv, будет ли быстрее?

да, будет быстрее.

Share this post


Link to post
Share on other sites

Переносим поля: артикул, оптовая цена, розничная цена, резерв на складе, остаток на складе, тег для расчета скидки. Затем алгоритм импорта перерабатывает эти данные и проставляет наличие и цены.

Я так понимаю нельзя дать доступ на чтение только этих полей, если тягать данные напрямую из базы, то получается, что мы открываем полный доступ на чтение к базе MSSQL? И в теории злостный хакер может получить доступ к нашей базе?

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

Вопрос в следующем: в какой промежуточный файл выгружать данные, что бы импорт происходил как можно более быстрее (sql, txt, другой)? Возможно, ли по крону отправлять файлы на сервер интернет-магазина?

Share this post


Link to post
Share on other sites

я имел ввиду такую схему:

php-скрипт на компе с mssql -> получаем данные (производим необходимые действия / расчеты) -> идем в базу магазина opencart обновлять данные.

И в теории злостный хакер может получить доступ к нашей базе?

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

если кому-то будет очень нужна ваша база - он ее получит.

Вопрос в следующем: в какой промежуточный файл выгружать данные, что бы импорт происходил как можно более быстрее (sql, txt, другой)?

csv

Возможно, ли по крону отправлять файлы на сервер интернет-магазина?

да.

  • +1 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.