Выделение объектов справочной информации 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Выделение объектов справочной информации



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

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

Анализ справочников товаров и покупателей. Определим функциональные зависимости между реквизитами документа "Справочник товаров", предварительно составив их перечень, как показано на рис. 2.9. Присвоим реквизитам справочника товаров сокращенные обозначения — имена.

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

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

Реквизиты справочника товаров Имя реквизита Функциональные зависимости
Код товара КОД_ТОВ

Наименование товара НАИМ_ТОВ
Единица измерения ЕИ
Цена ЦЕНА
Ставка НДС СТАВКА_НДС

 

Рис. 2.9. Функциональные зависимости реквизитов справочника товаров

Для документов с такой простейшей структурой данных нет необходимости в дополнительных действиях по выделению информационных объектов, т. к. здесь все реквизиты образуют одну группу реквизитов с общим ключом, т. е. все реквизиты простейшего справочника образуют один информационный объект. Назовем такой объект для данного документа ТОВАР с ключом Код товара (КОД_ТОВ).

Аналогично легко определить информационный объект по справочнику покупателей. Если в качестве ключа принять Код покупателя (КОД_ПОК), более короткий по сравнению с ИНН, он однозначно определит реквизиты: ИНН, Наименование, Адрес, Телефон, Банк, Номер расчетного счета. Соответственно выделяется информационный объект ПОКУПАТЕЛЬ с ключом Код покупателя.

ЗАМЕЧАНИЕ

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

Реквизитный состав информационных объектов справочника товаров и справочника покупателей представлен в табл. 2.3.

Таблица 2.3. Группировка реквизитов по информационным объектам ТОВАР и ПОКУПАТЕЛЬ

Реквизиты объекта Признак ключа Имя информационного объекта Семантика объекта
КОД_ТОВ Простой уникальный

ТОВАР

Сведения о поставляемых товарах

НАИМ_ТОВ  ЦЕНА  ЕИ СТАВКА_НДС  
КОД_ПOK Простой уникальный

ПOKУПАТЕЛЬ

Сведения о покупателях фирмы

ИНН  НАИМ_ПОК АДРЕС_ПОК ТЕЛ НОМ_РСЧ  БАНК  

 

 

Анализ документа "Справочник складов фирмы". Определим функциональные зависимости между реквизитами документа "Справочник складов фирмы", предварительно составив их перечень (рис. 2.10). Присвоим реквизитам сокращенные обозначения — имена. Все описательные реквизиты склада: Наименование склада (НАИМ_СК), Адрес (АДРЕС_СК), Отв. лицо (ОТВ_ЛИЦО) однозначно определены Кодом склада (КОД_СК), который поэтому является ключевым. Обратим внимание, что в общей части документа указан Код фирмы (КОД_Ф) — один для всего списка складов. Очевидно, каждому значению кода склада соответствует только одно значение кода фирмы, т. е. можно считать, что имеет место полная функциональная зависимость кода фирмы от кода склада. Наименование фирмы определяется однозначно кодом фирмы.

ЗАМЕЧАНИЕ

Если зависимость между КОД_Ф и КОД_СК не выявлена, то все множество реквизитов документа разделится на два не связанных между собой подмножества, а это не логично для реквизитов одного документа.

Все установленные функциональные зависимости реквизитов документа "Справочник складов фирмы" отражены на рис. 2.10.

Заметим, что реквизит КОД_Ф одновременно выступает в роли описательного реквизита в одной связи и ключевого — в другой. Таким образом, здесь мы сталкиваемся с транзитивной зависимостью. Реквизит НАИМ_Ф транзитивно зависит от КОД_СК через КОД_Ф. Тем не менее, специальных действий по расщеплению этой зависимости при следовании приведенным ранее правилам не потребуется.

 

Реквизиты справочника складов Имя реквизита Функциональные зависимости
Код фирмы КОД_Ф

Наименование фирмы НАИМ_Ф
Код склада КОД_СК
Наименование склада НАИМ_СК
Адрес АДРЕС_СК
Отв. Лицо ОТВ_ЛИЦО

 

Рис. 2.10. Функциональная зависимость реквизитов справочника складов фирмы

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

