РЕФЕРАТ
ВКР содержит пояснительную записку на 85 листах формата А4,включающую 21 рисунок, 11 таблиц, 24 литературных источника, 5 приложений.
WEB ПРОГРАММИРОВАНИЕ, WEB СЛУЖБА, 1С, C#, АВТОМАТИЗАЦИЯ, ADO, ТИРАЖИРОВАНИЕ, ИНСТРУКЦИЯ, COM.
Цель работы – автоматизацияработы с покупателями.
В процессе работыпроведён анализ аппаратных и программных средств предприятия, выбранытехнологии и средства для решения поставленных задач.
Результаты работыиспользуются на предприятии. Программный комплекс выполняет следующие задачи:
- ускорениеобслуживания покупателей на розничных торговых точках,
- ведениеточного учёта товаров на удалённых точках,
- поддержкараспределённой базы данных,
- предоставлениеполной информации по текущему ассортименту компании интерактивным пользователямИнтернет портала,
- публикацияновостей и данных о компании на Интернет портале,
- возможностьоформления заказов через Интернет.
.
СОДЕРЖАНИЕ:
TOC o «1-5» h z u ВВЕДЕНИЕPAGEREF _Toc106719318 h 7
1 ПОСТАНОВКАЗАДАЧИ НА ПРОЕКТИРОВАНИЕPAGEREF _Toc106719319 h 8
1.1 Назначение и целисоздания программного комплексаPAGEREF _Toc106719320 h 8
1.2 Что было довнедрения АИС.PAGEREF _Toc106719321 h 10
1.3 Структуракомпьютерной сети предприятияPAGEREF _Toc106719322 h 11
1.4 Выбор программныхсредств и технологий взаимодействияPAGEREF _Toc106719323 h 12
1.4.1 Выбор СУБД дляавтоматизации
хозяйственно-складскойдеятельности
и построенияраспределённой БДPAGEREF _Toc106719324 h 13
1.4.2 Выбор средыразработкиPAGEREF _Toc106719325 h 14
1.4.3 Передача данныхчерез локальную сетьPAGEREF _Toc106719326 h 15
1.4.4 Выбор языкапрограммированияPAGEREF _Toc106719327 h 15
1.4.5 Выбор СУБД для Web сервераPAGEREF _Toc106719328 h 16
1.5 Описание средствразработкиPAGEREF _Toc106719329 h 16
1.5.1 «1С Предприятие».Конфигурация «Торговля и склад»PAGEREF _Toc106719330 h 16
1.5.2 MSSQLServer 2000PAGEREF _Toc106719331 h 21
1.5.3 MSVisualStudio.NETPAGEREF _Toc106719332 h 22
2 ФУНКЦИОНАЛЬНАЯЧАСТЬPAGEREF _Toc106719333 h 25
2.1 Общеефункционирование системы на базе «1С»PAGEREF _Toc106719334 h 25
2.2 Функции создания иподдержания распределённой БДPAGEREF _Toc106719335 h 26
2.3 Функции для переноса данных с сервераприложений 1С на WEBсервер (SQLServer)PAGEREF _Toc106719336 h 28
2.3.1 Функции WEB службыPAGEREF _Toc106719337 h 29
2.4 Функции ASP.NETприложенияPAGEREF _Toc106719338 h 34
2.4.1 Схема работаИнтернет сайтаPAGEREF _Toc106719339 h 35
2.4.2 Функциональноеназначение страницPAGEREF _Toc106719340 h 37
3ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ПРИЛОЖЕНИЯPAGEREF _Toc106719341 h 39
3.1 Общие принципыорганизации информационной базыPAGEREF _Toc106719342 h 39
3.2 Передача данныхудалённым точкамPAGEREF _Toc106719343 h 39
3.3 Ведение БД на WEBсервере с использованием SQLServer2000PAGEREF _Toc106719344 h 39
4ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРИЛОЖЕНИЯPAGEREF _Toc106719345 h 45
4.1 Программные средства для создания иподдержания распределённой БДPAGEREF _Toc106719346 h 45
4.1.1 Обработка нацентральной базе «Выгрузка накладной»PAGEREF _Toc106719347 h 45
4.1.2 Обработка наудалённой торговой точке — «Загрузка документов»PAGEREF _Toc106719348 h 46
4.2 Автоматизацияработы кассира в магазинеPAGEREF_Toc106719349 h 48
4.3 WEB приложениеPAGEREF _Toc106719350 h 50
4.3.1 Условия наработу WEB приложения уудалённого пользователя.PAGEREF_Toc106719351 h 51
4.3.2 ИспользуемыесредстваPAGEREF _Toc106719352 h 52
4.3.2.1 Стандартныесредства «WEBпрограммирования»PAGEREF _Toc106719353 h 52
4.3.2.2 ASP.NET 2.0PAGEREF _Toc106719354 h 52
4.3.2.3 ADO.NETPAGEREF _Toc106719355 h 53
4.3.3 Получение данных от WEBСлужбыPAGEREF _Toc106719356 h 53
4.3.4 КэшированиеданныхPAGEREF _Toc106719357 h 54
4.3.5 Отправка электронной почтыPAGEREF _Toc106719358 h 55
4.3.6 ПолномочияпользователейPAGEREF _Toc106719359 h 56
2.4.7 Проблемы и ихрешениеPAGEREF _Toc106719360 h 57
5 ТЕХНОЛОГИЯЭКСПЛУАТАЦИИ ПРИЛОЖЕНИЯPAGEREF_Toc106719361 h 59
5.1 Инструкцияоператора системы 1С на удалённом магазинеPAGEREF _Toc106719362 h 59
5.1.1 Общие сведенияPAGEREF _Toc106719363 h 59
5.1.2 Порядок работы:PAGEREF _Toc106719364 h 59
5.1.3 Продажа(Реализация):PAGEREF _Toc106719365 h 60
5.1.4 Возврат продажиPAGEREF _Toc106719366 h 62
5.1.5 Использованиеменю фискального регистратора (ФР):PAGEREF _Toc106719367 h 64
5.1.6 Акт сверки:PAGEREF _Toc106719368 h 64
5.1.7 Печать ценниковпо подбору:PAGEREF _Toc106719369 h 66
5.1.8 Загрузканакладных:PAGEREF _Toc106719370 h 68
5.2 Эксплуатация WEBпорталаPAGEREF _Toc106719371 h 68
ЗАКЛЮЧЕНИЕPAGEREF _Toc106719372 h 70
СПИСОКИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВPAGEREF_Toc106719373 h 71
ПРИЛОЖЕНИЕ АКОНЦЕПТУАЛЬНВЯМОДЕЛЬ ПЕРЕНОСА ДАННЫХPAGEREF _Toc106719374 h 73
ПРИЛОЖЕНИЕ Б КОДWEBСЛУЖБЫ (ФАЙЛ«Service.asmx»)PAGEREF _Toc106719375 h 74
ПРИЛОЖЕНИЕ В ФУНКЦИИ ГЛОБАЛЬНОГО МОДУЛЯ,ФОРМИРУЮЩИЕДАННЫЕДЛЯWEBСЛУЖБЫ PAGEREF_Toc106719376 h 78
ПРИЛОЖЕНИЕ Г НЕКОТОРЫЕ ХРАНИМЫЕПРОЦЕДУРЫИЗАПРОСЫ КСИСТЕМЕ«SQLSERVER»PAGEREF _Toc106719377 h 82
ПРИЛОЖЕНИЕ ДКОД РАБОТЫСWEBСЛУЖБОЙИЗASP.NETPAGEREF _Toc106719378 h 84
ВВЕДЕНИЕ
Каждая коммерческаяорганизация старается вести точный и полный учёт своей деятельности. Неявляется исключением и компания, для которой разрабатывался данный комплекс программныхсредств.
Машины могутавтоматизировать работу людей, лишь, будучи правильно запрограммированными.
Для ведения складскогоучёта используется программа 1С предприятие. Данная платформа была выбранапотому, что для её внедрения требуются относительно невысокие денежные ивременные затраты. Кроме этого – данная программа поддерживаетсяпроизводителями фискальных регистраторов (которые используются на точкахрозничной торговли) и постоянно обновляется в соответствии с изменением законодательства.
В данной области торговлисуществует жесткая конкуренция. Каждая компания пытается сделать покупку для своегопокупателя максимально удобной, быстрой и приятной.
1ПОСТАНОВКА ЗАДАЧИ НА ПРОЕКТИРОВАНИЕ1.1 Назначение и цели созданияпрограммного комплекса
Назначениеи цели создаваемого программного комплекса:
- автоматизация хозяйственно – учётной деятельностипредприятия посредством компьютеризации удалённых магазинов,
- автоматизация работы с покупателями на удалённыхторговых точках,
- автоматизация работы с покупателями через Internet портал,
- предоставление информации о предприятии, его торговыхточках и его ассортимента через Internet.
ЗадачиИнтернет портала:
- Рассказать о предприятии широкому кругу заинтересованныхлиц, дать полную информацию по центральному офису и торговым точкам (адреса,телефоны, время работы, схемы проезда),
- Дать покупателю возможность ознакомиться с ассортиментоми ценами компании в удобной форме,
- Дать менеджерам возможность публиковать новости, информируяпокупателей (оптовиков),
- Обеспечить возможность заказа покупателем-оптовикомтовара,
- Закачивание прайс–листа по указанной группе товаров,
- Отправка текстового сообщения выбранному должностномулицу любым человеком через webинтерфейс,
- Ведение статистики посещаемости.
Дополнительныетребования, предъявленные руководителем предприятия:
- Ведение статистики по просмотру товаров (выяснить –какие группы товаров интересуют WEBпользователейбольше, а какие – меньше),
- Каждый покупатель – оптовик имеет свой пароль, свойпрайс, свои полномочия,
- Неавторизированный покупатель видит товар, имеющийсяна розничных точках, но не может просмотреть его количество. Цену для всехтоваров отображать по первому прайсу (чем больше номер прайса, тем меньше его цена),
- Авторизированный пользователь видит лишь товар наоптовом складе. Также – без конкретизации по количеству. Почему так – рассказанодалее,
- Прайс должен скачиваться в соответствии с полномочиямипользователя (два предыдущих пункта). Авторизированный пользователь, наделённыйправами просмотра количества должен получить прайс с отражёнными остатками повсем имеющимся товарам,
- Не производить контроль количества запрашиваемоготовара и его наличия. Если на остатке значится 10 позиций, а авторизированныйпользователь пытается выписать 20, то не выводить ошибку «отсутствует нужноеколичество», а продолжить оформление заказа. Это сделано в связи с тем, чтоассортимент большой и на складе (получатель сформированного заказа) оформятпродажу 10 позиций, после чего свяжутся с покупателем, объяснят, что товара нехватает и предложат его аналоги, дабы он добрал до 20 штук. Такова политикапредприятия, позволяющая таким образом поднять продажи.
1.2 Что было до внедрения АИС.
Локальная сеть спрограммой «1С», работающей в терминальном режиме. Менеджеры меняли цены,оптовый склад делал реализации покупателям. Товар на удалённые точкиоформляется как перемещение на другой склад. Весь количественный учёт вмагазинах вёлся на бумаге. Раз в несколько дней данные «документы» поступали вцентральный офис, где работница забивала на компьютере документ «реализация»,тем самым списывая товар с соответствующего склада. Практически каждый деньменеджеры меняют цены на товар. После чего они по телефону(или по базе)узнавали – есть ли данный товар в магазинах. Если есть, то они печатали ценникидля магазинов. Работа эта кропотлива, в результате чего часто были ситуации,что цена на товар меняется, но магазины об этом не знают.
Теперь по работе соптовыми покупателями. На каждый товар имеется несколько типов цен. Цена, покоторой отпускается товар зависит от объёма либо текущего заказа, либо от того,сколько покупатель брал товара до этого. Получается – каждому покупателю нуженсвой прайс-лист. Причём именно по интересующей его группе товаров. Точноеколичество остатков на складе — коммерческая тайна. Но есть привилегированныепокупатели, которым можно показать остатки. Много времени уходило на то, чтобысформировать отчёт-прайс в 1С, экспортировать в таблицу MSExcelи отправить покупателю поэлектронной почте. Политикой что кому показывать руководит один человек — начальник предприятия.
Весь этот процесстребовалось автоматизировать, разгрузив персонал от рутины, сделать покупку дляпокупателя максимально удобной и тем самым выделиться среди конкурентов (аконкуренция в этой области очень жесткая). Кроме того – фирма относительномолодая, сеть розничных магазинов растёт (за полгода с 2 до 4), штат работниковрастёт, увеличивается количество компьютеров, оборот продаж.1.3 Структура компьютерной сети предприятия
Немаловажную роль играетструктура компьютерной сети предприятии. От её топологии зависит вся дальнейшаяразработка программного комплекса. Протокол взаимодействия локальной сети: TCP-IP.
Схема локальной сети показанана рисунке 1:
Рисунок 1 –Схема локальной сети предприятия
1.4 Выборпрограммных средств и технологий взаимодействия
Благодаря развитому насегодняшний день в России компьютерному пиратству мы пока что имеем возможностьсвободно выбирать платформу и среду программирования, не смотря на финансовуюсоставляющую покупки данных программных продуктов.
Все используемыепрограммные средства более подробно будут рассмотрены далее. Сейчас я хочуописать – почему же я остановился именно на них. Ведь на прилавках нашихмагазинов есть из чего выбирать.1.4.1 Выбор СУБД для автоматизациихозяйственно-складской деятельности и построения распределённой БД
«1С Предприятие» 7.7выбрано программой для построения складского учёта, так как на сегодняшний деньу фирмы 1С в этой области практически нет конкурентов. 1С – программа для ОС Windows. Все компьютеры предприятия работаютна платформе Windows(XPProfessionalили Server2003). Используется система 7.7, а не 8 так как учётбыл поставлен до появления на широком рынке версии 8, которая до сих пор неполучила широкого распространения (что не исключает, что за ней – будущее).Система обладает нужной гибкостью, масштабируемостью. Синтаксис встроенногоязыка не представляет сложности и для человека, не имеющего компьютерного образования.Производители заявляют, что система поддерживает логику объектноориентированного программирования. Но это всё же не так. Программирование –процедурное. Некоторые средства массовой информации причисляют язык 1С к языку4 уровня, с чем я конечно же тоже не соглашусь. Не хватает гибкости. Основнойвариант, который можно рассматривать в качестве альтернативы 1С – это созданиесамостоятельного продукта. Данный подход требует наличие высококвалифицированногоперсонала. Для процесса разработки, внедрения и модернизации потребуется больше времени. Но эффективностьего использования на мой взгляд была бы выше, так как в системе не было бы ничеголишнего. Выбирать мне особо не приходилось, так как использование 1С началосьдо моего появления на фирме. Хочется отметить, что конфигурация дорабатываетсяне только мной, но и информационным отделом фирмы «Столица», с которыми у насзаключено деловое партнёрство. Что тоже повлияло на выбор.
Для созданияраспределённой БД также было решено использовать 1С, с нештатными средствами.1.4.2 Выбор среды разработки
Данные с 1С надополучать, обрабатывать и предавать по локальной сети на WEBсервер. Кроме того, на Webсервере должен функционироватьинтернет сайт. Я решил использовать продукты компании Microsoft, которые лучше всего адаптированыпод операционную систему MSWindows, быстры и надёжны.
На сегодняшний день серьёзнуюконкуренцию MSVisualStudioсоставляет компания Borlandсо своими продуктами – Delphiи Builder. В плане простоты изучения данныесредства разработки может быть и проще, не зря ведь в институтах и школахименно на них идёт обучение студентов и школьников. Но в плане ясности,отказоустойчивости, широте охвата областей программирования и документированности(MSDN) – MSVisualStudio– вне конкуренции. Кроме того – ямогу в одной графической оболочке разрабатывать две разнородные компонентысвоей системы – WebServiceи WebApplication.
В моём распоряжении оказаласьBetaверсия VisualStudio2005, которую, я и решилиспользовать. Опыта программирования в данной среде у меня практически не было.Русскоязычных ресурсов по версии 2005 очень мало, в релизе возможнысущественные изменения вплоть до того, что уже написанные приложения в betaверсии перестанут функционировать. Ноесть и преимущества. На 9 семестре в рамках дисциплины я писал лабораторнуюработу с использованием VisualStudio2003 и ASP.NET. В новой версии (ASP2.0) появились новые компоненты,были доработаны старые. Приятно удивил меня GridViewсвоими возможностями. Считаю выбороправданным. Никаких нареканий к стабильности работы, скорости работы и другиххарактеристик полученных программных продуктов не имею.1.4.3 Передачаданных через локальную сеть
Былорешено использовать связь «WebСлужба»--> «ASP.NET приложение». Данная связкапозволяет установить приложение на сервере с программой 1С, которое будет извне доступно по протоколу HTTP, передавая данные по 80 порту в XML формате.Данная технология позволяет скрыть от конечного пользователя всю сложностьпреобразования данных из одного вида в другой и обратно. В моём случае используетсяотносительно небольшой объём кода. Для доступа к данным используется технологияADO.NET.
1.4.4 Выбор языкапрограммирования
MSVisualStudioпозволяет вести разработку на одномиз языков программирования: C#, C++, Java, Basic. Я везде использовал C#. C# перенял лучшее от Javaи C++, автоматизировал работу с памятью,которую компилятор теперь берёт на себя. Синтаксис практически не отличается отC++ и непосредственнонаписание программного кода занимает меньше времени.1.4.5Выбор СУБД для Web сервера
В качестве сервера базданных был использован MSSQLServer2000. Первоначально предполагалосьиспользование MSAccess, но Access– настольная (одна программа на одинкомпьютер) система управления данными, а SQLServer– одна из мощнейших сетевых СУБД с возможностьюпараллельной работы множества пользователей. Высокая скорость обработки,выборки, изменения данных посредством SQLзапросов ставит SQLсервер выше всех конкурентов. Конкуренцию может составить Oracle, но данная СУБД предназначена для решенияболее глобальных задач. В моём случае данных относительно мало. Такое количестводанных легко выдержит любая СУБД, но требуется высокая скорость обработки запросови возможность работы в многопользовательском режиме. Версию я выбрал 2000, а не2005 в связи с тем, что 2000 менее требовательна к ресурсам компьютера, а нововведения2005 мне бы не пригодились. Описание СУБД MSSQLServer, благодаря которому можно понять всю мощь выбранной системы можнонайти далее.1.5 Описаниесредств разработки
В данном разделе я опишувсе программные продукты, выбранные выше. Постараюсь выделить лишь самыезначимые моменты для работы АИС и моменты, важные для разработки ПО.
1.5.1«1С Предприятие». Конфигурация «Торговля и склад»
Программа«1С:Предприятие 7.7», в частности продукт «1С: Торговля исклад», представляет собой недорогую,но надежную и достаточно функциональную систему, с помощью которойможно решать большинство учетныхзадач, стоящих перед предприятием.
Программныйпродукт «1С: Торговля и склад 7.7» предназначен для учета любых видов торговых операций.Благодаря своей гибкости и возможностинастройки, система «1С: Торговля и склад 7.7» способна выполнять всефункции учета – от ведения справочников и ввода первичных документов до получения различных ведомостей ианалитических отчетов.
Программа«1С: Торговля и склад 7.7» автоматизируетработу на всех этапах деятельности предприятия.
Яне считаю программирование в 1С высококвалифицированной работой. Трудностьпредставляет полное понимание предметной области, грамотная постановка задачи,составление алгоритма и составление запросов на языке запросов 1С. Не случайноведь есть много «программистов 1С», абсолютно не знающих основ баз данных, норешающих поставленные перед ними задачи. Такие «специалисты» являются очень узкоспециализированными.
«1С: Торговляи склад» содержит разнообразные средства для связи с другими программами.
Возможностьимпорта и экспорта информации через текстовые файлы позволит обмениватьсяданными практически с любой программой.
Кромеэтого, встроенный язык содержит средства работы с файлами формата DBF.
Также«1С: Торговля и склад» поддерживает современные средства интеграцииприложений: OLE, OLE Automation и DDE.
«1С»система обладает нужной гибкость и настраиваемостью. «1С: Торговля исклад» может быть адаптирована к любым особенностям учета на конкретномпредприятии. В состав системы входит Конфигуратор, который позволяет принеобходимости настроить все основные элементы системы:
- редактировать существующие и создавать новые необходимыедокументы любой структуры,
- изменять экранные и печатные формы документов,
- создавать журналы для работы с документами и произвольноперераспределять документы по журналам для эффективной работы с ними,
- редактировать существующие и создавать новые справочникипроизвольной структуры,