Проект программно-методического комплекса для автоматизации учета расходных средств в типографии машиностроительного предприятия

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 24.03.2013
Размер файла 2,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

1

Корректность отчета об использовании расходных средств

Определяется требованиями формата отчета

Раз в неделю

Показатели качества входа бизнес-процесса «Учет расходных средств в типографии»

1

Корректность данных о заказе-наряде

Определяется проверкой

После поступления от заказчика

Наименование показателя

Описание

Периодичность контроля

Показатели удовлетворенности клиентов

1

Выполнение заказа

Заказчик оттиражированные бланки документации

После тиражирования

2

Формируется отчет об использовании расходных средств

Начальник типографии получает отчет об использовании расходных материалов

Раз в неделю

1.3.3 Описание бизнес-процесса «Учет расходных средств в типографии»

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

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

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

Таблица 1.8 - Описание контекстной SADT-диаграммы «Учет расходных средств в типографии»

Наименование операции / Исполнитель

Чем регламентируется и завершается

Входы

Выходы

А0

Учет расходных средств в типографии

формой документов, характеристики техники, списком расходных средств

Заказ-наряд,

акт приемки,

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

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

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

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

Таблица 1.7 - Описание SADT - диаграммы «Учет расходных средств в типографии»

Наименование операции

(активности, деятельности)

Управление активностью

Входы

Выходы

Исполни-тель

При каких условиях начинается

Чем регламентируется и завершается

1

Прием копировальной техники

При поступлении акта приемки

Формат документа

Акт приемки копировальной техники

Список техники

Менеджер

2

Прием и проверка заказа

При поступлении заказа-наряда

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

Список техники, Заказ-наряд

Список недоста-ющих расходных материалов, спи-сок требуемых расходных средств

Менеджер

3

Формирование заявки на расходные средства

При необходимости получить расходные средства

Формат документа

Список недоста-ющих расходных средств

Заявка на расходные сресдтва

Менеджер

4

Выделение расходных средств

При поступлении заказа и наличии расходных средств

Список расходных средств

список требуемых расходных средств

Перечень расходных средств

Менеджер

5

Формирование отчета

При выполнении заказа

Формат документа

Перечень расходных средств

Отчет

Менеджер

1.4 Разработка технического задания на создание ПМК для автоматизации учета расходных средств в типографии машиностроительного предприятия

1.4.1 Общие сведения

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

1.4.2 Основание для разработки

Основанием для разработки программного продукта (ПП), является утвержденное заведующим кафедрой КИТ задание на дипломный проект разработанное руководителем ДП в соответствии с темой дипломного проекта, утвержденной приказом по академии от № 07-52 от 31.08.2012г. Условное обозначение разработки - «Типография».

1.4.3 Назначение разработки

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

– обеспечивать ввод и сохранность актов приема-передачи копировальной и печатной техники;

– обеспечивать ввод и сохранность заявок на заправку/обновление картриджем;

– обеспечивать корректный ввод заявок на тиражирование продукции;

– обеспечивать корректную обработку информации об использовании расходных материалов;

– выполнять поиск информации о копировальной технике по инвентарному номеру, номеру заявки на заправку;

– хранить архив актов приема-передачи и заявок на заправку;

– формировать отчет об актах приема-передачи;

– формировать заявки на заправку/обновление картриджей;

– формировать отчет об использовании расходных материалов за требуемый период;

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

1.4.4 Требования к программному продукту

Требования к функциональным характеристикам

Состав выполняемых функций данным ПП представлен ниже:

- ввод информации об актах приема-передачи;

- контроль правильности заполнения обрабатываемых документов (контроль носит следующий характер - менеджер выполняют проверку заправки картриджей и работоспособности копировальной техники, при необходимости подает заявку на заправку картриджа или его обновление) (занимает не более 2-х минут);

- ввод и контроль правильности заполнения заявок на тиражирование различных видов издаваемой продукции;

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

- формирование отчет об актах приема-передачи, заявках на заправку/обновление картриджей (формируется в виде перечня документов с указанием номера, даты, ФИО ответственного лица, количества техники - данные помещаются в таблицу «Report») (вывод информации занимает не более 25 сек.);

- формирование заявок на заправку/обновление картриджей по розничным ценам (данная процедура занимает не более 15 секунд, размер формируемой информации зависит от количества картриджей и составляет не более 200Kб);

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

Требования к надежности

Для выполнения основных требований к надежности, ПП должен:

- устойчиво функционировать и не приводить к сбоям операционной системы;

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

- обеспечивать обработку ошибочных действий пользователя с выдачей соответствующих сообщений и не допускать сбоев;

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

