Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Формальные правила выделения информационных объектов из документов




Классификация документов предметной области

Технология разработки информационно-логической модели данных

Определение логической структуры базы данных

Разработка информационно-логической модели данных предметной области

 

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

Анализ выявленных данных позволит определить функциональные зависимости реквизитов, которые используются для выделения информационных объектов, соответствующих требованиям нормализации данных.

Наиболее важные требования заключаются в следующем:

¨ каждый информационный объект за исключением тех, которые не имеют подчиненных ИО, должен содержать уникальный идентификатор-ключ;

¨ все описательные (неключевые) реквизиты должны быть взаимно независимы;

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

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

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

 

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

В дальнейшем разработка продолжается средствами СУБД, т. е. конструируются таблицы базы данных. Структура таблиц базы данных задается с помощью средств описания (конструирования) таблиц в СУБД в полном соответствии информационным объектам.

 

 

 

 

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

Данные об объектах предметной области находятся (либо могут находиться) в некоторых документах, которые являются основными носителями информации при автоматизированной обработке. Под документом понимается информационное сообщение на естественном языке, зафиксированное ручным или печатным способом на бланке установленной формы, имеющем юридическую силу. Как правило, любой документ можно разделить на три взаимосвязанные части (рис. 1.1): заголовочную (1), содержательную (2) и оформляющую (3), некоторые из которых могут отсутствовать.

 

Получатель: ЗАО «Торговый центр» УНН 268700401

Адрес: г. Гомель, Университетский проспект, 4

Поставщик: ПО «Неман» УНН 681000740

Адрес: г. Гродно, ул. Замковая, 28

Приходная накладная № 360 от 20.09.2002 г.

Номенкла- турный номер Наиме- нование Ед. изм. Цена Коли- чество Стои- мость Сумма НДС Всего
63-5277-855 Масло сливочное кг 1 500   3 000 000 600 000 3 600 000
63-0631-309 Молоко сгущенное ящик 16 000   800 000   800 000
63-1550-009 Творог кг     950 000 190 000 1 140 000
Итого 4 750 000 790 000 5 540 000

Кладовщик Полочкина А. Д.

(подпись)

Бухгалтер Численко Р. Е.

(подпись)

Рис. 1.1. Структура первичного документа

 

Заголовочная часть содержит следующие характеристики документа и учитываемого объекта:

¨ наименование учитываемого объекта (предприятия, организации, работающего);

¨ характеристику документа (индекс, код по ОКУД);

¨ наименование документа;

¨ зону для проставления кодов постоянных для документа реквизитов-признаков.

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

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

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

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

Рассмотрим определенные виды документов:

¨ документ с постоянной заголовочной и изменяемой содержательной частью «неограниченного размера». Например, журнал учета платежных поручений предприятия, перечень услуг предприятия (рис. 1.2);

Перечень услуг предприятия

Наименование услуги Стоимость Срок выполнения, дней Гарантия, месяцев
Ремонт телевизора 15 000    
Установка антенны 8 000    
¼ ¼ ¼ ¼

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

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

 

КВИТАНЦИЯ № 2157 Услуги связи за март

 

Телефон 55-17-90

Домашний адрес г. Гомель,

ул. Победы 11, кв. 25

ФИО Петренко О. А.

 

Абонементная плата за месяц 3 200 р.

АПУС 8 900 р.

МТР 5 100 р.

ИТОГО к оплате 17 200 р.

 

Дата оплаты 15.04.03

 
 


Подпись плательщика Петре

 

Рис. 1.3. Пример документа без содержательной части

¨ документ на основе бланка с изменяемыми заголовочной и содержательными частями. Например, выписка банка, накладная (рис. 1.4);

 

Получатель: ЗАО «Торговый центр» УНН 268700401

Адрес: г. Гомель, Университетский проспект, 4

Поставщик: ПО «Неман» УНН 681000740

Адрес: г. Гродно, ул. Замковая, 28

Приходная накладная № 360 от 20.09.2002 г.

Номенкл. номер Наиме- нование Ед. изм. Цена Коли- чество Стоимость Сумма НДС Всего
63-5277-855 Масло сливочное кг 1 500   3 000 000 600 000 3 600 000
63-0631-309 Молоко сгущенное ящик 16 000   800 000   800 000
¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼

 

