Solution Aleksandr Posted September 24, 2023 at 10:42 PM Solution Share Posted September 24, 2023 at 10:42 PM Обмен данными (цена, остатки, номенклатура) 1С и Opencart (без опций и характеристик) Добавил Aleksandr Добавлено 25.09.2023 Категория Обмен данными Просмотр файла Пролог: Изначально разрабатывается под свои нужды собственными силами. Поэтому некоторые алгоритмы построены, возможно, нестандартным способом. На настоящий момент разработка продолжается, функциональность увеличивается. Цель - к достижению наиболее полной функциональности (включая выгрузку заказов, учет с характеристиками и т.д.). Установка:Модуль прост в установке, как внешняя обработка 1С. Запуск либо напрямую файла из пользовательского режима, либо добавлением внешней обработки в базу 1С. Бо'льшая часть действий выполняется на стороне Клиента 1С (поддержка Тонкого клиента). Подойдет небольшим интернет-магазинам с небольшим количеством номенклатур 1000-2000 (возможно и более, зависит от производительности ПК пользователя). Практически все настройки, которые вносятся в Обработку при работе (настройки подключения, уведомлений, шаблоны и т.п.) сохраняются на уровне Пользователя. При открытии у разных Пользователей, настройки необходимо указывать у каждого. На стороне Opencart: никаких файлов устанавливать не надо, все осуществляется через Внешнюю обработку в 1С (редактирование таблиц Opencart непосредственно из 1С).Требования: Разрабатывался под 1С: Розница (добавлено для: Бухгалтерия, УНФ) 1С 8.3 ОС на стороне клиента "Тонкий клиент" - Windows. (ОС сервера не имеет значение, связь с БД сайта производится с клиента). Драйвер ODBC для обмена с сайтом (обычно уже входит в Windows, при отсутствии, установить по ссылке указана в обработке - вкладка "Справка"). Проверялось на v 8.0. Opencart 2.x, 3.x (впрочем, вероятно и других версиях с одноименными таблицами и столбцами БД mysql) Активное внешнее подключение к БД MySQL сайта. (Также Пользователю MySQL должны быть предоставлены права внешнего подключения, по внешнему IP, не localhost). Опция "ДополнительныхРеквизитовИСведений" должна быть активна в настройках Администрирования базы 1С, чтобы можно было редактировать вручную в карточке номенклатуры. (Записи будут проводиться независимо от активации опции). Ведение учета номенклатур БЕЗ отдельных характеристик (типо цвет, размер и т.п., которые влияют на установку цен). На данном этапе разработки. Пс. Разработка ведется под свои нужды, поэтому вопрос совместимости будет обновляться по мере проверки и доработки. + Не гарантируется 100% работоспособность всех функций. Разработка еще продолжается, не все сценарии возможных ошибок отработаны. В первую очередь ведется наращивание функционала. Принимаются предложения по доработкам, необходимому функционалу. ВЕРСИЯ 1.2.1 для Розница (последняя версия 1.2.1.1 от 14.10.2023)Пока только для Розницы:Выгрузка заказов с сайта в 1С.1. Период отбора- в параметрах выгрузки заказов с сайта, указываете необходимый период, за который нужно получить заказы.2. Параметры создания заказов в 1С - Желаемая дата продажи (при отсутствии выбора прибавляет 2 дня к дате заказа);- Продавец (возможность заранее проставить Продавца в заказе);- Покупатель (по умолчанию при открытии формы проставляет Покупателя установленного для розничной продажи из настроек конфигурации, можно указать другого);- Номенклатура доставки (если в заказе присутствует доставка, необходимо указать номенклатуру, чтобы совпала итоговая сумма. Если не указать, Заказ перейдет в статус Не согласован).3. Для создания документа Заказ покупателя некоторые поля реквизитов обязательны к заполнению- Данные по организации, складу ИМ, Магазину ИМ выведены в отдельную настройку вкладки "Настройки" обработки. (без заполнения выгружаться не будет). ВЕРСИЯ 1.2 (последняя версия 1.2.0.3 от 17.09.2023)Основной функционал еще в разработке, но в этой версии более наглядно сопоставление. + добавлено "Добавление номенклатур в 1С"Действие модуля разбито на несколько (5) шагов.1. Получение данных из 1С: Выгружается вся номенклатура с положительным остатком. (Без учета резервов и складов и т.п.). Выгрузка цены осуществляется по "Виду Цены". Получение установленного ранее кода сопоставления с сайтом (ID product из БД Opencart) Все выгруженные данные сводятся в таблицу (Выгрузка из 1С). Данные на сайт выгружаются из этой же таблицы. 2. Получение данных с сайта Выгружается вся номенклатура с сайта (независимо от остатков) Получение Кодов для сопоставления номенклатур сайта и 1С (собственно ID product). Получение остатков и цен товаров (без учета Опций) Все выгруженные данные сводятся в таблицу (Выгрузка с сайта). 3. Сопоставление товаров по Наименованию (для автоматического сопоставления кодов синхронизации).Производится сопоставление по точному совпадению наименований товаров в 1С и на сайте по выгруженным таблицам.Для сравнения 1С с сайтом команда "Сравнить с сайтом" на вкладке "Выгрузка из 1С". Для сравнения сайта с 1С команда "Сравнить с 1С" на вкладке "Выгрузка с сайта".Т.к. для продвижения сайта иногда приходится указывать специфические наименования товаров, которые не очень удобны для учета.На этом шаге также можно вносить коды из таблицы выгрузки с сайта в таблицу выгрузки из 1С вручную. Т.е. если наименования отличаются, можно указать вручную, какой товар с сайта является товаром в 1С просто заполнив соответствующее значение Кода в таблице 1С. В результате автоматического сравнения 1С с сайтом данные сводятся в таблицу "Отсутствуют на сайте" В результате автоматического сравнения Сайта с 1С данные сводятся в таблицу "Отсутствуют в 1С" 4.1 Загрузка кодов сопоставления в 1С. ВАЖНО! Все действия до этого шага производились с виртуальными таблицами. После сопоставления товаров необходимо сохранить эти данные в 1С. Команда "Сохранить сравнение" на вкладке "Выгрузка из 1С". При первом запуске команды обработка создает новое свойство для Дополнительных Сведений номенклатуры, туда будет помещаться Код сопоставления. Все указанные Коды сопоставления в таблице выгрузки из 1С записываются в Базу 1С к соответствующим Номенклатурам. Пс. Если Вы на этом этапе Вы произвели сопоставление вручную, рекомендуется перед созданием новых номенклатур через обработку, произвести еще раз выгрузки из 1С и сайта для получения актуальных данных и произвести прогон сопоставления еще раз. Это позволит исключить случайное создание лишних одинаковых номенклатур. 4.2 Добавление новых номенклатур на сайт и в 1С. НА САЙТ: "Отсутствуют на сайте" -Добавление номенклатур производится соответствующей командой "Добавить номенклатуру на сайт".-Добавляется номенклатура только обозначенная галочкой выбора.-Для добавления на этой же вкладке имеются настройки Шаблона для мета-тегов (Title, Description, +Полное описание товара). В тексте можно указать "%1" для подстановки наименования товар. Для описания товара допускается использовать форматирование html кодом.-SEO URL. На основе Наименования номенклатуры генерируется ЧПУ ссылка. (При необходимости можно подправить в соответствующей колонке; можно указывать на русском языке, произойдет транслитерация). -При отсутствии заполнения шаблона, в Title и Description проставится Наименование.ПС. Если номенклатуры одинаковые и отличаются только, например, указанием цвета в наименовании, можно отдельно выбрать их галочками и добавить на сайт с одинаковым шаблоном. В БД 1С: "Отсутствуют в 1С" -Добавление номенклатур производится соответствующей командой "Добавить номенклатуру в 1С".-Добавляется также только номенклатура обозначенная галочкой выбора.-Для добавления Номенклатур необходимо заполнить "Параметры создания номенклатуры в 1С". Все параметры кроме Группы, сохраняются в пользовательских настройках. Если в 1С нет групп, ее необходимо создать (в корень поместить не получится).ПС. Это сделано, чтобы избежать ошибок. Например, всю новую номенклатуру создавать в отдельную группу и оттуда уже переносить в ваши группы. Как и для сайта, удобно выбрать галочками несколько Номенклатур с одинаковыми параметрами и добавлять партиями.ВАЖНО! При обработке недостающих товаров в 1С, необходимо помнить, что сравнение производилось по Номенклатуре с остатками > 0! Поэтому, прежде чем добавлять необходимо проверить эту номенклатуру. И именно поэтому предлагается её заводить сначала в отдельную группу.5. Выгрузка цен и остатков на сайт Для возможности выгрузки обязательно к получению данных только из 1С. Команда "1.1Получить данные (1С)". Перед выгрузкой все остатки товаров на сайте обнуляются. Все установленные цены и остатки номенклатур из таблицы "Выгрузка из 1С" вносятся в БД сайта. Вносимые изменения цены вручную в таблицу выгрузки из 1С до запуска этой команды, также отправятся в БД сайта. Поэтому, если их необходимо внести и в БД 1С, то нужно произвести установку цен номенклатуры соответствующих позиций самостоятельно. Бухгалтерия 3Добавление номенклатуры в 1С. Добавление без указания Ставки НДС в Справочнике Номенклатуры.ВЕРСИЯ 1.0Аналогична версии 1.2 с минимальным базовым функционалом. 1. Получение данных из 1С.2. Получение данных с сайта.3. Сопоставление товаров по Наименованию (для автоматического сопоставления кодов синхронизации).4. Загрузка кодов сопоставления в 1С. (Новая номенклатура не добавляется и не сводится в отдельные таблицы)5. Выгрузка цен и остатков на сайтУсловия распространения:На один домен сайта одна лицензия. Независимо от количества сайтов обслуживаемых на одном клиенте/Базе 1С. Предоставляется на версии 1.0 и 1.2.*.*Цена:Начальная стоимость по минимальной цене для определения спроса и для расширения функционала. С увеличением функционала, увеличение стоимости. Приобретая модуль, Вы вносите свой вклад в развитие проекта =)Важно! Во избежания возможных негативных ситуаций, перед покупкой изучите указанные требования и функционал, задайте сопутствующие вопросы.Рекомендации по интеграции. Сперва произвести все действия на тестовых базах (есть сервисы предоставляющие бесплатные БД MySQL с внешним доступом для таких целей, могу посоветовать в ЛС). Перед использованием произвести резервную копию БД Opencart и 1С. 1 Quote Link to comment Share on other sites More sharing options...
Dmivik Posted September 28, 2023 at 02:05 PM Share Posted September 28, 2023 at 02:05 PM Где можно качнуть данную версию 1C ?, чтобы можно было потом купить и потестить! 0 Quote Link to comment Share on other sites More sharing options...
Aleksandr Posted September 28, 2023 at 03:06 PM Author Share Posted September 28, 2023 at 03:06 PM Не очень понятно про версию. т.к. Конфигурация 1С подбирается и настраивается в зависимости от вида бизнеса и задач, которые должны выполняться. И обычно сразу через франчайзи, там подскажут какая нужна и т.п. Если просто посмотреть, саму 1С:Предприятие можно скачать с 1C.ru, там же поискать учебные версии конфигураций, можно даже с 8.3.23 бесплатно зарегистрироваться в качестве разработчика и использовать лицензию для тестов и разработки. Ну и собственно, в интернете можно поискать и то и другое. 0 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.