Автор: Пользователь скрыл имя, 27 Февраля 2013 в 14:06, дипломная работа
Объект исследования - бизнес-процесс документообеспечения перевозки грузов железнодорожным транспортом.
Цель работы – разработка модуля автоматизированной системы по обеспечению документооборота при перевозках грузов железнодорожным транспортом.
Разработаны модель предметной области и ее сущностей, модель базы данных и ее структуры, модель информационного обеспечения системы, модель функционала пользователя, модель взаимодействия системы с внешними системами, уделено внимание безопасности программного продукта, улучшено качество печати информации на бланки строгой подотчетности, разработан пользовательский интерфейс и его функциональная связанность с СУБД Oracle и БД предприятия, а так же внешними информационными системами.
1 ТЕХНОЛОГИЧЕСКАЯ ЧАСТЬ 10
1.1 Анализ уровня автоматизации на предприятии и в подразделении 10
1.2 Анализ основного бизнес процесса службы экспедиции и уровня его автоматизации 11
1.3 Основные документы службы экспедиции Харцызского трубного завода 16
1.4 Функциональный состав должностных инструкций экспедитора 16
1.5 Предпосылки создания автоматизированного модуля документообеспечения процесса доставки товаров железнодорожным транспортом 20
1. 6 Постановка задач проектирования 23
2 РАСЧЕТНО-КОНСТРУКТОРСКАЯ ЧАСТЬ 25
2.1.1 Организация доступа пользователей к системе АС Клиент-УЗ 26
2.1.2 Определение структуры, состава и формата реквизитов и атрибутов электронного перевозочного документа (ЭПД) 27
2.1.3 Определение электронных данных для создания электронного перевозочного документа 29
2.1.4 Преобразования электронных данных ЭПД в последовательностьбайт для наложения или проверки электронной цифровой подписи (ЭЦП) 30
2.1.5 Кодировка данных 32
2.2.1 Организация обмена данными между системами 34
2.2.2 Требования к аппаратным средствам, операционной среде и способу подключения компьютера, подключаемого к системе «ЭТРАН» с помощью технологии VIPnet. 35
2.2.3 Программное обеспечение обмена данными посредством СОМ-объекта 39
2.2.4 Определение формата передаваемых данных 41
2.2.5 Организация запросов в систему ЭТРАН 42
2.3 Выводы по разделу 47
3 СПЕЦИАЛЬНАЯ ЧАСТЬ 51
3.1 Разработка диаграммы вариантов использования 51
3.2 Разработка диаграммы развертывания системы 54
3.3 Разработка диаграммы взаимодействия 55
3.4 Информационное обеспечение системы. Разработка диаграммы последовательности 57
3.5 Разработка модели базы данных 58
3.5.1 Табличное представление данных системы 58
3.5.2 Семантическое моделирование. Разработка диаграммы классов 73
3.5.3 Логическое моделирование. Разработка ER-диаграммы 75
3.6 Безопасность програмного обеспечения 77
3.7 Разработка пользовательского интерфейса 82
3.8 Обеспечение качества и надежности заполнения бланков строгой отчетности 91
3.9 Выводы по разделу 92
4 ЭКОНОМИЧЕСКАЯ ЧАСТЬ 93
4.1 Расчет капитальных затрат на создание ПО 93
4.2 Расчет годовой экономии текущих затрат 99
4.2.1 Расчет себестоимости ведения необходимой документации в ручном варианте 101
4.2.2 Расчет себестоимости ведения пакета необходимых документов в автоматизированном варианте 104
4.3 Расчет годового экономического эффекта относительно к источнику получения экономии 107
4.4 Расчет коэффициента экономической эффективности и срока окупаемости капиталовложений 107
4.5 Выводы по разделу 109
5 ОХРАНА ТРУДА 110
5.1 Анализ опасных и вредных производственных факторов 110
5.2 Разработка мероприятий по обеспечению безопасных условий труда 115
5.3 Эффективность мероприятий по охране труда 124
ЗАКЛЮЧЕНИЕ 127
ПЕРЕЧЕНЬ ССЫЛОК 128
<devOwnerTypeID value=""/>
<!-- * тип данных: строка (до 255 символов) -->
<devOwnerTypeName value=""/>
<!-- Собственник -->
<!-- * тип данных: строка (до 10 символов) -->
<devOwnerOKPO value=""/>
<!-- * тип данных: строка (до 40 символов) -->
<devOwnerName value=""/>
<!-- Количество -->
<!-- * тип данных: целое число -->
<devQuantity value=""/>
<!-- Возврат -->
<!-- * тип данных: целое число (0-нет, 1-да) -->
<devReturn value=""/>
</invDev>
<!-- НАКЛАДНАЯ: Вагоны (0..n) -->
<invCar>
<!-- Род вагона (ID по НСИ – WAG_TYPE) -->
<!-- * тип данных: целое число (до 3 символов) -->
<carTypeID value=""/>
<!-- * тип данных: целое число -->
<carTypeCode value=""/>
<!-- * тип данных: строка (до 40 символов) -->
<carTypeName value=""/>
<!-- Номер вагона -->
<!-- * тип данных: строка (до 8 символов) -->
<carNumber value=""/>
<!-- Порядковый № вагона в отправке -->
<!-- * тип данных: целое число -->
<carOrder value=""/>
<!-- Страна-собственник -->
<!-- * тип данных: строка (до 3 символов) -->
<carOwnerCountryCode value=""/>
<!-- * тип данных: строка (до 65 символов) -->
<carOwnerCountryName value=""/>
<!-- Тип собственности (ID по НСИ - COMMON, тип 7) -->
<!-- * тип данных: целое число (до 3 символов) -->
<carOwnerTypeID value=""/>
<!-- * тип данных: строка (до 255 символов) -->
<carOwnerTypeName value=""/>
<!-- Собственник -->
<!-- * тип данных: целое число (до 10 символов) -->
<contOwnerID value=""/>
<!-- * тип данных: строка (до 10 символов) -->
<carOwnerOKPO value=""/>
<!-- * тип данных: строка (до 255 символов) -->
<carOwnerName value=""/>
<!-- Количество мест -->
<!-- * тип данных: целое число -->
<carPlacesCount value=""/>
<!-- Грузоподъемность в т. -->
<!-- * тип данных: целое число -->
<carTonnage value=""/>
<!-- Кол-во осей -->
<!-- * тип данных: целое число -->
<carAxles value=""/>
<!-- Объем кузова -->
<!-- * тип данных: число -->
<carVolume value=""/>
<!-- Массы тары ц (с бруса) -->
<!-- * тип данных: число -->
<carWeightDep value=""/>
<!-- Массы тары ц. (проверенная) -->
<carWeightDepReal value=""/>
<!-- Массы в кг: брутто, нетто -->
<!-- * тип данных: число -->
<carWeightGross value=""/>
<!-- * тип данных: число -->
<carWeightNet value=""/>
<!-- Масса дополнительного
<!-- * тип данных: число -->
<carWeightAddDev value=""/>
<!-- Ранее перевозившийся груз (Код ЕТ СНГ по НСИ - FREIGHT) -->
<!-- * тип данных: строка (до 6 символов) -->
<carPriorFreightCode value=""/>
<!-- * тип данных: строка (до 150 символов) -->
<carPriorFreightName value=""/>
<!-- НАКЛАДНАЯ: Вагон: Вагонные отметки и тарифные отметки на вагон (0..n) -->
<carSPC>
<!-- Отметка (ID по T_INV_TRANSP_CLAUSE) -->
<!-- * тип данных: целое число (до 10 символов) -->
<spcTranspClauseID value=""/>
<!-- Наименование отметки -->
<!-- * тип данных: строка (до 4000 символов) -->
<spcTranspClauseName value=""/>
<!-- Тип отметки -->
<!-- * тип данных: строка (до 20 символов) -->
<spcTypeName value=""/>
<!-- Замечание -->
<!-- * тип данных: строка (до 255 символов) -->
<spcCustomText value=""/>
</carSPC>
<!-- НАКЛАДНАЯ: Вагон: ЗПУ (0..n) -->
<carCSL>
<!-- Тип ЗПУ (ID по INV_SEAL_TYPE) -->
<!-- * тип данных: целое число (до 5 символов) -->
<sealTypeID value=""/>
<!-- * тип данных: строка (до 40 символов) -->
<sealTypeName value=""/>
<!-- Знаки -->
<!-- * тип данных: строка (до 20 символов) -->
<sealMarks value=""/>
<!-- Количество -->
<!-- * тип данных: целое число -->
<sealQuantity value=""/>
<!-- Год изготовления -->
<!-- * тип данных: целое число -->
<sealYear value=""/>
<!-- Тип собственности ЗПУ (ID по НСИ - COMMON, тип 150) -->
<!-- * тип данных: целое число (до 3 символов) -->
<sealOwnerTypeID value=""/>
<!-- * тип данных: строка (до 255 символов) -->
<sealOwnerTypeName value=""/>
<!-- Ж/д ЗПУ (ID по RAILWAY) -->
<!-- * тип данных: целое число (до 3 символов) -->
<sealRailwayID value=""/>
<!-- * тип данных: целое число -->
<sealRailwayCode value=""/>
<!-- * тип данных: строка (до 30 символов) -->
<sealRailwayName value=""/>
</carCSL>
</invCar>
Запрос статуса накладных по плательщику
Запрос возвращает только данные, относящиеся к запрашивающей организации.
<!-- ************************ -->
<!-- СТАТУС НАКЛАДНЫХ ПО
<!-- ************************ -->
<invoiceStatus version="1.0">
<!-- Получения статуса возможно запросить по диапазону дат или по Id последней операции над документами – порядковому номеру операции -->
<!-- Начиная с даты: больше или равно указанной даты (>=) -->
<!-- * тип данных: дата -->
<fromDate value=""/>
<!-- Заканчивая датой (если не указано – 3000 год): менее указанной даты (<) -->
<!-- * тип данных: дата -->
<toDate value=""/>
<!-- Проверка: Дата начала диапазона
больше даты окончания диапазон
<!-- ID операции: более указанной ID операции (>) – последнее OperId возвращается в ответе на запрос. При неизвестной последней OperID указать 999999999999999 -->
<!-- * тип данных: целое число -->
<OperId value=""/>
<!-- Проверка: Не задан параметр поиска накладных: диапазон дат или OperId -->
<!-- Поиск по операциям (указание
по согласованию с
<CustomResult value=""/>
<!-- Поиск накладных по
<usePayer/>
<!-- Поиск по операциям – возможно использовать несколько вариантов -->
<!-- результат визирования -->
<useViza/>
<!-- порчи накладной -->
<useSpoil/>
<!-- перевода в путь -->
<useSending/>
<!-- прибытия грузов -->
<useArrive/>
<!-- выдачи грузов (раскредитования) -->
<useDelivery/>
<!-- отмена раскредитования по прибытию -->
<useSpoilDelivery/>
<!-- Поиск накладных по всем состояниям -->
<useAll/>
</invoiceStatus>
Ответ на запрос:
В случае успешного приема запроса «Запрос статуса накладных по плательщику» ответ содержит следующую информацию:
<!-- *********************** -->
<!-- СТАТУС НАКЛАДНЫХ ПО
<!-- *********************** -->
<invoiceStatusReply version="1.0">
<!-- Записи накладных (0..n) -->
<invoice>
<!-- Идентификатор накладной -->
<invoiceID value=""/>
<!-- Номер накладной -->
<invNumber value=""/>
<!-- ID состояние накладной -->
<invoiceStateID value=""/>
<!-- Cостояние накладной -->
<invoiceState value=""/>
<!-- Дата последней операции над документом -->
<invoiceLastOper value=""/>
</invoice>
<!-- Последняя операция -->
<OperId value=""/>
</invoiceStatusReply>
Получение данных обращения по провозной плате
<!-- ************************ -->
<!—Получение данных претензии:
<!-- ************************ -->
< GetComplaint version="1.0">
<!—- ИД претензии -->
<!-- * тип данных: целое число -->
<cmpComplaintID value=""/>
</GetComplaint >
Ответ запроса:
В случае успешного приема запроса «Запрос подачи претензии к накладной» ответ содержит следующую информацию:
<!-- ************************ -->
<!— Запрос получения данных
претензии: ответ (при
<!-- ************************ -->
<GetComplaintReply version="1.0">
<!—- ИД претензии -->
<!-- * тип данных: целое число -->
<cmpComplaintID value=""/>
<!—- Номер претензии -->
<!-- * тип данных: строка (до 10 символов) -->
<cmpComplaintNumber value=""/>
<!—- ИД состояния претензии -->
<!-- * тип данных: целое число -->
<cmpComplaintStateID value=""/>
<!—- Наименование состояния претензии -->
<!-- * тип данных: строка (до 40 символов) -->
<cmpComplaintState value=""/>
<!—- ИД типа претензии -->
<!-- * тип данных: целое число -->
<cmpComplType value=""/>
<!—- ИД типа претензии -->
<!-- * тип данных: строка (до 100 символов) -->
<cmpComplTypeName value=""/>
<!—- накладная, к которой подается претензия-->
<!-- * тип данных: целое число -->
<cmpInvoiceID value=""/>
<!-- * тип данных: строка (до 10 символов) -->
<cmpInvoiceNumber value=""/>
<!—- ИД организации подавшей претензию -->
<!-- * тип данных: целое число -->
<cmpOrgID value=""/>
<!—- Наименование организации подавшей претензию -->
<!-- * тип данных: строка (до 60 символов) -->
<cmpOrgNAME value=""/>
<!—- ОКПО организации
<!-- * тип данных: строка (до 10 символов) -->
<cmpOrgOKPO value=""/>
<!—- номер счет-фактуры -->
<!-- * тип данных: строка (до 10 символов) -->
<cmpAccounts value=""/>
<!—- дата создания счета-
<!-- * тип дата -->
<cmpAccountsDate value=""/>
<!—- ИД организации ЖД -->
<!-- * тип данных: целое число -->
<cmpMPSOrgID value=""/>
<!—- Наименование организации ЖД -->
<!-- * тип данных: строка (до 60 символов) -->
<cmpMPSOrgName value=""/>
<!—- ИД приложения
<!-- * тип данных: целое число -->
<cmpInvoiceExpedID value=""/>
<!—- Текст претензии(
<!-- * тип данных: строка -->
<cmpExpedText value=""/>
<!-- Претензия: приложение
<cmpExpedInvoice>
<!—- Структура приложения экспедитора аналогична документу “накладная”. -->
</ cmpExpedInvoice >
<!—- ИД приложения ЖД -->
<!-- * тип данных: целое число -->
<cmpInvoiceRZDID value=""/>
<!—- Текст претензии (ЖД) -->
<!-- * тип данных: строка -->
<cmpRZDText value=""/>
<!-- Претензия: приложение ЖД (1) -->
<cmpRZDInvoice>
<!—- Структура приложения
экспедитора аналогична
</cmpRZDInvoice>
</GetComplaint Reply >
Подача обращения по провозной плате к накладной
Запрос подачи претензии к накладной
<!-- ************************ -->
<!—ПОДАЧА ОБРАЩЕНИЯ ПО
<!-- ************************ -->
< complaintToInvoice version="1.0">
<!—- тип претензии -->
<!-- * тип данных: целое число -->
<cmpComplType value=""/>
<!—- накладная, к которой подается претензия-->
<!-- * тип данных: целое число -->
<cmpInvoiceID value=""/>
<!-- * тип данных: строка (до 10 символов) -->
<cmpInvoiceNumber value=""/>
<!—признак выдачи счет-
<cmpAccountsSign/>
<!—- номер счет-фактуры -->
<!-- * тип данных: строка (до 10 символов) -->
<cmpAccounts value=""/>
<!—- дата создания счета-
<!-- * тип дата -->
<cmpAccountsDate value=""/>
<!—- ИД организации ЖД -->
<!-- * тип данных: целое число -->
<cmpMPSOrgID value=""/>
<!—Обращение по провозной плате: приложение экспедитора (1) -->
<cmpExpedInvoice>
<!—- Структура приложения
экспедитора аналогична
<!-- Тип накладной (ID по НСИ - COMMON, тип 147, за исключением ID 3, 4) -->
<!-- Значение по умолчанию - 1 (Накладная на погрузку) -->
<!-- * тип данных: целое число -->
<invTypeID value=""/>
<!-- Проверка: Необходимо ввести тип накладной! -->
<!-- Номер накладной (указывается для номерных отправок)-->
<!-- * тип данных: строка (до 8 символов) -->
<invNumber value=""/>
<!-- Вид отправки (KIND_SEND по INV_SEND_TYPE) -->
<!-- Значение по умолчанию - 1 (Повагонная) -->
<!-- * тип данных: целое число -->
<invSendKindID value=""/>
<!-- Проверка: Необходимо ввести вид отправки! -->
<!-- Тип бланка (Код или ID по BLANC_TYPE) -->
<!-- Код по BLANC_TYPE -->
<!-- Значение по умолчанию – вычисляется по данным -->
<!-- * тип данных: целое число -->
<invBlankType value=""/>
<!-- ID по BLANC_TYPE -->
<!-- * тип данных: целое число -->
<invBlankTypeID value=""/>
<!-- Проверка: Необходимо выбрать тип бланка! -->
<!-- Грузоотправитель/адрес (из <
<!-- Значение по умолчанию – организация пользователя из SELF_CLI_ID -->
<!-- * тип данных: целое число-->
<invSenderID value=""/>
<!-- * тип данных: целое число-->
<invSenderAddressID value=""/>
<!-- * тип данных: строка (до 255 символов) -->
<invSenderAddress value=""/>
<!-- * тип данных: целое число (4 знака) -->
<invSenderTGNL value=""/>
<!-- Проверка: Необходимо ввести грузоотправителя! -->
<!-- Проверка: Необходимо ввести адрес грузоотправителя! -->
<!-- ID или номер заявки, номер отправки, номер графика подач -->
<!-- * тип данных: целое число -->
<invClaimID value=""/>
<!-- Номер заявки - 10 знаков. Для указанния корректировки добавляется префикс «-ИЗМ/» и номер изменения, например «0005345024-ИЗМ/1» При поиске по такого вида номеру учитывается станция отправления - для определения раздвоившихся заявок с изменнной станцией отправления -->
<!-- * тип данных: строка (до 10 символов) -->
<invClaimNumber value=""/>
<!-- Номер отправки заявки -->
<!-- * тип данных: целое число -->
<invOtprNum value=""/>
<!-- Номер графика подач заявки.
При указания пустого графика
или графика с полностью
<!-- * тип данных: целое число -->
<invPodNum value=""/>
<!-- Проверка: Необходимо ввести график подач! -->
<!-- Проверка: Остаток вагонов не может быть равным 0! -->
<!-- Внимание. Если далее после некоторых тегов идет проверка: «Данные указанные в накладной и заявке не совпадают!», то это означает что данные этих тегов берутся из заявки. -->
<!-- Страна отправления (код ОКСМ по НСИ - COUNTRY) -->
<!-- Значение по умолчанию – 643 (Россия) -->
Информация о работе Разработка программного обеспечения АРМ Экспедитора