Рис. 1.4. Пример документа с изменяемыми
заголовочной и содержательной частями

 

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

Будем рассматривать далее следующие виды сгруппированных документов:

¨ папка из однотипных документов вида 1, 2 или 3 с постоянным заголовком (или заголовком, изменяемая часть названия которого находится среди реквизитов составляющих ее документов). Например, книга договоров подряда, архив выписок банка по месяцам;

¨ папка из однотипных документов вида 1, 2 или 3 с заголовком, зависящим от некоторого набора внешних реквизитов. Например, реестр услуг предприятия по каждому подразделению, журнал учета накладных по лицензионным видам деятельности.

 

 

 

Методика построения информационно-логической модели данных предметной области, информационные объекты (ИО) которой представлены документами, рассмотренными выше, включает следующие этапы:

¨ классификация и определение состава реквизитов документов;

¨ классификация документов предметной области;

¨ выделение ИО из документов;

¨ определение структуры ИО и связей между ними.

 

1.2.2.1. Классификация и определение состава реквизитов
документов

 

На первом этапе разработки информационно-логической модели данных необходимо сравнить несколько отдельных экземпляров документа (или их папок) и проанализировать, какие атрибуты могут изменяться. Сразу следует исключить из дальнейшего рассмотрения постоянные и вычисляемые реквизиты. Например, в накладной неизменные название и атрибуты предприятия-продавца присутствуют в каждом документе, а Стоимость рассчитывается как произведение Цены на Количество единиц продукции, которые также входят в накладную. Аналогично в платежном поручении реквизит Сумма прописью определяется суммой платежа, выраженной числом. Следовательно, перечисленные реквизиты не должны рассматриваться в ИЛМ.

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

 

Таблица 1.1. Бланк вида 1

Назначение реквизита Имя в базе данных Тип реквизита
     

 

1.2.2.2. Классификация документов предметной области

 

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

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

Вид документа Вид папки Преобразование документов Логическое представление
  Нет Так как в заголовочной части документа нет ни одного изменяемого реквизита, следовательно заголовочная часть документа в ИО не включается ИО из изменяемых реквизитов содержательной части документа
  Нет Так как все реквизиты данного типа документа являются постоянными (неизменяемыми), следовательно, все они не включаются в состав ИО ИО не включается в базу данных
  Нет Так как в отдельном документе значения реквизитов заголовочной части не изменяются, то все они не включаются в состав ИО ИО из изменяемых реквизитов содержательной части документа
    Так как изменяемые реквизиты заголовка папки имеются среди реквизитов самого документа, то реквизиты заголовка папки выделяются в отдельный ИО ИО из изменяемых реквизитов содержательной части документа
    Так как изменяемые реквизиты заголовка папки имеются среди реквизитов самого документа, то реквизиты заголовка папки выделяются в отдельный ИО ИО из реквизитов документа, значения которых изменяются при переходе из документа в документ
    Так как изменяемые реквизиты заголовка папки имеются среди реквизитов самого документа, то реквизиты заголовка папки не выделяются в отдельный ИО, а изменяемые реквизиты заголовочной и содержательной части документа образуют два ИО Формируются два ИО: 1-й — на основе изменяемых реквизитов заголовочной части документа; 2-й — на основе изменяемых реквизитов содержательной части документа
    Так как изменяемые реквизиты заголовка папки отсутствуют среди реквизитов документа, следовательно, они образуют еще один дополнительный ИО Формируются два ИО: 1-й — из изменяемых реквизитов заголовка папки; 2-й — из изменяемых реквизитов содержательной части документа
    Так как изменяемые реквизиты заголовка папки отсутствуют среди реквизитов документа, следовательно, они образуют еще один дополнительный ИО Формируются два ИО: 1-й — из изменяемых реквизитов заголовка папки; 2-й — из изменяемых реквизитов документа
    Так как изменяемые реквизиты заголовка папки отсутствуют среди реквизитов документа, следовательно, формируется отдельный ИО из изменяемых реквизитов заголовка папки. Изменяемые реквизиты заголовочной и содержательной части документа образуют два ИО Формируются три ИО: 1-й — из изменяемых реквизитов заголовка папки; 2-й — из изменяемых реквизитов заголовочной части документа; 3-й — из изменяемых реквизитов содержательной части документа

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

¨ информационный объект из изменяемых реквизитов содержательной части документа (список);