Условия эксплуатации

Условия эксплуатации ПП определяются СанПиН 2.2.2 545-96 «Гигиенические требования к видеодисплейным терминалам, персональным вычислительным машинам и организации работы».

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

Требования к составу и параметрам технических средств

Требования к параметрам технических средств, необходимых для эксплуатации ПП, определяются требованиями к функционированию платформы MS Windows.

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

– объем оперативной памяти не менее 2048 МБ;

– системный блок;

– процессором не ниже Intel Pentium Core2Duo, мышь, клавиатура;

– наличие свободного места на жестком диске в размере не менее 10 ГБайт;

– DVD привод;

– сетевой адаптер Ethernet;

– монитор 17”.

Для рабочего места контроллера ОТК необходима персональная ЭВМ со следующими характеристиками:

– объем оперативной памяти не менее 1024 МБ;

– процессор не ниже Intel Pentium Dual-Core, мышь, клавиатура;

– наличие свободного места на жестком диске не менее 100 Гбайт;

– DVD привод;

– печатающее устройство (лазерный принтер);

– сетевой адаптер Ethernet;

– монитор 17”.

Требования к информационной и программной совместимости

ПП создается с использованием средств разработки приложений платформы Windows (XP, Vista), на языках PHP, SQL.

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

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

1.4.5 Требования к программной документации

Предварительный состав программной документации установлен в соответствии с ГОСТ 19.101-77. Ниже перечислен список программных документов и их содержание.

Текст программы - запись программы с необходимыми пояснениями и комментариями.

Описание программы - сведения о логической структуре и функционировании программы.

Программа и методика испытаний - требования, подлежащие проверке при испытании программы, также порядок и методы контроля.

Техническое задание - настоящий документ.

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

Эксплуатационные документы - описание применения, руководство пользователя.

1.4.6 Технико-экономические показатели

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

1.4.7 Стадии и этапы разработки

Ниже приведена таблица 1.8, которая отображает стадии и этапы разработки ПП.

Таблица 1.8 - Стадии и этапы разработки ПМК по автоматизации учета расходных средств на типографии машиностроительного предприятия

Этап/

Срок выполнения

Содержание работ

1

Разработка стратегии автоматизации/

3.10.12 - 7.10.12

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

2

Оценивание реализуемости/

8.10.12 - 13.10.12

На основании проведенного анализа, оценка реализуемости данной системы (технико-экономическое обоснование)

3

Анализ требований/

14.10.12 - 20.10.12

Анализ требований к ПМК по автоматизации учета документооборота в ОТК

4

Анализ ТЗ/

21.10.12 -25.10.12

Производится анализ основных пунктов ТЗ на основании собранной информации о разрабатываемом ПМК

5

Проектирование/

26.10.12 - 30.10.12

Проектирование разрабатываемого комплекса с помощью UML-диаграмм (диаграммы прецедентов и классов)

6

Программирование/

1.11.12 - 7.11.12

Создание программного кода на языке PHP, реализующего основные функции.

7

Отладка /

8.11.12 - 15.11.12

Проведение тестов. Доработка, исправление, доработка функциональности и исправление ошибок

8

Внедрение/

16.11.12 - 21.11.12

Установка и непосредственная эксплуатация

9

Сопровождение/

22.1.12 -26.11.12

Обслуживание системы и ознакомление персонала с работой ПМК

10

Анализ опыта эксплуатации/

27.11.12 - 30.11.12

Статистика опыта эксплуатации программного продукта. Ее проведение и анализ. Расчет экономической эффективности

1.4.8 Порядок контроля и приемки

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

Контроль программного продукта осуществляется в следующем порядке.

1 проверка функциональности разработанного ПО;

2 проверка реакции программы на различные действия пользователя;

3 проверка выходных данных;

4 после выхода из программы операционная система должна продолжать работать корректно.

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

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

Решение о приемке в эксплуатацию принимается на основании акта тестовых испытаний.

1.5 Разработка средств моделирования ПМК для учета расходных средств в типографии

1.5.1 Разработка логической модели ПМК для учета расходных средств в типографии

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

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

Менеджер получает заказ-наряд на тиражирование документации и выполняет проверку правильности заполнения. После прохождения проверки данные о заказе-наряде заносятся в базу данных. Далее определяется наличие необходимых расходных средств: тонера в картриджах и бумаги требуемого качества. В случае отсутствия необходимых расходных материалов оформляется заявка и осуществляется получение расходных материалов и их регистрация в базе. Получение и использование расходных материалов строго контролируется. Учет расходных средств ведется по номеру сопроводительной накладной, названии и количеству средств. Информация о тираже позволяет определить требуемые расходные средства. Зная возможности копировальной техники и можно оценить ресурс каждого картриджа. Таким образом можно рассчитать необходимые расходные средства и проверить их наличие по базе данных. Ведение базы по наличию и расходу средств позволяет всегда определять необходимое их количество при выполнении заказа. По требованию вышестоящего руководства менеджер формирует отчет по использованию расходных средств.

