Сведения, характеризующие оплату за отгруженные изделия, находятся в платежном требовании ПТР (таблица 4).
С документа ПТР для решения задачи в базу данных обязательно должны поступать основные данные, определяющие оплату: номер ПТР, идентификатор заказчика, оплатившего изделия, дата оплаты, номер ТТН, определяющий оплачиваемую отгрузку, идентификаторы оплаченных изделий и оплаченные количества, а также общая сумма оплаты по ПТР.
Таблица 4. Документ входной учетной информации по оплате
Платежное требование №_______
Дата оплаты:___________________
По ТТН № ___________________
Заказчик
Наименование:_____________
Код: _________
Изделие | Единицы измерения | Оплачено, шт. | |
Наименование | Код |
Остальные реквизиты ПТР могут быть определены в базе данных по кодам из имеющейся там информации, которая должна быть загружена из справочников готовых изделий и заказчиков на этапе, предшествующем решению данной задачи. К этим данным относятся: наименование и единица измерения изделия, наименование заказчика и его адрес. Описание реквизитов входной информации приведено в таблице 5.
Таблица 5. Описание реквизитов входной информации
Наименование реквизитов | Характеристика | |
входных документов | Тип | Максимальная длина |
НТТН | Числ. | Целое (2 байта) |
Дата отгрузки | Дата | 8 |
Код заказчика | Числ. | Целое (2 байта) |
Наименование заказчика зазззаказчиказаказчика | Текст | 50 |
Адрес заказчика | Текст | 20 |
Код изделия | Числ. | Целое (2 байта) |
Наименование изделия | Текст | 30 |
Единица измерения | Текст | 10 |
Цена за (руб) кг | Денежн. | Длинное целое (8 байт) |
Количество отгрузки | Числ. | С плавающей точкой(4 байта) |
Сумма отгрузки | Денежн. | Длинное целое (8 байт) |
НПТР | Числ. | Целое (2 байта) |
Дата оплаты | Дата | 8 |
Количество оплаты | Числ. | С плавающей точкой(4 байта) |
Сумма оплаты | Денежн. | Длинное целое (8 байт) |
Выходной информацией задачи для пользователя являются два документа:
• отчет по заданному изделию, содержащий сведения об оплаченной части отгрузки и недоплате. Отчет должен быть выдан по всем заказчикам, ТТН и датам отгрузки;
• список изделий, по которым имеется недоплата. Список может содержать по всем изделиям данные об отгрузке, оплате и заказчике.
Эти документы должны выводиться на экран и печать. Формы выходных документов приведены в таблицах 6 и 7.
Таблица 6. Форма выходного документа задачи с результатом анализа оплат заданного изделия
Отчет
Оценка оплаты отгруженной части изделия___________
№ТТН | Код заказчика | Дата | Отгружено, шт. | Оплачено, шт. | Недоплата |
Таблица 7. Форма выходного документа задачи, содержащая список изделий, по которым имеется недоплата
Отчет
Изделия, по которым имеется недоплата
Код изделия:
Наименование изделия:______
№ТТН | Дата отгрузки | Отгружено, шт. | Недоплата | Наименование заказчика | Адрес заказчика |
Разработка информационного обеспечения включает подготовку документов, содержащих информацию, необходимую для решения задачи, и анализ этой информации. Такой анализ позволит произвести формализацию данных, которая имеет целью их однозначное определение для хранения, поиска и обработки во внутримашинной сфере.
Для организации информационной базы будем использовать реляционную СУБД. Поэтому должна быть разработана логическая структура реляционной базы данных, на основе которой будет осуществляться решение задачи.
Произведем анализ исходной информации предметной области с целью определения состава и структуры информации для последующей формализации и построения информационно-логической модели данных. Приведенные выше формы входных документов, а также дополнительные сведения из описания предметной области позволяют определить роль реквизитов во взаимосвязанной информации, содержащейся в документе. На основе такого анализа установим функциональные зависимости реквизитов в соответствии с рекомендациями и требованиями нормализации данных.
Рассмотрим информацию, содержащуюся в документе ТТН. В заголовочной части ТТН содержатся реквизиты (номер документа, дата отгрузки, код заказчика, сумма отгрузки), общие для всего документа. Причем каждый из них имеет единственное значение, так как один документ ТТН всегда привязан к одному договору и соответственно к одному заказчику. Среди этих реквизитов особую роль играет номер ТТН. Поскольку номер ТТН уникален, то есть его значение не может повториться, он выполняет роль идентификатора всей информации по отгрузке изделий, содержащейся в документе с данным номером. Остальные реквизиты заголовочной части ТТН, а также общая сумма оплаты однозначно определяются номером ТТН.
Табличная часть ТТН содержит реквизиты, имеющие множество значений в соответствующих столбцах, так как ТТН может содержать несколько наименований отгруженных изделий. Среди этих реквизитов особую роль играет код изделия, который является идентификатором каждой строки документа. Таким образом, количественные данные об отгрузке, содержащиеся в каждой строке, идентифицируются (однозначно определяются) общим идентификатором документа - номером ТТН, а также кодом изделия. Описательные реквизиты изделия (в том числе единица измерения) и заказчика определяются однозначно их кодами. На основе проведенного анализа установим функциональные зависимости реквизитов документа ТТН и отобразим их в таблице 8.
Таблица 8. Функциональные зависимости реквизитов ТТН
Аналогично проанализируем информацию, содержащуюся в ПТР и «Справочнике изделий». В соответствии с описанием предметной области установим функциональные зависимости их реквизитов. Поскольку номер ПТР уникален только для заказчика, для идентификации каждого ПТР кроме номера документа используем код заказчика (или номер ТТН). Такой составной идентификатор является общим для всей информации, содержащейся в конкретной ПТР. Поскольку для каждой ПТР всегда есть ТТН, по которой оплачивается отгрузка, номер ТТН однозначно определяется идентификатором ПТР. Общая сумма оплаты также однозначно определяется этим идентификатором. В табличной части данные по оплате определяются общим идентификатором документа и кодом изделия, указанным в строке. В результате такого анализа установлены функциональные зависимости реквизитов из ПТР и «Справочника изделий», которые представлены в табл. 9.
Таблица 9. Функциональные зависимости реквизитов ПТР и справочника изделий
Выявим ключевые и описательные реквизиты на основе полученных выше функциональных.
Таблица 10. Соответствие описательных и ключевых рекеизитов
Описательные реквизиты | Ключевые реквизиты | Вид ключа | Названия ИО, в кот. включ. реквизит |
КЗ | НТТН | П,У | ТТН |
НИ | КИ | П,У | Изделие |
ЕИ | КИ | П,У | Изделие |
НЗ | КЗ | П,У | Заказчик |
АЗ | КЗ | П,У | Заказчик |
КОЛОТГ | КИ, НТТН | С,У | Отгрузка (ОТТН) |
СУМОТГ | НТТН | П,У | ТТН |
ДОТГ | НТТН | П,У | ТТН |
НТТН | КЗ, НПТР | С,У | ПТР |
КОЛОПЛ | КЗ, КИ, НПТР | С,У | Оплата (ОПТР) |
ДОПЛ | КЗ, НПТР | С,У | ПТР |
СУМОПЛ | КЗ, НПТР | С,У | ПТР |
ЦЕНАИ | КИ | П,У | Изделие |
Проанализируем, установленные функциональные взаимосвязи реквизитов установим для каждого из зависимых реквизитов, от каких реквизитов он зависит. После чего сгруппируем реквизиты, имеющие одинаковые ключи в один информационный объект. В результате получим таблицу реквизитного состава информационных объектов (таблица 10), в которой выделены все ИО, отображающие данные, которые используются в рассматриваемой задаче.
Таблица 11. Реквизитный состав информационных объектов
Реквизиты ИО | Признак ключа | ИмяИО | Название ИО | Описание |
КЗ НЗ АЗ АЗ | П,У | ЗАК | Заказчик | Данные о заказчике изделий |
КИ НИ ЦЕНАИ ЕИ | П,У | ИЗД | Изделие | Данные об изделии предприятия |
НТТН СУМОТГ ДОТГ КЗ | П,У | ТТН | ТТН | Общие сведения о ТТН |
НТТН КИ КОЛОТГ | С,У | ОТТН | Отгрузка (спецификация ТТН) | Данные из ТТН по отгрузке изделия |
НПТР КЗ НТТН ДОПЛ СУМОПЛ | С,У | ПТР | ПТР | Общие данные ПТР |
НПТР КЗ КИ КОЛОПЛ | С,У | ОПТР | Оплата (спецификация ПТР) | Данные из ПТР по оплате отгруженного изделия |
В данной таблице приняты обозначения: