[mSklad] 1.0.7 импорт характеристик (CommerceML 2)
Разбирем новую версию на примерах.
Начну с главного нововведения, импорт характеристик. В компоненте добавилась новая вкладка «Настройка импорта свойств»:
По умолчанию добавлены сразу несколько дефолтных связей, которые нельзя удалить, но можно изменить или деактивировать.
Здесь мы настраиваем какие характеристики товаров нам нужно импортировать.
Добавляем новую связь или редактируем существующую.
Поля:
- «источник» — наименование поля характеристики из файлов import.xml и offers.xml, должно 1в1 совпадать
- «тип поля» — тип поля куда сохраняем полученные данные(возможные значения «поле msProduct» или «tv»)
- «цель» — наименование поля товара (должно совпадать с названием колонки в базе данных) или наименование тв параметра
- чекбокс «активный» — использовать или нет связь при импорте
Новые настройки компонента
- Добавление к псевдониму id товара (msklad_alias_with_id) — решает проблему с однаковыми псевдонимами, дописывая id товара
- Создавать tv (msklad_create_properties_tv) — автоматически создаст и заполнит tv параметры для всех возможных характеристик товаров
- Импортировать все цены (msklad_import_all_prices) — необходим когда в выгрузке offers.xml больше одной цены, настраивается через связи
- Tv параметр цены с учетом характеристики (msklad_price_by_feature_tv) — tv параметр куда будут выгружены цены предложений одного товара в соответсвии с характеристикой
- Публиковать товар если есть в наличии (msklad_publish_by_quantity) — публикует или отменяет публикацию в зависимости отналичия
- Сохранять все свойства товара в одно tv (msklad_save_properties_to_tv) — tv параметр типа текст куда будут выгружаться все полученные характеристики в JSON формате
Первоначальная настройка для работы с CommerceML 2
Желательно перед установкой компонента иметь уже созданную и пустую «Категорию с товарами» компонента miniShop2, тогда при установке моего компонента он автоматически настроится на нее.
В настройках системы, по компоненту мы должны увидить следущее
Необходимо чтобы были заполнены следующие настройки «Id категории каталога (msklad_catalog_root_id)», «Шаблон по умолчанию для новых категорий (msklad_template_category_default)» и «Шаблон по умолчанию для новых товаров (msklad_template_product_default)»
Затем настраиваем синхронизацию
Переходим в компонент и открываем вкладку «Реквизиты синхронизации»
Переписываем параметры в 1с или сервис. Логин и пароль можно задать самостоятельно, через системные настройки.
В 1с «Администрирование» -> «Синхронизация данных» -> «Узлы обмена с сайтами»
Для правильной работы синхронизации, чтобы не было перебоев во время работы, желательно в сестемных настройках параметр «Лимит выполнения» (msklad_time_limit) сделать на пару секунд меньше чем лимит выполнения скриптов на сайте.
Важно!
Если не срабатывает авторизация, для FastCGI создайте файл .htaccess в папке /assets/components/msklad/ и добавьте в него следующие строки:RewriteCond %{HTTP:Authorization} !^$
RewriteRule ^(.*)$ $1?http_auth=%{HTTP:Authorization} [QSA]
Примеры
Можно сделать первоначальную синхронизацию с сервисом, чтоб на сайт загрузились файлы import.xml и offers.xml для удобства дальнейшей настройки
Вариант 1 — автоматическое добавление характеристик
В системных настройках включаем параметр «Создавать tv»Производим импорт, и наблюдаем созданные связи и новые tv параметры
В данном случае tv параметр «Размер» явно лишний, так как в miniShop2 уже есть соответсвующее поле, перенастраиваем следующим образом:
Характеристику «Производитель» тоже желательно перенастроить в соответствии с полем miniShop2 vendor, но дополнительно отключим дефолтные связи «Изготовитель» и «Бренд», вот так:
Удаляем ненужные tv и запускаем синхронизацию.
Вариант 2 — добавляем характеристики
Все аналогично предыдущему варианту, но не включаем параметр «Создавать tv» при первой синхронизации.После первого импорта смотрим файл assets/components/msklad/1c_temp/import.xml
Свойства могут быть как отдельным справочником в теге <Свойства>
<Свойства>
<Свойство>
<Ид>76221</Ид>
<Наименование>Количество скрепок</Наименование>
<ДляТоваров>1</ДляТоваров>
<ТипЗначений>Строка</ТипЗначений>
</Свойство>
<Свойство>
<Ид>76223</Ид>
<Наименование>Размер</Наименование>
<ДляТоваров>1</ДляТоваров>
<ТипЗначений>Строка</ТипЗначений>
</Свойство>
</Свойства>
тогда для связи характеристик берем значение из поля "<Наименование>" и копируем его в «Источник».Так и непосредственно в теге товара:
<Товар>
<Ид>000</Ид>
<Наименование>Скрепки стальные </Наименование>
<БазоваяЕдиница Код="9" НаименованиеПолное="упаковка" МеждународноеСокращение="PCE">упак.</БазоваяЕдиница>
<Артикул>0000</Артикул>
<Группы>
<Ид>00000</Ид>
</Группы>
<Описание>Доп описание</Описание>
<ЗначенияСвойств>
<ЗначенияСвойства>
<Наименование>Количество скрепок</Наименование>
<Значение>35</Значение>
</ЗначенияСвойства>
</ЗначенияСвойств>
<ЗначенияРеквизитов>
<ЗначениеРеквизита>
<Наименование>ВидНоменклатуры</Наименование>
<Значение>Товар</Значение>
</ЗначениеРеквизита>
<ЗначениеРеквизита>
<Наименование>ТипНоменклатуры</Наименование>
<Значение>Товар</Значение>
</ЗначениеРеквизита>
<ЗначениеРеквизита>
<Наименование>Полное наименование</Наименование>
<Значение>Скрепки стальные </Значение>
</ЗначениеРеквизита>
<ЗначениеРеквизита>
<Наименование>Количество скрепок</Наименование>
<Значение>25</Значение>
</ЗначениеРеквизита>
</ЗначенияРеквизитов>
</Товар>
В этом случае характеристики импортируются из тегов <ЗначенияСвойств> и <ЗначенияРеквизитов> (дубли объединяются), берем значение из поля "<Наименование>" и копируем его в «Источник».Вариант 3 — импорт характеристик в одно поле
Создаем новый tv параметр и назначаем его шаблону товара.В системные настройки, в параметр «Сохранять все свойства товара в одно tv» (msklad_save_properties_to_tv) прописываем название созданного tv.
Запускаем импорт и смотрим что получилось.
Используйте по своему усмотрению.
Вариант 4 — импорт цены определенного типа или нескольких цен товара
Бывают ситуации когда нужно импортировать только определенный тип цены, а по умолчанию импортируется только первая цена.После первого импорта смотрим файл assets/components/msklad/1c_temp/offers.xml
<ТипыЦен>
<ТипЦены>
<Ид>111111</Ид>
<Наименование>Оптовая</Наименование>
<Валюта>RUR</Валюта>
<Налог>
<Наименование>НДС</Наименование>
<УчтеноВСумме>true</УчтеноВСумме>
</Налог>
</ТипЦены>
<ТипЦены>
<Ид>2222222</Ид>
<Наименование>Розничная</Наименование>
<Валюта>RUR</Валюта>
<Налог>
<Наименование>НДС</Наименование>
<УчтеноВСумме>true</УчтеноВСумме>
</Налог>
</ТипЦены>
</ТипыЦен>
<Предложения>
<Предложение>
<Ид>aaaaaaaa</Ид>
<Наименование>Скрепки стальные</Наименование>
<БазоваяЕдиница Код="9" НаименованиеПолное="упаковка" МеждународноеСокращение="PCE">упак.</БазоваяЕдиница>
<Цены>
<Цена>
<Представление>175 RUR за шт.</Представление>
<ИдТипаЦены>111111</ИдТипаЦены>
<ЦенаЗаЕдиницу>175</ЦенаЗаЕдиницу>
<Валюта>RUR</Валюта>
<Единица>шт.</Единица>
<Коэффициент>1</Коэффициент>
</Цена>
<Цена>
<Представление>182.5 RUR за шт.</Представление>
<ИдТипаЦены>2222222</ИдТипаЦены>
<ЦенаЗаЕдиницу>182.5</ЦенаЗаЕдиницу>
<Валюта>RUR</Валюта>
<Единица>шт.</Единица>
<Коэффициент>1</Коэффициент>
</Цена>
</Цены>
<Количество>12</Количество>
</Предложение>
Нас интересует только розничная цена, для ее импорта делаем следующее:- включаем системную настройку Импортировать все цены (msklad_import_all_prices)
- переходим на вкладку «Настройка импорта свойств» в компоненте
- добавляем новую связь
Вариант 5 — импорт цен/наличия для нескольких торговых предложений одного товара
Если в системе установлен и настроен компонент msOptionsPrice, то цены автоматически выгрузятся в него в соответсвии с размерами. Необходимо наличие связи источник «Размер», тип «поле miniShop», цель «size».Если компонента msOptionsPrice нет, то цены выгрузятся в tv параметр указанный в системной настройка «msklad_price_by_feature_tv» формате 110х120==95||200х200==176||300х300==257, при незаполненной настройке цены не выгружаются.
Наличие в соответствии с характеристикой выгружается при настроенной связи с источником «Количество» в аналогичном формате — 110х120==15||200х200==2||300х300==0.
Плагины
Теперь можно использовать собственные плагины во время синхронизации. Добавлены события «mskladOnProductImport» и «mskladOnProductOffers».
Пример плагина на событие «mskladOnProductImport»
Работаем с объектом $resource и массивом параметров $propertiesif ($modx->event->name == 'mskladOnProductImport') {
//fix series
if(isset($properties['КатегорияБренда'])){
$resource->set('series', $properties['КатегорияБренда']);
$resource->save();
}
}
return;
Пример плагина «mskladOnProductOffers»
Работаем с объектом $resource.if ($modx->event->name == 'mskladOnProductOffers'){
$qt = intval($resource->get('quantity'));
if($qt) {
$resource->set('instock', 1);
}
else {
$resource->set('instock', 0);
}
$resource->save();
}
return;
Убрано всплывающее окно с реквизитами API МойСклад при установке, изменяется при необходимости через системные настройки.
Комментарии: 56
Круто. Наконец-то дошли руки до 1с.
на самом деле уже давно :)
возможно глупый вопрос хочу задать, но
Александр, написал:
Если в системе установлен и настроен компонент msOptionsPrice, то цены автоматически выгрузятся в него в соответсвии с размерами. Необходимо наличие связи источник «Размер», тип «поле miniShop», цель «size».
Так вот вопрос: как можно заменить указанное соответствие с размерами, на тоже соответствие, но с другим(ими) аналогичным(ими) полем(ями), например, вес (weight) или цвет (color)?
Александр, написал:
Если в системе установлен и настроен компонент msOptionsPrice, то цены автоматически выгрузятся в него в соответсвии с размерами. Необходимо наличие связи источник «Размер», тип «поле miniShop», цель «size».
Так вот вопрос: как можно заменить указанное соответствие с размерами, на тоже соответствие, но с другим(ими) аналогичным(ими) полем(ями), например, вес (weight) или цвет (color)?
Настроить msOptionsPrice на поле вес или цвет. Работоспособность не гарантирую, не проверял.
МОжет получится такое, если в модуле msOptionsPrice указать в параметре msoptionsprice_ms_op_options желаемое поле?
да
А планируется ли в скором времени при синхронизации использовать REST API «Мой склад», чтобы можно было импортировать со склада все возможные типы цен (не только три цены, которые максимум возможны при синхронизации в формате CommerceML 2)? Например, их (типов цен) на складе 7 штук, при этом возможно передать 3 из них по формату CommerceML 2, а остальных фактически можно взять только по REST API склада (на данный-то момент).
Без дополнительного финансирования не планируется.
Очень крутой компонент. Как раз пригодилась функция обмена характеристиками. Большое спасибо за работу
Спасибо. Может пожелания есть какие по доработкам?
Да пока все устраивает. Этого функционала хватает :)
Отлично.
Александр, у меня такой вопрос.
В 1С есть свойство — Статус товара со значениями Удален или В наличии. Можно ли как то сделать, чтобы при загрузке, если у номенклатуры у данного свойства значение = Удален — отключать его
В 1С есть свойство — Статус товара со значениями Удален или В наличии. Можно ли как то сделать, чтобы при загрузке, если у номенклатуры у данного свойства значение = Удален — отключать его
А можно зеленые кнопочки сделать перламутровыми?
Доброго времени суток! Наблюдая хронологию изменения и выпуски новых дополнений mSklad, заметил, что из первоначального варианта убрали настройку остатков (msklad_quantity_tv), как сказал мне разработчик она устаревшая уже. При импорте товаров с 1с, в структуре xml тоже не заметил такой величины в настройках, как остаток товара на складе.
Потому вопросы такие:
Это вообще присутствует в последней версии mSklad (учет остатков)? Если да, то где можно вести учет остатков товаров?
Где можно редактировать остатки товаров в 1с? С 1с не работаю, плохо знаю потому обращаюсь за помощью к тем, кто знает.
Потому вопросы такие:
Это вообще присутствует в последней версии mSklad (учет остатков)? Если да, то где можно вести учет остатков товаров?
Где можно редактировать остатки товаров в 1с? С 1с не работаю, плохо знаю потому обращаюсь за помощью к тем, кто знает.
Естественно присутствует, надо создать поле минишопа или тв и настроить связь в компоненте.
По 1С не подскажу.
По 1С не подскажу.
Здравствуйте. Использую связки Мой Склад — MS2 — Msync. Не выгружается характеристика Размер.
Вот как выглядит товар в Мой Склад prntscr.com/63oon6
Вот параметры синхронизации prntscr.com/63ooqh
Настройки модуля prntscr.com/63op6u
Вот что получаю на сайте prntscr.com/63ooul
Также пробую выгружать все характеристики в TV — ничего не происходит. Там оказывается пусто. если убираю галочку в настройках синхронизации (Выгружать остатки с учетом характеристик), то выгружаются просто товары, размер нигде не учитывается.
Вот как выглядит товар в Мой Склад prntscr.com/63oon6
Вот параметры синхронизации prntscr.com/63ooqh
Настройки модуля prntscr.com/63op6u
Вот что получаю на сайте prntscr.com/63ooul
Также пробую выгружать все характеристики в TV — ничего не происходит. Там оказывается пусто. если убираю галочку в настройках синхронизации (Выгружать остатки с учетом характеристик), то выгружаются просто товары, размер нигде не учитывается.
Где можно купить или скачать данный компонент?
Ребят его нигде нет, в магазине симпла тоже, msync тоже нет, он больше не поддерживается? его нигде не скачать?
Пока отключен, в связи с нареканиями на поддержку.
Решают, что с ним делать дальше.
Решают, что с ним делать дальше.
жаль, очень жаль! и никак его не достать щас??
Нет, придётся подождать какое-то время.
День-два, я думаю.
День-два, я думаю.
Будет круто!
Спасибо Василий за отзывчивость!
Очень буду ждать его
Спасибо Василий за отзывчивость!
Очень буду ждать его
Вот уже 10 дней жду его, когда уже ?)
очень надо!
очень надо!
Компонент снова в магазине.
А почему этот модуль пропал из магазина? Очень нужный модуль!
Видимо решается дальнейшая судьба компонента. Думаю он скоро вернется в репо.
А альтернативы по обмену с CommerceML есть?
а вы можете мне лично его передать?
Были проблемы с поддержкой компонента.
Сейчас он вновь доступен в репозитории.
Сейчас он вновь доступен в репозитории.
Планируется ли дальнейшее развитие компонента? Есть магазин, где в 1С периодически обновляются фото товара на более свежие. После синхронизации в галерее карточки товара остаются две версии, старая и новая. Но по умолчанию стоит также старая. Можно ли добавить функцию удаления старых фото и синхронизация новых. Соответственно и превью будут уже новые. Важный вопрос, в поддержке сухо отвечают, что такого функционала нет.
С моей стороны компонент развивается. Добавлена поддержка новой версии протокола и исправлены ошибки.
Но сомневаюсь, что компонент обновится в modstore.
Но сомневаюсь, что компонент обновится в modstore.
А как можно обновить до свежей версии?)
Сложный вопрос.
Меня убрали с этого компонента, а в паблик пока не планирую выкладывать.
Меня убрали с этого компонента, а в паблик пока не планирую выкладывать.
Даже, если приобретался компонент?)
Этот вопрос не в моей компетенции.
Можно связаться лично,?
Можно, мой контакт был в компоненте, счас низнаю.
Хорршо, спасибо.
Некропост конечно, но вдруг тут кто нибудь ещё есть.
Подскажите пожалуйста, как запустить синхронизацию без 1С?
Дело в том что синхронизировать нужно с 1с77, а там нет стандартного обмена как в 1С8.
Программист сделал offers.xml и import.xml, я положил их в 1C_temp
а дальше не знаю как запустить 1c_exchange.php
Подскажите пожалуйста, как запустить синхронизацию без 1С?
Дело в том что синхронизировать нужно с 1с77, а там нет стандартного обмена как в 1С8.
Программист сделал offers.xml и import.xml, я положил их в 1C_temp
а дальше не знаю как запустить 1c_exchange.php
ссылка вида
логин пароль через : в base64
ну а остальное по логике сообразите
/assets/components/msklad/1c_exchange.php?http_auth=htauth:bVN5bmM6ZWQ3ODgyYmU1NzZhMTJjNWU0MGU1MTE2MWMyNmQ2MGM=&type=catalog&mode=import&filename=import.xml
где htauth:bVN5bmM6ZWQ3ODgyYmU1NzZhMTJjNWU0MGU1MTE2MWMyNmQ2MGM=логин пароль через : в base64
ну а остальное по логике сообразите
Добрый день, при тестирование компонента на тестовом сайте хостинга(синхронизация с 1С) — в логах следующая ошибка:
Ошибка импорта каталога, передано пустое имя файла (переменная filename)
При этом файл от 1С приходит(import0_1.xml)
В логах:
Ошибка импорта каталога, передано пустое имя файла (переменная filename)
При этом файл от 1С приходит(import0_1.xml)
В логах:
Array(
[REQUEST] => Array(
[type] => catalog
[mode] => import
[filename] => import0_1.xml)
[SESSION] => Array([feature_mapping] => Array())
)
Подскажите что не понравилось компоненту?
Прошу помощи у разработчика, либо у сообщества!
В системных настройках поставил чтобы у импортированных товаров в псевдоним подставлялся id товара (синхронизирую с класс365).
Но при выгрузке в псевдоним не подставляется id и получается, что у 10 товаров абсолютно одинаковый псевдоним и все вытекающие из этого проблемы…
Что нужно сделать, чтобы в псевдоним подставлялся id товара?!
В системных настройках поставил чтобы у импортированных товаров в псевдоним подставлялся id товара (синхронизирую с класс365).
Но при выгрузке в псевдоним не подставляется id и получается, что у 10 товаров абсолютно одинаковый псевдоним и все вытекающие из этого проблемы…
Что нужно сделать, чтобы в псевдоним подставлялся id товара?!
Как вариант, использовать CustomUrls.
Доброго времени суток!
С недавнего времени перестало авторизовывать из 1с (проверьте логин/пароль).
Проверка путем
Если на другом домене – всё отлично, Соединение с сайтом установлено.
Если в строке Адрес сайта в (Узлах 1С) вставить строчку с логином/паролем в Base64 (как ссылка выше),
то Сведение установлено.
В чём может быть загвоздка?)
С недавнего времени перестало авторизовывать из 1с (проверьте логин/пароль).
Проверка путем
http://site.ru/assets/components/msklad/1c_exchange.php?http_auth=htauth:YWRtaW46YWRtaW4=&type=catalog&mode=checkauth
Проходит хорошо – в окне браузера выдает SUCCESS… Если на другом домене – всё отлично, Соединение с сайтом установлено.
Если в строке Адрес сайта в (Узлах 1С) вставить строчку с логином/паролем в Base64 (как ссылка выше),
то Сведение установлено.
В чём может быть загвоздка?)
Доброе время суток!
Как я понимаю Компонент может обработать выгрузку из 1С УТ, вопрос, а с изображениями как дело обстоит тоже выгружаются?
есть ли обратная синхронизация т.е. с сайта в 1С УТ вместе с характеристиками и изображениями?
Как я понимаю Компонент может обработать выгрузку из 1С УТ, вопрос, а с изображениями как дело обстоит тоже выгружаются?
есть ли обратная синхронизация т.е. с сайта в 1С УТ вместе с характеристиками и изображениями?
В minishop2 сделано "Расширение модели товара".
У товара может быть 3 цены:
price
price_usd
price_euro
Соответственно в 1С есть цены в рублях и валюте.
Пожалуйста дайте пример, где отловить <Валюта>USD</Валюта> и перенаправить price в msProductData price_usd.
Ну или хотя бы, как получить список свойств $properties и $resource?
У товара может быть 3 цены:
price
price_usd
price_euro
Соответственно в 1С есть цены в рублях и валюте.
<Предложение>
<Ид>9bf7a895-0073-11e5-bef5-28924a4fd90c</Ид>
<Наименование>CAV-72B</Наименование>
<БазоваяЕдиница Код="796 " НаименованиеПолное="Штука">шт</БазоваяЕдиница>
<Цены>
<Цена>
<Представление>321,76 USD за шт</Представление>
<ИдТипаЦены>6fb11424-230c-11e1-8558-00252271fc01</ИдТипаЦены>
<ЦенаЗаЕдиницу>321.76</ЦенаЗаЕдиницу>
<Валюта>USD</Валюта>
<Единица>шт</Единица>
<Коэффициент>1</Коэффициент>
</Цена>
</Цены>
</Предложение>
Насколько я понимаю мне нужно создать плагин на одно из событий mskladOnProductImport или mskladOnProductOffers.Пожалуйста дайте пример, где отловить <Валюта>USD</Валюта> и перенаправить price в msProductData price_usd.
Ну или хотя бы, как получить список свойств $properties и $resource?
Вообщем сам решил задачу.
1. Идем в настройки импорта mSync. Создаем или обновляем «Цена» или «Розничная цена» (у меня розничная) и устанавливаем тип поля -> msProduct и цель -> currency of price.
2. Еще создаем настройки импорта с источниками USD, EUR, руб типом msProduct и соответствующими целями price_usd, price_euro, price.
3. В файле core/components/msklad/model/msklad/mskladcataloghandler.class.php заменяем
на вот это
1. Идем в настройки импорта mSync. Создаем или обновляем «Цена» или «Розничная цена» (у меня розничная) и устанавливаем тип поля -> msProduct и цель -> currency of price.
2. Еще создаем настройки импорта с источниками USD, EUR, руб типом msProduct и соответствующими целями price_usd, price_euro, price.
3. В файле core/components/msklad/model/msklad/mskladcataloghandler.class.php заменяем
//update price
$selectedPrice=0;
if($this->config['import_all_prices']){
//Импортируем цены согласно связям
$c=0;
foreach($xml->Цены->Цена as $price){
$priceTypeId = addslashes((string) $price->ИдТипаЦены);
$priceTypeName='';
if(isset($_SESSION['price_mapping'][$priceTypeId])) $priceTypeName = $_SESSION['price_mapping'][$priceTypeId];
if(!empty($priceTypeName)){
if(!isset($this->properties[$priceTypeName])) continue;
$priceSum = addslashes((string) $price->ЦенаЗаЕдиницу);
if($c==0) $selectedPrice=$priceSum;
if($this->properties[$priceTypeName]['type']==1){
$processorProps = array(
'id'=>$product_id
,'class_key' => 'msProduct'
,'context_key' => $this->config['catalog_context']
);
$processorProps[$this->properties[$priceTypeName]['target']] = $priceSum;
$this->modx->runProcessor('mgr/extend/updatemsproduct', $processorProps, array('processors_path'=>$this->config['processorsPath']));
}
elseif($this->properties[$priceTypeName]['type']==2){
$product->setTVValue($this->properties[$priceTypeName]['target'], $priceSum);
}
}
++$c;
}
}
на вот это
//update price
$selectedPrice=0;
if($this->config['import_all_prices']){
//Импортируем цены согласно связям
$c=0;
foreach($xml->Цены->Цена as $price){
$priceTypeId = addslashes((string) $price->ИдТипаЦены);
$priceTypeName='';
if(isset($_SESSION['price_mapping'][$priceTypeId])) $priceTypeName = $_SESSION['price_mapping'][$priceTypeId];
if(!empty($priceTypeName) AND $this->properties[$priceTypeName]['target'] = 'currency of price'){
if(!isset($this->properties[$priceTypeName])) continue;
$priceTypeName = addslashes((string) $price->Валюта);
$priceSum = addslashes((string) $price->ЦенаЗаЕдиницу);
if($c==0) $selectedPrice=$priceSum;
if($this->properties[$priceTypeName]['type']==1){
$processorProps = array(
'id'=>$product_id
,'class_key' => 'msProduct'
,'context_key' => $this->config['catalog_context']
);
$processorProps[$this->properties[$priceTypeName]['target']] = $priceSum;
$this->modx->runProcessor('mgr/extend/updatemsproduct', $processorProps, array('processors_path'=>$this->config['processorsPath']));
}
elseif($this->properties[$priceTypeName]['type']==2){
$product->setTVValue($this->properties[$priceTypeName]['target'], $priceSum);
}
}
if(!empty($priceTypeName) AND $this->properties[$priceTypeName]['target'] != 'currency of price'){
if(!isset($this->properties[$priceTypeName])) continue;
$priceSum = addslashes((string) $price->ЦенаЗаЕдиницу);
if($c==0) $selectedPrice=$priceSum;
if($this->properties[$priceTypeName]['type']==1){
$processorProps = array(
'id'=>$product_id
,'class_key' => 'msProduct'
,'context_key' => $this->config['catalog_context']
);
$processorProps[$this->properties[$priceTypeName]['target']] = $priceSum;
$this->modx->runProcessor('mgr/extend/updatemsproduct', $processorProps, array('processors_path'=>$this->config['processorsPath']));
}
elseif($this->properties[$priceTypeName]['type']==2){
$product->setTVValue($this->properties[$priceTypeName]['target'], $priceSum);
}
}
++$c;
}
}
У меня в настройках mSync стоит «импортировать все цены» (msklad_import_all_prices).
Скажите, а как к 1с прикрутить. Не очень понимаю…
Если есть специалист по 1С, то все очень просто.
Я недавно синхронизировал сайт с 1С, и дело было примерно так. Специалист по 1С настроил товары, настроил в программе выгрузку по CommerceML (где-то тут есть инструкция, как это делать), я же всего лишь связал через админку MODX'а нужные поля с полями товара и все.
Я недавно синхронизировал сайт с 1С, и дело было примерно так. Специалист по 1С настроил товары, настроил в программе выгрузку по CommerceML (где-то тут есть инструкция, как это делать), я же всего лишь связал через админку MODX'а нужные поля с полями товара и все.
Скажите, а он товары сам заносил все или в 1С с сайта информация загрузилась?
Ну, так как у нас изначально товары лежали на сайте, но был дикий бардак с артикулами и свойствами, то я выгрузил товары через Excel ему, он их отредактировал и занес в 1С.
Здравствуйте! Может вышлет кто-нибудь модуль мне на почту. it.med.rus@mail.ru. И как он работает на modx evo 1.2, допиливать ничего не нужно?
Здравствуйте! Этот модуль уже не поддерживается и исчез из магазина? Можете подсказать альтернативы?
Да, модуль был полностью переработан и теперь называется mSync.
Здравствуйте, при выгрузке заказа с сайта в МойСклад не добавляется его модификация.
В данном случае модификация — это TV параметр размер.
Вот как выглядит при создании заказа в МойСклад — prntscr.com/mwn6jb
Вот как должно быть — prntscr.com/mwn7ck
Вот так выбирается размер на сайте — prntscr.com/mwn7xp
Сами значения размеров (TV-параметры) как раз-таки и берутся из МоегоСклада, поле заполняется модификациями при импорте товаров на сайт.
Подскажите, в каком файле можно добавить указание модификации к товарам в заказе.
В данном случае модификация — это TV параметр размер.
Вот как выглядит при создании заказа в МойСклад — prntscr.com/mwn6jb
Вот как должно быть — prntscr.com/mwn7ck
Вот так выбирается размер на сайте — prntscr.com/mwn7xp
Сами значения размеров (TV-параметры) как раз-таки и берутся из МоегоСклада, поле заполняется модификациями при импорте товаров на сайт.
Подскажите, в каком файле можно добавить указание модификации к товарам в заказе.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.