Имя: Пароль:
1C
 
Обмен с Битриксом
0 mzelensky
 
13.01.15
17:21
Доброго всем!
Ситуация следующая. Запустили сайт на битриксе. Первоначальный каталог товаров набили ручками через веб-морду. Сейчас морально подготовились к обмену 1С с сайтом (товаров и цен). Сам обмен настроили, вроде работает, НО у тех товаров, которые набивали ручками в веб-морде "Внешний код" пустой, соответственно при обмене с 1С эти товары задвоятся. Самое банальное - руками пробиль эти внешние коды и вроде все ляжет, НО ручками уже не хочется - долго, нудно, большая вероятность накосячить.

Как красиво обновить внешние коды у товаров на сайте?
1 mzelensky
 
13.01.15
17:22
После гугления нашел только "Редактирование у объектов кодов Битрикс" - но на сколько я понимаю, это ситуация обратная - проставить то ,что сейчас на сайте ,объектам в 1С.
2 Garykom
 
гуру
13.01.15
17:26
(0)(1) хде битрикс данные хранит в курсе?

ЗЫ так сложно проставить коды там сделав сопоставление по наименованиям из 1С ?
3 qw12225
 
13.01.15
17:27
По логике никак. Единственный вариант можно попробовать, выгрузить из битрикса в csv. Проставить там коды 1с, и попробовать поменять скрипт загрузки битрикса, чтоб он брал индекс не по коду, а по наименованию и при этом проставлял коды.
4 qw12225
 
13.01.15
17:27
Если товаром не много лучше руками все сделать
5 mzelensky
 
13.01.15
17:30
(2) "хде битрикс данные хранит в курсе? " - в своей базе.

"ЗЫ так сложно проставить коды там сделав сопоставление по наименованиям из 1С ?" - читай внимательно :

НО ручками уже не хочется - долго, нудно, большая вероятность накосячить.
6 mzelensky
 
13.01.15
17:31
(3) Я так и планировал. Просто надеялся, что есть типовая фича.
7 mzelensky
 
13.01.15
17:32
А можете мне объяснить зачем вообще нужно "Редактирование у объектов кодов Битрикс". Во всех инструкция написано крайне просто:

В поле «Объект 1С» указывается объект, коды элементов которые необходимо посмотреть/отредактировать. Список объектов, которые можно выбрать, формируется в зависимости от указанного типа объекта 1С.

Указать объекты 1С можно только те, которые могут хранить коды Битрикс.

При нажатии на кнопку «Записать изменения» измененные коды элементов будут перезаписаны в элементе 1С.




и что???? Что потом, на сайт они обратно уйдут???
8 Garykom
 
гуру
13.01.15
17:34
(5) Вы программист или эникейщик?

если есть база битрикс где хранятся данные что нельзя там их автоматически:

UPDATE ... SET ... WHERE ...; ?
9 mzelensky
 
13.01.15
17:40
(8) не грузи, мужик.
10 Garykom
 
гуру
13.01.15
17:41
(9) обработку с кнопкой прислать?
11 mzelensky
 
13.01.15
17:48
(10) Не выпендривайся - не пришлешь ведь.
12 Garykom
 
гуру
13.01.15
17:50
(11) почему же не прислать, вопрос цены
13 mzelensky
 
13.01.15
17:52
(12) Ок, если все так просто и ты действительно такой великий НЕ ЭНИКЕЙЩИК, то думаю 2 часов тебе хватит на это. Удаленка в среднем 400 рублей\час итого, с меня 800 рублей - с тебя рабочая обработка. Идет?
14 Garykom
 
гуру
13.01.15
18:00
(13) а как великий "не программист" таким образом оценил трудозатраты программиста?

может лучше по другому оценим? по рыночному так сказать ))

согласен на 2\3 от затрат перебить ручками
15 Garykom
 
гуру
13.01.15
18:02
(14)+ и да у нас 500рэ в час (неважно удаленка или нет если приезд то еще оплата транспортных) это если фри и 1200-1500рэ примерно если франч
16 marty0701
 
13.01.15
18:30
(0)Не ломай мозг, выгрузи из битрикса данные, приведи в порядок базу 1С, если ты говоришь, что в базе все готово к обмену - удаляй каталог и выгружайся из 1С.
17 MaxS
 
