Скрипт загрузки данных из файла в базу магазина. Введение. В прошлой статье 1. C. В этой статье будет рассмотрена загрузка данных из этого табличного файла напрямую в базу данных магазина. В начало. Создание скрипта. Для написания программы в 1.
С использовался внутренний 1. С- инструмент – Конфигуратор.
Для того, чтобы написать скрипт для сайта на языке программирования PHP понадобится любой текстовый редактор, подойдет даже обычный блокнот. Но все же желательно пользоваться специализированным под программирование редактором, например, Net. Beans – он бесплатный, и его можно скачать на сайте производителя. Чем лучше специализированная программа обычного редактора? Специализированные программы подсвечивают разными цветами операторы, переменные, текст и т.
В этих программах есть подсказки, проверки написания и исправление ошибок, а также много различных нужностей. Создадим файл zagruzka.
Между этими тегами и будет написана программа. Они обозначают начало и конец программного кода на php. В начало. Константы. В прошлой статье был описан процесс выгрузки трех файлов в папку obmen на FTP магазина. В начале программы надо занести в переменные эти файлы: $file = .
Нужно проверить его наличие: if (file. Поэтому открывается для чтения табличный файл, эта манипуляция производится в середине фигурных скобок оператора if. Затем в цикле с предусловием WHILE в одномерный массив $data считывается построчно CSV- файл с помощью функции fgetcsv, где в элементы этого массива заносится содержимое ячеек строки таблицы.
После этого данные этого массива переписываются в двумерный массив $arr. И так продолжается, пока не закончится файл, при этом наращивается переменная $c, которая считает количество строк в файле.
После того, как все данные из файла перенеслись в массив, переменной $flag передается количество строк таблицы и табличный файл, с которым работали, закрывается. После этого удаляются все файлы из папки obmen, чтобы в следующий раз при запуске скрипта работать с новыми данными или не работать, если данные не пришли. Заранее переменной $c присваивается значение ноль в начале программы.
Код программы с описанными действиями приведен в листинге 1. Перенос данных из табличного файла в двумерный массивif (file.
Во второй статье рассматривается программа выгрузки данных из 1С в CSV-файл и отправка файла на FTP магазина. Универсальная обработка 'Выгрузка данных в Интернет-магазин' и Универсальная обработка 'Выгрузка справочной информации в Интернет-магазин' для программ 1С:Предприятие 7.7 предназначены для формирования файла в формате CSV по шаблону из табличного файла. Универсальная обработка 'Выгрузка данных в Интернет-магазин' для программ 1С:Предприятие 7.7 предназначена для формирования файла в формате CSV по шаблону. Очередная универсальная выгрузка номенклатуры и остатков из 1С (7.7) в CSV файл. Выгружает включаемую в прайс номенклатуру. Работает в конфигурациях Торговля и склад, Комплексная. Для корректной выгрузки из 1с Вам необходимо использовать специальные файлы : 1С 7.7 (rar. 10 кб) (внешний отчет для выгрузки ассортимента); 1С.
Теперь нужно подключится к базе данных, указывая название базы, адрес базы, логин и пароль к базе. Заодно после подключения нужно указать, что работаем в кодировке utf- 8 (Листинг 2). Листинг 2. Подключение к базе данных магазина$database = . Листинг 3). Листинг 3. Перенос данных массива в переменные$sproduct. А именно: сначала надо проверить есть ли такой производитель этого товара, для этого проверяется, есть ли в таблице производителей manufacturer у такого производителя код. Если кода нет, то такой производитель создается в этой таблице и выясняется его код.
А если такой производитель есть, то код производителя выясняется сразу. Затем этот код передается переменной $manufacturer. Работа с таблицей производителей$sql=.
Предполагается, что категории товара если и будут создаваться, то одновременно и в 1. С, и в магазине, поэтому наличие кода не проверяется, а нужно сразу его получить: $sql=. Что это за данные можно понять по переменным, которые заносятся в поля этой таблицы, просмотреть код можно в листинге 5. Рассмотрим поподробнее какие данные заносятся в поля: date. Запись данных товара в таблицу product.
Достаточно часто возникает необходимость выгрузить товары из 1С 7.7 в интернет магазин. Но нам мало их просто выгрузить, нужно поддерживать прайс в актуальном состоянии. 16 Переходим к третьему разделу - Экспорт. Предусмотрено для выгрузки 2 варианта файла csv. Решение: Выгрузка данных из 1С (7.7) в Интернет-магазин через файл CSV. Сформировать файл выгрузки. Обработка позволяет выбирать выгружаемую информацию из документов или справочников. Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 » Пользователю. Нужно выгружать номенклатуру в файл excel или csv (нужно для .
Для этого заранее необходимо создать еще три группы пользователей в настройках сайта: Мелкий опт, Опт и Партнер, помимо группы по- умолчанию default, к которой относятся пользователи, видящие розничную цену. И естественно id этих групп будут 2, 3 и 4. Прибавим к системному времени 3 года и присвоим это время переменной в начале программы: $next. Заполнение различных категорий цен товара$pr. Теперь рассмотрим вариант, когда товар такой есть (имеется товар с таким кодом в базе интернет- магазина).
Во второй статье рассматривается программа выгрузки данных из 1С в CSV - файл и отправка файла на FTP магазина.
В этом случае нужно просто переписать все данные товара в таблицах, это можно увидеть в листинге 7. Листинг 7. Перезапись данных существующего в базе товараelse. Этого достаточно, чтобы в ручном режиме загрузить данные из 1. С в интернет- магазин. В 1. С надо запустить программу vigryzka. А для загрузки данных в интернет- магазин следует поместить скрипт zagryzka. В следующей статье рассмотрим, как настроить автоматизацию загрузки и выгрузки данных, а также некоторые подводные камни, об которые можете споткнуться.
Видео: Решение: Выгрузка данных в Интернет-магазин из 1С (7.7) через CSV-файл. Демонстрация процесса активации программного обеспечения: .
Написание программы выгрузки данных в 1. С 7. 7. Введение.
В первой статье была рассмотрена проблема создания связки между 1. С и интернет- магазином, и было решено написать эту связку своими силами. Напишем выгрузку товара и его параметров из 1. С в CSV- файл и отправим его в папку, где расположен интернет- магазин. В начало. Создание обработки. Вначале создается пустой отчет, в котором будет писаться обработка. Запускается Конфигуратор, и в меню Конструкторы выбирается Новый Отчет.
В появившейся форме отмечается Внешний отчет, и в поле Имя файла сохраняется обработка как vigruzka. Ext. Forms (в этой папке обычно сохраняют все внешние обработки), которая находится в каталоге базы 1. С. После этого два раза нажимается кнопка Далее и затем – кнопка Готово. Появится форма с двумя кнопками: Сформировать и Закрыть. Внизу конфигуратора выбирается закладка Модуль, в которой находится поле дальнейшей деятельности в виде процедуры обработки нажатия кнопки Сформировать: Процедура Сформировать().
Конец. Процедуры. В середине этой процедуры будет писаться код выгрузки. В статье описывается создание выгрузки из живой базы 1. С в рабочий магазин, поэтому будут использованы скрины с этой базы. В начало. Определение данных для отправки.
Нужно выяснить, какие данные надо отправить в магазин, чтобы сформировать полноценный товар. Технические характеристики сюда не включаются, так как это лишнее наполнение ненужной для 1. С информацией и нерациональное увеличение передаваемой информации – эти данные можно вносить напрямую в магазин. Итак, нужно рассмотреть карточку товара и выбрать из нее то, что нужно отобразить в магазине. На рисунке 1 показано как карточка выглядит в Конфигураторе – из нее будут браться идентификаторы данных, которые будут оперироваться при написании обработки.
Рис. 1. Карточка товара в Конфигураторе. На рисунке 2 приведен вид карточки товара в рабочей базе.
Рис. 2. Карточка товара в рабочей базе 1. СИтак, посмотрим по второму рисунку, какие данные будут отправляться, заодно по первому рисунку будет видно, как данные определяются в 1.
С: Код товара – уникальный цифровой идентификатор, название товара и другие данные товара могут менятся, идентификатор не меняется. Теперь приступим к написанию тела программы. Формирование табличного файла. Создается текстовый объект Т, в который будет записываться таблица, в ячейках которой будут находиться данные товара, которые описаны выше: Т=Создать. Объект (. В данном случае в справочнике находятся не только товары, но и группы товаров – папки, по которым рассортированы товары. Как раз папки товаров и будут отметаться с помощью условного оператора: Если Спр. ТМЦ. Это. Группа ()=1 Тогда.
Конец. Если; Также будет выбираться товар, в котором проставлена интернет- категория. Как было описано в предыдущей статье, справочник товаров со временем разбухает и накапливается куча наименований неиспользуемого товара: снятый с производства или больше не закупаемый.
Поэтому интернет- категорию надо проставить в товаре, который есть в наличии и проставлять в будущем в новом товаре, чтобы не тянуть за собой кучу ненужного товара в интернет- магазин: Если Пустое. Значение(Спр. ТМЦ. Интернет. В интернет- магазине актуальность в базе прописывается кодом «7», а неактуальность кодом «5». Поэтому сразу определяется актуальность товара и ей присваивается нужный код: Если Спр. ТМЦ. Актуален=Да Тогда.
Актуальность = 7. Актуальность = 5. Конец. Если; Артикул товара прогоняется через функцию Сокрлп(), чтобы отсечь ненужные пробелы: Артикул = Сокрлп(Спр. ТМЦ. Артикул); Вот теперь, когда совершены вышеописанные манипуляции, обработанные данные вносятся в строку с разделителем ^: Т.
Добавить. Строку(Спр. ТМЦ. Код+. Далее переменной Файл присваивается имя файла: Затем полученный текст записывается в файл и сообщается о том что файл создан: Т.
Записать (Файл). Сообщить (. Но прежде чем приступить к написанию кода отправки данных в интернет- магазин, надо определить константы, которыми программа будет оперировать, чтобы при переносе сайта можно было их менять только в одном месте. В начало. Определение констант. Для дальнейшей работы в начале процедуры записываются константы, с которыми будем работать при отправке файла. Это будет адрес интернет- магазина, а точнее FTP, куда нужно подключиться, логин и пароль к этому FTP, полный путь к домашней директории данного пользователя 1. С и путь к файлу, который будет отправляться: адрес.
Для отправки файла используется внешняя компонента V7. PLUS. DLL, которую без проблем можно скачать в интернете.
Ее надо положить в каталог базы, в данном случае в D: 1. C. Без этой компоненты следующая часть программы работать не будет. Что из себя представляет эта компонента, можно поискать в интернете.
Создается временный файл, в который будет записываться текстовый объект, в который запишутся команды для работы с файлами: Временный. Скрипт. Файл=. Подключение к FTPТ=Создать. Объект(. Листинг 2). Листинг 2. Работа с директориями. Т. Добавить. Строку(. Листинг 3). Листинг 3. Работа с файлами.
Т. Записать(путь. В этой процедуре в цикле был перебран справочник товаров и выбраны нужные товары с данными, которые потом были записаны в табличный файл CSV. Затем, благодаря внешней компоненте V7. PLUS. DLL, был создан командный скрипт- файл, с помощью которого файл отправлен на FTP магазина, при этом проведены несколько проверок, чтобы убедиться, что файл отправился. В следующей статье будет рассмотрена загрузка данных в интернет- магазин из файла, отправленного из 1.