Разработка и внедрение модуля интеграции 1с 7.7 и 'Joomla VirtueMart' для предприятия ООО 'Вазаро'

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    2,16 Мб
  • Опубликовано:
    2014-09-29
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка и внедрение модуля интеграции 1с 7.7 и 'Joomla VirtueMart' для предприятия ООО 'Вазаро'

НОУВПО ГУМАНИТАРНЫЙ УНИВЕРСИТЕТ

г. Екатеринбург

ФАКУЛЬТЕТ КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ








ДИПЛОМНЫЙ ПРОЕКТ

Разработка и внедрение модуля интеграции 1с 7.7 и "Joomla VirtueMart" для предприятия ООО "Вазаро"











Екатеринбург

Оглавление

Введение

. Анализ модуля интеграции на предприятии "Вазаро"

.1 Общая характеристика места прохождения практики

.2 Анализ электронной коммерции и интернет-магазинов в частности

.3 Сравнение CMS, их достоинства и недостатки

.4 Интеграция интернет-магазина с помощью различных систем

.5 Анализ существующего модуля интеграции на предприятии ООО "Вазаро"

. Проектирование модернизации модуля интеграции

.1 Составление необходимых задач по переработке модуля интеграции

.2 Подсчёт сроков реализации

.3 Риски модернизации модуля

. Реализация необходимых изменений в модуле интеграции "1С: Предприятие" и интернет-магазина

.1 Техническое задание

.2 Обоснование выбора программных продуктов для реализации проекта

.3 Создание базовых элементов

.4 Написание программного кода для "1С: Предприятие" и интернет-магазина

. Обоснование экономической эффективности проекта

.1 Расчет стоимости модернизации

.2 Расчет прибыли от модернизации

Заключение

модуль электронный коммерция интернет

Введение


В настоящее время каждая компания в какой-то момент доходит до того уровня, когда ей становится необходим свой сайт в Интернете. Сейчас наступило такое время, когда сайт становится не просто средством для общения, передачи новостей, фотографий, но и для послания необходимой информации. Для компании такой информацией может послужить либо сайт-визитка, либо сайт с предоставлением прайса своих услуг, либо собственный интернет-магазин.

В случае же интернет-магазинов, у компании становится на повестку другой вопрос - каким способом уже имеющуюся базу данных, находящуюся на предприятии, передавать на сайт как можно чаще, не теряя её актуальности.

Именно в таких вопросах используется, в основном, интеграция. Каждая такая интеграция позволяет производить быструю и надёжную передачу информации из одной программной среды в другую.

В данной дипломной работе внимание уделено именно такой интеграции, осуществляемой с помощью стороннего модуля базы "1С: Предприятие" и интернет-магазина. Данный модуль уже функционирует на сайте, но обладает рядом негативно сказывающихся на продвижении сайта факторов.

Объектом дипломного проектирования стал модуль интеграции между "1С: Прдеприятие 7.7" и интернет-магазином "Maxiposuda.ru" предприятия ООО "Вазаро".

Цель дипломного проекта:

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

Задачи дипломного проекта:

·        Изучить интерактивный бизнес, его свойства и разновидности;

·        Изучить и сравнить виды CMS и способов интеграции CMS и "1С: Предприятие";

·        Проанализировать работу предприятия в целом и предприятия с модулем интеграции, выявив при этом недостатки модуля, риски его модернизации и возможные улучшения;

·        Составить вместе с заказчиком техническое задание, на основании которого модернизировать модуль;

·        Проанализировать произведённые улучшения модуля и выявить их экономическую эффективность по сравнению со старым вариантом работы модуля.

1. Анализ модуля интеграции на предприятии "Вазаро"

 

.1 Общая характеристика места прохождения практики


Компания ООО "Вазаро" была основана в 2010 году в г. Екатеринбург Свердловской области. На протяжении четырёх лет компания занимается оптовой продажей посуды, поставляемой ей от именитых брендов напрямую и через других поставщиков: "Мультидом", "Mayer & Boch", "Квестор" и многие др.

Несмотря на небольшой срок работы предприятия, клиенты располагаются в самых различных городах не только Свердловской области, но и других районах РФ: Екатеринбург, Нижний Тагил, Сургут, Нягань, Серов, Томск, Хабаровск и др.

Предприятие имеет простую организационную структуру и она представлена ниже (Рисунок 1).

Рисунок 1. Организационная структура ООО "Вазаро".

В 2012 году компанией, располагая стабильным доходом в сфере оптовой продажи посуды, было решено перейти на рынок электронной коммерции. Это бы позволило увеличить не только доход компании, но и сеть клиентов как розничных, покупающих продукцию через интернет-магазины, так и оптовых, для которых появилась возможность в любое время просматривать прайс-лист продукции компании. В связи с этим было решено создать интернет-магазин "Maxiposuda.ru".

 


1.2 Анализ электронной коммерции и интернет-магазинов в частности


Электронная коммерция - это сфера экономики, основанная на интерактивном бизнесе и на удовлетворении одного из главных желаний потребителя - экономии времени. Именно в таком бизнесе все операции по выбору товара, способа оплаты и способа доставки производятся непосредственно через компьютер практически без участия человека.

Наряду с экономией времени, важным аспектом, повлиявшим на распространение электронной коммерции, является также размытие границ нахождения товара. Сегодня товар, представляющий повышенный интерес для потребителя, уже перестал был локальным товаром. В нынешнее время производство и, в особенности, распространение товаров уже не позиционируется у потребителя как нечто местное, продаваемое и покупаемое лишь в пределах одной территории, а имеет свойство производиться, продаваться и распространяться по всему миру.

И именно благодаря такому важному для предпринимателей фактору появился интерактивный бизнес.

Интерактивный бизнес характерен только для развитых стран, куда входит и РФ. Интерактивный бизнес в общем понимании - это совместные действия между компьютерной сетью и человеком (бизнесменом, программистом, менеджером), которые ведут в итоге к получении прибыли посредством проведения различных коммерческих операций. В экономическом смысле данный труд представлен двумя средствами: орудием труда - это средства ЭВМ и связи (компьютеры, телевизоры, мобильные телефоны, сеть Интернет и др.) и предметом труда - сам информационный продукт (договор, ценная бумага и др.).

В сфере бизнеса в целом в общем понимании обычно выделяют 2 вида торговли:

·        Первый вид торговли базируется на прямом личном контакте покупателя с продавцом или покупателя с продавцом и кассиром;

·        Второй вид, в наибольшей степени удовлетворяющий понятию интерактивного бизнеса, несёт в себе почти полное отсутствие прямого контакта и наличие различного рода посредников: сети Интернет, телефонные компании и др.

К видам коммерческих операций, осуществляемых во втором виде торговли, которая в большей мере означает интерактивный бизнес, можно отнести:

·        Торговлю в форме мобильной коммерции (через мобильный телефон: "AppStore", "Google Play" и др.);

·        Торговлю в форме электронной коммерции (через сеть Интернет: "Ozon","Amazon" и др.);

·        Страхование ("АльфаСтрахование", "Ренессанс страхование" и др.);

·        Банковские операции ("Сбербанк", "Альфа Банк" и др.);

·        Биржевые операции ("Forex");

·        Посылочная торговля, которая является важным посредником между электронными торговцами и клиентом;

·        Торговые аппараты, осуществляющие постоянное, практически бесперебойное обслуживание покупателей в сфере продажи различного рода продуктов: от продуктов питания до контактных линз;

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

·        И др.

На сегодняшний день наиболее активно развивающейся формой интерактивного бизнеса является именно электронная коммерция. Наиболее явными и важными её преимуществами являются:

·        Различные способы оплаты: наличными курьеру, кредитные карты, через платежные системы (WebMoney, Яндекс.Деньги и др.), переводы через банки и др.;

·        Различные способы доставки: самовывоз, курьерская доставка, доставка через специальные почтовые службы;

·        В любой подходящий момент заказ можно изменить или вовсе отменить;

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

И самым общеизвестном и распространенным видом электронной коммерции является виртуальный магазин (или виртуальное предприятие).

Виртуальный магазин (интернет-магазин) - это виртуальная торговая точка, дающая возможность любому пользователю сети дистанционно заказывать тот или иной продукт через Интернет.

На сегодняшний день можно выделить 3 вида интернет-магазинов:

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

·        Интернет-магазины, работающие по правилам, принятым в розничной торговле. Подобные магазины создаются, в основном, путём ответвления основного бизнеса реально существующей компании, что даёт ей новые пути для торговли и получения прибыли.

·        Интернет-магазины, в большей мере ориентированные на потребителя. Такие порталы пытаются удержать покупателя за счёт предоставления качественного сервиса, как то:

o   доступная организация каталога;

o   наличие на сайте интуитивно понятных для покупателя инструкций;

o   соответствие заказа и доставленного продукта;

o   соблюдение оговоренных сроков по доставке;

o   и др.

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

И, не смотря на различия интернет-магазинов, все они проходят через одни и те же этапы планирования, создания, внедрения, наполнения и продвижения.

) Этап разработки. Один из самых главных элементов создания любого интернет-магазина. Именно на данном этапе необходимо спланировать заранее каждую деталь: виды, объёмы и места распространения продукции, выявить конкурентов в выбранной нише, придумать интерфейс сайта, его дизайн.

) Технический этап. На данном этапе необходимо зарегистрировать доменное имя и найти подходящий хостинг. Доменное имя - уникальное имя сайта, с помощью которого не только перейти на данный сайт, но и найти его в сети Интернет. Его выбор является крайне важным шагом, так как именно оно является "именем" сайта. Хостинг - сервис по предоставлению для виртуального магазина или любого другого сайта пространства на своём сервере для работы 24 часа в сутки. Выбор хостинга не менее важен, чем выбор доменного имени, так как у каждого хостинга есть свои плюсы и свои минусы: возможность подключения различных вспомогательных технологий (PHP, MySQL, Perl и т.д.), выбор CMS, тарифы, максимальный размер сайта и т.д.

) Выбор и установка одного из вариантов пакетов интернет-магазина. Создание любого интернет-магазина в итоге приводит к важному выбору - каким образом будет работать сайт. Вариантов тут может быть великое множество.

·        Можно сделать виртуальный магазин полностью своими силами, но для этого, однако, понадобится хорошее знание не только HTML ("язык гипертекстовой разметки" - базовый инструмент расположения объектов на странице) и CSS ("каскадные таблицы стили" - широкий функционал по оформлению созданных с помощью HTML объектов), но и PHP ("препроцессор гипертекста" - язык программирования для разработки различных веб-приложений) и MySQL (система управления базами данных);

·        Другим вариантом можно считать использование уже готового "конструктора сайтов", в котором уже находятся все функции готового интернет-магазина; в таком случае остаётся лишь заполнить интернет-магазин продукцией, выбрать нужные компоненты и шаблон;

·        И не менее распространённым вариантом считается использование CMS ("система управления содержимым") - некая компьютерная программа или информационная система, как и конструктор сайтов содержащий полный набор функций готового интерент-магазина, но и имеет более широкие варианты для развития проекта. CMS в качественном использовании может также потребовать знание различных языков вёрстки сайтов, создания скриптов и др.

) Этап подключения оплаты и доставки. Немаловажным шагом является не только выбор способов, систем оплаты и вариантов доставки, но и создание широкой сети для распространения. Любой интернет-магазин рано или поздно выходит сначала на городской рынок, после на областной, на всероссийский и в итоге даже на международный рынок, для чего и нужен данный этап.

) Наполнение продукцией и контентом.

) Продвижение в сети Интернет.

 

.3 Сравнение CMS, их достоинства и недостатки


На сегодняшний день все CMS можно разделить на две большие категории: коммерческие, требующие плату за приобретение, и некоммерческие, распространяющиеся бесплатно или условно-бесплатно. К коммерческим CMS относятся:

·        "1С-Битрикс". Всемирно известная CMS, являющаяся результатом тесного сотрудничества компании "Битрикс", которая некогда занималась созданием отдельный интернет-продуктов , и фирмы 1С, являющейся лидирующей системой на российском рынке в сфере ведения электронной бухгалтерии. Именно благодаря этому сотрудничеству 1С-Битрикс активно используется как удобный метод интеграции между базой 1С и интернет-магазином.

К достоинствам данного продукта можно отнести:

o   использование широкого спектра различных модулей и компонентов;

o   качественные документации как для обычного пользователя, так и для разработчика;

o   большой выбор различных редакций, подходящий для самых различных нужд;

o   гибкий и удобный в освоении функционал административной части интернет-магазина.

Недостатки:

o   для полноценной работы сайта может потребоваться очень хорошее знание всех тонкостей работы различных модулей и компонентов. А в некоторых случаях приходится обращаться к разработчикам;

o   низкая производительность, вызванная за счёт того самого огромного выбора различных модулей и компонентов. Это приводит к периодическим зависанием сайта, медленной работоспособности и, в конечном итоге, к потерянным клиентам;

o   цена даже за самый дешёвый тариф "Старт" невероятно завышена, что многих может оттолкнуть.

·        "UMI.CMS" - популярная система управления контентом, которая известна своим простым и удобным интерфейсом. Изначально использовался как бесплатный, так и платный продукт, но в конечном итоге компания решила перейти исключительно на коммерческую форму издания.

Достоинства:

o   удобство в настройке и использовании модулями;

o   удобство в изменении и наполнении контента. Присутствует возможность изменять страницы сайта без какого-либо знания HTML и CSS;

o   широкий выбор модулей.

Недостатки:

o   низкая производительность, связанное с той же проблемой, что и в "1С-Битрикс" - большое количество модулей на странице.

·        "NetCat" - не менее популярная коммерческая CMS во многом похожая на "1С-Битрикс". Проект постоянно поддерживается: появляется новый функционал, разрабатываются новые пути на рынке интернет-приложений (как, например, мобильные сайты) и др.

Достоинства:

o   удобная структура расположения файлов;

o   относительно недорогая стоимость продуктов по сравнению с другими платными CMS;

Недостатки:

o   сложная в понимании документация, что как для обычного пользователя, так и для разработчика может привести ко многим проблемам при создании интернет-магазина;

Некоммерческие же CMS используются, в основном, для более простых магазинов. Именно на таких системах управления содержимым строится большая часть интернет-магазинов. Это, с одной стороны, упрощает разработку в качестве поиска нужной информации, так как для более распространённых CMS написано больше полезных советов, документаций и прочего. Но, с другой стороны, такие магазины чаще всего теряют в качестве исполнения, а для разработчика некоторые просто реализованные вещи в коммерческих системах приходится разрабатывать крайне сложными путями.

К наиболее известным бесплатным CMS можно отнести:

·        "Joomla!" - одна из самых популярных и распространяемых CMS в Интернете. Данная система отличается простым, но в то же время достаточно широким спектром различных функций. Для данной CMS имеется огромное количество различных модулей, компонентов и плагинов, находящихся в бесплатном доступе по всей сети Интернет, что даёт для "Joomla!" огромный плюс в плане открытости как исходного кода (то есть, при желании и определённых навыках, можно написать свой собственный, обладающий необходимыми качествами компонент), так и настроек всего интернет-магазина.

Достоинства:

o   огромное количество различных модулей, компонентов;

o   простая в освоении и интуитивно понятная административная панель;

o   является "Open Source" проектом (разработка и модернизация происходит не в узком кругу разработчиков определённой компании, а различными людьми по всему миру), что даёт большее количество постоянных обновлений.

Недостатки:

o   отсутствие единой документации, что связано с постоянными обновлениями системы, сторонними доработками и компонентами;

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

·        "WordPress" - известная CMS, используемая, в основном, для создания блогов (пользовательский сайт с его собственными статьями, мыслями и т.д. в виде новостной ленты) в сети Интернет.

Достоинства:

o   простое управление собственным блогом;

o   минимум технических требования к хостингу, что, в свою очередь, очень ускоряет процесс работы сайта;

o   большое количество как встроенных, так и сторонних, находящихся по всему Интернету, тем для оформления.

Недостатки:

o   вновь недостаточно полная документация;

o   большое количество недоработок исходного кода, что приводит к осложнениям в разработке, возможным атакам хакеров и т.д.

·        "Drupal" - весьма похожая на "WordPress" система, создаваемая, как и "Joomla!" в виде "Open Source" проекта. Популярна данная CMS своей сложностью и, в то же самое время, многофункциональностью, что привлекает крупные компании для разработок собственных интернет-проектов.

Достоинства:

o   большое количество различных модулей, шаблонов и тем для оформления;

o   наличие всего основного пакета для создания полноценного сайта в самой простой сборке системы.

Недостатки:

o   более сложная для разработки со стороны обычного пользователя по сравнению с другими CMS;

o   низкая производительность.

Рассмотрев только некоторые отдельные системы из огромного множества, представленного на рынке, можно выявить несколько пунктов, отличающую качественную CMS:

) Каждая CMS должна содержать как можно больший набор разнообразных модулей, компонентов, шаблонов, чтобы обеспечить даже самого обычного пользователя, не разбирающегося в тонкостях разработки, всем необходимым функционалом для создания собственного интернет-магазина;

) Любой крупный проект и, в частности, такой как виртуальный магазин, подразумевает наличие больших объемов данных - продукции, новостей, акций и т.д. Это может привести и, чаще всего, приводит к различного рода "зависаниям" сайта, что может, в свою очередь, вызвать недовольство покупателя и потерю прибыли;

) Необходим удобный функционал для работы с самим интернет-магазином: создание меню, страниц, их оформления. Немаловажным шагом является способ заполнения сайта товарами и поддержание его в актуальном состоянии. Именно для таких целей существуют различные системы интеграции.

 

.4 Интеграция интернет-магазина с помощью различных систем


Интеграция данных - это процесс сравнения определённых объектов в двух различных программных средах (например, "1С: Предприятие" и интернет-магазина) с целью сопоставления их данных и свойств .

На данный момент самым ярким и, практически, единственным вариантом интеграции является связь сайта с 1С. Помимо этого есть вариант ведения всего учёта товаров в файле MS Excel или другом файле с определённым расширением (.csv, .xml и др.) и проводить над такими файлами "parsing" - автоматическое считывание файла по строкам, колонкам с выявлением всех необходимых данных, где, например, каждая строка с данными является одним товаров. Эти данные, в последствии, заносятся, как и в случае интеграции с 1С в базу данных, откуда CMS уже считывает необходимые для отображения данные.

В целом способов интеграции 1С и интернет-магазина можно выделить несколько:

) Обмен через промежуточные файлы. Такие файлы (.csv, .xml и даже .txt) можно создавать и средствами 1С, используя всё те же функции по считыванию файлов построчно. Программа "1С: Предприятие", также как и некоторые библиотеки для языка программирования PHP, имеет возможности для считывания файлов, которые формируются со стороны интернет-магазина. В таких файлах, например, может содержаться информация о заказах на сайте, остатках по товарам и другая информация, которая может присутствовать как на сайте, так и в 1С. В таком виде интеграции имеется самый главный минус: любое изменение в конфигурации 1С или на сайте потребует исправления кода в обеих программах, что, в свою очередь, приведёт к устаревшим данным из-за несвоевременной выгрузки на сайт. Такая интеграция чаще всего требует также, навыков создания скриптов по загрузке/выгрузке необходимых файлов в нужные места, где обе программные среды могут находить и корректно считывать данные (например, протокол FTP - "протокол передачи данных", предназначенный для передачи файлов по сети Интернет);

) Выгрузка в промежуточное хранилище, которое используется самим программным продуктом (например, используемая интернет-магазином MySQL-база). Для данных манипуляций, однако, уже может потребоваться использование либо сторонних библиотек со скриптами для работы с MySQL, либо передача данных с помощью прямых и непрямых запросов в базу данных (в этом, например, может поспособствовать дополнительная библиотека для "1С: Предприятие 7.7" - "V7PLUS.dll", в которой хранятся различного рода скрипты, позволяющие работать с PHP-страницами сайта);

) Использование Web-расширений 1С. Начиная с "1С: Предприятие 8", в платформах появилась возможность использовать компоненты web-расширений, которые позволяют встраивать доступ к данным 1С в существующие сайтов. Такие компоненты расширяют возможности стандартной платформы, позволяя, к примеру, организовывать доступ к базе 1С даже на тех компьютерах, где данная платформа не установлена. То есть появляются "мобильные" пользователи, работающие через сеть Интернет и изменяющие данные непосредственно через сайт.

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

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

 

.5 Анализ существующего модуля интеграции на предприятии ООО "Вазаро"


В настоящий момент на предприятии ООО "Вазаро" существует купленный сторонний модуль интеграции между "1С: Предприятие 7.7" и интернет-магазином. Он обладает рядом различного функционала, имеет достаточно большой выбор вариантов выгрузки: выгрузка товаров по производителям и категориям, выгрузка информации по товарам, загрузка заказов и др.

Таким образом, модуль включает в себя следующие основные функции, используемые на предприятии:

) Редактирование товара. У каждого товара появляется новая вкладка "Интернет-магазин" с различными настойками. Для каждого товара можно выбрать фотографию, категорию производителя, к которой он принадлежит, написать описание товара, выбрать является ли данный товар спецпредложением (благодаря этому на сайте можно устроить различные акции, приписать товару новые свойства и т.д.);

) Панель справочника "Категории интернет-магазина" - предназначена для структурирования товаров по категориям. Таким образом, можно либо создавать новые категории, которые не присутствуют в номенклатуре, либо, нажав на кнопку "Скопировать структуру Номенклатуры", создать копии всех разделов из номенклатуры. Каждый структурный элемент (то есть и родительский каталог, и дочерний) является отдельным редактируемым элементом. В каждом таком разделе можно его переименовать, подставить фотографию раздела, если на сайте это используется, и, самое главное, можно удалять, добавлять и изменять товары для структуры. Карточки товаров можно открывать непосредственно отсюда. Именно эта структура выгружается в интернет-магазин;

) Панель справочника "Производители", которая является стандартной таблицей с колонками "Код" и "Наименование". Данные элементы в последствии подставляются в товары, из чего в интернет-магазине, при выгрузке на сайт, формируются связи;

) Непосредственно сам модуль интеграции (Рисунок 2).

Рисунок 2. Первый слой модуля интеграции.

Модуль представляет собой 4 вкладки, каждая из которых отвечает за свою некую функцию:

·        Выгрузка номенклатуры. Отвечает за выборку всех товаров, находящихся в справочнике "Категории интернет-магазина". Товары можно выбрать либо все, либо выбирать каждый по отдельности, либо целыми разделами номенклатуры. Здесь же присутствует кнопка "Обновить цены и остатки", по нажатию на которую происходит переопределение всех цен на сайте исходя из изменённых в базе 1С;

·        Загрузка заказов. Здесь можно выгрузить заказы из интернет-магазина и записать их в базу 1С в качестве документов "Заявка на поставку", с которыми можно уже будет непосредственно работать как со списаниями в базе программы;

·        Настройки. Различные настройки модуля интеграции, в число которых входят, например: выбор способа соединения (с помощью специального файла на сервере - "туннеля" или с помощью прямого прописывания всех данных базы MySQL), выбор основного склада, по которому будет вестись учёт остатков, установка типов цен и т.д. Здесь же можно выбрать настройку "Выгружать изображения товара на сайт", по выбору которого отобразится четвёртая вкладка модуля;

·        НастройкиФТП. Здесь прописываются различные настройки для выгрузки изображений: реквизиты для использования FTP-сервера, настройка каталогов, где будут хранится изображения на сайте и путь к программе "InfranView" для динамического изменения размера изображения для отображения их на сайте.

На предприятии действует чёткая структура работы с модулем интеграции как со стороны "1С: Предприятие", так и со стороны самого интернет-магазина. Схематично данная структура представлена ниже (Рисунок 3).

Рисунок 3. Действующая структура работы интеграции.

По рисунку 2 видно, что из-за некоторых недоработок данного модуля часть действий по выгрузке товаров и заказов в интернет-магазин приходится делать уже непосредственно после самой выгрузки. В число этих работ входит прописывание описаний групп и товаров и их ключевых слов, проставление их порядкового номера для правильного позиционирования в списке каталога и проверка фотографий товаров, так как функционал сайта устроен таким образом, что все уменьшенные копии фотографий создаются динамически при первом просмотре пользователя.

Все эти факторы ведут к двум негативным последствиям:

) При заходе роботов "Яндекса" и "Google" во время ежедневного индексирования страниц они могут успеть считать данную незаполненную информацию, что, в свою очередь, может повлиять на позицию сайта при поиске и, соответственно, количеству покупателей за день;

) Сам покупатель, зайдя на сайт, может также увидеть информацию о товарах и каталогах в незаполненном виде. Это испортит впечатление от сайта и может повлиять на уход покупателя с сайта без каких-либо покупок.

2. Проектирование модернизации модуля интеграции

 

.1 Составление необходимых задач по переработке модуля интеграции


Существующий на данный момент модуль интеграции в компании "Вазаро" не достаточно полно исполняет необходимые от него задачи.

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

Таким образом, структура интеграции интернет-магазина и базы "1С: Предприятие" должна быть изменена следующим образом (Рисунок 3):

Рисунок 3. Изменённая структура интеграции.

По данному схематичному рисунку видно, что заполнение информации должно будет претерпеть ряд изменений:

)        Создание различных размеров фотографий для интернет-магазина должно будет происходить автоматически при выгрузке. В настоящий момент модуль уменьшает присутствующую фотографию товаров до размеров 100 на 100 пикселей, кладя её не в ту папку на сайте, что говорит о том, что данное изменение фотографии не нужно. Фотографии же необходимо изменять до размеров 100 на 100 и 250 на 250 пикселей, чтобы они подгружались уже непосредственно при первом просмотре покупателем, а не создавались при этом действии автоматически;

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

 

.2 Подсчёт сроков реализации


Благодаря данному анализу необходимых изменений был составлен план по примерным срокам реализации различных задач, которые были как проанализированы ранее, так и представлены для исполнения в виде технического задания от директора ООО "Вазаро".

)        Цены, при нажатии на кнопку "Обновить цены и остатки", должны были использовать информацию, которая указана во вкладке "Настройки".

Данная настройка вычисляет все используемые цены базы "1С: Предприятие" и даёт возможность проставить степень их использования для определённых групп пользователей. Работа данной настройки, как оказалось, использовалось некорректно, что проявлялось в использовании только одной указанной цены (не учитывая что для разных групп пользователей можно выгружать разные типы цен).

На переработку кода функции выбора цен и их выгрузки потребуется примерно 20 минут рабочего времени.

)        Описание, установленное в товарах, не выгружается в базу данных, что сильно влияет на продвижение интернет-магазина в поисковых запросах (по этой причине все ключевые слова и описания приходилось вбивать вручную).

На создание необходимых полей для ввода, их настройки и написание необходимого кода потребуется примерно 40 минут рабочего времени.

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

На создание необходимых полей для ввода, их настройки и написание необходимого кода потребуется примерно 40 минут рабочего времени.

)        В данный момент выгрузка категории товаров в базу данных осуществляется лишь на одном уровне. Это, с точки зрения продвижения сайт в сети Интернет, неэффективно. Руководителем от предприятия было решено некую дополнительную настройку для категорий с возможностью создания у них родительской категории, которая бы отображалась на сайте так же, как отображаются в данный момент товары в интернет-магазине по производителям.

На создание новых полей, новой формы для заполнения родителей и написание нового кода потребуется примерно 2 часа рабочего времени.

)        Фотографии товаров при загрузке в интернет-магазин динамически изменяли свой размер (250 на 250 пикселей для детального просмотра и 100 на 100 пикселей для списка товаров). Из-за этой динамики фотографии создавались только лишь при первом просмотре данного товара. Это приводит к проблеме: если изменённая фотография не успевала изменить свой размер, а страница уже загрузилась полностью, то покупатель видит пустое место вместо фотографии. Это портит впечатление покупателя, как от данного товара, так и от всего интернет-магазина в целом.

На переработку существующего кода по созданию уменьшенной копии изображения товара потребуется примерно 1 час рабочего времени.

Благодаря этому анализу можно составить план по времени в виде таблицы (Таблица 1):

Таблица 1. Дерево задач.

Задача

Длительность, дни

1

Подготовительный этап

3,25

1.1

Анализ существующего модуля интеграции

1

1.2

Поиск ошибок и обсуждение их с заказчиком

0,5

1.3

Написание технического задания

1,5

1.4

Правки и согласование технического задания

0,25

2

Модернизация модуля

5,5

2.1

Поиск возможных путей решения

0,5

2.2

Создание реквизитов, справочников, форм

0,5

2.3

Написание кода на стороне "1С: Предприятие"

2

2.4

Написание кода на стороне сайта

1

2.5

Сверка с техническим заданием, исправление ошибок

0,5

2.6

Тестирование, исправление ошибок

1

3

Внедрение модуля на предприятии

1,25

3.1

Показ новых возможностей заказчику

0,25

3.2

Написание инструкции по применению новых возможностей

1


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

По подсчётам рабочего времени была составлена диаграмма Ганта средствами программного продукта "MS Project 2007". Данная диаграмма представлена ниже (Рисунок 4):

Рисунок 4. Диаграмма Ганта.

 

.3 Риски модернизации модуля


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

Данных видов рисков может быть несколько:

)        Неправильная работа выгрузки групп каталогов. Из-за данного фактора может возникнуть ситуация, когда каталоги и товары подставляются не в ту группу. Если поисковый робот зайдёт в это время в данную категорию, он может не правильно проиндексировать карту сайта и, таким образом, неправильно выведет в поисковике ссылки на категории. Это может испортить впечатление от интернет-магазина в целом и испортить репутацию;

)        Неправильная подстановка описаний и ключевых слов. Данные факторы также будут негативно влиять на продвижение в сети Интернет и репутацию среди покупателей;

)        Неправильная работа переопределённого кода по выгрузке цен. Это может привести к крайне негативным последствиям, так как цены могут записаться не к тем товарам и, в итоге, у товаров будут не те цены, что вызовет путаницу. Сейчас, когда на сайте ещё отсутствует система оплаты через сеть Интернет, такая ситуация может приводить к неприятным последствиям ещё до оплаты заказа. То есть если покупатель уже оформил заказ, то ему могут позвонить и окажется, что на данные товары должны быть другие цены (выше заказанных им). Впечатление, опять-таки, испортится.