Так, при просмотре списка реквизитов сверху находим первый зависимый реквизит КОД_Ф, к которому подходит стрелка, и устанавливаем реквизит (ключевой), от которого идет стрелка — КОД_СК. Далее находим второй зависимый (описательный) реквизит НАИМ_Ф и устанавливаем его ключевой КОД_Ф. Аналогично находим описательный НАИМ_СК и устанавливаем его ключевой КОД_СК и т. д. Выявленное соответствие описательных и ключевых реквизитов представлено в табл. 2.4.

 

Таблица 2.4. Соответствие описательных и ключевых реквизитов документа "Справочник складов фирмы"

Описательные (зависимые) реквизиты Ключевые реквизиты ИО, включающий реквизиты
КОД_Ф КОД_СК СКЛАД
НАИМ_Ф КОД_Ф ФИРМА
НАИМ_СК КОД_СК СКЛАД
АДРЕС_СК КОД_СК СКЛАД
ОТВ_ЛИЦО КОД_СК СКЛАД

 

 

Сгруппируем реквизиты, зависимые от одних и тех же ключевых реквизитов, и объединим их с ключевыми реквизитами в один информационный объект. Результат группировки реквизитов документа "Справочник складов фирмы" приведен в табл. 2.5.

Таблица 2.5. Группировка реквизитов по информационным объектам документа "Справочник складов фирмы"

Реквизиты объекта Признак ключа Имя информационного объекта Семантика объекта
КОД_СК Простой уникальный

СКЛАД

Сведения о складах фирмы

КОД_Ф  НАИМ_СК АДРЕС_СК ОТВ_ЛИЦО  
 КОД_Ф Простой уникальный

ФИРМА

Сведения о фирме

 НАИМ_Ф   

 

Таким образом, на основе анализа документа "Справочник складов фирмы" выделены два информационных объекта: ФИРМА и СКЛАД.

Заметим, что особенность объекта ФИРМА состоит в том, что он имеет единственный экземпляр, поэтому данный объект можно не отображать в базе данных отдельной таблицей.

Выделение объектов плановой и учетной информации

Анализ документа "Договор на поставку товаров ". Определим функциональные зависимости реквизитов документа "Договор", предварительно составив их перечень (рис. 2.11). Присвоим реквизитам сокращенные обозначения — имена.

Реквизиты документа "Договор" Имя реквизита Функциональные зависимости
Номер договора НОМ_ДОГ

Дата договора ДАТА_ДОГ
Сумма по договору СУММА_ДОГ
Код покупателя КОД_ПОК
Код товара КОД_ТОВ
Срок поставки СРОК_ПОСТ
Количество поставки товара КОЛ_ПОСТ
Мин. партия поставки товара МИН_ПОСТ
Сумма поставки товара СУММА_ПОСТ

 Рис. 2.11. Функциональные зависимости реквизитов документа "Договор"

Рассмотрим функциональные зависимости между реквизитами общей части документа "Договор". Номер договора присваивается в порядке подготовки нового документа. Этот номер является уникальным среди всех номеров договоров.

Каждый из реквизитов: Дата заключения договора, Идентификатор покупателя (в качестве него примем код, соответствующий ИНН по справочнику покупателей) — имеет единственное значение в договоре. Соответственно, каждый из этих реквизитов однозначно определяется идентификатором документа — Номером договора. Общим идентификатором договора определяется также однозначно реквизит Сумма всего.

Кодом покупателя однозначно определяются описательные реквизиты покупателя: Наименование, ИНН, Адрес, Телефон, Банк, Расчетный счет. В таблице зависимостей их можно не отображать, поскольку информационный объект, образованный этими реквизитами, был уже выделен на основе справочника покупателей.

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

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

ЗАМЕЧАНИЕ

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

 

Описательные реквизиты товара Наименование, Единица измерения, Цена однозначно определены Кодом товара. Эти реквизиты можно не включать в таблицу зависимостей, поскольку их взаимосвязи были установлены ранее, при анализе справочника товаров. Что касается реквизитов-оснований документа, таких как Количество поставки товара, Сумма поставки товара, Мин. партия поставки товара — эти реквизиты внутри документа идентифицируются Кодом товара в соответствующей строке, а полная идентификация среди всех договоров образуется добавлением реквизита Номер договора к реквизиту Код товара. Все это справедливо лишь в том случае, если для любого товара Срок поставки может быть только один. Причем в этом случае реквизиты Количество поставки товара, Сумма поставки товара, Мин. партия поставки товара и Срок поставки товара функционально полно будут зависеть от составного ключа — Номер договора + Код товара.