Диаграмма прецедентов включает следующие прецеденты:

- «Принять заказ-наряд» осуществляет принятие заказа на тиражирование;

- «Проверить наличие расходных средств» происходит проверка наличия расходных материалов;

- «Выделить расходные средства для заказа» по тиражу и требованиям к качеству определятся необходимая бумага и качество печати;

- «Сформировать заявку на расходные средства» формируется заявка на требуемые для выполнения заказа расходные средства;

- «Уточнить фактический расход средств» вносит в базу информацию о фактическом использовании расходных средств;

- «Сформировать отчет» здесь формируется отчет об использовании расходных средств.

На рисунке 1.5 представлена Диаграмма прецедентов рабочей области «Учет расходных средств в типографии».

Рисунок 1.5 - Диаграмма прецедентов «Учет расходных средств в типографии»

Описание диаграммы прецедентов приведено в таблице 1.9.

Таблица 1.9 - Описание прецедента «Выделить расходные средства для заказа»

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

Основной исполнитель - Исполнитель программного комплекса (менеджер)

Заинтересованные лица (актеры) и их требования:

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

- кладовщик хочет получить накладную на выдачу расходных средств

Предусловия:

- менеджер (выделяет расходные средства) имеет минимальные навыки работы с системой

Результаты (постусловия):

­ получена информация о выделении расходных средств;

­ проведена проверка наличия расходных средств;

­ сформирована заявка на выдачу расходных средств;

­ сформирован отчет об использовании расходных средств

Основной успешный сценарий (или основной процесс):

­ заказчик подает заявку на тиражирование документации в типографию;

­ менеджер выполняет проверку заявки;

­ менеджер выполняет проверку доступных расходных средств, требуемых в заявке;

­ менеджер с использованием методики происходит расчет необходимых расходных средств;

­ менеджер после расчета формирует данные для выделения расходных средств;

­ менеджер уточняет данные по фактическому расходу средств;

­ менеджер после расчета формирует отчет об использовании расходных средств.

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

При каждом выходе системы их строя или сбоях:

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

­ менеджер перезапускает систему и восстанавливает предыдущее состояние;

­ система восстанавливает предыдущее состояние, уведомляет об ошибке и менеджера и продолжает работу

Система выявляет нехватку средств:

­ система информирует менеджера;

­ система сохраняет свое текущее состояние на жесткий диск для хранения и последующего использования;

­ система предлагает менеджеру сохранить результаты работы;

­ система перезапускается

Специальные требования:

­ отклик служб компонентов должен происходить в течение 10 с;

­ обеспечить восстановление информации в случае сбоя при доступе к внутренним и внешним службам (например, внутреннему или внешнему серверу);

­ возможность добавления новых компонентов и кода в процессе функционирования системы;

Частота использования - почти постоянно

Регистрация событий и обработки ошибок - все ошибки регистрируются на постоянном носителе

1.5.2 Разработка диаграммы классов предметной области

Диаграмма классов служит для представления статической структуры модели системы в терминологии классов объектно-ориентированного программирования и может отражать, в частности, различные взаимосвязи между отдельными сущностями предметной области, такими как объекты и подсистемы, а также описывает их внутреннюю структуру и типы отношений [10, 11].

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

Диаграмма классов предметной области «Учет расходных средств в типографии» представлена на рисунке 1.6. Описание сфер ответственности классов приведено в таблице 1.10.

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

Рисунок 1.6 - Диаграмма классов предметной области «Учет расходных средств в типографии»

Таблица 1.10 - Описание сфер ответственности классов предметной области

Название классов

Сфера ответственности

Базовый класс или интерфейс

Вид наслед-ования

«Менеджер»

Класс, отвечающий за хранение и обработку данных о менеджере

Нет

Нет

Название классов

Сфера ответственности

(обязанности класса)

Базовый класс или интерфейс

Вид наслед-ования

«Учет расходных средств»

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

Да

Нет

«Заказ-наряд»

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

Да

Нет

«Расходные средства»

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

Да

Нет

«Смета»

Класс, хранящий в себе информацию о

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

Да

Нет

«Техника»

Класс, хранящий в себе информацию о копировальной технике, а также предоставляет возможность добавлять и удалять технику