¨ папка из списков, каждый из которых содержит свою заголовочную часть;

¨ архив из папок, каждая из которых содержит свой заголовок.

 

1.2.2.3. Выделение информационных объектов из документов

 

Для выполнения данного этапа необходимо разделить реквизиты документов на группы в соответствии с ИО, которые они описывают. Сформулируем алгоритм определения ИО для документа уровня 1,
т. е. списка с постоянной заголовочной частью, рассмотрев два примера. При этом результаты выполнения этапа будем отображать в бланке 2, приведенном в табл. 1.3. Столбец Входной документ предназначен для исходного документа, а также для уточнения содержания внешних ИО, которые неявно присутствуют в оперативных данных. Имена, которые присваиваются ИО, отображаются в столбце Информационный объект. Группа реквизитов из бланка 1, описывающая ИО, заносится в столбец Реквизиты.

 

Таблица 1.3. Бланк вида 2

Входной документ Информационный объект Реквизиты
     

 

Для построения алгоритмов выделения ИО из документов указанных видов рассмотрим несколько примеров.

 

Задача 1. Выделить информационный объект из перечня услуг предприятия, который представлен на рис. 1.5.

 

Перечень услуг предприятия

Наименование услуги Стоимость Срок выполнения, дней Гарантия, месяцев
Ремонт телевизора 15 000    
Установка антенны 8 000    
¼ ¼ ¼ ¼

 

Рис. 1.5. Образец перечня услуг предприятия

Так как все реквизиты принадлежат одному объекту оперативного учета Услуги, тогда ему соответствует один ИО, который можно оставить без ключевого поля (табл. 1.4).

 

Таблица 1.4. Бланк 2 для задачи 1

Входной документ Информационный объект Реквизиты
Перечень услуг предприятия Услуги Наименование
Стоимость
Срок
Гарантия

 

Задача 2. Выделить ИО из журнала учета платежных поручений предприятия. Он имеет вид списка, который представлен на рис. 1.6.

 

Дата Сумма Получатель Счет Банк Код банка Назначение
¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼
  05.12.02 501 000 ЗАО «Марс-Люкс»   ОАО «Талер»   Ремонт офиса
  05.12.02 32 500 ПКФ «Трэйд-Супер»   АКБ «Гарант»   Услуги связи
¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼

Рис. 1.6. Пример журнала учета платежных поручений предприятия

 

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

 

Таблица 1.5. Бланк 2 задачи 2 до выделения внешних объектов

Входной документ Информационный объект Реквизиты
Журнал учета платежных поручений предприятия. Платежки Номер
Дата
Сумма
Название получателя
Счет
Код банка
Название банка
Назначение

Среди всех реквизитов есть группа реквизитов, принадлежащих нескольким внешним объектам. Это прежде всего атрибуты получателя: его название, счет в банке, наименование и код банка. Действительно, одному и тому же предприятию-получателю плательщик может перечислять деньги более одного раза. Следовательно, нужно ввести новый нормативно-справочный ИО Получатели, добавив к нему ключевое поле Код получателя типа Счетчик и пометив в бланке 2 символом * (табл. 1.6). Для удобства восприятия ИЛМ назначение нового ИО детализируем в столбце Входной документ бланка. В столбце Реквизиты для исходного ИО Платежки напротив полей, соответствующих внешнему ИО Получатели, в скобках запишем имя его ключевого поля.

 

Таблица 1.6. Бланк 2 задачи 2 после выделения ИО Получатели

Входной документ Информационный объект Реквизиты
Справочник получателей Получатели Код получателя *
Название получателя
Счет
Код банка
Название банка
Журнал учета платежных поручений предприятия Платежки Номер
Дата
    Сумма
Название получателя (Код получателя)
Счет(Код получателя)
Код банка(Код получателя)
Название банка (Код получателя)
Назначение

 

Аналогично проанализируем образованный информационный объект на наличие внешних объектов. В данном случае имеются два атрибута в справочнике получателей, соответствующие банку, в котором открыт счет. Следовательно, проделываем аналогичные операции, выделяя новый нормативно-справочный ИО Банки. При этом не приходится искусственно вводить ключевое поле — оно уже имеется в реквизитах исходного ИО (табл. 1.7).

 

 

Таблица 1.7. Бланк 2 задачи 2 после выделения ИО Банки

