Данная тема является продолжением темы
1C УТ выгрузка/загрузка в VirtueMart по протоколу CommerceMLНа данный момент скрипт представленный в прошлой теме больше не обновляется!
Версия сегодняшнего скрипта
vmshop_1c v.2.1.0.betaСкрипт обмена 1С УТ v8.x и магазина на базе Joomla -
VirtueMart 1.1.x-2.0.6 Final выполняет следующие функции:
1С -> VirtueMart
1) Выгрузка номенклатуры
2) Выгрузка всех характеристик
3) Выгрузка изображений с последующим созданием tumbsnail
4) Выгрузка дополнительных картинок
5) Выгрузка всех ценовых групп и назначение по дефолту группы, указанной в настройке!
6) Выгрузка остатков на складе
7) Выгрузка цен на товары в соответствии с ценовой группой

Выгрузка производителей
1С <- VirtueMart
1) Загрузка заказов со статусов P
2) Добавление новых клиентов (в том числе и Юр. лица)
Скрипт работает как на полную выгрузку, так и на выгрузку изменений!
В связи с тем, что скрипт магазина постоянно обновляется и тем самым постоянно меняется что-либо в структуре базы данных, то и скрипт возможно будет работать некорректно. Следите за этой веткой, возможно исправление уже есть ниже! Так же первый пост постоянно обновляется по факту выхода обновления! Так же прошу высказывать свои ошибки / пожелания / исправления в этой теме! Только убедитесь, что ваша ошибка еще не решена! Так же в случае ошибки прошу выкладывать логи выгрузки, логи ошибок сервера, важные параметры и версия скрипта! Заранее благодарю за понимание!Основные настройки
(обновлено)!
//Системные параметры
define ( 'VM_VERSION', '2.1.0.beta' ); // Версия скрипта. Будет обновляться!
define ( 'VM_HTTP_VERS', 1 ); // Использовать модуль http (через браузер) 1- да, 0- нет (в случае 0 - настройте config.php)
// Можно с начало включить, настроить, а потом выключить!
Следующие параметры теперь находятся в папке components/com_virtuemart/1cexport/system/config.php
define ( 'VM_CODING', 'UTF-8' ); // Кодировка выгрузки заказов (пока не применяется)
define ( 'VM_DB', 'yes' ); // Обнулять таблицы перед выгрузкой?
define ( 'VM_ZIP', 'yes' ); // Использование zip архивов
define ( 'VM_ZIPSIZE', 16480000 ); // максимальный размер архива в байтах
define ( 'VM_LOG', 'time' ); // вести логи по времени (time), по дате (date), один лог (one)
define ( 'VM_LANG', 'RU' ); // Язык 1С - требуется для характеристик (см adapt.php)
//Параметры изображения категории
define ( 'VM_CAT_IMG', 'yes' ); // Применять картинку к категории
define ( 'VM_CAT_RAND', 'r' ); // Выбор картинки ( r - рандомом, p - первая )
//Параметры отвечающие за налог
define ( 'VM_NDS', 'yes' ); // Учитывать в цене из 1С налог НДС?
define ( 'VM_NDS_COUNTRY', 'RUS' ); // Страна учета НДС?
//Параметры отвечающие за поставки товара
define ( 'VM_POSTAVKA_E', 'yes' ); // Использовать модуль поставки (заменяет картинку в случае отсутствия товара)
define ( 'VM_POSTAVKA', '3-5d.gif' ); // Вставляет текст или картинку (например: on-order.gif или в наличии)
define ( 'VM_POSTAVKA_TIME', '432000' ); // Ориентировачное время поставки в секундах, т.е. 5д*24ч*60м*60с = 432000
//Параметры thumbnails изображения
define ( 'VM_TBN_H', '90' ); // Высота thumbnails изображения
define ( 'VM_TBN_W', '90' ); // Ширина thumbnails изображения
define ( 'VM_TBN_RED', '255' ); // Подложка thumbnails изображения (Красный - 255) - >
define ( 'VM_TBN_GREEN', '255' ); // Подложка thumbnails изображения (Зеленый - 255) - > Все вместе - белый
define ( 'VM_TBN_BLUE', '255' ); // Подложка thumbnails изображения (Синий - 255) - >
define ( 'VM_TBN_QTY', '80' ); // Качество thumbnails изображения (максимум 100)
define ( 'VM_JPG', 'no' ); // Заменять ли JPEG на JPG
//Параметры отвечающие за каталог
define ( 'VM_LIST_CAT', '5' ); // Сколько отображать товаров в каталоге
define ( 'VM_DEF_CASHGR', 'Розничная' ); // название основной категории цен (у меня это Розничная)
$config['VM_MANUFACTURE'] = 'производитель'; // Обозначение свойства производителя
//Параметры отвечающие за выгрузку заказов
define ( 'VM_USER_SHOP', 'no' ); // Создать поля для регистрации новых клиентов (Банковские реквизиты: ИНН, КПП и т.д.)
define ( 'VM_CLIENT', 1 ); // 0 - Выгружать всех клиентов в 1С на контрагента "Физ лицо" 1- Выгружать всех клиентов в 1С как есть
define ( 'VM_NDS_SHIP', '18' ); // Ставка НДС для услуги доставки
Инструкция по установке в архиве!
Внимание! Для некоторых возможностей скрипта понадобится, чтобы было установлено дополнение к 1С, скачать можно на офф сайте!У кого установлена версия 1.1.9 - там в коде есть ошибка, из-за которой не отображаются подкатегории, выводится сообщение "В данной категории нет товаров."
Решение:
В файле \administrator\components\com_virtuemart\html\shop.browse.php допущена ошибка в строке 86:
elseif( $num_rows == 0 && empty($product_type_id) && empty($child_list)) {
echo $VM_LANG->_('EMPTY_CATEGORY');
Нужно изменить условие, поставив перед empty($child_list) восклицательный знак:
elseif( $num_rows == 0 && empty($product_type_id) && !empty($child_list)) {
echo $VM_LANG->_('EMPTY_CATEGORY');
Внимание!Обратите внимание на параметр:
define ( 'VM_LANG', 'RU' );
Новая версия скрипта 2.1.0.betaТак же доступна прошла версия 2.0.9
Скачать новую версию:
http://forum.fromrus.su/files/file/11-vmshop-1c/Важно! Все параметры теперь находятся в конфигурационном файле в папке system, поэтому для настройки можно воспользоваться модулем загрузки через браузер или настроить в ручную!
Для простоты (кто не хочет держать включенным доступ через браузер) включаем параметр (в vmshop_1c.php) VM_HTTP_VERS = 1, настраиваем, а потом выключаем VM_HTTP_VERS = 0
[вложение удалено Администратором]новая ссылка предоставлена
fov -
https://yadi.sk/d/amgOGaiyUz2LeАдаптированный под J3 скрипт