нет

Да

«Отчет»

Класс, отвечающий за формирование отчетов

Нет

Нет

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

Рисунок 1.7 - Диаграмма последовательности

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

1.5.3 Модульная структура ПМК для учета расходных средств в типографии

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

Структура ПМК учет расходных средств в типографии машиностроительного предприятия представлена на рисунке 1.8 в виде диаграммы модулей, где выделены ее основные функции.

Рисунок 1.8 - Диаграмма модулей ПМК для учет расходных средств в типографии

1.5.4 Информационное обеспечение комплекса
К информационному обеспечению относится спецификация входной и выходной информации, способы ее представления.
Информация, хранимая программно-методическим комплексом, представляет собой реляционную базу данных. Для ведения базы используются средства предоставляемые возможностями БД в MySQL.
Физическая структура таблиц разработана на основании логической модели, включающей в себя ER-диаграмму, с учетом специфики применяемой БД и дополнительных требований к хранимой информации.
В таблице «Менеджер» хранятся данные о менеджерах. Структура таблицы приведена в таблице 1.11.
База данных содержит 8 таблицы, краткое описание которых приведено ниже. ER-диаграмма приведена на рис. 1.9.
Таблица 1.11 - Описание таблицы «Менеджер» (manager)

Название поля

Тип данных

Назначение

Nomer

Счетчик

Идентификатор Менеджера

manager

Текстовый

ФИО Менеджера

В таблице 1.12 представлена структура таблицы «Расходные средства»
Рисунок 1.9 - ER-диаграмма предметной области предметной области «Учет расходных средств в типографии»
Таблица 1.12 - Описание таблицы «Расходные средства» (mater)

Название поля

Тип данных

Назначение

id

Int

Идентификатор

nam

Varchar

Расходные средства

format

Varchar

Формат бумаги

plot

int

Плотность бумаги

quantity

int

Количество в наличии

price

int

Цена за 100 листов

Таблица «Техника» хранит в себе данные о копировальной технике, на которые осуществляется выполнение заказов. Структура таблицы приведена в таблице 1.13.
Таблица 1.13 - Описание таблицы «Техника» (techn)

Название поля

Тип данных

Назначение

id

Int

Идентификатор

nam

Varchar

Название

quantity

Int

Количество в наличии

toner

Varchar

Тип тонера

format

Varchar

Формат бумаги

Count

int

Ресурс печати

Count2

int

Остаток ресурса

price

int

Цена

Таблица «Заказы» хранит в себе данные о заказах, которые сделали заказчики, о состоянии их выполнения, а также о самом исполнителе заказа. Структура таблицы приведена в таблице 1.14.
Таблица 1.14 - Описание таблицы «Заказы» (zakaz)

Название поля

Тип данных

Назначение

id

int

Идентификатор

num

Int

Идентификатор техники

zakaz

int

Номер заказа

podraz

varchar

Название подразделения

Doc_id

int

Номер шаблона документа

tirag

int

Тираж

date

varchar

Дата подачи заказа

Book_id

int

Тип бумаги

Book_count1

int

Расчетное количество листов

Book_count2

int

Фактическое количество листов

Techn_id

Int

Название копир техники

worker

varchar

Печатник

data

Дата/время

Дата выполнения заказа

Данные для отчета об использовании расходных средств хранятся в таблице “report”, структура таблицы приведена в таблице 1.15.
Таблица 1.15 - Структура таблицы “report”

Название поля

Тип данных

Назначение

id

Int

Идентификатор

Rashod

Varchar

Вид расходных средств

quantity

Varchar

Количество

Price

Int

Цена

date

Int

Дата

1.5.5 Техническое обеспечение ПМК «Типография»
Техническое обеспечение комплекса представляет собой совокупность аппаратных средств, используемых во время работы.
Для полноценного функционирования ПМК оценки персонала необходим пакет Денвер и СУБД MySQL для подключения БД.
2. Специальная часть. разработка программного обеспечения для обработки данных и формирования отчетности про реализацию бизнес-процесса деятельности
2.1 Описание взаимодействий между структурными элементами системы учета расходных средств в типографии
типография автоматизация моделирование печать
Диаграмма компонентов ПМК «Типография» включает углубленную структуру и показывает взаимосвязь компонент, применяется для статического аспекта физических компонентов информационной системы, изображена на рисунке 2.1.
Рисунок 2.1 - Диаграмма компонентов системы учета расходных средств в типографии
Компоненты связаны друг с другом и базой данных. Некоторые из компонент используют общие таблицы в базе данных. Для защиты от несанкционированного доступа к информации реализована авторизация и поддерживается сеанс пользователя.
Название компонентов и их функциональное назначение представлено в таблице 2.1.
Таблица 2.1 - Описание компонентов системы учета расходных средств в типографии

