Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Синхронизация с 1С не меняя указанные поля

Автор tatfoxРаздел Настройка системы и модулей

Ответов: 11
Просмотров: 2859
Последний ответ 17 Июня 2016, 09:07:57
от tatfox

0 Пользователей и 1 Гость просматривают эту тему.

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #15 : 23 Ноября 2011, 08:35:55 »
У меня указано, вплоть до конечных папок и отдельных позиций, но это не помогает. При каждом обмене по-прежнему в корне сайта создается пустая страница "Основной каталог товаров". Папки, которые мне не нужны, не выгружаются, т.к.:

1. В фильтре по номенклатуре указаны папки, содержащие только нужные товары.
2. Если в какой-либо папке мне нужны не все товары, выделяю их и добавляю отдельно в общий список.

rauschen, попробуй так. Это, разумеется, повлечет дополнительные временные затраты, но зато ненужные папки создаваться не будут. Еще один минус такого подхода в том, что, при добавлении товаров в папки, в которых элементы указывались выборочно, на сайт они автоматически не выгрузятся (т.е. предварительно их придется добавить в фильтре). Кроме этого, в добавленных в общий список папках и элементах довольно трудно ориентироваться, и при достаточно большом количестве товаров это доставляет определенные неудобства. Переместить или отсортировать элементы в списке фильтра не представляется возможным.

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

1. Установка сразу двух фильтров по номенклатуре - в одном содержатся папки, в другом - товары, которые не нужны. Можно было бы задать и несколько фильтров, и более гибко настроить, но созданные дополнительно фильтры (помимо имеющихся по умолчанию) автоматически удаляются после сохранения изменений.
2. Задание фильтра с сохранением папочной структуры - т.е. добавляем папки, но внутри них убираем элементы, которые не нужны. Так сделать тоже не представляется возможным.

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

Если кто-то сталкивался с такими проблемами, посоветуйте что-нибудь.
« Последнее редактирование: 23 Ноября 2011, 08:42:39 от Alexey »

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #16 : 23 Ноября 2011, 08:57:20 »
У меня еще одна проблема. Дорабатываю event. Разумеется, приходится править файл /classes/modules/exchange/__custom.php  Работоспособность не проверишь, пока не запустишь обмен в 1C. Запускаешь обмен, выдается ошибка: "Соединение с сайтом не установлено. Выгрузка товаров отменена. Не удалось установить соединение с сервером. Проверьте имя пользователя и пароль." Все настройки заданы верно, синтаксис файла вроде бы в порядке. Или иногда бывает ошибка "Получен пустой ответ сервера", но это, как я понимаю, уже явно свидетельствует о наличии ошибок в файле.

Странность в том, что при откате на предыдущее рабочее состояние или вообще при возврате /classes/modules/exchange/__custom.php в дефолтное состояние, выдается та же самая ошибка. Перезагрузка 1С не помогает, и лишь через некоторое время ошибка пропадает.

Подскажите, пожалуйста, что это может быть.

P.S. admin, проверь ЛС.

*

rauschen

  • *
  • 22
  • +1/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #17 : 23 Ноября 2011, 10:58:42 »
при выгрузке пробовали указать фильтр какие разделы номенклатуры выгружать? или это не поможет?
В 1С выбираем именно вложенный раздел, иначе будет выгружаться вся целиком номенклатура. Но все равно верхние разделы ее выгружаются.

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #18 : 19 Декабря 2011, 10:49:50 »
Проблема с разделом "Основной каталог товаров", создаваемым при каждом обмене данными с 1C в корне структуры сайта, по-прежнему актуальна. Подскажите, пожалуйста, как справиться с данной проблемой.
« Последнее редактирование: 19 Декабря 2011, 10:55:16 от Alexey »

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #19 : 19 Декабря 2011, 11:09:58 »
Цитировать
Проблема с разделом "Основной каталог товаров", создаваемым при каждом обмене данными с 1C в корне структуры сайта, по-прежнему актуальна. Подскажите, пожалуйста, как справиться с данной проблемой.
обычно его просто выключенным оставляют в системе

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #20 : 19 Декабря 2011, 11:15:43 »
Он и так выключен и особо не мешает. Если бы он создавался только один раз... А так, сколько было обменов - столько и разделов "Основной каталог товаров" в корне сайта. То есть, если их не удалять, их число неуклонно растет. Мало того, что захламляется структура, так еще и ID расходуются под них.
« Последнее редактирование: 19 Декабря 2011, 11:19:04 от Alexey »

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #21 : 19 Декабря 2011, 11:39:02 »
а вот так не должно быть. Какая версия? какие-нибудь странности или модификации файла импорта есть?

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #22 : 19 Декабря 2011, 12:15:55 »
Версия 2.8.4.