При будущей оплате через Интернет ситуация может возникнуть ещё хуже: в таких случаях уже после произведённой оплаты нужно будет либо возвращать все деньги, либо часть денег, что в любом случае вызовет недовольство и лишние хлопоты.

Всех этих факторов можно избежать, если держаться ряда условий при разработке:

·        Необходимо чётко следовать подготовленному техническому заданию и отклоняться от него лишь в самых непредвиденных ранее ситуациях;

·        Внимательно изучать исправляемый код перед выгрузкой, чтобы в реальную базу данных не попали лишние данные;

·        Тестировать как можно большее количество написанного кода различными способами: выводить в окно сообщений получаемые результаты, подставлять заведомо неверные данные и "отлавливать" ошибки, создавать большее количество условий для проверки на самые разные ошибки и т.д.;

·        Перед окончательной реализацией необходимо проверить заново весь написанный код и все созданные элементы на предмет существования ошибок.

3. Реализация необходимых изменений в модуле интеграции "1С: Предприятие" и интернет-магазина

 

.1 Техническое задание


По всем необходимым проектным разработкам было сформировано техническое задание, которое наиболее полно отражает все необходимые изменения модуля. Данное техническое задание представлено в приложениях (Приложение 1).

Оно включает в себя все создаваемые реквизиты, новые элементы форм 1С и структуру исполнения данных элементов.

 

.2 Обоснование выбора программных продуктов для реализации проекта


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

Таким образом, для реализации всех необходимых изменений были использованы следующие программные продукты:

·        "1С: Предприятие v7.7";

·        "Notepad++ v6.5" для программирования на языке PHP для реализации некоторых задач на стороне интернет-магазина;

·        "FileZilla v3.7.4.1" для доступа к протоколу FTP интернет-магазина для реализации некоторых задач и тестирования некоторых изменений;

·        "PHPMyAdmin v2.11.11.3" с доступом к базе данных MySQL интернет-магазина для проверки записанных в базу данных изменений.

Выбор данных программных продуктов обоснован либо изначальном их применении на предприятии (в случае с "1С: Предприяти"), либо с тем, что данный программный продукт уже входит в поставку вместе с интернет-магазином со стороны хостинга (в случае с PHPMyAdmin"), либо с удобностью в плане использования (в случае с "Notepad++" и "FileZilla").

В качестве языков программирования, необходимых для модернизации модуля, использовались внутренний язык "1С: Предприятие", скриптовый язык PHP, а также язык SQL-запросов.

 

.3 Создание базовых элементов


Для реализации использования групп категорий был создан новый справочник "ГруппыКатегорий" (Рисунок N).

Рисунок N. Новый справочник "ГруппыКатегорий".

Данный справочник является простым и включает в себя всего 3 поля:

·        "Код" - автоматически заполняемый идентификатор поля для последующего сопоставления категории с его родителем;

·        "Наименование" - название родительской категории;

·        "ОписаниеКатегории" - описание родительской категории, которое можно использовать в качестве анонса включаемых в данную категорию товаров.

Вид созданной формы (Рисунок N) и формы с уже заполняемыми полями (Рисунок N) представлены ниже:

Рисунок N. Форма "ГруппыКатегорий".

Рисунок N. Заполненная форма "ГруппыКатегорий".

Данный справочник, для удобства, был размещён в тот же раздел программы, где расположены 2 других справочника (Рисунок N):

Рисунок N. Общая вкладка интерфейса "ИнтернетМагазин" с новым справочником.

Заполненные группы категорий в последствии могут быть использованы в качестве выбора для определённых разделов. Чтобы использовать такой выбор, уже созданный для модуля интеграции справочник "ПроизводителиCMS" был переработан с добавлением нового реквизита и, соответственно, новой колонки с формой выбора из появляющегося списка (Рисунок N):

Рисунок N. Изменённая форма справочника "ПроизводителиCMS".

Таким образом, в форме справочника можно выбирать его группу, выбираемую из заполненного справочника "ГруппыКатегорий" (Рисунок N).

Рисунок N. Заполненная изменённая форма справочника "ПроизводителиCMS".

Следующим шагом стало добавление новых полей в карточки товаров и категорий: для описания и ключевых слов. Для реализации этого, необходимо создать соответствующие реквизиты для справочников "Номенклатура" и "ПроизводителиCMS" (Рисунки N и N).

Рисунок N. Часть реквизитов справочника "Номенклатура".

Рисунок N. Реквизиты справочника "Категории CMS".

Эти реквизиты были подставлены в добавленные поля форм справочников (Рисунки N и N):

Рисунок N. Изменённая форма редактирования товара.

Рисунок N. Изменённая форма редактирования категории.

 

.4 Написание программного кода для "1С: Предприятие" и интернет-магазина


Первым и самым сложным элементом со стороны программирования оказалось создание связи родительских категорий в самой базе данных.

Все функции по связи 1С и базы данных MySQL находятся в поставляемой вместе с модулем библиотеке MySQL.dll. Каждая функция отвечает за определённую функцию, в число которых, входит, например функция "vm_UpdateProduct" обновляет продукты на сайте, а функция "vm_InsertProduct" добавляет новые элементы (sql-запросы UPDATE и INSERT соответственно).

Однако данная библиотека ограничена набором таких функций, что не даёт в полной мере её использовать. Из-за этого пришлось искать другие способы выгрузки и загрузки информации из базы данных.

В этом помогла дополнительная библиотека для "1С: Предприятие 7.7" V7PLUS.dll, которая включает в себя ряд дополнительных новшеств, используемых в данной версии 1С. Среди них оказалась возможность обращаться к странице на каком-либо сайте и передавать, благодаря этому, параметры в формате GET-запросов.

Сначала необходимо создать новую процедуру в коде модуля до вызова самой процедуры, которая умеет передавать подобные запросы (Рисунок N):

Рисунок N. Код процедуры "Сформировать()".

Данная процедура принимает в себя 2 параметра:

·        "СтрОтпр" - уже сформированная строка для отправления через GET-запрос вида "Текст;ДругойТекст;Значение;". Данная строка, разделённая знаком ";" содержит в себе определённую информацию, которая на определённой странице сайта раскладывается на отдельные переменные, передаваемые потом в базу данных;

·        "Флаг" - значение для определения вида запроса (например, выгрузка товара или выгрузка категории).

Данный код подключает внешнюю библиотеку V7PLUS.dll и создаёт специальный объект для работы с запросами. После этого проверяется какой именно запрос будет передаваться и в соответствии с этим в передаваемую строку подставляется необходимый переменная. После этого на прописанную страницу сайта осуществляется HTTP-запрос через созданный ранее объект и передаётся необходимая информация, которая обрабатывается уже непосредственно на странице сайта. В итоге этого, если на странице сайта выводится какая-то информация, она записывается в глобальную переменную "СтрокаДляПриема", которую можно использовать для различных нужд.

Далее необходимо изменить и добавить код обработки категорий и групп категорий для их выгрузки. В процедуре "Пак_ВыгрузитьПроизводителей", вызываемую при нажатии "Выгрузить номенклатуру" на форме модуля, необходимо добавить код для выгрузки сначала самих групп категорий, а после этого связки групп с категориями. Для выгрузки справочника "ГруппыКатегорий" был написан код (Рисунок N):

Рисунок N. Код по выгрузке групп категорий.

В данном участке кода создаётся объект из справочника "ГруппыКатегорий", из которого в цикле выбираются значения. Эти значения формируются в строку и передаются через созданную ранее процедуру "Сформировать". Выше цикла создаётся таблица значений для сохранения получаемых данных и эти данные из глобальной переменной "СтрокаДляПриема" сохраняются в таблицу значений в качестве новой строки. В данном случае это идентификатор новой записанной а базу данных группы со связкой её наименования.

Следующим шагом после выгрузки групп идёт создание кода по внедрению в базу данных связки между группами категорий и самими категориями. Данный участок кода представлен ниже (Рисунок N):

Рисунок N. Код по выгрузке связки категорий и групп категорий.

В данном участке кода сначала перебираются все категории из справочника "ПроизводительCMS", от которого создаётся объект. Каждый элемент в этом справочнике проверяется на пустоту и пометку на удаление, из-за чего данный элемент может пропуститься в цикле. В строку для передачи добавляется наименование категории, а после выше созданная таблица значений с добавленными или просто выбранными группами категорий на сайте перебирается для поиска подставленных в качестве реквизита групп. Если такое значение найдено, то в строку для передачи GET-запроса добавляется идентификатор этой группы в базе данных. В итоге вызывается процедура "Сформировать" с необходимыми параметрами.

Для выгрузки всех необходимых данных в базу данных используется специально написанный скрипт на языке PHP, который находится в корневом каталоге сайта и перебирает передаваемые через GET-запрос параметры для передачи в базу данных. Данный скрипт состоит из нескольких частей, каждая из которых описана ниже.

Сначала данный скрипт подключается к необходимой базе данных (Рисунок N):

Рисунок N. Подключение к базе данных.

Данный код отвечает за стандартное подключение к базе MySQL на языке PHP и выбор необходимой базы.

Дальнейшим действием после подключения становится уже непосредственная работа с GET-запросами. В случае с данной модернизацией модуля данный скрипт работает в двух вариациях: при работе с группами категорий и при работе со связками этих категорий. Для обоих из этих скриптов используются свои схемы работы, каждая из которых представлена ниже.

Первый участок кода отвечает за вставку или выборку значений из базы данных по группам категорий (Рисунок N):

Рисунок N. Код обработки GET-запроса по группам категорий.

Данный участок кода обладает определённой структурой, которая представляет собой различные действия на те или иные приходящие данные.

Если в GET-запросе существует нужный передаваемый параметр и он не пустой, тогда значение данного параметра (специально разделённые в 1С по знаку ";" данные) разбивается по знаку ";" на массив, каждая ячейка которого отвечает за определённое значение. В данном случае первая ячейка - наименование группы, а вторая - её описание.

Делается пробный запрос в базу данных к таблице "jos_vm_manufacturer_category" с целью проверить, есть ли группа с таким названием уже в таблице.

)        Если в условии после запроса "SELECT" появилась возможность выбрать из пришедшего результирующего массива хоть одно значение, то это означает, что группа с таким названием уже есть и тогда в 1С передаётся идентификатор данной группы для последующего использования.

)        Если же в условии ничего не выбралось, значит строки с таким наименованием в таблице нет. В этом случае производится SQL-запрос "INSERT", добавляющий в таблицу "jos_vm_manufacturer_category" новую строку с данными о новой1 группе.

