Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Интеграция интернет-магазина и 1C, проблема двух баз 
:(
    Опции темы
Rock
Дата 7.9.2007, 11:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 13.1.2005
Где: Краснодар

Репутация: нет
Всего: 1



Что-то не нашёл форума куда это запостить, поэтому решил здесь.

Есть такая проблема: есть движок магазина, товары там имеют PRIMARY поле productID с auto_incriment. Всё как обычно.
Есть база товаров в 1C, в ней товары имеют символьный артикул, для каждого товара он уникальный, артикул может быть например: 1fa1fjlkjk45
Товары из 1С имортируются в интернет-магазин, с помощью csv, хотя способ здесь не важен.

Проблема в следующем: т.к. магазин использует поле с auto_incriment при очистки таблицы товаров мы получаем, что все по-новому импортированные товары - получают новые ID, следовательно все связаные объекты: заказы, другие товары - они теряют связь с товаром.
Можно конечно сказать, что "не надо очищать таблицу товаров", да и это правильно, но сама ситуация, когда мы имеем две независимых БД товаров, я считаю, неправильна. 

Я придумал следующие решения: 

1. Переделать движок под использование символьного индификатора товаров: переделать все проверки productID, связаные таблицы и многое многое. Получаем полную связь с 1C и одно поле для индификации товаров.

2. Сделать генерацию числового productID на стороне 1С: переделать только скрипт импорта, и всё. Получаем полную связь с 1С и два поля для индификации товаров, одно из которых используется в магазине, другое в 1С.

Может кто поможет советом?
PM MAIL ICQ   Вверх
Rock
Дата 7.9.2007, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 264
Регистрация: 13.1.2005
Где: Краснодар

Репутация: нет
Всего: 1



Думаю модератор ошибся с форумом, теме больше место в php для профи, чем здесь. 
Я вроде обсуждаю не проблему конкретного движка, а больше проблему проектирования, может стоит перенести сюда: http://forum.vingrad.ru/forum/web-developm...-designing.html
либо сюда: http://forum.vingrad.ru/forum/database-sql.html

Но точно не сюда.

PM MAIL ICQ   Вверх
ewolf
Дата 8.9.2007, 00:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 389
Регистрация: 15.8.2006
Где: г. Москва

Репутация: 1
Всего: 18



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

как вариант, можно в скриптах импорта/экспорта в 1с использовать идентификацию товаров по артикулу, а в остальном магазине по ID
PM MAIL ICQ   Вверх
Flashdown
Дата 10.9.2007, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 85
Регистрация: 27.5.2006
Где: Москва

Репутация: нет
Всего: нет



раз тебе не нужен числовой ID товара, поменяй тип поля INT AUTO_INCREMENT на VARCHAR и по необходимости подправь движок инет-магазина 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

Внимание: данный раздел предназначен для решения сложных, нестандартных задач.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Для профи | Следующая тема »


 




[ Время генерации скрипта: 0.0919 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.