Входной документ Информационный объект Реквизиты
Справочник банков Банки Код банка *
Название банка
Справочник получателей Получатели Код получателя *
Название получателя
Счет
Код банка
Название банка (Код банка)
Журнал учета платежных поручений предприятия. Платежки Номер
Дата
Сумма
Название получателя (Код получателя)
Счет(Код получателя)
Код банка(Код получателя)
Название банка(Код получателя)
Назначение

 

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

 

Таблица 1.8. Окончательный вид бланка 2 задачи 2

Входной документ Информационный объект Реквизиты
Справочник банков Банки Код банка *
Название банка
Справочник получателей Получатели Код получателя *
Название получателя
Счет
Код банка
Название банка (Код банка)
Окончание табл. 1.8
Входной документ Информационный объект Реквизиты
Справочник назначений Назначения Код назначения *
Назначение
Журнал учета платежных поручений предприятия. Платежки Номер
Дата
Сумма
Название получателя (Код получателя)
Счет(Код получателя)
Код банка (Код получателя)
Название банка(Код получателя)
Назначение (Код назначения)

 

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

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

2. Определить в этой таблице наличие внешних объектов. Если они отсутствуют, то завершить работу.

3. В противном случае есть группа реквизитов, принадлежащих одному или более внешним объектам. Для каждого внешнего объекта выполнить шаги 4–7 алгоритма.

4. Создать новый нормативно-справочный ИО.

5. Определить в данном ИО наличие ключевого поля числового типа среди имеющихся реквизитов. Если оно отсутствует, то ввести ключевое поле типа Счетчик.

6. Добавить новый ИО в бланк вида 2, пометив ключевое поле символом *.

7. В столбце Реквизиты бланка 2 для исходного ИО напротив всех полей, соответствующих внешнему объекту, в скобках записать имя его ключевого поля.

8. Каждый образованный нормативно-справочный ИО проанализировать на однородность реквизитов. Если ни в одном справочнике нет внешних объектов еще более высокого уровня, то завершить работу.

9. В противном случае повторять процедуру выделения нормативно-справочных ИО, представленную шагами 4–7 данного алгоритма, пока не останется ни одного внешнего объекта.

Таким образом, на основе документа уровня 1 будет создана одна оперативно-учетная таблица, а также столько нормативно-справочных таблиц, сколько насчитывается внешних объектов. Практика проектирования ИЛМ на основе документов рассматриваемого вида показывает, что рекурсивная вложенность внешних объектов друг в друга более двух раз встречается крайне редко. Правила определения ИО для документов уровней 2 и 3 также построим, на основании приведенных ниже задач.

 

Задача 3. Выделить информационный объект из архива папок приходных накладных за каждый месяц. Отдельный документ папки имеет заголовочную и содержательную часть. Пример документа приведен на рис. 1.7 (изменяемые реквизиты заголовочной части выделены подчеркиванием).

 

Получатель: ЗАО «Торговый центр» УНН 268700401

Адрес: г. Гомель, Университетский проспект, 4

Поставщик: ПО «Неман» УНН 681000740

Адрес: г. Гродно, ул. Замковая, 28

Приходная накладная № 360 от 20.09.2002 г.

Номенкл. номер Наиме- нование Ед. изм. Цена Коли-чество Стоимость Сумма НДС Всего
63-5277-855 Масло сливочное кг 1 500   3 000 000 600 000 3 600 000
63-0631-309 Молоко сгущенное ящик 16 000   800 000   800 000
¼ ¼ ¼ ¼ ¼ ¼ ¼ ¼

 

Рис. 1.7. Пример приходной накладной

 

Прежде всего надо обратить внимание на то, что заголовок папки зависит от реквизита (даты) документа внутри нее. В таком случае архив эквивалентен папке из списков, каждый из которых содержит свою заголовочную часть. В любой накладной атрибуты получателя (наименование, УНН и адрес) остаются неизменными. Следовательно, их нужно исключить из состава реквизитов. Кроме того, атрибут списка Стоимость вычисляется умножением Цены на Стоимость, а атрибут Всего образуется добавлением к Стоимости значения НДС. Значит, атрибуты Стоимость и Всего исключаются из состава реквизитов ИО.

