-  Неявная компиляция исходного кода сервиса в исполняемый файл (dll). Службу можно написать и с использованием программы «Блокнот», указать путь к файлу в IIS и сервис заработает,

-  Неограниченные возможности по созданию программного кода. Доступны все технологии платформы программирования от Microsoft. Я использовал технологию доступа к данным . Никаких проблем с её использованием не возникало.

Приложение написано так, что нет дублирования программного кода – задача раздробленна на процедуры и функции – public и private. Служба представляет собой класс. Создание WEB службы аналогично написанию программы на «Java». Язык программирования «С» отличался от «Java» (для программиста) тем, что в «Java» можно пользоваться лишь классами (их процедурами, функциями, переменными), программируя их взаимодействие. В Visual C# всё так же скрыто за классами. С такими тенденциями, через пару лет останется только ООП ввиду всех его преимуществ.

WEB служба функционирует на сервере 1С, а данные передаются через сеть на WEB сервер. Схему локальной сети можно посмотреть на рисунке 1. Основную часть времени работы службы составляет выполнение процедур 1С. Время сериализации набора данных и время на отклик службы можно не учитывать(настолько оно мало). Таким образом можно сказать, что WEB служба показывает максимальную производительность.

2.4 Функции приложения

Структура страниц *.aspx и связей между ними (для построения использовался продукт «MS Visio Studio 2005»). Вид главного окна на этапе разработки представлен на рисунке 5.

НЕ нашли? Не то? Что вы ищете?

Рисунок 5 – главное окно приложения Visual Studio на этапе разработки

2.4.1 Схема работа Интернет сайта

Рисунок 6 – Схема работы Интернет портала

Таблица 1 - Графические обозначения:

Графическое

обозначение

Описание

Стартовая страница

Файл с расширением «aspx» - серверная страница, формируемая на стороне сервера в HTML код при запросе её пользователем. Конкретизация по именам файлов страниц.

Файл с расширением «ascx». Пользовательский элемент управления.

Файл в формате XML.

WEB Служба. В моей работе она одна.

База данный MS SQL Server. Конкретизация по именам задействованных таблиц.

Обработка, выполняющаяся на стороне сервера. Пояснение обработок содержится в подпункте «Описание действий».

Графический файл (Bitmap).

Файл в формате Microsoft Excel

Отправка почтового сообщения

Стрелки показывают направление движения данных. Например, стрелка под номером 16 означает, что данные, полученные с формы «Skolko. aspx» меняют или добавляют записи в таблица. Стрелка под номером 26 показывает аналогично предыдущей, но показывает, что данные не только пишутся в данную таблицу, но и берутся из неё для отображения пользователю. Стрелка под номером «14» показывает, что данные берутся из таблицы «_Nomenklatura», но записи таблицы не изменяются.

В схеме не отражено:

-  Протоколирование всех действий в таблицу _Statistika,

-  Схема авторизации пользователей.

2.4.2 Функциональное назначение страниц

Default.aspx. Стартовая страница приложения. Данная страница представлена на рисунке в следующем подразделе. На неё возложены такие функции: отображение информации о предприятии, авторизация пользователя, заказ товара,

Men.aspx. Страница для менеджеров. На данной странице осуществляется авторизация менеджеров, запускается процедура переноса данных с 1С через WEB службу в MS SQL Server, выгрузка остатков с удалённых магазинов, переход к административным страницам «Zakazi. aspx», «Statistika. aspx», «Polzovateli. aspx»,

Zakazi.aspx. Административная страница. Служит для просмотра всех заказов, их детального просмотра и изменения статуса выбранного заказа,

Statistika.aspx. Административная страница для просмотра статистики по использованию сайта,

Polzovateli.aspx. Административная страница для редактирования списка пользователей, добавления новых пользователей и получения статистики по выбранному пользователю,

Skolko.aspx. Задание количества выбранного товара в заказе при его формировании на странице «default. aspx»,

ShemaProezda.aspx. Информация о торговых точках компании. Схема проезда, график работы, телефоны, адреса,

Kontakt.aspx. Отправка текстового сообщение на электронный адрес выбранному должностному лицу. Не модерируется. Отправка происходит мгновенно,

Prajs.aspx. С этой страницы происходит запуск формирования прайс листа в формате xls и передача полученного файла пользователю через диалоговое окно «Сохранить Как…»,

Zakaz.aspx. Просмотр формируемого заказа пользователем, его редактирование и подтверждение.

В программе использовались «пользовательские элементы управления». Под этим понятием подразумевается динамически включаемый код из файла с расширением «ascx». Я использовал два подобных элемента. В какие страницы они включаются показано на рисунке 6. Данные объекты написаны на языке JavaScript. Код для объекта «derevo. ascx» позаимствован из [11] и доработан до нужного результата.

3 ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ ПРИЛОЖЕНИЯ

3.1 Общие принципы организации информационной базы

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

3.2 Передача данных удалённым точкам

Передача данных описана в разделе 2.2.

Передаются документы «Реализация», в том числе:

-  наименование номенклатурной позиции,

-  количество переданного товара,

-  страна производитель,

-  единицы учёта,

-  цена отпускная,

-  цена закупочная.

3.3 Ведение БД на WEB сервере с использованием SQL Server 2000

Концептуальная модель базы данных SQL Server показана на рисунке 7.

Рисунок 7 – Концептуальная модель базы данных на стороне WEB сервера (SQL Server).

Заполнение данной БД происходит посредством хранимых процедур, код некоторых из них приведён в приложении Г. В этом же приложение можно посмотреть пример выполнения SQL кода, формируемого в .

Разграничение доступа к БД на уровне пользователей не использовалось ввиду ненадобности. Организованно резервное копирование средствами СУБД. Также имеется ограничение ссылочной целостности. Все поля, по которым осуществляется поиск индексированны.

Таблицы БД. Их содержание и назначение:

Таблица 2 – список протоколируемых действий

Поле

Тип

Назначение

KodDejstv

Int

Автоинкрементное ключевое поле

Dejstvie

C(100)

Действие

Таблица 3 – ведение статистики по действиям пользователей в системе

Поле

Тип

Назначение

KodStat

Int

Автоинкрементное ключевое поле

Dejstv

Int

Связь с таблицей _StoDel

Data

Date

Дата и время действия

Polzovatel

int

Ссылка на таблицу _Polzovateli. (Если пользователь авторизирован)


Таблица 4 – список продаваемых товаров

Поле

Тип

Назначение

KodNom

С(9)

Ключевое поле

Otec

C(9)

Родитель (для построения дерева)

Naimenov

Int

Полное наименование

Strana

C(120)

Страна производитель

MinPartija

int

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

Photo

C(200)

Путь к фотографии товара

Opisanie

C(600)

Описание товара

EtoGruppa

smallInt

Позиция является группой

Таблица 5 – цены на товары

Поле

Тип

Назначение

KodCeni

Int

Автоинкрементное поле

Cena

money

Цена в рублях

Nomen

С(9)

Ссылка на _Nomenklatura

NomerPrajsa

smallint

Номер прайса

Таблица 6 – остатки товаров

Поле

Тип

Назначение

KodOstatka

Int

Автоинкрементное поле

Kolichestvo

Int

Остаток

Magazin

Int

Ссылка на _Magazini

Nomen

C(9)

Ссылка на _Nomenkalatura


Таблица 7 – остатки товаров

Поле

Тип

Назначение

KodMagazina

Int

Автоинкрементное ключевое поле

Naimenovanie

C(200)

Название магазина

Adress

C(200)

Адрес

Telephon

C(30)

Телефоны

VremjaRaboti

C(50)

Время работы

ShemaProezda

C(120)

Путь к файлу. jpg, содержащему схему проезда к данному магазину

DataOstatkov

DateTime

Дата и время прошлой выгрузки остатков в _Ostatki по данному магазину

Таблица 8 – менеджеры (администраторы портала)

Поле

Тип

Назначение

KodMenedzera

Int

Автоинкрементное ключевое поле

Imja

C(20)

Имя доступа менеджера

Pass

C(15)

Пароль для доступа

Email

C(12)

Электронный адрес

DataZahoda

DateTime

Время последнего посещения

Таблица 9 – новости для покупателей.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4