Название компонента

Функции компонента

index.php - главный компонент

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

mater.php - компонент обработки списка подразделений

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

techn.php - компонент обработки списка множительной техники

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

Название компонента

Функции компонента

cart.php - компонент для учета списка и состояния картриджей к множительной технике

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

zakaz.php - компонент для приемки и ведения списка заказ-нарядов

Основной компонент. Вызывается из меню. Используется для приемки и ведения списка заказ-нарядов. Включает функции: оформления выполненного заказа - order(), расчета требуемых материальных средств - calc(), вывод списка обрабатываемых заказов - _list(). Включает функции проверки данных заказ-нарядов, формирования списка требуемых материальных средств, выбора из списка множительной техники и функции для хранения информации в базе данных.

report.php - компонент формирования отчета по расходу материальных средств

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

exit.php - компонент завершения сеанса пользователя

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

db_connect.php - компонент взаимодействия с базой данных

Вызывается из компонент index.php, zakaz.php, mater.php, techn.php, cart.php, exit.php, report.php. Включает функции и данные для подключения и взаимодействия с базой данных.

Каждый из компонент имеет свои особенности, которые будут рассмотрены ниже.

2.2 Описание работы основных компонент системы учета расходных средств в типографии

2.2.1 Авторизация и главная страница

Компонент index.php выполняет функцию авторизации, создает и сохраняет в базе данных сеанс пользователя и формирует интерфейс системы учета расходных средств в типографии необходимый для дальнейшей работы. На главной странице размещена информация о названии программного обеспечение «Типография».

В верхней части расположено меню, которое открывает доступ к функциям системы распределения средств:

- «Главная» - главная страница с информацией о работе типографии;

- «Заказ-наряд» - ссылка на компонент по управлению списком заказ-нарядов;

- «Расходные средства» - ссылка на компонент по управлению расходными средствами;

- «Техника» - ссылка на компонент по управлению списком множительной техники;

- «Картриджи» - ссылка на компонент по управлению списком картриджей множительной техники;

- «Отчет» - формирование отчета по учету расхода материальных средств;

- «Выход» - завершение работы с системой.

Авторизация пользователей системы выполняется средствами web-приложения. Фрагмент кода страницы для авторизации пользователя приведен на рис. 2.2. Список пользователей хранится в базе данных, таблица “manager” структура которой приведена на рис. 2.3.

echo "<form method=post>"; // формируем форму ввода

echo "<table border=0 align=center width=100%>";

echo "<tr><td align=right width=50%>Ваше имя</td>";

echo "<td align=left><input type=text name=admin></td></tr>";

echo "<tr><td align=right width=50%>Ваш пароль</td>";

echo "<td align=left><input type=password name=apass></td></tr>";

echo "<tr><td align=right width=50%><input type=submit name=enter value=ok>";

echo "</td><td align=left><input type=reset value=\"Очистить\">";

echo "</table>"; // закрываем таблицу

echo "</form>";

Рисунок 2.2 - Фрагмент кода страницы для авторизации

Рисунок 2.3 - Структура таблицы “manager”

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

$req="SELECT * FROM manager WHERE nam='$_REQUEST[admin]'";

$res=mysql_query($req) or die ("Error on load data about user!<br>");

$dat=mysql_fetch_row($res); // читаем из базы строку

if ($_REQUEST[apass] == $dat[2]) // проверяем пароль

{

$session_id = md5 ( uniqid (rand ())); // создаем идентификатор

$query0 = "DELETE FROM session"; // удаляем предыдущий идентификатор

$res0 = mysql_query($query0) or die ("Could not delete from table");

$query2 = "INSERT INTO session VALUES('$session_id')"; // выполняем запрос

$res2 = mysql_query($query2) or die ("Could not insert into table");

Рисунок 2.4 - Проверка пользователя

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

Для завершения сеанса работы выбирается действие «Выход» из меню системы.

Фрагмент кода для завершения сеанса пользователя приведен на рис. 2.5.

$query3 = "DELETE FROM session"; // формируем запрос

$res3 = mysql_query($query3) or die ("Could not delete from table");

echo "<center><h3>Сеанс работы завершен.<br></h3>";

echo "<a href=\"index.php\">Вход</a></center>";

Рисунок 2.5 - Завершение сеанса пользователя

2.2.2 Управление списком заказ-нарядов

Для управления списком заказ-нарядов в системе учета расходных средств в типографии используется компонент “zakaz.php”, который связан с пунктом меню «Расходные средств». При обращении к компоненту выводится список заказ-нарядов, которые уже внесены в базу. Список заказ-нарядов формируется функцией list(), код которой приведен на рис. 2.7.

function list()

{

if ($_REQUEST[page]) {$page = $_REQUEST[page];}

else {$page = 1;}

$lim = $page*10;

$base = ($page - 1) * 10 + 1;

$i=1;

echo "<center><h3>Список заказов-нарядов:</h3>";

echo "<form method=\"post\" action=zakaz.php?id=$_REQUEST[id]>\n";

$query_doc = "SELECT * FROM mater";

$res_doc = mysql_query ($query_doc) or die ("Ошибка при выполнении запроса к таблице mater!");

while($dat_doc = mysql_fetch_row($res_doc))

{

$i=$dat_doc[0];

$doc[$i]=$dat_doc[1]."-".$dat_doc[2]."-".$dat_doc[3];

}

$query_tec = "SELECT * FROM techn";

$res_tec = mysql_query ($query_tec) or die ("Ошибка при выполнении запроса к таблице techn!");

while($dat_tec = mysql_fetch_row($res_tec))

Рисунок 2.7 - Код функции list() компонента “zakaz.php”

{

$i=$dat_tec[0];

$tec[$i]=$dat_tec[1]."-".$dat_tec[4];

}

echo "<table class=article border=0 cellspacing=1 cellpadding=1>\n";

echo "<tr><td>\n";

$query = "SELECT * FROM zakaz ORDER BY id limit $lim";

$result = mysql_query ($query) or die ("Ошибка при выполнении запроса к таблице zakaz!");

while ($line = mysql_fetch_row($result))

{

if ($i >= $base)

{

echo "<table border=0 bgcolor=\"#CECECE\" cellspacing=1 cellpadding=1 align=center width=100%>\n";

echo "<tr><td bgcolor=\"#CECECE\">Номер</td>\n";

echo "<td bgcolor=\"#CECECE\">Заказчик</td>\n";

echo "<td bgcolor=\"#CECECE\">Подразделение</td>\n";

echo "<td bgcolor=\"#CECECE\">Форма документа</td>\n"; echo "<td bgcolor=\"#CECECE\">Тираж</td>\n";

echo "<td bgcolor=\"#CECECE\">Дата приемки</td>\n";

echo "<td bgcolor=\"#CECECE\">Бумага</td>\n";

echo "\t<tr>\n";

echo "\t\t<td>$line[1] </td>\n";

echo "\t\t<td>$line[2]</td>\n";

$docs= array("Бланк №1","Накладная №2","Расходный лист","Форма №4","Справка №1","Счет-фактура","Акт передачи","Акт приемки");

echo "\t\t<td>$line[3]</td>\n";

$i1=$line[4];

$dd=$docs[$i1];

echo "\t\t<td>$dd</td>\n";

echo "\t\t<td>$line[5]</td>\n";

echo "\t\t<td>$line[6]</td>\n";

$i++;

$i2=$line[7];

$ddd=$doc[$i2];

echo "\t\t<td>$ddd</td>\n";

echo "</tr><tr>\n";

echo "\t\t<td>&nbsp;</td>\n";

echo "<td bgcolor=\"#CECECE\">Расчет</td>\n";

echo "<td bgcolor=\"#CECECE\">Расход</td>\n";

echo "<td bgcolor=\"#CECECE\">Техника</td>\n";

echo "<td bgcolor=\"#CECECE\">Печатник</td>\n";

echo "<td bgcolor=\"#CECECE\">Дата обработки</td>\n";

Рисунок 2.7, Лист Б

echo "<td bgcolor=\"#CECECE\" >Состояние</td></tr>\n";

echo "\t\t<td><input type=radio name=cl value=\"$line[0]\"></td>\n";

echo "\t\t<td>$line[8]</td>\n";

echo "\t\t<td>$line[9]</td>\n";

$i3=$line[10];

$tt=$tec[$i3];

echo "\t\t<td>$tt</td>\n";

echo "\t\t<td>$line[11]</td>\n";

echo "\t\t<td>$line[12]</td>\n";

echo "<td ></td>\t</tr>\n";

echo "</table>\n";

$i++;

}

echo "<table class=article border=0 cellspacing=0 cellpadding=0 width=100%>\n";

echo "<tr><td width=100%>&nbsp;</td></tr>\n";

echo "</table>\n";

}

echo "</td></tr>\n";

echo "</table>\n";

echo "<center>\n";

$next = $page + 1;

$prev = $page - 1;

if ($page == 1) {}

else

{

echo "<a href=\"zakaz.php?page=$prev&id=$_REQUEST[id]\">Назад</a>\n";

}

for($j=1;$j<=$num_of_pages;$j++)

{

echo "<a href=\"zakaz.php?page=$j&id=$_REQUEST[id]\">$j</a>\n";

}

if ($i <= $lim)

{

echo "<br>\n";

}

else

{

echo "&nbsp;<a href=\"zakaz.php?page=$next&id=$_REQUEST[id]\">Вперед</a><br>\n";

}

echo "<br><input type=submit name=add value=\"Добавить\">\n";

echo "&nbsp;<input type=submit name=del value=\"Удалить\">\n";

echo "&nbsp;<input type=submit name=edit value=\"Изменить\">\n";

echo "&nbsp;<input type=submit name=calc value=\"Расчет\">\n";

echo "&nbsp;<input type=submit name=order value=\"Оформить\">\n";

echo "</center></form>\n";

echo "<div id=><p><br></p></div>\n";

}

Рисунок 2.7, Лист В

Для добавления и изменения информации о подразделениях используются действия «Добавить» и «Изменить».

Действие «Изменить» невозможно выполнить не выбрав одну из записей в списке заказ-нарядов. При добавлении новой записи о заказ-наряде необходимо загрузить форму и заполнить все поля. Кроме рассмотренных действий можно удалить запись о заказ-наряде.

Так же как и при действии «Изменить», необходимо выбрать одну запись из списка заказ-нарядов и после этого выбрать действие «Удалить». При удалении необходимо подтвердить данное действие.

Фрагмент кода для подтверждения удаления записи о заказ-наряде приведена на рис. 2.8.

elseif ($_REQUEST[del])

{

echo "<center><br /><br />Удаление заказ-наряда<br /><br />\n";

echo "</center>\n";

if ($_REQUEST[cl])

{

$query = "SELECT * FROM zakaz WHERE id='$_REQUEST[cl]'";

$result = mysql_query ($query) or die ("Ошибка при удалении записи!");

$num = mysql_num_rows($result);

if ($num == 0) {exit();}

if ($line=mysql_fetch_row($result))

{

echo "<center>Вы хотите удалить заказ-наряда $line[1]<br><br />\n";

echo "<form method=post action=zakaz.php?id=$_REQUEST[id]>\n";

echo "<input type=hidden name=cl value=\"$_REQUEST[cl]\">\n";

echo "<input type=submit name=action1 value=\"Продолжить\">&nbsp;\n";

echo "<input type=submit name=action2 value=\"Прекратить\">&nbsp;\n";

echo "</form></center>\n";

// _list();

}

else {echo "Невозможно получить информацию о заказ-наряде!"; _list();}

}

else

{

echo "Записи не выбраны<br>\n";

_list();

}

}

Рисунок 2.8 - Код для подтверждения удаления записи о заказ-наряде

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

2.2.3 Управление списком множительной техники

Для поддержания списка множительной техники используется компонент “techn.php”. При загрузке компонента выводится список доступной множительной техники. Для каждой множительной техники хранится уникальный идентификатор по которому можно однозначно определить какая множительная техника есть в наличии для выполнения заказов. Информация о множительной технике хранится в таблице “techn”. Для управления списком доступной множительной техники используются действия «Добавить», «Изменить» и «Удалить».

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

Список доступной множительной техники формируется функцией list() такой же, как и в компоненте “zakaz.php”.

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

При поступлении новой множительной техники (принтер или МФУ) по акту приемки-передачи выполняется добавление в базу. Для выполнения добавления вызывается функция «Добавить».

Для внесения изменений может быть выполнено с помощью действия «Изменить». Необходимо выбрать соответствующую запись и действие «Изменить». На рис. 2.9 приведен фрагмент кода для формы редактирования.

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

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

elseif ($_REQUEST[edit])

{

echo "<br><center>Изменение информации о множительной технике<br><br>\n";

if ($_REQUEST[cl])

{

$query = "SELECT * FROM techn WHERE id='$_REQUEST[cl]'";

//* FROM mater WHERE id='$_REQUEST[cl]'";

$result = mysql_query($query) or die ("Ошибка при получения записи2!");

if ($line=mysql_fetch_row($result))

{echo "<form method=post action=techn.php?id=$_REQUEST[id]&cl=$_REQUEST[cl]>";

echo "<table border=0 widht=100%>\n";

echo "<tr><td widht=50% align=right>Название</td><td widht=50% align=left>";

echo "<textarea name=\"nam\" >$line[1]</textarea></td></tr>\n";

echo "<tr><td widht=50% align=right>Количество</td><td widht=50% align=left><input type=text name=\"quantity\" value=\"$line[2]\"> шт</td></tr>\n";

echo "<tr><td widht=50% align=right>Тонер</td><td widht=50% align=left><input type=text name=\"toner\" value=\"$line[3]\"></td></tr>\n";

echo "<tr><td widht=50% align=right>Формат</td><td widht=50% align=left>";

echo "<select name=\"format\">\n";

if ($line[4] == "А4") { echo "<option selected value=\"А4\">А4\n";echo "<option value=\"А5\">А5\n";echo "<option value=\"А3\">А3\n";}

if ($line[4] == "А3") { echo "<option value=\"А4\">А4\n";echo "<option value=\"А5\">А5\n";echo "<option selected value=\"А3\">А3\n";}

if ($line[4] == "А5") { echo "<option selected value=\"А4\">А4\n";echo "<option selected value=\"А5\">А5\n";echo "<option value=\"А3\">А3\n";}

echo "</select></td></tr>\n";

echo "<tr><td widht=50% align=right>Ресурс</td><td widht=50% align=left><input type=text name=\"count\" value=\"$line[5]\"> лист</td></tr>\n";

echo "<tr><td widht=50% align=right>Расход</td><td widht=50% align=left><input type=text name=\"count2\" value=\"$line[6]\"> лист</td></tr>\n";

echo "<tr><td widht=50% align=right>Цена</td><td widht=50% align=left><input type=text name=\"price\" value=\"$line[7]\"> грн</td></tr>\n";

echo "</table>\n<br>";

echo "<input type=submit name=edit2 value=\"Сохранить\">&nbsp;\n";

echo "<input type=submit name=action4 value=\"Прекратить\">&nbsp;\n";

echo "</form></center><br>\n";

}

}

Рисунок 2.9 - Код формы для изменения данных о множительной технике

elseif ($_REQUEST[edit2])

{

{

$query2 = "UPDATE techn SET nam='$_REQUEST[nam]',quantity='$_REQUEST[quantity]', toner='$_REQUEST[toner]', format='$_REQUEST[format]',count='$_REQUEST[count]', count2='$_REQUEST[count2]',price='$_REQUEST[price]' WHERE id='$_REQUEST[cl]'";

$result2 = mysql_query ($query2) or die ("Ошибка при изменении данных в таблице techn!");

echo "<br><center>Изменения внесены</center><br>\n";

}

_list();

}

Рисунок 2.10 - Фрагмент кода для внесения изменений в базу

2.2.4 Управление списком картриджей

Компонент “cart.php” предназначен для управления списком картриджей ко множительной технике. Компонент позволяет отображать список картриджей, добавлять, изменять и удалять картриджи. При загрузке компонента срабатывает функция list(), которая формирует и выводит на экран список картриджей и их ресурс. При формировании списка заявок используется информация из таблиц “techn” и “cart”. Структура таблицы “cart” приведена на рис. 2.11.

Рисунок 2.11 - Структура таблицы “cart”

В работе компонента используется обращение к таблице “techn” для получения списка множительной техники. При отображении списка картриджей и добавлении нового картриджа информация выводится в виде списков доступной множительной техники.

Фрагмент кода формирования списка доступной множительной техники приведена на рис. 2.12.

$query = "SELECT cart.id, techn.nam, cart.quantity, cart.res, cart.res2, cart.price, cart.price2, cart.flag FROM cart INNER JOIN techn ON cart.nam=techn.id ORDER BY id limit $lim"; //

$result = mysql_query ($query) or die ("Ошибка при выполнении запроса к таблице cart!");

$count = mysql_num_rows ($result);

Рисунок 2.12 - Формирование списка множительной техники

Действие «Добавить» картридж выполняет проверку на наличие такого картриджа для выбранной множительной техники. Фрагмент проверки приведен на рис. 2.13.

elseif ($_REQUEST[add2])

{

if (($_REQUEST[nam] != "") || ($_REQUEST[quantity] != "") || ($_REQUEST[price] != "")|| ($_REQUEST[res] != "")|| ($_REQUEST[res2] != ""))

{

$quer = "SELECT * FROM cart WHERE nam='$_REQUEST[nam]'";

$rr = mysql_query($quer) or die("Ошибка при чтении данных!<br />\n");

if (mysql_num_rows($rr) < 1)

{

$query = "INSERT INTO cart VALUES('','$_REQUEST[nam]','$_REQUEST[quantity]','$_REQUEST[res]','$_REQUEST[res2]','$_REQUEST[price]','$_REQUEST[price2]','0')";

{

if ($result = mysq...


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.