Так как согласно классификации документов этапа 2 папка из заголовочных документов эквивалентна списку, то создадим ИО оперативного учета из переменных реквизитов заголовочной части накладной. При этом, так как в заголовке есть уникальный числовой реквизит Номер накладной, то объявим его ключевым полем. Выделенный ИО занесем в бланк 2 этой задачи (табл. 1.9).

 

Таблица 1.9. Бланк 2 задачи 3 для ИО шапочной части накладной

Входной документ Информационный объект Реквизиты
Приходная накладная Накладные Номер накладной *
Дата
Наименование поставщика
УНН
Адрес

 

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

 

Таблица 1.10. Бланк 2 задачи 3 до выделения внешних объектов

Входной документ Информационный объект Реквизиты
Приходная накладная Накладные Номер накладной *
Дата
Наименование поставщика
УНН
Адрес
Поступления Номер накладной
Номенклатурный номер
Наименование товара
Единица измерения
Цена
Количество
Сумма НДС

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

 

Таблица 1.11. Окончательный вид бланка 2 задачи 3

Входной документ Информационный объект Реквизиты
Справочник поставщиков Поставщики Код поставщика *
Наименование поставщика
    УНН
Адрес
Справочник товаров Товары Код товара *
Номенклатурный номер
Наименование товара
Единица измерения
Цена
Приходная накладная Накладные Номер накладной *
Дата
Наименование поставщика (Код поставщика)
УНН (Код поставщика)
Адрес (Код поставщика)
Поступления Номер накладной
Номенклатурный номер (Код товара)
Наименование товара (Код товара)
Единица измерения (Код товара)
Цена (Код товара)
Количество
Сумма НДС

 

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

1. Создание ИО оперативного учета для заголовочной части. При этом, если в заголовке есть числовой реквизит Номер объекта (или Код объекта), то он выбирается ключевым полем. Если нет такого реквизита, то вводится ключевое поле Код объекта типа Счетчик.

2. ИО, соответствующий содержательной части, дополняется реквизитом Код объекта из заголовочной части.

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

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

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

 

Задача 4. Пусть приходные накладные, рассмотренные в задаче 3, оформляются предприятием-получателем таким образом, что все товары, представленные в одной накладной, отправляются только на один из всех складов предприятия. Однако заведовать несколькими складами может один и тот же кладовщик. На предприятии приходные накладные группируются в папку по каждому складу. Требуется выделить информационный объект из архива таких папок. Пример заголовка папки приведен на рис. 1.8.

Рис. 1.8. Пример заголовка папки накладных по складу

 

Все атрибуты заголовка являются изменяемыми и не присутствуют внутри самих накладных. Следовательно, они должны быть представлены в БД. При этом согласно классификации документов этапа 2 заголовки папок логически образуют список, т. е. документ уровня 1. Но так как фактически они находятся на более высоком уровне иерархии, то ему соответствует оперативно-учетный ИО с ключевым полем (табл. 1.12).

Таблица 1.12. Бланк 2 задачи 4 для заголовка папки накладной

Входной документ Информационный объект Реквизиты
Папка приходных накладных Папки Номер склада *
Наименование
ФИО кладовщика

 

Среди реквизитов ИО Папки есть группа реквизитов, принадлежащих внешнему объекту Кладовщик. Значит, нужно ввести новый нормативно-справочный ИО Кладовщики, добавив к нему ключевое поле Код кладовщика типа Счетчик. Связь отдельной накладной со складом можно организовать, включив ключевое поле ИО Папки в ИО Накладные, который является следующим в иерархии. Поскольку больше нет ссылок на внешние объекты, то бланк 2 примет окончательный вид после объединения ИО заголовка папки с расширенным на один реквизит бланком задачи 3 (табл. 1.13).

 

Таблица 1.13. Окончательный вид бланка 2 задачи 4

Входной документ Информационный объект Реквизиты
Справочник кладовщиков Кладовщики Код кладовщика *
ФИО кладовщика
Справочник поставщиков Поставщики Код поставщика *
Наименование поставщика
УНН
Адрес
Справочник товаров Товары Код товара *
Номенклатурный номер
Наименование товара
Единица измерения
Цена
Папка приходных накладных Папки Номер склада *
Наименование
Код кладовщика
Накладные Номер накладной *
Номер склада
Дата
Наименование поставщика (Код поставщика)
Окончание табл. 1.13
Входной документ Информационный объект Реквизиты
    УНН (Код поставщика)