Допустим, что в договоре для одного товара возможно несколько сроков поставки, тогда срок поставки должен войти в общий идентификатор для реквизитов Количество поставки товара, Сумма поставки товара и Мин. партия поставки товара. Таким образом, эти реквизиты будут функционально полно зависеть от составного ключа Номер договора + Код товара + Срок поставки (см. рис. 2.11).

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

 

 

Таблица 2.6. Группировка реквизитов по информационным объектам документа "Договор"

Реквизиты объекта Признак ключа Имя информационного объекта Семантика объекта
НОМ_ДОГ Простой уникальный

ДОГОВОР

Общие сведения по договору

ДАТА_ДОГ  КОД_ПОК СУММА_ДОГ  
НОМ_ДОГ + КОД_ТОВ + СРOK_ПОСТ Составной уникальный

ПОСТАВКА_ПЛАН

Сведения о поставках товаров по договору

КОЛ_ПОСТ МИН_ПОСТ СУММА_ПОСТ  

 

 Анализ документа "Накладная". Рассмотрим функциональные зависимости реквизитов общей части накладной. Номер накладной присваивается в порядке подготовки нового документа. Этот номер можно считать уникальным только среди всех номеров накладных, выписанных на данном складе (т. е. он не повторяется на данном складе). Для уникальной идентификации накладных по всей фирме надо принять составной идентификатор Номер накладной + Код склада.

Реквизиты Дата выписки накладной (отгрузки товаров) и Номер договора имеют единственное значение в накладной и, соответственно, каждый из них однозначно определяется идентификатором накладной (Номер накладной + Код склада). Общим идентификатором накладной определяется также однозначно реквизит Сумма всего. Дата заключения договора однозначно определяется Номером договора, что было уже учтено при анализе договора.

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

ИНН и Наименование покупателя однозначно определяются Кодом покупателя, что уже было учтено при анализе справочника покупателей.

Описательные реквизиты фирмы (ИНН и Наименование фирмы), выступающей в данном документе в качестве поставщика, определяются однозначно идентификатором фирмы — Кодом фирмы. Как было принято ранее, объект ФИРМА не целесообразно отображать отдельным объектом в базе данных.

Описательные реквизиты Наименование склада и Отв. лицо (ФИО ответственного лица) однозначно определены Кодом склада, что уже было учтено при анализе справочника покупателей.

ЗАМЕЧАНИЕ

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

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

ЗАМЕЧАНИЕ

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

Описательные реквизиты товара Наименование, Единица измерения, Цена, Ставка НДС однозначно определены Кодом товара, что уже было учтено при анализе справочника покупателей.

Реквизиты-основания накладной Количество отгруженного товара и Сумма за товар определяют количественные характеристики объекта — отгрузка товаров. Эти реквизиты внутри одной накладной идентифицируются Кодом товара в соответствующей строке, а полная идентификация на всем множестве накладных образуется добавлением к Коду товара идентификатора накладной. Таким образом, реквизиты Количество отгруженного товара и Сумма за товар однозначно определяются составным идентификатором Номер накладной + Код склада + Код товара.

На рис. 2.12 наглядно представлены все рассмотренные функциональные зависимости реквизитов накладной.

 Реквизиты документа "Накладная" Имя реквизита Функциональные зависимости
Номер накладной НОМ_НАКЛ

Код склада КОД_СК
Номер договора НОМ_ДОГ
Дата отгрузки ДАТА_ОТГР
Сумма всего СУММА_НАКЛ
Код товара КОД_ТОВ
Количество отгруженного товара КОЛ_ОТГР
 Сумма за товар СУММА_ОТГР

 

Рис. 2.12. Функциональные зависимости реквизитов

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

Таблица 2.7. Группировка реквизитов по информационным объектам документа "Накладная"

Реквизиты ИО Признак ключа Имя ИО Семантика ИО (описание)
НОМ_НАКЛ + КОД_СК Составной уникальный

НАКЛАДНАЯ

 Общие сведения по накладной

ДАТА_ОТГР НОМ_ДОГ СУММА_НАКЛ  
 НОМ_НАКЛ + КОД_СК + КОД_ТОВ  Составной уникальный

ОТГРУЗКА

 Данные по отгрузке товара

КОЛ_ОТГР СУММА_ОТГР  

 

 



Поделиться:


Последнее изменение этой страницы: 2021-06-14; просмотров: 77; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.224.246.203 (0.057 с.)