Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Kirillove

Користувачі
  
  • Публікації

    1 598
  • З нами

  • Відвідування

Повідомлення, опубліковані користувачем Kirillove

  1. 02.03.2022 в 00:46, nash сказал:

     

    закомментил, но все равно идет пустое значение.

     

    image.png.cc84cdb745f762796973cf98e6028296.png

     

    Так район на стороне сайта у вас заполняется разве? Если значения в 1С и на сайте совпадают то можно вместо none указать имя поля, либо если у вас есть функции разбора адреса, то доработать эту функцию чтобы подтягивались поля оттуда.

  2. 02.03.2022 в 00:34, nash сказал:

    у меня цены идут и так без скидки, а сумма итоговая за минусом скидки. Что-то я недогоняю как надо...)

    Я посмотрел там есть в таблице товаров поле <Скидка>XXX</Скидка> но эта скидка на товар а не весь документ.

    Какая конфигурация Вашей 1С? Нужно будет в конфигураторе посмотреть функцию 

    image.thumb.png.a159355035f8d9a7ed18d9fc9d8d2cb9.png

     

    внутри этой функции запускается разбор самого документа

     

    image.thumb.png.8c744def84b0d63522dba48df8ee02cb.png

     

    На форуме битрикс от 2016 года поднимался вопрос, но ответ от битрикс был что БУС не поддерживает поэтому 1С не включает это возможность.

    Можно попробовать в шапку документа включить поле <Скидка> и указать скидку на весь документ. Хотя я не нашел такое у себя в функции 1С.

    Либо реализовать такое решение через расширение для 1С и добавить скидку либо в шапку либо в свойства документа или реквизиты документа.

    Когда доберусь до заказов смогу поискать решение

     

    Свежие 1С доработали загрузки с сайта доставку

    image.thumb.png.e10cb8076977e8218b9535530bc37254.png

  3. 02.03.2022 в 00:22, nash сказал:
    'Район'				=> 'none',

    Это поле не сопоставлено, будет пустым, справа указывается поле в таблице order или order_shipping (см. mode=?)  если не нужно закомментарьте.

    А вообще 1С у меня такой адрес не воспринимает, это зависит от того какой ФИАС у вас использует 1С. Старые версии 1С хавали строку представления как строку и все, а вот если загружен ФИАС 1С пытается разложить адрес на поля, если не получается то игнорирует.

    В версии 2.0 когда буду тестить заказы на своем сервере обязательно найду решение, и можно будет доработать функцию в версии 1.6

    • +1 1
  4. 01.03.2022 в 03:34, nash сказал:

    да, именно так)

    Такая возможность доступна только в версии 2.0, я хотел на примере внедрения проверить обмен заказами.

    Пока внедрял её в opencart 2.1 и opencart 2.3 времени не было, время появится только в конце этой недели, проверю на своем сервере и напишу о результатах.

    • +1 1
  5. 01.03.2022 в 21:48, doronus сказал:

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

    маленькие не смог отловить, когда хочешь записать лог,- становится всё гуд, как на авто в сервис приехал, а она как часики там работает, но стоит ток выехать...
    Может не поддерживается установка цен с 2х магазинов, т.е. один магазин должен быть скидкой... Тогда норма... (как автор пишет - нашел первую цену, -записал, ушел)

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

  6. 01.03.2022 в 19:40, nash сказал:

    а возможно как-то передавать скидки и др возможности "учета в заказе" в 1с? Не нашел документацию по XML обмена битрикс по заказам.

    т.е. у меня в данный момент идет скидка за онлайн-оплату 10%, а в 1с эта скидка никак не передается. Возможно это как-то передать в 1с и как это правильно сделать?
     

    Да можно сделать на стороне сервера, нужно указать цену без скидки а сумму за минусом скидки и 1С в документе должна разницу поставить в скидку.

    Такое можно и модулем сделать, но лучше написать модификатор отдельный и включать - выключать когда Вам надо

    А код добавить в функцию queryOrders()

    • +1 1
  7. 01.03.2022 в 02:11, doronus сказал:

    помогите решить проблемку, может кто сталкивался, может где точку забыл поставить.
    1с розница + выгрузка последняя (любая из двух) 2.3, без seo модуля 
    3 магазина в 1с, один отключён (при выгрузке склад учитывается, в связь не добавляется), в одном есть товар по 20руб, во втором нет товара (когда-то закончился) по 10 руб. (3 вложенность, т.е. косметика--уход за волосами--шампуни---товар)
    При выгрузке, категории "косметика" или "уход за волосами" на сайте упорно ставится цена 10 руб, как наименьшая среди магазинов, несмотря на то что товара нет
    И лишь при выгрузке только 3 категории, отдельно, цена встает правильно.
    удаление связи цен тоже не помогает.
    Подскажите на какой участок кода обратить внимание.(я на уровне тугодума в скриптах, соображаю, но долго((  )

    Здравствуйте, если версия модуля 1.6 тогда смотреть нужно parseOffers() читаются предложения, включите лог в режиме отладки и выполните обмен

    Выделенным текстом выводится в лог информация массива $data где формируется цена предложения.

    Проверьте правильная тут цена?

    Далее нужно точно знать в этом товаре есть характеристики в 1С ?

    Если есть в 1С характеристики (опции на сайте) то за расчет цен берется функция:

     

    image.png.e47413b0239c2922192961e491a129b4.png

     

    Далее нужно точно знать в этом товаре есть характеристики в 1С ?

    Если есть в 1С характеристики (опции на сайте) то за расчет цен берется функция getProductFeaturesQuantityPrice():

     

    image.png.5911668bca80f0caec87fae1075f6ff8.png

     

    Непосредственно в сам товар цену и остатки записывает функция updateOffers().

  8. 27.02.2022 в 17:35, nash сказал:

    @Kirillove спасибо за информацию! А вот по этому пункту не можете помочь? Еще есть проблема, перестал передаваться в комментариях способ доставки...

    Комментарий передается с заказа, таблица order поле comment

    Документы формируются в функции queryOrders()

     

    image.thumb.png.77efba8c23cbac75fa1d0caf5a69d0a5.png

     

    включите лог в режиме отладки, посмотрите номер строки где выводится у вас в файле /admin/model/extension/exchange1c.php содержимое заказа с сайта

    и в логах найдите по поиску, например, у меня строка 6482. Там будет содержимое массива где должен быть comment

     

    image.png.4cdf3f29b8c6046b47fbbfc801973530.png

     

    • +1 1
  9. 11.02.2022 в 18:12, Builder2k сказал:

    Загружать товары не нужно, хочу только получать заказы с сайта.

    Поставил фильтр на дату заказов (за 2 дня) и на статус. Запускаю ручную выгрузку - модуль зависает и через какое то время выпадает в 504 ошибку.

    Если установить фильтр по которому точно нет заказов - получаю файл только с заголовком, нормально.

    Включил лог, но при зависании в него ничего не попадает.

    Как бы отследить на каком этапе он зависает?

    Может не заполнены каике то служебные таблицы модуля?

    И возможен ли такой вариант работы - только выгрузка заказов?

    Здравствуйте, такой вариант работы не тестировался, но я сейчас просматриваю код модуля обработки товаров в заказе в функции queryOrders().

    Там если ранее товар не был загружен на сайт, то таблица product_to_1c будет пустая и функция getGuidByProductId() вернет пустую строку.

    Товары в итоге выгрузятся в 1С.

    Если у Вас ошибки при вызове функции получения заказов queryOrders(), значит надо смотреть еще лог ошибок сервера error.log, в котором фиксируются фатальные ошибки при выполнении php кода или SQL запроса. При ошибках в SQL запросе в логе opencart последняя запись будет строка запроса и далее завершение обмена, а в логе веб сервера будет подробно расписано в каком файле, стек вызова функций, номер строки и описание ошибки. 

    Если лог веб сервера Вы не нашли обратитесь в поддержку Вашего хостинга.

    Лучше всего включите лог в режиме отладка+запросы (в настройках модуля обмена в админке), обнулите лог через FTP в папке /system/storage/logs, и запустите обмен, сохраните лог и покажите последние строчки

  10. 15.02.2022 в 18:03, nash сказал:

    чтобы при обмене с 1с, например, при добавлении нового товара отключалась возможность "Вычитать со склада"

    Здравствуйте, в опциях раздел "Товары -> Характеристики" есть переключатель "Вычитать со склада" но работает он только для характеристик.

    Чтобы это заработало необходимо добавить код в функцию setProduct():

     

    2022-02-27_11-56-59.png.cada0ff20ad02a22bd5011777cb0f8ab.png

     

    $data['subtract'] = $this->config->get('exchange1c_product_options_subtract');

     

    Код я не проверял, но добавил в свой модуль 1.6.4.8  который работает на моем сайте.

    И теперь при добавлении и обновлении будет меняться значение поля subtract в таблице product

    image.thumb.png.1747d089a3c0a908e204dfc9e5df5f01.png

    • +1 1
  11.  

    В 01.10.2021 в 15:30, searchingman сказал:

    Синхронизация по имени производителя не есть правильно, но т.к. производитель при обмене может быть в разных тегах в файле обмена ("Производитель", "Изготовитель" и какой-то другой), то автор отказался от GUID-а производителя из 1с.

    Доброго дня. В моей учетной системе тег "Производитель" был создан для нескольких товарных категорий, в итоге у меня тег "Производитель" но Ид у них разные, и атрибутов "Производитель" было очень много, решение в 1С найдено - использовать свойство из другой категории, но переделывать в 1С это очень накладно..

  12. В 21.09.2021 в 03:37, artmoney сказал:

    Добрый вечер, тестирую 2 версию, падают разного рода ошибки в логах 1с) понимаю бета версия, но может есть расшифровка ошибок на руках М182 например

    Спойлер

    Ошибки и описания
    checkauth()
    С010 - Модуль отключен, обмен невозможен
    С011 - Доступ запрещен с IP адреса
    С012 - Неверный пароль
    modeCheckauth()
    modeInit()
    sessionGet()
    С020 - Сессия не найдена в куке
    С021 - Сессия не найдена в базе
    C022 - Более одной активной сессии
    modeCatalogImport()
    C050 - Импортируемый файл не существует
    UploadFile()
    C030 - Невозможно создать директорию
    C031 - Ошибка записи файл в директорию
    С032 - Размеры входящего файла и сохраненного отличаются
    extractZipV3()
    C040 - файл отсутствует
    C041 - Ошибка чтения архива

    ImportCatalog() Model
    M010 - Ошибка чтения XML, неверный формат, кодировка, либо файл обрезан, либо слеплены два файла
    M020 - Данная версия CommerceML не поддерживается модулем, обратитесь к разработчику
    parseProperty() Model
    M030 - Значения нельзя записать так как property_id = 0, то есть не сохранено само свойство
    getProperty() Model
    M040 - Не найден атрибут который привязан к свойству в 1С
    parseProductProperty() Model
    M050 - Невозможно установить свойство в товаре так как по Ид его не удалось найти.
    M051 - Не найдено значение свойства по Ид
    M052 - 
    addProductAttribute() Model
    parseProductCategories() Model
    M060 - Найдена категория по Ид с нулевым category_id!
    M061 - При разборе товара не удалось найти категорию по Ид
    getManufacturer() Model
    M070 - По Ид найдено более одного производителя
    parseProductTaxes()
    M080
    M081
    M082
    parseProduct() Model
    M090 - Наименование товара отсутствует в файле! Это обязательный тег!
    M091 - Найдено более одного товара по Ид
    getProduct() Model
    moveProductImage() Model
    M100 - Изображение не удалось переместить
    getProductIdByGuid() Model
    M110 - пустой Ид передан
    M111 - несколько товаров соответствуют одному Ид
    addOffer() Model
    M120 - Пустой product_id
    addFeature() Model
    M130 - Не указано наименование характеристики
    M131 - Не указан product_id
    getOffer() Model
    M140 - Пустое значение product_id
    M141 - Найдено более одного предложения по параметрам условию запроса
    getFeature() Model
    M150 - Пустые feature_id либо feature_guid были переданы
    M151 - Найдено более одной характеристики по параметрам
    getPriceType() Model
    M160 - Пустое значение Ид передано
    getCurrency()
    M170 - Не сопоставлена валюта по коду
    getUnit() model
    M180 - Пустое значение КодЕдиницы
    M181 - Не найдено ни одной единицы по коду
    M182 - Получено более одной единицы по коду
    M182 - Получено более одной единицы по коду
    getPriceTypeAll() Model
    M190 - Не указана валюта для типа цены
    setQuantity()
    M200 - Не найдено загруженных в базу складов (мест хранений)
    setPrice() Model
    M210 - Дублирование основной цены
    parseOffers_v3() Model
    M220 - Не найден товар по Ид при загрузке предложения
    parsePCategory() Model
    M230 - Не найдено свойство по Ид
    updateCategory() Model
    M240 - Неверные данные для записи в таблицу category_description
    syncProduct() Model
    M250 - Пустое поле АРТИКУЛ (SKU)
    M251 - Пустое поле МОДЕЛЬ (MODEL)
    M252 - Пустое поле НАИМЕНОВАНИЕ (NAME)
    M253 - Пустое поле ШТРИХКОД (EAN)
    M251 - Пустое поле КОД (CODE)
    addProduct() Model
    M260 - При добавлении товара в таблицу product произошла ошибка product_id не получен!
    getProductByGUID() Model
    M270 - Найдено более одной связи товара загруженного из 1с по Ид
    createDirectories() Model
    M280 - Каталог не существует
    M281 - Ошибка создания каталога
    getPropertyInfoByGuid() Model
    M290 - По Ид получено более одного свойства
    M291 - Получено названия атрибутов не равное количеству языков в системе
    M292 - Есть расхождения наименования значения свойства и производителя на основном языке
    M293 - Не найден производитель в базе
    addCategory()
    M300 - 
    getCategory()
    M310 - 
    compareArraysData()
    M320
    UpdateCatalog()
    M330 - более одной базовой цены

    querySetFields() Model
    M500 - В таблице нет полей, пустая таблица
    M501 - Значение поля является массив вместо строки!
    parseDocumentProducts() Model
    M510 - 
    M511 -
    M512 - 
    M513 - 

     

  13. в 8 строке такая строчка:

    $data['name'] = $data['manufacturer_description'][$front_language_id ]['name'];

     

    В 13.09.2021 в 23:11, Art8 сказал:

    Uninitialized string offset: 1

    а эта ошибка гласит что в массиве ошибка, а именно $data[0][1][2]... то есть offset 1 означает что массив $data['manufacturer_description'] не содержит элемент $front_language_id, либо $data['manufacturer_description'] не является массивом.

    А вообще эта строчка добавлена модификатором, чтобы просто исправить нужно найти модификатор который правит этот файл и закомментарить ее.

    Дальше конечно могут посыпаться еще ошибки другие, так как переменная $data['name'] будет пустой, и производитель не сможет быть создан

  14. Здравствуйте, мысль конечно интересная, только при импорте файлы хранятся, например, в папке /image/import_files/XX/9c13c0aef8ce66b12b10c973292cec6c.bmp

    Как вариант, название картинок можно брать с описания файла при импорте и складывать их в папку /image/catalog/....

    Я подумаю на следующей неделе..

    • +1 1
  15. 7 часов назад, Ivanzo сказал:

    Пропущенные товары по ИД имеются в обоих файлах в offers.xml и import.xml по идее должны заливаться. Не понятно как количество выгружаемых товаров может так влиять на загрузку. Файлы весят не много. Обработка занимает не долгое время. Ресурса хостинга хватает. В чем может быть вопрос не понятно.

     

    Значит по каким-то причинам не добавился товар при загрузке файла import.xml, необходимо включить лог и загрузить файл или сделать обмен с 1С, не забудьте включить лог в режим отладки. Перед началом обмена файл журнала лучше удалить, при обмене создается новый и в нем будут только записи последнего обмена.

    В логе поискать по строку с Ид товара который не загружается в предложениях и посмотреть что не так.

    Если в логе не было ошибок, скиньте кусок лога загрузки товара из import и offers я посмотрю

  16. В 30.08.2021 в 17:11, maksimist сказал:

    не выгружает, режим работы "загрузка данных".

    http://opencart2302rs.tesla-chita.ru/

    в админку demo/demo

     

    У меня все загрузилось ZIP формат

     

    У тебя в логах ошибка чтения файла XML... добавлю проверку на существование, а то непонятно либо файл косячный либо его нет...

  17. 17 часов назад, maksimist сказал:

    С zip-ом, уже и импорт и оферс есть в аплоаде

    exchange1c_catalog_20210830 55 \u043a\u0411 · 0 downloads

    При загрузке свойств возникли ошибки, на SQL запросе:
    "UPDATE oc_attribute_group SET attribute_group_id = 0 WHERE atttribute_group_id = 7"

    ошибка в синтаксисе atttribute_group_id с тремя ttt, и вообще ошибка в запросе, должно быть

    "UPDATE oc_attribute_group SET sort_order = 0 WHERE attribute_group_id = 7"

    Ошибка в модели строка 1859, функция setAttributeGroup() (exchange1c v2.0.3b), вот исправленный код

            	if ($sort_order_old != $sort_order) {
    				$this->query("UPDATE " . DB_PREFIX . "attribute_group SET sort_order = " . (int)$sort_order . "
    					WHERE atttribute_group_id = " . (int)$attribute_group_id
    				);
            	}

     

  18. Еще добавил записи в лог, давайте еще раз обновите файлы в контроллере и модели

    oc2.3-exchange1c_2.0.3b.ocmod.zip

    Логи должны содержать информацию о распакованных файлов

    Проверьте права на директорию /upload/exchange1c

  19. 1 час назад, maksimist сказал:

    Нет файла import.xml, есть только offers.xml и zip-ы с картинками. Если выгружать на диск, то с файлами выгрузки все ок. 

    замените 2 файла exchange1c.php в контроллере и модели соответственно

    еще раз сделайте обмен и покажите отчет

    oc2.3-exchange1c_2.0.3b.ocmod.zip

  20. В 30.08.2021 в 17:11, maksimist сказал:

    не выгружает, режим работы "загрузка данных".

    exchange1c_catalog_20210830 8 \u043a\u0411 · 0 downloads

    Обнаружил что сессия не закрылась при ошибке M010 - исправил

    Проверьте XML файл находился в папке по указанному пути "/home/holidayc/velomax/system/storage/upload/exchange1c/import.xml" ?

    После ошибки файлы не удаляются в бета версии, оставлено для отладки

  21. Загрузил новую версию 2.0.1 с исправлениями, сегодня то что успел сделал... 

    Еще исправлены ошибки 2.0.2b - буква b означает бета версия, пока только тестируем...

    Я оперативно буду реагировать на ошибки, желательно тестировать разработчиками сайтов... 


×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.