Далее, из-за ограниченных стандартных возможностей PHP, не позволяющих сразу после "INSERT"’а достать значение из пришедшего массива, выполняется ещё один запрос к базе данных идентичный первоначальному запросу "SELECT". И теперь пришедший в качестве ответа массива должен вернуть значение, которое также, как и в первом пункте, передаётся в 1С.

Все эти действия приводят к тому, что в 1С передаётся идентификатор записи (либо вставленной в таблицу базы данных, либо просто выбранный оттуда), который используется для второго использования этого скрипта PHP.

Этот второй участок кода, находящийся на той же странице, к которой обращается процедура "Сформировать" в 1С, представлен ниже (Рисунок N):

Рисунок N. Код обработки GET-запроса по связке группы категорий и категории.

Данный код также обладает определённой структурой, но она отличается от структуры кода, представленного выше.

В данном случае с помощью процедуры "Сформировать" в 1С передаются следующие данные:

·        Имя категории;

·        Идентификатор группы, выбранный благодаря первому участку скрипта.

Таким образом, сначала проверяется наличие такой категории в таблице "jos_vm_manufacturer", которая и хранит список всех категорий. В случае нахождения строки или нет, определяются варианта событий:

)        Если строка с таким именем уже есть, а, значит, такая категория на сайте уже существует, проверяется ряд условий:

·        есть ли во второй ячейке разбитого из пришедшей строки массива какое-либо значение;

·        отсутствует ли элемент с ключом массива, отвечающим за идентификатор группы, в пришедшем от запроса массиве;

·        если всё же данная ячейка с таким ключом есть, проверяется, равна ли она NULL.

Все эти условия необходимы для того, чтобы проверить, есть ли в пришедшем GET-запросе идентификатор группы, и нет ли его в выбранной из таблицы строке. Если в запросе передаётся идентификатор, а в базе данных у этой категории нет группы, данной категории присваивается идентификатор необходимой группы.

)        Если после запроса "SELECT" строки с наименованием такой категории не оказалось, проверяется другое условие, по результату которого может произойти 2 разных действия:

·        если в передаваемом GET-запросе есть идентификатор группы, то в таблицу "jos_vm_manufacturer" базы данных заносится новая строка с именем данной категории и её привязанной в 1С группы;

·        если же в запросе нет этого идентификатора, то в таблицу заносится строка только лишь с названием категории без какого-либо идентификатора (то есть это поле так и остаётся в значении NULL).

В итоге всех этих запросов таблицы базы данных заполняется необходимыми значениями, что даёт реализовать отображение в интернет-магазине группировку категорий.

Другой задачей согласно техническому заданию было добавление полей для выгрузки описаний и ключевых слов товаров и разделов товаров.

Изменению подверглись две используемые процедуры: "Пак_ВыгрузитьСтруктуруГрупп" для разделов товаров и "Пак_ВыгрузитьНоменклатуру" для самих товаров.

Для процедуры по выгрузке разделов были добавлены новые данные в передаваемую строку (Рисунок N), а также соответствующие названия полей таблицы для выгрузки с помощью встроенной в библиотеку MYSQL.dll функции (Рисунок N):

Рисунок N. Строка в категории, передаваемая в базу данных.

Рисунок N. Функция из библиотеки MySQL.dll, передающая строку для категории.

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

Рисунок N. Строка в номенклатуре, передаваемая в базу данных.

Эти действия позволяют передавать необходимые для продвижения интернет-магазина данные и продвигать позицию сайта в поиске.

Ещё одной проблемой для решения было исправление неправильно заполняемых типов цен. При создании интернет-магазина, CMS "Joomla!" автоматически создаёт три типов пользователей:

·        "Default" - покупатели с отображаемым обычным типом цен;

·        "Gold Level" - для которых показывается "особая" цена (например, не включающая надбавку);

·        "Wholesale" - покупатели, видящие оптовую цену.

Все эти значения хранятся в базе данных в таблице "jos_vm_shopper_group", где находятся все три группы и куда, если это понадобится, можно добавить и новые. На сайте как таковое использование этих групп является бессмысленным, так как регистрация пользователей отключена совсем, а все покупки совершаются с помощью обычной сессии. По техническому заданию было предложено решение: использование системы скидок на основе покупок с будущим использованием так называемых "промо-кодов", которые выдаются покупателю и он имеет право их ввести, тем самым изменив на одну общую покупку свою группу пользователей, изменив при этом стоимость своей покупки.

Сами связки "цена - товар - тип пользователя" хранится в таблице "jos_vm_product_price" (Рисунок N).

Рисунок N. Таблица со связкой цена - товар - группа пользователей.

Всё это означает, что возможность использования различных типов цен и их выгрузка вполне осуществима, и она попросту не учтена при разработке модуля.

