zack
-
Публікації
65 -
З нами
-
Відвідування
Тип публікації
Профілі
Форум
Маркетплейс
Статті
FAQ
Наші новини
Магазин
Блоги
module__dplus_manager
Повідомлення, опубліковані користувачем zack
-
-
Подскажите пожалуйста. Как снять с #ap-tab0 класс active?
Всегда в дэффолте открывается вкладка с Сериями товара (комплектациями), мне надо наоборот. -
-
В 03.07.2020 в 14:20, Demon85 сказал:
Можно попробовать с помощью "Правило загрузки import.xml секции Товар:"
А есть описание этого поля? В смысле как с ним работать? Пока только понятно, что можно указывать куда что грузить, а вот "объединять" - у меня не получается
-
Всем привет. У меня возник один вопрос.
У меня из 1С данные приходят в виде:
Наименование: Диван
Артикуль: 0101
Атрибут: Название модели: УРСУЛА
Модель: Утопия
и так далее.
Суть в том что товаров с наименованием "Товар" может быть несколько, Модель так же может повторяться.
Отличие товаров в артикуле и коде EAN.Мне нужно доработать скрипт загрузки до такого вида чтобы "наименование" формировалось из нескольких "вещей".
Для примера: Диван Утопия Урсула 0101
-
В 09.08.2019 в 19:53, zack сказал:
/catalog/controller/product/category.php
$this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'sku' => $result['sku'], 'mpn' => $result['mpn'], 'quantity' => $result['quantity'], // получим остатки по складам 'quantity_warehouse' => $this->model_catalog_product->getProductQuantity($result['product_id']), 'discount' => $discounts, 'stock_status'=> $result['stock_status'], 'name' => $result['name'], 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '', 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); }
в шаблоне у меня выглядит так (в разных шаблонах по-разному, но смысл одинаковый)
<?php if (isset($product['quantity_warehouse'])) { ?> <div> <?php $pq_style = $product['quantity'] ? ' style="color: #00AA00;"' : ' style="color: #FF0000;"'?> <?php foreach ($product['quantity_warehouse'] as $qw => $quantity_warehouse) { if ($quantity_warehouse['quantity'] > 0) { ?> <div><span<?php echo $pq_style ?> title="<?php echo 'Наличие на складе '.$quantity_warehouse['name'] ?>"> <?php echo 'Склад "'.$quantity_warehouse['name']. '" ' . $quantity_warehouse['quantity'] . ' шт'; ?></span></div> <?php } else {?> <div><span style="color: #FF0000;" title="Нет в наличии"><?php echo $product['stock_status']; ?></span></div> <?php } ?> <?php } ?> </div> <?php } ?>
теперь в карточке товара:
/catalog/controller/product/product.php
меняем текст:
if ($product_info['quantity'] <= 0) { $this->data['stock'] = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $this->data['stock'] = $product_info['quantity']; } else { $this->data['stock'] = $this->language->get('text_instock'); }
на
if ($product_info['quantity'] <= 0) { $this->data['stock'] = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $this->data['stock'] = $product_info['quantity']; } else { $this->data['stock'] = $this->language->get('text_instock'); } $this->data['quantity_warehouse'] = $this->model_catalog_product->getProductQuantity($this->request->get['product_id']);
функция getProductQuantity() содержит следующие строки:
public function getProductQuantity($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_quantity pq JOIN " . DB_PREFIX . "warehouse w ON (pq.warehouse_id = w.warehouse_id) WHERE pq.product_id = '" . (int)$product_id . "'"); return $query->rows; }
Как такое реализовать на
Opencart 2.3.0.2
Версия модуля 1.6.4.5
При добавлении данного кода - ошибка 500 на странице карточки товара.
В логах ничего не появляется. -
/catalog/controller/product/category.php
$this->data['products'][] = array( 'product_id' => $result['product_id'], 'thumb' => $image, 'sku' => $result['sku'], 'mpn' => $result['mpn'], 'quantity' => $result['quantity'], // получим остатки по складам 'quantity_warehouse' => $this->model_catalog_product->getProductQuantity($result['product_id']), 'discount' => $discounts, 'stock_status'=> $result['stock_status'], 'name' => $result['name'], 'description' => utf8_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 100) . '', 'price' => $price, 'special' => $special, 'tax' => $tax, 'rating' => $result['rating'], 'reviews' => sprintf($this->language->get('text_reviews'), (int)$result['reviews']), 'href' => $this->url->link('product/product', 'path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'] . $url) ); }
в шаблоне у меня выглядит так (в разных шаблонах по-разному, но смысл одинаковый)
<?php if (isset($product['quantity_warehouse'])) { ?> <div> <?php $pq_style = $product['quantity'] ? ' style="color: #00AA00;"' : ' style="color: #FF0000;"'?> <?php foreach ($product['quantity_warehouse'] as $qw => $quantity_warehouse) { if ($quantity_warehouse['quantity'] > 0) { ?> <div><span<?php echo $pq_style ?> title="<?php echo 'Наличие на складе '.$quantity_warehouse['name'] ?>"> <?php echo 'Склад "'.$quantity_warehouse['name']. '" ' . $quantity_warehouse['quantity'] . ' шт'; ?></span></div> <?php } else {?> <div><span style="color: #FF0000;" title="Нет в наличии"><?php echo $product['stock_status']; ?></span></div> <?php } ?> <?php } ?> </div> <?php } ?>
теперь в карточке товара:
/catalog/controller/product/product.php
меняем текст:
if ($product_info['quantity'] <= 0) { $this->data['stock'] = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $this->data['stock'] = $product_info['quantity']; } else { $this->data['stock'] = $this->language->get('text_instock'); }
на
if ($product_info['quantity'] <= 0) { $this->data['stock'] = $product_info['stock_status']; } elseif ($this->config->get('config_stock_display')) { $this->data['stock'] = $product_info['quantity']; } else { $this->data['stock'] = $this->language->get('text_instock'); } $this->data['quantity_warehouse'] = $this->model_catalog_product->getProductQuantity($this->request->get['product_id']);
функция getProductQuantity() содержит следующие строки:
public function getProductQuantity($product_id) { $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "product_quantity pq JOIN " . DB_PREFIX . "warehouse w ON (pq.warehouse_id = w.warehouse_id) WHERE pq.product_id = '" . (int)$product_id . "'"); return $query->rows; }
Как такое реализовать на
Opencart 2.3.0.2
Версия модуля 1.6.4.5
-
В 04.08.2019 в 19:58, Kirillove сказал:
Самое главное чтобы 1С поддерживала такую загрузку, у Вас какая конфигурация 1С?
УНФ. Если надо - могу модуль битрикса прикрутить
-
Вопрос возник. Как можно доработать модуль для работы со складами?
Что-то вроде загрузки в свойства. Хочу свойством выводить адрес магазин. Но как мне туда заливать данные по остаткам?
Нужно реализовать мульти-складскую систему. Однако громоздить другим модулем - смысла нету, поскольку в моем случае все заказы обрабатывает оператор.И в 1С распределяет как надо.
-
58 минут назад, wbDev сказал:
Спасибо.
Вот это уже полезное направление.
Решение для 2.3.0.2.3 выложу завтра -
32 минуты назад, wbDev сказал:
Я и написал что если скидки пусть гуглит, я находил тут решение минут за 5 поиска наверно, не готовое правда, чуть доделать пришлось
От Вас ничего полезного не услышал
Скидки для опт.покупателей добавляю в товаре. Указываю для группы ОПТ, цена за 1 ед.
-
57 минут назад, fanatic сказал:
что значит без модулей? вносить правки тупо в файлы?
и какой ответ вы ждете, готовый код?
Да, допиливая контролеры и tpl'ы.
Ответ желательно кодом.
Либо подсказать - как мне получить и вывести $discount для определенной группы
-
Всем доброго времени суток.
Как вывести несколько цен для разных групп?
Допустим группы Розничный и Оптовый покупатели
Необходимо в карточке товара и в категории вывести обе цены:
Розница: 100рОпт: 75р.
Реализация нужна без модулей.
Все данные поступают из 1С УНФ.
Opencart 2.3.0.2.3
-
Итак, у меня актуальные вопросы:
1. Как реализовать загрузку одой из цен (опт) в две таблицы (Скидки от 3 шт. и цены на Товар для Оптовых покупателей).
В модуле реализовано:
СпойлерЦены загружаются в том порядке в каком указаны в таблице, дублирующие записи ниже игнорируются, работает по принципу ищем сверху, нашли, уходим.
Основная цена в товар будет записана только первая найденная, где указана таблица товар.Дописывать запросом к бд? Или как мне лучше сделать, посоветуйте
PS: В качестве дополнения. В справке можно реализовать ссылки на те пункты меню, где есть ошибка. Облегчит настройку.
-
5 часов назад, Alexander16795 сказал:
установил этот модуль, отлично работает с сервисом класс 365, есть только вопрос как сделать чтобы при загрузке заказов не плодились контрагенты в учете, чтобы был один контрагент например "интернет покупатель", у меня на другом сайте стоит еще модуль от NEOSEO, там есть такая возможность, а здесь не нашел, может кто подскажет?
А смысл подобной системы? Контрагенты для того и созданы чтобы в Управленческом учете было видно сколько пришло денег конкретно по пользователям
-
В 26.10.2018 в 11:03, wwizard сказал:
А как можно это проверить, если выгрузка происходит нормально? Поэтому и прошу платной помощи - у меня не хватает знаний чтобы это решить ((
Можно файл выгрузки? Отдельно полный и отдельно изменения?
И доступ к сайту?
в лсPS: скорее всего неправильно регистрируются изменения в 1С.
-
5 часов назад, Kirillove сказал:
Через CRON никто не желал запускать обмен?
в папку export можно положить файл php с содержимым:
<?php $ch = curl_init("http://you.site.ru/export/exchange1c.php?module=cronImport"); curl_setopt($ch, CURLOPT_HEADER, 0); curl_exec ($ch); curl_close ($ch); ?>
и через хостинг панель запланировать выполнение, либо HTTP запросом: http://you.site.ru/export/exchange1c.php?module=cronImport
HTTP запрос без авторизации.
файл обмена модуль будет искать в папке /system/storage/cache/exchange1c
После удачного обмена удалит его из папки
Хостинг "Beget"
Полет отличный
- 1
-
Opencart 2.3.0.2
Модуль 1.6.4.5
На первой картинке: Две цены. ОПТ загоняется в акцию. С такими настройками работает
Но мне надо чтобы цена ОПТ попадала и в группу Оптовые покупатели.
С такими настройками происходит загрузка только Розничной цены.
Из-за этого слетает вывод:
Вывожу две цены для товара, с помощью доработки контролера -
4 часа назад, Kirillove сказал:
Через CRON никто не желал запускать обмен?
в папку export можно положить файл php с содержимым:
<?php $ch = curl_init("http://you.site.ru/export/exchange1c.php?module=cronImport"); curl_setopt($ch, CURLOPT_HEADER, 0); curl_exec ($ch); curl_close ($ch); ?>
и через хостинг панель запланировать выполнение, либо HTTP запросом: http://you.site.ru/export/exchange1c.php?module=cronImport
HTTP запрос без авторизации.
файл обмена модуль будет искать в папке /system/storage/cache/exchange1c
После удачного обмена удалит его из папки
Попробую завтра.
Трабл с Auth Method опять возобновился.
-
Оффтоп но
У меня предложение: МБ для того чтобы каждый раз не просить:
Те у кого что-то не выгружает или ошибки - прикладывайте выгрузку одного товара (ну или максимум 10 товаров) + Лог ошибок (Ошибки и отладка : включается в модуле внизу на главной вкладке).То есть формат сообщения примерно:
Не выгружает вес[спойлер]import.xml[/спойлер]
[спойлер]offers.xml[спойлер]
[спойлер]Лог[/спойлер]
Версия движка: Opencart 2.3.0.2.3
Версия модуля: 1.6.3.11
Упростите жизнь как разработчику так и другим людям, которые безвозмездно пытаются помочь.
-
4 часа назад, IronMann сказал:
За три года здесь некоторые участники уже и PHP и 1С выучили и сами интеграцию себе сделали.
Пруф?
-
А еще (ИМХО)
Срачь между Ironman и остальными - переведите в ЛС.
Ветка обсуждения МОДУЛЯ а не АВТОРА
-
В 08.10.2018 в 18:23, donnie сказал:
Помогите разобраться плиз:
Выгружаю товар "Новый товар искать по: Наименованию", все грузится нормально, выгружаю "Новый товар искать по: Артикулу", не работает. Пишет "Не найден товар в базе по ИД".
Вот скриншоты на примере одного товара:
1. В админке: https://yadi.sk/i/74P78AUZP9GCsA
2. В offers.xml: https://yadi.sk/i/Jhix2Dt2ieRUTg
3. В import.xml: https://yadi.sk/i/D-wdIPegLJnXJg
Возможно сопоставление не по тем полям, которые заполнены?
Как вариант посмотреть в mysql каким образом поле Артикул заполняется. Мб оно все таки пустое
-
В 10.10.2018 в 19:56, sergei5770 сказал:
еще не подскажете, выгружает количество 0 на все позиции, куда копать?
В 1С копать.
-
12 часов назад, alexmax220 сказал:
@Fil15 скажите пожалуйста, Вам удалось решить проблему что статусы заказов из 1С не выгружаются на сайт? (у меня УТ11)
УТ11 - Типовые соглашения созданы правильно?
[Поддержка] SEO CMS TOP 2: Блог | Новости | Отзывы | Галерея | Формы
в Блоги, новости, статьи
Опубліковано:
Вопрос небольшой. Не работает вывод в 2 колонки. Размер блоку назначается (49%), а вот выводит все в один столбец.
Как можно отладить? Потому что я пока не могу даже понять в чем проблема