Изменения производились в файле /xsl/import/custom/commerceML2.xsl. Добавил вот это.

Плюс к этому, добавил и немного доработал предложенные выше тобой обработчик и функцию в /classes/module/exchange (__custom.php и custom_events.php).

Файле /xsl/import/commerceML2.xsl тоже изменял, но, так как эти изменения эффекта не дали, вернул его в исходное состояние.
« Последнее редактирование: 19 Декабря 2011, 12:18:37 от Alexey »

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #23 : 19 Декабря 2011, 12:32:40 »
я бы откатил все на дефолт и попробовал импортнуть.

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #24 : 19 Декабря 2011, 13:27:04 »
Я вроде бы так уже пробовал, все сбрасывал, как было по умолчанию и делал импорт. Дубликаты по-прежнему создавались. Завтра на работе попробую еще раз, но мне кажется, проблема не в этом. Тем не менее, спасибо, за советы.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #25 : 21 Декабря 2011, 20:13:44 »
попробовали?

*

Alexey

  • *
  • 42
  • +3/-0
    • Просмотр профиля
Re:Синхронизация с 1С
« Ответ #26 : 30 Декабря 2011, 09:26:37 »
Разобрался с данными проблемами.

Цитировать
Проблема с разделом "Основной каталог товаров", создаваемым при каждом обмене данными с 1C в корне структуры сайта, по-прежнему актуальна.

Задал в настройках задания по обмену данными соответствие групп классификатора каталога на сайте:



Таким образом, при обмене данными с 1С в корне сайта создастся пустой каталог товаров с названием "Основной каталог товаров, нужно просто его оставить скрытым. Повторно он больше не создается.

Загвоздка в том, что такой каталог будет создаваться отдельно на каждое задание по обмену. У меня на каждую группу товаров настроен отдельный обмен (всего их 6), соответственно в корне сайта - 6 пустых каталогов. Далее дубликаты не создаются.

Необходимость создания отдельного обмена на каждую группу товаров возникла из-за следующих причин:
1. Большое количество товаров в номенклатуре.
2. Сложности в организации и структуре номенклатуры.
3. Большое количество ненужных позиций.
Соответственно, надо добавлять много исключений в отбор. Если бы я добавил все в одну кучу, было бы крайне тяжело ориентироваться, и обмен бы проходил долго, а так есть возможность обновлять группы товаров по очереди, и работать с ними намного удобнее.

Если кто-то может предложить более элегантное решение - буду очень рад. А пока только так.

Цитировать
У меня еще одна проблема. Дорабатываю event. Разумеется, приходится править файл /classes/modules/exchange/__custom.php  Работоспособность не проверишь, пока не запустишь обмен в 1C. Запускаешь обмен, выдается ошибка: "Соединение с сайтом не установлено. Выгрузка товаров отменена. Не удалось установить соединение с сервером. Проверьте имя пользователя и пароль." Все настройки заданы верно, синтаксис файла вроде бы в порядке. Или иногда бывает ошибка "Получен пустой ответ сервера", но это, как я понимаю, уже явно свидетельствует о наличии ошибок в файле.

Странность в том, что при откате на предыдущее рабочее состояние или вообще при возврате /classes/modules/exchange/__custom.php в дефолтное состояние, выдается та же самая ошибка. Перезагрузка 1С не помогает, и лишь через некоторое время ошибка пропадает.

Все дело было в том, что моя учетная запись не принадлежала группе пользователей "Супервайзеры", хотя все галочки были проставлены. После отнесения пользователя к группе "Супервайзеры" проблема решилась.
« Последнее редактирование: 30 Декабря 2011, 09:35:29 от Alexey »