Необходимый для изменения участок кода необходимо было просто обернуть в новый цикл, который бы проверял при запуске процедуры "Пак_ОбновитьЦены" в каждом товаре каждый заполненный тип цен и выгружал его в общий список цен (Рисунок N):

Рисунок N. Новый код выгрузки типов цен.

Последней исправляемой проблемой оказалось изменение функционала выгрузки фотографий товаров, так как они, не будучи сразу нужного размера, создавались динамически, что приводило к неприятным последствиям.

В модуле используется процедура "ВыгрузкаИзображений", которая берёт все необходимые настройки из четвёртой вкладки формы модуля и с помощью них единожды изменяет размер, выгружая в последствии в прописанную папку оригинальный размер фотографии (400 на 400 пикселей) и уменьшенный вариант (до пикселей, указанных в полях "X" и "Y"). Однако этого было недостаточно, так как сайт изначально учитывает 3 варианта размера фотографий:

·        400 х 400 - для увеличенного просмотра фотографии товара;

·        250 х 250 - для отображения в самой карточке товара;

·        100 х 100 - для отображения в списке товаров.

Таким образом, для корректного отображения фотографии необходимо изменять 2 раза.

Изначальный код по уменьшению изображения представлен ниже (Рисунок N):

Рисунок N. Код по уменьшению фотографий.

В данном коде было решено добавить ряд небольших изменений, которые бы сделали изменение размеров фотографий более статическим (Рисунок N и N):

Рисунок N. Создание переменных для последующих операций.

Рисунок N. Дублирование команд для изменения размера.

Изменение размеров осуществляется с помощью сторонней программы "InfranView", к которой происходит передача команды с необходимыми параметрами, что даёт в итоге необходимые размеры фотографий.

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

4. Обоснование экономической эффективности проекта

 

.1 Расчет стоимости модернизации


Средний заработок программиста-стажера 1С: 105 руб./час.

Платные программные продукты во время модернизации не использовались. "1С: Предприятие" и сам модуль интеграции были куплены до начала проекта.

Для тестирования всех изменений было куплено место на хостинге и новый домен. Стоимость места на хостинге - 342 руб. за 3 месяца и оплата домены "maxiposuda-test.ru" - 400 руб.

Рассчитав все трудозатраты, можно выявить, что стоимость модернизации, исходя из трудозатрат, составляет 145 руб./час * 5 часов в день * 10 отработанных дней = 7250 руб.

Итого, исходя из этих цифр, можно посчитать примерную стоимость модернизации (Таблица N):

Таблица N. Затраты на модернизацию модуля.

Наименование затрат

Сумма, руб.

Трудозатраты

7 250

Плата за тестовый хостинг

342

Регистрация тестового домена

400

Итого:

7 992

 

.2 Расчет прибыли от модернизации


Следя за работой штатного менеджера, было выявлено, что после процесса интеграции на каждую категорию производителя уходило по 2 минуты на заполнение описания и 2 минуты на заполнение ключевых слов. На данный момент в интернет-магазине 17 родительских групп производителей, от что, посчитав, получаем 17 * 2 + 17 * 2 = 68 минут в день.

Средняя зарплата контент-менеджера составляет 120 руб./час.

Получается, что в день на прописывание ключевых слов и описаний на контент-менеджера уходит 136 рублей в день. Исходя из того, что в месяце 21 рабочий день, а контент-менеджер работает 3 раза в неделю, получаем следующие вычисления:

дней * 136 руб./день = 1 768 руб./мес.

Частота захода поискового робота - 1 раз за 2 дня, так как именно с этой частотой происходит интеграция 1С и сайта. Для более точечной оценки, будем брать во внимание только поисковых роботов "Google" и "Яндекс". Каждый поисковый робот индексирует сайт по 2 минуты в день и, получается, вероятность его захода 1/720 раз/день. Если учесть, что контент-менеджер тратит по 68 мин./день, то шанс захода робота увеличивается до 1/10,5 раз в то время, когда необходимая информация ещё не заполнена. Также, стоит учесть, что внимание концентрируется на двух роботах: "Google" и "Яндекс", то есть шансы увеличиваются в половину: 1/5,25 в обозначенное время.

При учёте шанса захода поискового робота стоит, также, учесть процент заказов, зависящих от вхождения робота, так как количество их напрямую зависит от позиции сайта в поисковиках.

Если учесть, что в день происходит до 5-и заказов на сайте, то шанс того, что позиция сайта в поисковиках упадёт, а покупателей придёт меньшее количество, составляет порядка тех же 1/5,25. В количестве заказов это снизится примерно на 19%, что составит теперь около 4 заказов в день. Из расчёта, что каждый заказ, в среднем, выходит на 2400 руб., то именно такая сумма будет теряться за день. А, если учесть тот факт, что интеграция и переписывание описаний и ключевых слов происходит лишь 1 раз за 2 дня, то данная цифра увеличивается в 2 раза до 4800 руб. за 2 дня.

Итого, получается следующая картина (Таблица N):

Таблица N. Денежные потери от плохой индексации сайта.

Наименование затрат

Сумма, руб./день

Затраты на контент-менеджера

136

Потеря от упущенного заказа

2 400

Итого:

2 536


Что за 2 дня составляет порядка 5 072 руб.

Однако, после всех проведённых модернизаций ситуация меняется. Во-первых, теперь появляются группы категорий, которые увеличивают карту сайта и, таким образом, повышают количество проиндексированных страниц интернет-магазина. Таким образом, 61 страница категорий группируются до примерно 20 страниц, увеличивая, соответственно, на 20 страниц карту сайта.

Исходя из расчёта, что на сайте, в данный момент, страниц категорий и производителей (не учитывая детальные страницы товаров) находится 125, то увеличение на 20 страниц приводит к увеличению шанса нахождения в поисковых запросах страниц этого интернет-магазина до 16%, что может принести, как вариант, 1 новый заказ в день.

И, самое главное, когда описания и ключевые слова заносятся на сайт изначально из 1С благодаря интеграции, все операции контент-менеджера становятся ненужными, что повышает вероятность получения дополнительного заказа в день и уменьшения затрат на контент-менеджера.

Итого, окупаемость модернизации модуля должна произойти уже через 4 дня.

Заключение


По итогам всех произведённых работ поставленная цель модернизировать модуль интеграции была выполнена успешно, о чём говорит увеличение прибыли за счёт более успешного продвижения интернет-магазина.

Помимо этого был проведён краткий анализ предприятия, анализ интерактивного бизнеса, его свойств и видов. Были рассмотрены различные виды CMS, найдены достоинства и недостатки, рассмотрены различные способы интеграции "1С: Предприятие" и интернет-магазина и выявлены наиболее значимые аспекты интеграции.

Вместе с директором ООО "Вазаро" было составлено техническое задание, на основе которого и были произведены все необходимые модернизации модуля и впоследствии произведён анализ всех выполненных работ с расчётом возможной прибыли.

По итогам результатов цель дипломного проекта была достигнута и все задачи выполнены.

Библиографический список


)        Михайлов С.Е., Никонов В., Старт интернет проектов - М.:1С-Паблишинг, 2011. - 45 с.

)        Горнаков С.Г., Осваиваем популярные системы управления сайтов (CMS) -М.:ДМК Пресс, 2009. - 336 с.

)        Балабанов И.Т., Электронная коммерция - СПб: Питер, 2001. - 336 с.

)        Калинина А.Э., Интернет-бизнес и электронная коммерция: Учебное пособие. - Волгоград: Изд-во ВолГУ, 2004. - 148 с.

)        Голоскубова Н., Клиженко Я., Пустовит М., Солошенко Л., Хмелевский И., Чефранов О., Интернет-магазин: организация, налогообложение, учет - Харьков: Фактор, 2009. - 128 с.

)        Барышников А., Мазепа М., Фогель О., 1С: Предприятие 7.7. Руководство пользователя - М.: Фирма 1С, 2001. - 180 с.

)        Алексеев А.П. Введение в Web-дизайн: учебное пособие. - М.: СОЛОН-ПРЕСС, 2008. - 200 стр.

)        Кроудер Д. Создание web-сайта для чайников: 3-е издание. - М.: Диалектика, 2009. - 260 стр.

)        Стив Суэринг, Тим Конверс, Джойс Парк, PHP и MySQL. Библия программиста, 2-е издание - М.: Диалектика, 2010. - 170 стр.

)        Веснин К.А., 1С: Предприятие 8.0. Простые примеры разработки. - СПб: 1С-Паблишинг, 2006. - 605 с.

)        Додин Г.П., 1С: Предприятие: создание конфигураций для всех. - М.: Диалог-МИФИ, 2008. - 448 с.

)        Дятлов И.В., Разработка программных продуктов с использованием современных методологий. - М.: Символ-Плюс, 2001. - 811 с.

)        Ракитов С.О., Базовые навыки реализации конфигураций в 1С: Предприятие. - СПб: 1С-Паблишинг, 2009. - 402 с.

)        Самарин В.И., 1С: Предприятие. Встроенный язык написания конфигурации. - СПб: 1С-Паблишинг, 2008. - 306 с.

)        Бэрри Норт, Joomla! Практическое руководство. - СПб: Символ-Плюс, 2008. - 448 с.

)        Колисниченко Д., Движок для вашего сайта. CMS Joomla! Slaed, PHP-Nuke. - СПб: БХВ-Петербург, 2010. - 368 с.

)        Ташков П.А., Веб-мастеринг на 100 %: HTML, CSS, JavaScript, PHP, CMS, AJAX, раскрутка. - СПб: Питер, 2010. - 512 с.

)        Робин Никсон, Создаем динамические веб-сайты с помощью PHP, MySQL и JavaScript. - СПб: Питер, 2011. - 497 с.

)        Граф Х., Создание веб-сайтов с помощью Joomla! 1.5. - Вильямс, 2008 - 304 с.

)        Филимонова Е.В., Кириллова Н.А., 1С: Предприятие в вопросах и ответах - М.: Дашков и К, 2005. - 263 с.

)        Харитонов С.А., Компьютерная бухгалтерия 7.7 с новым планом счетов: учебное пособие - М.: 1 С Паблишинг, 2005. - 415 с.

)        "Недостатки PHP" - URL: http://comphobby.ru

)        "Особенности продвижения интернет магазинов" - URL: http://shakin.ru

)        Усиков Т.Н. 1С: Предприятие. Эффективное программирование. - М.: Новое знание, 2004. - 446 с.

)        Габец А.П., Профессиональная разработка в системе 1С:Предприятие - СПб: 1С-Паблишинг, 2007. - 808 с.

)        Митичкин С.А., Практика программирования в среде 1С:Предприятие 7.7. - М.: КомБук, 2004. - 272 с.

)        Кузнецов М.В., Симдянов С.В., Голышев. И.В., PHP 5. Практика разработки Web-сайта - СПБ: БХВ-Петербург, 2005. - 960 с.

)        Нельзина О.Г., Характеристики, проблемы и перспективы развития систем электронной коммерции в современной России - RELGA, №23 (145) - 25.12.06 - URL: http://www.relga.ru

)        Рязанцева Н.А., Рязанцев Д.Н., 1С:Предприятие. Бухгалтерский учет. Секреты работы. - СПБ: БХВ-Петербург, 2005. - 264 с.

)        Павлов А.С., Сравнительный анализ потребительского качества программных продуктов для электронной торговли [Диссертация] - Ростов-на-Дону, 2005.

)        Гуров В.В., Загуменнов А.П., Интернет для бизнеса. - М.: ДМК Пресс, 2006. - 112.

Приложение 1


ТЕХНИЧЕСКОЕ ЗАДАНИЕ

на модернизацию модуля интеграции

для компании _______________

Разделы технического задания:

1. Общие сведения

1.1. Наименование программного продукта

Модуль интеграции "1C: Предприятие" и Joomla! Virtuemart

1.2. Наименование организаций - Заказчика и Разработчика   

Заказчик: ООО "Вазаро"; Адрес физический: г.Екатеринбург, пер.Речной, 1, оф.19; Телефон: +7 (900) 200-03-01

Разработчик: Физ.лицо Бибанаев Анатолий Евгеньевич; Адрес фактический: г.Екатеринбург, ул.Самолетная, дом 5, к.3, кв.22; Телефон: +7 (922) 140-17-38

1.3. Плановые сроки начала и окончания работы

Сроки реализации проекта: с 16 декабря 2013 г. по 27 декабря 2013 г.

1.4. Порядок оформления и предъявления заказчику результатов работ

Результаты работ модернизации сдаются заказчику по выполнению модернизации каждой из частей.

2. Назначение и цели модернизации модуля

2.1. Назначение модернизации

Назначением модернизации модуля является более улучшенная работа модуля, упрощения работы контент-менеджера и улучшенное продвижение в сети Интернет. В рамках проекта автоматизируется деятельность контент-менеджера.

2.2. Цели проведения модернизации

Целью модернизации является улучшение и исправление уже встроенных в неё функций, таких как: выгрузка цен, выгрузка групп каталогов, выгрузка описаний и ключевых слов, выгрузка различный размеров фотографий.

3. Требования к модернизации модуля

3.1. Требования к новым функциям модуля

·        Справочники:

o   Модернизировать справочник "ПроизводительCMS":

§  поле "Группа".

o   Добавить справочник "ГруппыКатегорий": поля

§  "Код";

§  "Наименование";

§  "ОписаниеКатегории".

·        Реквизиты:

o   Справочник "Номенклатура":

§  "КлючевыеСлова";

§  "Описание".

o   Справочник "ПроизводительCMS":

§  "КлючевыеСлова";

§  "Описание".

·        Формы:

o   Модернизировать форму списка справочника "ПроизводительCMS":

§  колонка "Группа".

o   Модернизировать форму элемента справочника "Номенклатура": поля

§  "КлючевыеСлова";

§  "Описание".

o   Модернизировать форму элемента справочника "ПроизводительCMS": поля

§  "КлючевыеСлова";

§  "Описание".

o   Добавить форму списка справочника "ГруппыКатегорий": колонки

§  "Код";

§  "Наименование";

§  "ОписаниеКатегорий".

4. Состав и содержание работ по модернизации

4.1. Этапы модернизации

·        Создание и изменение всех необходимых справочников и реквизитов;

·        Создание и изменение всех необходимых форм справочников;

·        Написание кода на стороне 1С;

·        Написание кода на стороне сайта;

·        Тестирование модернизаций;

·        Исправление найденных ошибок;

·        Внедрение модернизированного модуля на предприятии.

5. Порядок контроля и приёмки работ

5.1. Проведение испытаний

·        Испытания модуля интеграции на тестовом сайте: выгрузка категорий, выгрузка описаний и ключевых слов, выгрузка различных вариантов изображений, проверка;

·        Испытания модуля интеграции на реальном сайте: выгрузка категорий, выгрузка описаний и ключевых слов, выгрузка различных вариантов изображений, проверка.

5.2. Контроль и приёмка работ

Контроль и приёмка результатов будет осуществляться заказчиком и контент-менеджером после проведения всех необходимых работ (после 27.12.2013 г.).

Похожие работы на - Разработка и внедрение модуля интеграции 1с 7.7 и 'Joomla VirtueMart' для предприятия ООО 'Вазаро'

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!