-
Posts
277 -
Joined
Content Type
Profiles
Forums
Marketplace
Articles
FAQ
Our New
Store
Blogs
module__dplus_manager
Everything posted by Gmp
-
@unnamedpl Просто вы забыли указать в настройках модуля обмена статус, с которым нужно выгружать заказы. Потому выгружаются все заказы. Не оформленный до конца заказ (при определенных условиях), это тоже заказ. Просто он еще невидим для вас. А модуль его видит. Хотя по моему я видел в коде фикс этой ситуации, точно не вспомню.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Payonline для 3 версии
Gmp replied to BaLam's topic in Программирование, создание модулей, изменение функциональности
У них модуль только под Opencart 2.х. Попросите у payonline добавить вам еще 5000-9000р и тогда и у вас и у payonline будет модуль под Opencart 3. -
@1CGelios нужно смотреть лог ошибок. Обычно код ошибки можно посмотреть в 1С во время обмена. Если используешь версию с моими доработками (выкладывал чуть выше), то в файле exchange1c.log при выключенном логе будет краткая информация об обмене - отображены все вызовы со стороны 1С и будет понятно на каком моменте обмен обрывается.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@ReyUA неожиданное поведение, надо будет разобраться на досуге. Чтоб ЧПУ убивало заказы - это что-то новенькое. Ну хорошо что решилось.
- 5,125 replies
-
- 1
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@CTPAX5000 ну это не совсем то что ему нужно, т.к. он просто превратит все quot; в кавычки, а ему надо избавиться от них. Оно сработает только вместе с моим способом: $s = html_entity_decode($s); $s = str_replace('"', '', $s); но тогда можно и без преобразований просто написать: $s = str_replace('"', '', $s); Хотя в первом случае отработают и кавычки и quot; что в общем-то плюс.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Возможно так: (не проверял) private function translit($s, $space = '-') { $s = (string) $s; // преобразуем в строковое значение $s = str_replace('"', '', $s); // убираем двойные кавычки ... Если не поможет, можно попробовать заменить на: $s = str_replace('"', '', $s); // убираем двойные кавычки
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Обновил свою сборку, пофиксил и эту проблему. В модуле не был реализован функционал для настройки "Удалять картинки в кэше", т.е. его включение/выключение ни на что не влияло. К сожалению, при изменении основной картинки - из 1С она приходит с тем же именем файла (идентификатором), потому проверить что она изменилась несколько затруднительно. Потому если опция включена - кеш основного изображения удаляется в любом случае (для выгружаемых товаров). Если разом выгружаются десятки тысяч товаров, а потом на сайт набегают сотни пользователей в одну минуту - серверу может быть тяжко. Что собственно и было написано в описании к этой настройке)) Информация о сборке oc2.3-exchange1c_1.6.4.7_gmp-mod_v6.ocmod.zip: oc2.3-exchange1c_1.6.4.7_gmp-mod_v6.ocmod.zip
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Лучше будет не исправлять, а поставить мою версию с прошлой страницы, а то еще не один раз придется вопросы задавать)) Это по желанию конечно. Удалите всё содержимое папки /image/import_files/, затем сделайте полную выгрузку всех товаров. После этого удалите все файлы из папки /image/cache/import_files/
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@Demon85 На глаза не попадалось, по идее этой проблемы не должно быть если стоит настройка "Удалять картинки в кэше: Да", но проверил - реально проблема есть. Будет время - гляну.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Надоели одни и те же вопросы по типовым проблемам, решил выложить свою сборку в которой исправлено большинство известных проблем, а также те, которые я обнаружил сам. Устанавливается поверх версии 1.6.4.7(2), предварительно нужно удалить старый модификатор. После установки: 1) обновить кеш модификаций; 2) очистить системный кеш; 3) открыть настройки, проверить всё ли там правильно и нажать сохранить. Изменения: [!] Исправлена ошибка: Notice: Undefined index: middlename in ... [!] Исправлена проблема с увеличением размера изображений после каждой выгрузки [+] Запись поля "Артикул" из 1С в поле "Модель" Opencart ("Код товара" в ocStore) [+] Опции выгружаемые из 1С теперь по умолчанию обязательны к заполнению (выбору) [+] Перед началом обмена, модуль попытается увеличить лимит времени для выполнения скрипта [+] Вывод краткого лога, даже если лог отключен. Помогает в быстрой диагностике проблем: был ли обмен начат, завершился ли он, на каком этапе возникает ошибка [!] Исправлена ошибка, возникающая при переходе в настройки, если модуль не был установлен должным образом [!] Исправлена проблема с постоянным обновлением и отображением сообщения "Успешно обновлено до версии 1.6.4.2Успешно обновлено до версии 1.6.4.3Успешно обновлено до версии 1.6.4.4Успешно обновлено до версии 1.6.4.5Успешно обновлено до версии 1.6.4.6Успешно обновлено до версии 1.6.4.7" при каждом входе в настройки модуля [!] Перемещение пункта меню "Exchange 1C v8.x" ниже пункта "События" [!] Исправление настроек по умолчанию [!] Прочие исправления ошибок oc2.3-exchange1c_1.6.4.7_gmp-mod_v5.ocmod.zip
- 5,125 replies
-
- 1
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@VitaliiS В этой папке хранятся картинки товаров. То что каждая картинка "растет" в размере - это ошибка модуля, которая легко решается. В теме уже обсуждалось раз сто)). Вот решение: В файле admin/controller/extension/module/exchange1c.php $filesize = file_put_contents($uplod_file, $data, FILE_APPEND | LOCK_EX); Исправить на: $filesize = file_put_contents($uplod_file, $data, LOCK_EX);
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@Demon85 Это же не обработка, а часть конфигурации, ее вроде нельзя отдельно выгрузить, или просто я не знаю как. Найди в инете УТ 10.3 (у меня работает на УТ 10.3.64.2, с платформой 8.3.16.1296), разверни себе и ковыряй сколько влезет)). Если лень искать или не получается найти - напиши в личку, попробую скинуть код модуля выгрузки из 10.3.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@26rus зайди в phpMyAdmin и выполни SQL запрос: ALTER TABLE `oc_order` ADD `middlename` VARCHAR ( 32 ) NOT NULL AFTER `lastname` Если у тебя префикс таблиц нестандартный - исправь в запросе префикс "oc_order" на свой.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@Demon85 Ну, в выгрузке я вижу только одну картинку, потому это к 1С вопросы, а не к модулю. @26rus Производитель и грузится автоматически из полей в xml "Производитель" и "Изготовитель", либо из свойств товара с такими же названиями. Настройки загрузки производителя на вкладке "Товары". В описании всё и так разжевано подробнее некуда. Комментарии тут излишни.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Да, модуль хорошо помню, не поленился открыть его код, вот принцип заполнения этого поля: ,'date_available' => date('Y-m-d', time() - 86400) Т.е. туда просталяется "вчерашняя" дата по отношению к моменту выгрузки. Этой конфы у меня увы нет, потому просто покажу как выглядит выгрузка картинок из УТ10.3 которая точно работает (из import.xml): <Товары> <Товар> <Ид>612a5b50-cdee-11ea-8083-98af65d5f8eb</Ид> <Артикул>Т1</Артикул> <Наименование>Товар 1</Наименование> <БазоваяЕдиница Код="796 " НаименованиеПолное="Штука" МеждународноеСокращение="PCE">шт</БазоваяЕдиница> <Группы> <Ид>612a5b4c-cdee-11ea-8083-98af65d5f8eb</Ид> </Группы> <Описание>Товар 1.</Описание> <Картинка>import_files/61/612a5b50-cdee-11ea-8083-98af65d5f8eb_9c78ecd6-de2c-11ea-8089-e8d8d14ef3af.jpeg</Картинка> <Картинка>import_files/61/612a5b50-cdee-11ea-8083-98af65d5f8eb_9c78ecd7-de2c-11ea-8089-e8d8d14ef3af.jpeg</Картинка> <ЗначенияСвойств> <ЗначенияСвойства> <Ид>9c78ecce-de2c-11ea-8089-e8d8d14ef3af</Ид> <Значение>9c78eccf-de2c-11ea-8089-e8d8d14ef3af</Значение> </ЗначенияСвойства> <ЗначенияСвойства> <Ид>9c78ecd2-de2c-11ea-8089-e8d8d14ef3af</Ид> <Значение>9c78ecd3-de2c-11ea-8089-e8d8d14ef3af</Значение> </ЗначенияСвойства> </ЗначенияСвойств> <СтавкиНалогов> <СтавкаНалога> <Наименование>НДС</Наименование> <Ставка>20</Ставка> </СтавкаНалога> </СтавкиНалогов> А у тебя как?
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Проверил сейчас на УТ10.3 - выгружает и основную и дополнительные картинки. У тебя какая конфигурация? @Limonad2014 Для этого 1С должна выгружать эту дату. Смотри содержимое файлов обмена, есть найдешь там - шансы есть (конечно придется немного допилить модуль), если нет - приедтся допилить и конфигурацию 1С и модуль.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@26rus Сорри, делать 100500 скриншотов всех настроек не хочется, тем более что у всех настроек есть подробное описание рядом. выставьте как вам надо и все. Я особо ничего не менял - только цены выставил и отключил загрузку налогов, все остальное как было:
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@26rus Один раз потратьте время и пройдитесь по всем настройкам. Настройте все как вам нужно. Что касается цен: 1) Либо посмотрите в файлах обмена название и ид нужной вам цены (файл system/storage/cache/exchange1c/offers.xml но придется временно изменить настройку "Не удалять файлы после обмена: Да") и вставьте вручную в настройки. 2) Либо включите автозагрузку цен, сделайте выгрузку, она тоже завершится с ошибкой, вернитесь в настройки - там появятся цены. Удалите не нужные и сохраните настройки. Следующая выгрузка пойдет как надо.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@Lans676767 Думаю такая доработка это не "сделать пару правок в такой-то строке", а придется изрядно поковыряться. Начало здесь: файл admin/model/extension/module/exchange1c.php метод private function parseProducts($xml) { Наименование получает в этой строке: $data['name'] = htmlspecialchars(trim((string)$product->Наименование)); Дальше нужно придумать (и реализовать) механизм откуда нужно получать информацию, затем доработать остальные участки кода и остальные файлы чтоб эти данные корректно записывались, корректно считывались, и корректно обновлялись.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
@Kjtu Обычно такой проблемы нет, т.к. при каждом обмене информация полностью перезаписывается. По скриншоту вижу, что при каждом обмене приходит файл с уникальным именем. Что за конфигурация 1С? Пофиксить можно. Но для начала посмотри настройки обмена самой 1С, может там есть возможность отключить уникальные имена у файлов обмена. Или например включить упаковку файлов обмена в zip, либо если это уже включено - то наоборот отключить.
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with:
-
Не ну серьёзно, я кусок кода привел не просто так, вы же понимаете что там происходит? Вина не в том, что внешний сервер отвалился, а в том, что после того как он отвалился, по вашей вине нельзя сделать даже это: Потому что в админку нельзя войти вообще! Я могу понять желание отобразить ошибку, чтоб юзер видел что курс не обновляется (хотя это можно было сделать иначе, но не суть), но прерывать-то выполнение всего кода зачем?! В общем, надеюсь вы просто поправите этот баг в следующих обновлениях. Рассердило то, что я про это уже слышал пару лет назад, но думал что проблема давным-давно исчерпана.
-
Хотел бы получить внятный ответ автора модуля на возникшую ситуацию. Обратился человек со срочной проблемой, мол сломался сайт, невозможно войти в админку (я бы добавил сюда еще - заказы не обрабатываются, клиенты психуют, убытки растут). При попытке войти в админку - пустой белый экран и ошибка "Curl error: Operation timed out after 30001 milliseconds with 0 bytes received" Начал разбираться, спустя некоторое время нахожу вот такой "сюрприз", в файлах storage/modification/admin/controller/localisation/currency.php и storage/modification/admin/model/localisation/currency.php $content = curl_exec($curl); if ($content === false) { echo 'Curl error: ' . curl_error($curl); exit(); } Выяснил что гадит модификатор от модуля "Валюта Плюс" (модуль версии 3.4, модификатор версии 3.3, Opencart 3) Для какой цели это сделано? Оказать платную поддержку? Заставить клиентов понести убытки? ЗАЧЕМ умышленно блокировать работу сайта если внешний сервер недоступен? PS. Владелец лицензии не я, а человек с ником Ramiro
-
@ramzes6961 Вот с такими - ок (offers.xml) <Предложение> <Ид>RwceGGzhjk7YDtXuSeUkE0#kkmdIoEnjzFsjBghwjIxO0</Ид> <Артикул>62863</Артикул> <Наименование>Кофта женская флисовая SPIRIT TEELA</Наименование> <БазоваяЕдиница НаименованиеПолное="шт">шт</БазоваяЕдиница> <ХарактеристикиТовара> <ХарактеристикаТовара> <Наименование>Код цвета</Наименование> <Значение>GRE</Значение> </ХарактеристикаТовара> <ХарактеристикаТовара> <Наименование>Размер</Наименование> <Значение>42</Значение> </ХарактеристикаТовара> <ХарактеристикаТовара> <Наименование>Цвет</Наименование> <Значение>Красный</Значение> </ХарактеристикаТовара> </ХарактеристикиТовара> <Цены> <Цена> <ИдТипаЦены>cbcf493b-55bc-11d9-848a-00112f43529a</ИдТипаЦены> <ЦенаЗаЕдиницу>2200.0</ЦенаЗаЕдиницу> <Валюта>RUB</Валюта> <Единица>шт</Единица> <Коэффициент>1</Коэффициент> </Цена> </Цены> <Количество>1</Количество> </Предложение>
- 5,125 replies
-
- обмен данными
- ocmod
-
(and 1 more)
Tagged with: