Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Базы данных. Практикум

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
1 Мб
Скачать

 

 

 

 

 

 

 

 

Окончание табл. 3

 

 

 

 

 

 

 

 

 

 

Операция

Заказ

Клиент

Заказываемые

Оплата

Наличие

Транспорт

Отчет

Накладная

 

 

 

 

товары

 

на складе

и грузчики

 

 

14

Прием денег от клиента

И

И

И

И

 

и выписка приходного

 

 

 

 

 

 

 

 

 

ордера

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

15

Выписка накладной

И

И

И

И

И

Ф

 

и отпуск товара

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16

Оформление накладной

Д

 

(подписи, печать)

 

 

 

 

 

 

 

 

17

Выписка требования

И

И

И

И

 

на склад

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

18

Выписка счета-фактуры

И

И

 

на отпуск товара

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

19

Регистрация счета-фактуры

 

в книге продаж

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

20

Выписка счета-фактуры

И

И

 

на транспортные услуги

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21

Регистрация счета-фактуры

 

в книге продаж

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

22

Выдача документов

Д

Д

 

клиенту

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23

Отпуск товара на складе

И

24

Выдача документов

Д

 

экспедитору

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

25

Погрузка и отправка товара

И

26

Напоминание

И

И

И

И

И

 

о необходимости оплаты

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

21

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

мации или о проекте документа, чтобы отличать неподписанные до-

кументы, не имеющие законной силы. Поэтому обозначение «Д» в нашей таблице не всегда корректно и следовало бы ввести обозначе- ние проекта документа. Тем не менее, особой путаницы такое смеше- ние в нашем рассмотрении не вызовет, а поэтому оставим все как есть.

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

Снова пропустим детали и приведем конечную таблицу (табл. 4). Приведем несколько комментариев по поводу табл. 4. Мы уже

вводили Счет и Накладную как группы информации, хотя и упоми- нали, что они являются документами. Ничего страшного, как мы увидим далее, различные объекты нашего внимания могут иметь не- сколько классификационных признаков, главное, чтобы их отнесение к тому или иному классу помогало работе.

Затем отметим, что, как только мы детализировали характери- стики необходимой информации, у нас начали всплывать новые группы. Так, нам потребовались прейскуранты товаров и услуг дос- тавки, которые, очевидно, являются новыми группами информации. Причем, если прейскурант услуг может оказаться и необязательным (например, если стоимость доставки включается в стоимость товара), то без прейскуранта товаров обойтись нельзя. Более того, на самом деле нам нужен не просто прейскурант, а нечто типа нормативного внутрифирменного документа по ценовой политике, определяющего условия скидок и надбавок цены. Далее, у нас появилась доверен- ность на получение товара, которую не отмечали в табл. 2. С одной стороны, она является документом, хотя и внешним, не создаваемым внутри фирмы, а с другой стороны, это некоторая новая группа ин- формации.

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

22

Таблица 4

Документы, создаваемые в процессе торговли

Название

Группы информации-

Характеристики

источники

 

 

 

 

 

 

 

1

Счет

Заказ, клиент,

Реквизиты счета: номер, дата выписки.

 

на товар

заказываемые товары,

Реквизиты фирмы: наименование фирмы, адрес, телефон / факс, банковские рекви-

 

 

прейскурант товаров

зиты, ФИО руководителя и главного бухгалтера.

 

 

 

Реквизиты клиента: те же, что и для фирмы-продавца.

 

 

 

Сведения о товаре: наименование, единица измерения, цена, количество, ставка НДС.

 

 

 

Сведения о стоимости: стоимость каждого товара, суммарная стоимость, НДС

2

Счет

Заказ, клиент,

Реквизиты счета: номер, дата выписки.

 

на услуги

заказываемые товары,

Реквизиты фирмы: наименование фирмы, адрес, телефон / факс, банковские реквизиты.

 

доставки

прейскурант услуг,

Реквизиты клиента: те же, что и для фирмы-продавца.

 

 

подтверждающие

Сведения об услугах доставки, оказываемых фирмой: наименование услуги, единица

 

 

документы сторонних

измерения, цена за единицу, объем услуг, НДС.

 

 

организаций

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

 

 

 

тверждающих документов (квитанций, накладных и т.п.), стоимость услуг.

 

 

 

Сведения о стоимости: стоимость каждой услуги, суммарная стоимость, НДС

3

Накладная

Те же, что и для счета

Те же, что и для счета на товары + реквизиты на получение товара: № и дата выписки

 

 

на товары

доверенности, ФИО получателя

4

Требование

Заказ, накладная

Сведения о клиенте: название фирмы, ФИО, получателя.

 

на склад

 

Сведения о товаре: объем и количество транспортных упаковок

5

Счет-фак-

Клиент, товары

См. реквизиты счета-фактуры в нормативных документах

 

тура

 

 

 

на товар

 

 

 

 

 

 

6

Счета-фак-

Клиент, услуги по

См. реквизиты счета-фактуры в нормативных документах

 

туры

доставке

 

 

на услуги

 

 

 

по доставке

 

 

 

 

 

 

23

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

 

 

Таблица 5

 

Информационные сводки

 

 

 

 

Наименование сводки

Потребитель сводки

 

1

Выставленные на предоплату счета

Финансовое подразделение,

 

 

 

руководитель

 

2

Должники

Менеджер, руководство

 

3

Объем продаж за какой-либо период

Руководство

 

 

в стоимостном выражении

 

 

4

Объем продаж за какой-либо период

Руководство

 

 

в натуральном выражении

 

 

5

Потребность в товарах

Подразделение закупок

 

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

Что касается пункта I, а), вопрос 5, прогнозировать в наших усло- виях что-либо сложно, кроме обязательного появления новых отчет- ных форм и документов.

2.4. Оценка эффективности автоматизации технологического процесса

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

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

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

2.Снижение трудозатрат сотрудников фирмы. Это позволит не увеличивать число работников при увеличении объема продаж.

3.Эффективный контроль оплаты товаров. Финансовое под-

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

4.Надежный учет продаж.

24

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

2.5. Постановка задачи

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

Поэтому перепишем табл. 1 с переносом ряда операций на ком- пьютер и посмотрим, повышает ли это эффективность работы по на- шим критериям (табл. 6).

Таблица 6

Операции мелкооптовой торговли с учетом компьютерных возможностей

 

 

Источник

 

 

 

 

информации

Исполни-

 

Операции

для выполнения

Комментарии

тель

 

 

операции

 

 

 

 

 

 

 

(лицо / документ)

 

 

1

Прием заказа

Клиент / –

Менеджер,

Ввод в компьютер

 

 

 

компьютер

 

2

Выписка счета

Компьютер

Компьютер

Формирует

 

на заказанный

 

 

из данных по заказу

 

товар

 

 

 

3

Оформление

Менеджер / счет

Менеджер /

Очевидно, ручная

 

счета на товар

 

секретарь

операция

 

(подписи,

 

 

 

 

печать)

 

 

 

4

Выписка счета

Компьютер

Компьютер

Формирует из дан-

 

на услуги

 

 

ных по заказу

 

по погрузке и

 

 

и прейскуранта

 

доставке товара

 

 

услуг доставки

5

Оформление

Менеджер / счет

Менеджер /

Очевидно, ручная

 

счета на услуги

 

секретарь

операция

 

(подписи,

 

 

 

 

печать)

 

 

 

6

Отправка счета

Менеджер / счет

Секретарь

Компьютерный вари-

 

клиенту

 

 

ант практически не

 

 

 

 

реализуем в силу

 

 

 

 

низкого технического

 

 

 

 

уровня большинства

 

 

 

 

клиентов

25

 

 

 

 

Продолжение табл. 6

 

 

 

 

 

 

 

 

Источник

 

 

 

 

 

информации

Исполни-

 

 

Операции

для выполнения

Комментарии

 

тель

 

 

 

операции

 

 

 

 

 

 

 

 

 

(лицо / документ)

 

 

 

7

Оплата выстав-

– / счет

Клиент

Компьютерный вари-

 

 

ленного счета

 

 

ант практически не

 

 

 

 

 

реализуем в силу

 

 

 

 

 

низкого технического

 

 

 

 

 

уровня большинства

 

 

 

 

 

клиентов и невоз-

 

 

 

 

 

можности доступа в

 

 

 

 

 

банковские системы

 

8

Оплата товара

– / накладная

Клиент

Аналогично преды-

 

 

 

 

 

дущему

 

9

Прием денег

Клиент, менед-

Кассир,

Компьютер форми-

 

 

от клиента

жер / счет, на-

компьютер

рует приходный ор-

 

 

и выписка при-

кладная

 

дер из данных счета

 

 

ходного ордера

 

 

и введенных данных

 

 

 

 

 

о плательщике

 

10

Проверка оп-

Клиент / копия

Менеджер,

Ввод в компьютер

 

 

латы по копии

платежки

компьютер

 

 

 

платежного

 

 

 

 

 

поручения

 

 

 

 

11

Проверка оп-

Бухгалтер / пла-

Менеджер,

Ввод в компьютер

 

 

латы по при-

тежки

компьютер

 

 

 

ходу денег в

 

 

 

 

 

банк

 

 

 

 

12

Проверка опла-

Бухгалтер / при-

Компьютер

Отметка об оплате по

 

 

ты по приходу

ходный ордер

 

выводу на печать

 

 

наличных в

 

 

приходного ордера

 

 

кассу

 

 

 

 

13

Определение

Клиент, склад,

Менеджер,

Ввод в компьютер

 

 

дня и времени

подразделение

компьютер

соответствующих

 

 

отпуска и ре-

доставки / доку-

 

данных. При наличии

 

 

зервирование

мент оплаты

 

складской системы

 

 

товара

 

 

можно автоматизиро-

 

 

 

 

 

вать резервирование

 

14

Резервирование

Клиент, подразде-

Менеджер

В малой фирме мало-

 

 

транспорта и

ление доставки /

 

вероятен компьютер-

 

 

грузчиков

документ оплаты

 

ный учет транспорт-

 

 

 

 

 

ной службы

 

15

Выписка на-

Клиент, менед-

Менеджер,

Ввод данных доверен-

 

 

кладной на

жер / доверен-

компьютер

ности менеджером и

 

 

отпуск товара

ность

 

формирование на-

 

 

 

 

 

кладной компьютером

 

26

 

 

 

 

 

 

 

 

 

Окончание табл. 6

 

 

 

 

 

 

 

 

Источник

 

 

 

 

 

информации

Исполни-

 

 

Операции

для выполнения

Комментарии

 

тель

 

 

 

операции

 

 

 

 

 

 

 

 

 

(лицо / документ)

 

 

 

16

Оформление

Менеджер / на-

Менеджер /

Ручная операция

 

 

накладной

кладная

секретарь

 

 

 

(подписи, печать)

 

 

 

 

17

Выписка требо-

– / накладная

Компьютер

По данным

 

 

вания на склад

 

 

накладной

 

18

Выписка счета-

Клиент / наклад-

Компьютер

По данным

 

 

фактуры на

ная

 

накладной

 

 

отпуск товара

 

 

 

 

19

Регистрация

– / счет-фактура

Компьютер

 

 

 

счета-фактуры

 

 

 

 

 

в книге продаж

 

 

 

 

20

Выдача доку-

 

Менеджер

 

 

 

ментов клиенту

 

 

 

 

22

Выдача доку-

 

Менеджер

 

 

 

ментов экспе-

 

 

 

 

 

дитору

 

 

 

 

23

Погрузка и

 

Экспедитор

 

 

 

отправка товара

 

 

 

 

24

Напоминание о

Компьютер

Менеджер,

Компьютер выводит

 

 

необходимости

 

компьютер

сводки о задолжен-

 

 

оплаты

 

 

ностях

 

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

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

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

27

3. РАЗРАБОТКА СТРУКТУРЫ БАЗЫ ДАННЫХ

3.1. Концептуальная схема базы данных

Прежде всего, сформулируем основные правила выбора сущно- стей, описывающих предметную область.

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

2.Каждый атрибут класса описывается ровно одним столбцом (полем) в своей таблице.

3.Крайне не рекомендуется использовать объекты с повторяю- щимися атрибутами (полями).

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

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

6.Поля, не входящие в первичный ключ, не должны зависеть друг от друга.

7.Поля (атрибуты) должны содержать минимально возможные элементы информации.

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

Первые три правила определяются понятием реляционной модели данных. Следующие три правила выражают условия нормализации.

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

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

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

28

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

документ;

статистический объект;

динамический объект.

Отметим, что этих трех типов обычно достаточно для моделиро- вания почти любой задачи.

Моделирование документов

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

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

Заголовок документа представляет собой набор отдельных атри- бутов и естественным образом описывается строкой таблицы, пред- ставляющей класс объектов заголовков. Кстати, обычное деловое письмо тоже можно представить в виде документа, состоящего из од- ного заголовка, если всю текстовую часть его вынести в отдельное поле (многие СУБД представляют для этого целых два варианта memo-поле и поле OLE). Очевидно, табличную составляющую надо представлять как подчиненный класс объектов, каждый из которых описывается одной строкой таблицы.

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

29

пространенный метод ввести поле (условно назовем его «Уникаль- ный номер документа в таблице») и объявить его первичным ключом.

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

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

Приступим к проектированию заголовка и создадим таблицу «То- варные счета». Какие поля в нее будут входить?

Во-первых, как уже говорилось выше, в качестве первичного ключа зададим поле «Порядковый номер счета» (мы его условно на- зывали «Уникальный номер счета»), причем для удобства исполь- зуем в качестве названия аббревиатуру «ПНС». Во-вторых, поля «Номер» для регистрационного номера счета, и «Выписан» – для даты выписки (регистрации) счета.

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

Еще один «скользкий» момент связан с производными атрибутами счета, то есть вычисляемыми по значениям других атрибутов. К ним от- носятся интегральные стоимостные показатели, которые вычисляются по значениям атрибутов из строк табличной части документа. Вообще гово- ря, производные характеристики не рекомендуется хранить в таблице: во- первых, этого требует правило 6, а во-вторых, усложняется структура таблицы. При необходимости использования производных атрибутов всегда можно воспользоваться механизмом запросов. Однако выполне- ние запросов требует дополнительных затрат машинных ресурсов (до-

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]