13.01.15
18:54
Мы решали подобную задачу.
Самый подходящий вариант - это:
1) Правильно завести виды номенклатуры в 1С (УТ11?). Дополнительные реквизиты, если они множественные завести как ссылку на справочник, например "Значения свойств объектов" (Тип значения: Дополнительное значение).
Битрикс так не умеет хранить доп.сведения. Почему-то подобные реквизиты у него тип строка. Поэтому при попытке перенести из Битрикса в 1С получим ненормализованную базу данных.

2) Выгрузить из Битрикса в файл Excel, например.
3) Загрузить номенклатуру из Excel в УТ11. http://infostart.ru/public/308474/
4) Удалить всё с сайта
5) Настроить обмен с 1С и из 1С загрузить в Битрикс.
18 marty0701
 
13.01.15
19:04
Еще не забудь использовать инструменты 1С, есть на маркетплейсе. основная мысль - привести в порядок базу 1С, тк она в приоритете при обмене, выгрузить данные в цсв с сайта и вгрузить недостающие в базу 1С.
19 ivant
 
13.01.15
19:36
правильный ответ в (8)
все остальное - от лукавого.
20 marty0701
 
13.01.15
20:16
(19)От лукавого как раз совет в (8)
21 ivant
 
13.01.15
20:39
(20) в целом, выгрузить каталог из 1С тоже правильно, но только если не жаль данных на сайте - иногда там может быть инфа которой нет и не должно быть в 1С - таже сео оптимизация. но самое просто и быстрое для специалиста - в (8)
22 marty0701
 
13.01.15
20:42
(21)Возможно, ситуации разные бывают, сео теги тоже не проблема, но вот методологически писать в БД напрямки нельзя, так что, если обходиться только штатными средствами, то в любом случае придется руками часть инфы на сайте обрабатывать, а потом, возможно, переписывать загрузку битрикса, что тоже не есть хорошо.
23 marty0701
 
13.01.15
20:46
+(22)Все же такие ситуации, как в (0) чаще возникают из-за жадности клиента или глупости разработчика сайта, тк, если уж предполагается обмен с 1С, будьте любезны согласуйте форматы обмена, настройте обмен, а потом уже и рапортуйте об успешной сдаче сайта в эксплуатацию, скорее всего возникла эта ситуация из-за того, что клиент сначала отказался от обмена с 1С, типа - руками пока тут натыкаем, потом как-нибудь обменяемся, а после вспомнил, что у него и 1С есть, а в ней цены, остатки, да все есть и обмен то автоматом заявлен, а "администратор сайта" не успевает ручками обновлять каталог в 1000+ позиций.
24 marty0701
 
13.01.15
20:53
Кстати вопрос к (0), обновил ты внешние коды, что будешь делать с этими позициями при обмене с 1С? Ничего? А цены, остатки те же, да описание элементарное? Руками или будете пилить обмен?
25 mzelensky
 
14.01.15
11:48
(17)(21) НА сайте НОВОГО товара НЕТ, т.е. если он товар есть на сайте, значит он есть и в 1С (просто заносили его ручками). Похерить инфу на сайте и загрузить все по новому технически можно, но практически не вариант, т.к. имеется много специфической информации (подробные описания, картики ,Сео и так далее), которую терять нельзя.

Сейчас пробуем вариант следующий:
1) Выгрузили инфу с сайта.
2) По стыковочному полю (артикулу) прописываем правильные внешние коды из 1С.
3) Пробуем импортировать полученные данные в обратно в битрикс. Если Получится штатно - замечательно. Иначе будем пробовать через какой-нибудь скриптик самописный данные обновить.
26 mzelensky
 
14.01.15
11:51
(24) НА сколько я понял "внешний код" является полем синхронизации. Соответственно если я для существующих товаров проставлю правильные коды, а потом запущу обмен с сайтом, то товар из 1С ляжет именно на эти созданные ручками товары и задвоений не произойдет. Вот часть переписки с поддержкой Битрикса:

Вы можете сопоставить внешний код товара коду из 1с, если сделаете выгрузку на локальный компьютер. в полученном xml файле, посмотрите значение в поле ИД товара. Потом на сайте в настройках модуля информационные блоки, вам надо будет отметить параметр "Показывать код загрузки из внешних источников". В карточке товара в адмике, появится поле "Внешний код" значение в данном поле должно совпадать с внешним кодом из 1с.