Адрес (Код поставщика)
Поступления Номер накладной
Номенклатурный номер (Код товара)
Наименование товара (Код товара)
Единица измерения (Код товара)
Цена (Код товара)
Количество
Сумма НДС

 

Алгоритм выделения ИО для документа уровня 3, т. е. архива из папок, каждая из которых содержит свой заголовок, очевидно, аналогичен предыдущему случаю:

1. Создание ИО оперативного учета для заголовка папки. Если в ее заголовке есть числовой реквизит Номер папки (или Код папки), то он выбирается ключевым полем. Если нет такого реквизита, то вводится ключевое поле Код папки типа Счетчик.

2. ИО, соответствующий всей папке, дополняется реквизитом Код папки из ИО-заголовка.

3. ИО-заголовок преобразуется в соответствии с алгоритмом выделения ИО для документа уровня 1.

4. ИО, соответствующий папке (дополненный ключевым полем ИО-заголовка), преобразуется в соответствии с алгоритмом выделения ИО для документа уровня 2.

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

Если на практике придется представить более сложную иерархию документов, то приведенные алгоритмы легко обобщаются по схеме преобразования ИЛМ задачи 2 в ИЛМ задачи 3.

 

1.2.2.4. Определение структуры информационных объектов
и связей между ними

 

На основе бланка вида 2 создается представленный в табл. 1.14 бланк вида 3 с реквизитами ИО путем замены описательных реквизитов на ключевые и удаления повторяющихся ключей. Каждому ИО будет соответствовать таблица базы данных с полями, совпадающими с наименованиями реквизитов объекта.

 

Таблица 1.14. Бланк вида 3

Информационный объект Ключевой реквизит Описательные реквизиты
     

 

Приведем результаты выполнения данного этапа для каждой задачи, поставленной в предыдущем пункте 1.2.2.3 (таблицы 1.15–1.18).

 

Таблица 1.15. Бланк 3 задачи 1

Информационный объект Ключевой реквизит Описательные реквизиты
Услуги   Наименование, Стоимость, Срок, Гарантия

 

Таблица 1.16. Бланк 3 задачи 2

Информационный объект Ключевой реквизит Описательные реквизиты
Банки Код банка Название банка
Получатели Код получателя Название получателя, Счет, Код банка
Назначения Код назначения Назначение
Платежки   Номер, Код получателя, Дата, Сумма, Код назначения

 

Таблица 1.17. Бланк 3 задачи 3

Информационный объект Ключевой реквизит Описательные реквизиты
Поставщики Код поставщика Наименование поставщика, УНН, Адрес
Товары Код товара Номенклатурный номер, Наименование товара, Единица измерения, Цена
Накладные Номер накладной Дата, Код поставщика
Поступления   Номер накладной, Код товара, Количество, Сумма НДС

 

 

Таблица 1.18. Бланк 3 задачи 4

Информационный объект Ключевой реквизит Описательные реквизиты
Кладовщики Код кладовщика ФИО кладовщика
Поставщики Код поставщика Наименование поставщика, УНН, Адрес
Товары Код товара Номенклатурный номер, Наименование товара, Единица измерения, Цена
Папки Номер склада Наименование, Код кладовщика
Накладные Номер накладной Номер склада, Дата, Код поставщика
Поступления   Номер накладной, Код товара, Количество, Сумма НДС

 

Результат отображения построенной ИЛМ в логическую структуру реляционной БД можно выразить графически в виде схемы данных. ИО (таблица БД) изображается прямоугольником, куда вписываются все реквизиты ИО (поля таблицы). Имя ключевого поля для наглядности целесообразно выделить и привести внутри прямоугольника первым. Между связанными полями на схеме наносятся стрелки, направленные от ключевого поля в главном ИО (обычно справочнике) к этому же полю в зависимой таблице (обычно оперативной). Они символизируют связи типа 1:¥. Графические схемы данных ИЛМ для задач 2 и 4 приведены на рисунках 1.9 и 1.10.

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

 
 

 


Рис. 1.9. Схема ИЛМ данных задачи 2

 
 

 


Рис. 1.10. Схема ИЛМ данных задачи 4

 

 




Поделиться с друзьями:


Дата добавления: 2014-11-16; Просмотров: 896; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.154 сек.