Курсовая

Курсовая на тему Создание автоматизиpованной инфоpмационно-спpавочной системы расписания движения поездов и продажи

Работа добавлена на сайт bukvasha.net: 2015-07-01

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 11.11.2024


ФЕДЕРАЛЬНОЕ АГЕНТСТВО МОРСКОГО И РЕЧНОГО ТРАНСПОРТА

Федеральное государственное образовательное учреждение высшего профессионального образования

«Санкт-Петербургский государственный университет водных коммуникаций»

КУРСОВАЯ РАБОТА

ПО ДИСЦИПЛИНЕ «БАЗЫ ДАННЫХ И ЭКСПЕРТНЫЕ СИСТЕМЫ»

ТЕМА:

«Создание автоматизиpованной инфоpмационно - спpавочной системы расписания движения поездов и продажи билетов»

Санкт-Петербург

2009 г

Оглавление

Введение

1 Описание системы

1.1 Нормализация и схема базы данных

1.2 Структура меню

2 Программная реализация информационной системы

2.1 Перечисления

2.2 Справочники

2.3 Документы

2.4 Регистры

2.5 Журналы

2.6 Отчеты

2.7 Администрирование

Заключение

Введение

Система программ "1С: Предприятие" предназначена для решения широкого спектра задач автоматизации учета и управления, стоящих перед динамично развивающимися современными предприятиями.

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

- определяем объекты предметной области, описывающие атрибуты;

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

- составляем полный перечень всех запросов к БД;

- определяем структурные связи;

- построение схемы объекта.

Использование БД и СУБД при построении автоматизированной информационной системы отделяет логическую структуру данных (т.е. представлении об организации данных с точки зрения пользователя) от физической структуры данных в памяти ЭВМ, что значительно облегчает труд по созданию такой системы.

Под СУБД понимают пакет прикладных программ обслуживания БД, которая:

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

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

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

  • Обеспечивает защиту целостности и корректности данных.

Преимуществом использования БД и СУБД при построении информационных систем заключается в централизованном управлении информационными ресурсами всей системы.

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

1 Описание системы

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

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

По своей сути СУБД будет оперативно выполнять следующие функции:

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

- формирование и печать отчёта расписания поездов;

- формирование и печать отчёта о ценах билетов;

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

- формирование и печать отчёта о билете конкретного пассажира;

- формирование и печать отчёта о поездах за период;

- формирование и печать отчёта о движениях наличности за период;

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

1.1 Нормализация и схема базы данных

Определим объекты и атрибуты проектируемой системы. Рассмотрим отношение следующей структуры:

ПриемПациента (Код_Пациента, Наименование_Пациента, Диагноз, НомерАмбулаторнойКарты, Адрес, Вид_Оплаты, Документ, Симптомы, Наименование_Услуга, Цена, Количество, Сумма)

В этом отношении имеется составной ключ – это код_пациент, диагноз, услуга. Все атрибуты отношения атомарны, значит оно находится в 1НФ. Рассмотрим наблюдающиеся в этом отношении функциональные зависимости. Прежде всего, в отношении содержится частичная функциональная зависимость неключевых атрибутов от ключа отношения:

Пациент – Наименование_Пациента, Пациент – Адрес_Пациента, Диагноз – Симптомы, наименование_Услуга – Цена.

Не ключевой атрибут Наименование_Пациента зависит от от ключа Код_Пациента.

Транзитивные зависимости: Диагноз ->-> Услуга->-> Симптомы

Наименование_Пациента ->-> Адрес

Наименование_Пациента ->-> Симптомы

Приведем это отношение ко 2НФ, разбивая исходное отношение и производя внешнее кодирование, при этом получаем отношения:

Пациент(Код, Наименование_Пациента, Адрес, Симптомы)

АмбулаторнаяКарта(Код_Пациента,Наименование_Пациента, Номер_АмбулаторнаяКарта, Диагноз, Услуга, Цена, Сумма)

Услуга(Код_Услуги, Наименование_Услуги, Цена_Услуги, Единица_Измерения)

Перейдём к рассмотрению в полученных отношениях транзитивных зависимостей неключевых атрибутов от ключа.

Код_Пациента -> Номер_АмбулаторнаяКарта -> Диагноз.

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

Выявим теперь независимые многозначные зависимости, они имеются в отношении ПриёмаПацинта:

Номер ->-> Код_Пациента ->-> Номер->->Код_Услуги

Будем считать, что у нас нет транзитивных зависимостей неключевых атрибутов от ключа. Получаем следующие отношения:

Пациент (Номер Пациента, Дата Рождения, НомерАмбулаторнойКарта);

Сотрудники (Номер_Сотрудника,ФИО, Данные);

Услуги (Дата, Наименование, Цена, Сеанс, ЕдиницаИзмерения);

Документ (НомерДокумента, ДатаВыдачи).

Здесь мы освобождаем отношение от избыточности, а также различного рода аномалий. Но не всех.

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

Выявлено у пациента (Диагноз, Пациент) и Назначение (Пациент, Услуги).

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

Назначение (Пациент, Симптомы).

В результате нормализации была получена следующая система отношений:

  • Пациент ( Наименование_Пациента, Дата_Рождения, Пол, Номер_АмбулаторнойКарты, Адрес);

  • Сотрудник(Наименование_Сотрудника, Дата_Рождения, Пол, Образование);

  • Адрес ( Наименование_Адреса);

  • Документ (Наименование_ Документ, Номер, Дата_Выдачи);

  • Услуги(Наименование_Услуги, Цена, Сеанс, Единица_Измерения);

  • Болезни (Код_ Болезни, Наименование_ Болезни);

  • Симптомы (Заболевание).

1.2 Структура меню

В главном меню пользователю предоставляется возможность выбирать следующие пункты меню и пункты подменю:

Справочники:

  • Пассажиры;

  • Поезд;

  • Места;

  • Документ;

Журналы документов:

  • Касса;

Документы:

  • Билет;

  • Бронирование Билетов;

  • Возврат;

  • Расписание Поездов;

Отчеты:

  • Расписание Поездов;

  • Цены На Билеты;

  • Информация О поездах ;

  • Проданные Билеты;

  • Движение Наличности За Период;

  • Билет;

2 Программная реализация информационной системы

2.1 Перечисления

Перечисления:

На снимке экрана представлены перечисления, используемые в системе:

2.2 Справочники

В данной информационно-справочной системе существуют следующие справочники: Документ, Места, Пассажиры, Поезд.

1) Пассажиры:

Форма элемента:

Печатная форма элемента справочника:

Форма списка:

Печатная форма:

2) Документ

Форма элемента:

Форма списка:

Печатная форма:

3) Поезд

Форма элемента:

Печатная форма:

Форма списка:

Печатная форма:

4) Места

Форма элемента:

Печатная форма:

Форма списка

Печатная форма:

2.3 Документы

1) Билет:

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

Печатная форма:

Модуль документа:

Процедура Место Цена При Изменении (Элемент)

Строка Табличной Части = Элементы Формы. Место. Текущие Данные; Рассчитать Сумму (Строка Табличной Части );

Конец Процедуры

Процедура Место НДС При Изменении (Элемент)

Строка Табличной Части = Элементы Формы. Место. Текущие Данные; Рассчитать Сумму (Строка Табличной Части );

Конец Процедуры

Процедура Перед Записью (Отказ, Режим Записи, Режим Проведения)

Сумма Документа = Место. Итог ("Сумма");

Конец Процедуры

Процедура Печать(Элемент)

//{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Таб Док = Новый Табличный Документ;

Макет = Документы. Билет. Получить Макет("Печать");

// Заголово Область = Макет. Получить Область("Заголовок");

Таб Док. Вывести (Область);

// Шапка

Область = Макет. Получить Область("Шапка");

Область. Параметры. Номер = Номер;

Область. Параметры. Дата = Дата;

Область. Параметры. Номер Билета = Номер Билета;

Область. Параметры. ФИО = ФИО;

Область. Параметры. Документ = Документ;

Область. Параметры. Поезд = Поезд;

Область. Параметры. Станция Отправления = Станция Отправления;

Область. Параметры. Станция Прибытия = Станция Прибытия;

Область. Параметры. Дата Отправления = Дата Отправления;

Область. Параметры. Дата Прибытия = Дата Прибытия;

Таб Док. Вывести(Область);

// Вагон

Область = Макет. Получить Область ("Вагон Шапка");

Таб Док. Вывести (Область);

Для Каждого Тек Строка Вагон Из Вагон Цикл

Область = Макет. Получить Область ("Вагон");

Область. Параметры. ТипВагона = ТекСтрока Вагон. Тип Вагона;

Область. Параметры. Номер Вагона = ТекСтрока Вагон. Номер Вагона;

ТабДок. Вывести (Область);

Конец Цикла;

// Место

Область = Макет. Получить Область ("Место Шапка");

ТабДок. Вывести(Область);

Для Каждого ТекСтрока Место Из Место Цикл

Область = Макет. Получить Область ("Место");

Область. Параметры. Номер Места = ТекСтрока Место. Номер Места ;

Область. Параметры. Цена = ТекСтрока Место. Цена;

Область. Параметры. НДС = ТекСтрока Место. НДС;

Область. Параметры. Сумма = ТекСтрока Место. Сумма;

ТабДок. Вывести(Область);

Конец Цикла;

// Подвал

Область = Макет. Получить Область("Подвал");

Область. Параметры. Сумма Документа = Сумма Документа ;

ПараметрыПредметаИсчисления="рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2";

Форматная Строка="Л=ru_RU";

Область. Параметры. Сумма Прописью = Число Прописью (Сумма Документа, Форматная Строка, Параметры Предмета Исчисления );

ТабДок. Вывести(Область);

ТабДок. Отображать Сетку = Ложь;

ТабДок. Защита = Истина;

ТабДок. Только Просмотр = Ложь;

ТабДок. Отображать Заголовки = Ложь;

ТабДок. Показать();

//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ

Конец Процедуры

2) Бронирование билетов

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

Печатная форма:

Модуль документа:

Процедура Печать(Элемент)

//{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = Новый Табличный Документ;

Макет = Документы. Бронирование Билетов. Получить Макет("Печать");

// Заголовок

Область = Макет. Получить Область ("Заголовок");

ТабДок. Вывести (Область);

// Шапка

Область = Макет. Получить Область ("Шапка");

Область. Параметры. Номер = Номер;

Область. Параметры. Дата = Дата;

Область. Параметры. ФИО = ФИО;

Область. Параметры. Документ = Документ;

Область. Параметры. Станция Отправления = Станция Отправления;

Область. Параметры. Дата Отправления = Дата Отправления;

Область. Параметры. Станция Прибытия = Станция Прибытия;

Область. Параметры. Дата Прибытия = Дата Прибытия;

Область. Параметры. Цена = Цена;

ПараметрыПредметаИсчисления="рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2";

Форматная Строка ="Л=ru_RU";

Область. Параметры. Сумма Прописью = Число Прописью (Цена, Форматная Строка, Параметры Предмета Исчисления );

ТабДок. Вывести (Область);

ТабДок. Отображать Сетку = Ложь;

ТабДок. Защита = Истина;

ТабДок. Только Просмотр = Истина;

ТабДок. Отображать Заголовки = Ложь;

ТабДок. Показать();

//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ

Конец Процедуры

3) Возврат билетов

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

Печатная форма:

Модуль документа:

Процедура Печать1(Элемент)

//{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать1)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = Новый Табличный Документ;

Макет = Документы. Возврат Билетов. Получить Макет("Печать1");

// Заголовок

Область = Макет. Получить Область ("Заголовок");

ТабДок. Вывести(Область);

// Шапка

Область = Макет. Получить Область ("Шапка");

Область. Параметры. Номер = Номер;

Область. Параметры. Дата = Дата;

Область. Параметры. Пассажир = Пассажир;

Область. Параметры. Номер Билета = Номер Билета ;

Область. Параметры. Станция Отправления = Станция Отправления;

Область. Параметры. Станция Прибытия = Станция Прибытия;

Область. Параметры. Дата Отправления = Дата Отправления;

Область. Параметры. Дата Прибытия = Дата Прибытия;

Область. Параметры. Сумма = Сумма; ПараметрыПредметаИсчисления="рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2";

Форматная Строка ="Л=ru_RU";

Область. Параметры .Сумма Прописью = Число Прописью (Сумма, Форматная Строка, Параметры Предмета Исчисления );

ТабДок. Вывести(Область);

ТабДок. Отображать Сетку = Ложь;

ТабДок. Защита = Истина;

ТабДок. Только Просмотр = Истина;

ТабДок. Отображать Заголовки = Ложь;

ТабДок. Показать ();

//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ

Конец Процедуры

4) Расписание поездов

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

Печатная форма:

Модуль документа:

Процедура Печать(Элемент)

//{{_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ(Печать)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = Новый Табличный Документ;

Макет = Документы. Расписание Поездов. Получить Макет ("Печать");

// Заголовок

Область = Макет. Получить Область ("Заголовок");

ТабДок. Вывести (Область);

// Шапка

Область = Макет. Получить Область("Шапка");

Область. Параметры. Номер = Номер;

Область. Параметры. Номер Поезда = Номер Поезда ;

Область. Параметры. Название Поезда = Название Поезда;

Область. Параметры. Станция Отправления = Станция Отправления;

Область. Параметры. Дата Отправления = Дата Отправления;

Область. Параметры. Станция Прибытия = Станция Прибытия;

Область. Параметры. Дата Прибытия = Дата Прибытия;

ТабДок. Вывести (Область);

ТабДок. Отображать Сетку = Ложь;

ТабДок. Защита = Истина;

ТабДок. Только Просмотр = Истина;

ТабДок. Отображать Заголовки = Ложь;

ТабДок. Показать ();

//}}_КОНСТРУКТОР_ПЕЧАТИ_ЭЛЕМЕНТ

Конец Процедуры

2.4 Регистры

1) Цены На Билеты (регистр сведений) – независимый, цены вводятся пользователем.

Измерения:

  • Поезд

  • Места

Ресурсы:

  • Цена

2) Продажа Билетов (регистр сведений) – регистратором является документ Билет.

Измерения:

  • Номер Билета

  • Пассажир

Ресурсы:

  • Цена

3) Информация О поездах (регистр сведений) – регистратором является документы Билет и Расписание Поездов.

Измерения:

  • Поезд

  • Станция Отправления

  • Станция Прибытия

  • Дата Отправления

4) Проданные Билеты (регистр остатков) – регистратором является документы Билет, Возврат Билетов.

Измерения:

  • Пассажир

Ресурсы:

  • Номер Билета

5) Касса (регистр остатков) – регистратором является документы Билет, Возврат Билетов, Бронирование Билетов .

Ресурсы:

  • Сумма.

Реквизиты:

  • Пассажир.

2.5 Журналы

1) Касса.

Реестр документов:

2.6 Отчеты

1) ЦеныНаБилеты

Диалог:

Печатная форма:

Модуль отчёта:

процедура Действия Формы Цены На Билеты Сформировать (Кнопка)

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА(Цены На Билеты)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = Элементы Формы. Поле Табличного Документа ;

Цены На Билеты (ТабДок);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА

Конец Процедуры

Процедура Цены На Билеты(ТабДок) Экспорт

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(Цены На Билеты)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Макет = Отчет Объект. Получить Макет ("Цены На Билеты ");

Запрос = Новый Запрос;

Запрос. Текст =

"ВЫБРАТЬ

| Цены На Билеты. Период ,

| Цены На Билеты. Поезд,

| ПРЕДСТАВЛЕНИЕ(Цены На Билеты. Поезд),

| Цены На Билеты. Места,

| Цены На Билеты. Цена

|ИЗ

| Регистр Сведений. Цены На Билеты КАК Цены На Билеты ";

Результат = Запрос. Выполнить ();

Область Заголовок = Макет. Получить Область("Заголовок");

Область Подвал = Макет. Получить Область("Подвал");

Область Шапка Таблицы = Макет. Получить Область ("Шапка Таблицы");

Область Подвал Таблицы = Макет. Получить Область ("Подвал Таблицы ");

Область Детальных Записей = Макет. Получить Область ("Детали");

ТабДок. Очистить();

ТабДок. Вывести(Область Заголовок );

ТабДок. Вывести(Область Шапка Таблицы);

ТабДок. Начать Автогруппировку Строк();

Выборка Детали = Результат .Выбрать();

Пока Выборка Детали. Следующий() Цикл

Область Детальных Записей. Параметры. Заполнить (Выборка Детали);

ТабДок. Вывести (Область Детальных Записей, Выборка Детали. Уровень());

Конец Цикла;

ТабДок. Закончить Автогруппировку Строк();

ТабДок. Вывести(Область Подвал Таблицы);

ТабДок. Вывести(Область Подвал );

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ

Конец Процедуры

Информация о поездах

2) Диалог:

Печатная форма:

Модуль отчёта:

Процедура ДействияФормыИнформацияОПоездахСформировать(Кнопка)

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА(ИнформацияОПоездах)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;

ИнформацияОПоездах(ТабДок, ДатаКонца, ДатаНачала);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА

КонецПроцедуры

Процедура ИнформацияОПоездах(ТабДок, ДатаКонца, ДатаНачала) Экспорт

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(ИнформацияОПоездах)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Макет = ОтчетОбъект.ПолучитьМакет("ИнформацияОПоездах");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| ИнформацияОПоездах.Период,

| ИнформацияОПоездах.Поезд,

| ИнформацияОПоездах.СтанцияОтправления,

| ИнформацияОПоездах.СтанцияПрибытия,

| ИнформацияОПоездах.ДатаОтправления,

| ИнформацияОПоездах.ДатаПрибытия

|ИЗ

| Регистр Сведений.ИнформацияОПоездах КАК Информация О Поездах

|ГДЕ

| ИнформацияОПоездах.Период МЕЖДУ &ДатаНачала И &ДатаКонца";

Запрос.УстановитьПараметр("ДатаКонца", ДатаКонца);

Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);

Результат = Запрос.Выполнить();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");

ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");

ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

ТабДок.Очистить();

ТабДок.Вывести(ОбластьЗаголовок);

ТабДок.Вывести(ОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

ВыборкаДетали = Результат.Выбрать();

Пока ВыборкаДетали.Следующий() Цикл

ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);

ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(ОбластьПодвалТаблицы);

ТабДок.Вывести(ОбластьПодвал);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ

Конец Процедуры

3) Расписание поездов

Диалог:

Печатная форма:

Модуль:

Процедура Действия Формы Расписание Поездов Сформировать(Кнопка)

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА(Расписание Поездов)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = Элементы Формы. Поле Табличного Документа;

Расписание Поездов (ТабДок);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА

Конец Процедуры

Процедура Расписание Поездов(ТабДок) Экспорт

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(Расписание Поездов)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Макет = Отчет Объект. Получить Макет ("Расписание Поездов ");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| РасписаниеПоездов.НомерПоезда,

| РасписаниеПоездов.НазваниеПоезда,

| ПРЕДСТАВЛЕНИЕ(РасписаниеПоездов.НазваниеПоезда),

| РасписаниеПоездов.СтанцияОтправления,

| РасписаниеПоездов.СтанцияПрибытия,

| РасписаниеПоездов.ДатаОтправления,

| РасписаниеПоездов.ДатаПрибытия

|ИЗ

| Документ.РасписаниеПоездов КАК РасписаниеПоездов";

Результат = Запрос.Выполнить();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");

ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");

ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

ТабДок.Очистить();

ТабДок.Вывести(ОбластьЗаголовок);

ТабДок.Вывести(ОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

ВыборкаДетали = Результат.Выбрать();

Пока ВыборкаДетали.Следующий() Цикл

ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);

ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(ОбластьПодвалТаблицы);

ТабДок.Вывести(ОбластьПодвал);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ

КонецПроцедуры

4) Проданные билеты

Диалог:

Печатная форма:

Модуль:

Процедура ДействияФормыПроданныеБилетыСформировать(Кнопка)

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА(ПроданныеБилеты)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;

ПроданныеБилеты(ТабДок, ДатаКонца, ДатаНачала);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА

КонецПроцедуры

Процедура ПроданныеБилеты(ТабДок, ДатаКонца, ДатаНачала) Экспорт

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(ПроданныеБилеты)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Макет = ОтчетОбъект.ПолучитьМакет("ПроданныеБилеты");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| ПроданныеБилеты.Период,

| ПроданныеБилеты.Пассажир,

| ПроданныеБилеты.НомерБилета

|ИЗ

| РегистрНакопления.ПроданныеБилеты КАК ПроданныеБилеты

|ГДЕ

| ПроданныеБилеты.Период МЕЖДУ &ДатаНачала И &ДатаКонца";

Запрос.УстановитьПараметр("ДатаКонца", ДатаКонца);

Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);

Результат = Запрос.Выполнить();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");

ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");

ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

ТабДок.Очистить();

ТабДок.Вывести(ОбластьЗаголовок);

ТабДок.Вывести(ОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

ВыборкаДетали = Результат.Выбрать();

Пока ВыборкаДетали.Следующий() Цикл

ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);

ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(ОбластьПодвалТаблицы);

ТабДок.Вывести(ОбластьПодвал);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ

КонецПроцедуры

5) Билет

Диалог:

Печатная форма:

Модуль:

Процедура ДействияФормыБилетСформировать(Кнопка)

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА(Билет)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;

Билет(ТабДок, ФИО);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА

КонецПроцедуры

Процедура Билет(ТабДок, ФИО) Экспорт

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(Билет)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Макет = ОтчетОбъект.ПолучитьМакет("Билет");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| Билет.ФИО,

| ПРЕДСТАВЛЕНИЕ(Билет.ФИО),

| Билет.НомерБилета,

| Билет.Документ,

| ПРЕДСТАВЛЕНИЕ(Билет.Документ),

| Билет.Поезд,

| ПРЕДСТАВЛЕНИЕ(Билет.Поезд),

| Билет.СтанцияОтправления,

| Билет.СтанцияПрибытия,

| Билет.ДатаОтправления,

| Билет.ДатаПрибытия,

| Билет.Вагон.(

| НомерСтроки,

| ТипВагона,

| НомерВагона

| ),

| Билет.Место.(

| НомерМеста,

| Цена,

| НДС,

| Сумма

| ),

| Билет.СуммаДокумента КАК СуммаДокумента

|ИЗ

| Документ.Билет КАК Билет

|ГДЕ

| Билет.ФИО = &ФИО";

Запрос.УстановитьПараметр("ФИО", ФИО);

Результат = Запрос.Выполнить();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");

ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");

ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

Вагон Область Шапка Таблицы = Макет. Получить Область ("Вагон Шапка Таблицы");

Вагон Область Подвал Таблицы = Макет. Получить Область("Вагон Подвал Таблицы");

Вагон Область Детальных Записей = Макет. Получить Область("Вагон Детали");

Место Область Шапка Таблицы = Макет. Получить Область("Место Шапка Таблицы");

Место Область Подвал Таблицы = Макет. Получить Область("Место Подвал Таблицы");

Место Область Детальных Записей = Макет. Получить Область("Место Детали");

ТабДок.Очистить();

ТабДок.Вывести(ОбластьЗаголовок);

ТабДок.Вывести(ОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

ВыборкаДетали = Результат.Выбрать();

Пока ВыборкаДетали.Следующий() Цикл

ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);

ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());

ТабДок.НачатьГруппуСтрок();

ТабДок.Вывести(ВагонОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

ВагонВыборкаДетали = ВыборкаДетали.Вагон.Выбрать();

Пока ВагонВыборкаДетали.Следующий() Цикл

ВагонОбластьДетальныхЗаписей.Параметры.Заполнить(ВагонВыборкаДетали);

ТабДок.Вывести(ВагонОбластьДетальныхЗаписей, ВагонВыборкаДетали.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(ВагонОбластьПодвалТаблицы);

ТабДок.Вывести(МестоОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

МестоВыборкаДетали = ВыборкаДетали.Место.Выбрать();

Пока МестоВыборкаДетали.Следующий() Цикл

МестоОбластьДетальныхЗаписей.Параметры.Заполнить(МестоВыборкаДетали);

ТабДок.Вывести(МестоОбластьДетальныхЗаписей, МестоВыборкаДетали.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(МестоОбластьПодвалТаблицы);

ТабДок.ЗакончитьГруппуСтрок();

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(ОбластьПодвалТаблицы);

ТабДок.Вывести(ОбластьПодвал);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ

КонецПроцедуры

6) Движение наличности за период

Диалог:

Печатная форма:

Модуль:

Процедура (Кнопка)

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА(ДвижениеНаличностиЗаПериод)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;

ДвижениеНаличностиЗаПериод(ТабДок, ДатаКонца, ДатаНачала);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПРОЦЕДУРА_ВЫЗОВА

КонецПроцедуры

Процедура ДвижениеНаличностиЗаПериод(ТабДок, ДатаКонца, ДатаНачала) Экспорт

//{{КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ(ДвижениеНаличностиЗаПериод)

// Данный фрагмент построен конструктором.

// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Макет = Отчет Объект. Получить Макет("Движение Наличности За Период");

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| Касса.Период,

| Касса.Сумма КАК Сумма,

| Касса.Пассажир КАК Пассажир,

| Касса.Регистратор,

| ПРЕДСТАВЛЕНИЕ(Касса.Регистратор)

|ИЗ

| РегистрНакопления.Касса КАК Касса

|ГДЕ

|ИТОГИ

| СУММА(Сумма)

|ПО

| ОБЩИЕ";

Запрос.УстановитьПараметр("ДатаКонца", ДатаКонца);

Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);

Результат = Запрос.Выполнить();

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");

ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");

ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");

ОбластьОбщийИтог = Макет.ПолучитьОбласть("ОбщиеИтоги");

ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

ТабДок.Очистить();

ТабДок.Вывести(ОбластьЗаголовок);

ТабДок.Вывести(ОбластьШапкаТаблицы);

ТабДок.НачатьАвтогруппировкуСтрок();

Выборка Общий Итог = Результат. Выбрать(Обход Результата Запроса. По Группировкам);

ВыборкаОбщийИтог.Следующий(); // Общий итог

ОбластьОбщийИтог.Параметры.Заполнить(ВыборкаОбщийИтог);

ТабДок.Вывести(ОбластьОбщийИтог, ВыборкаОбщийИтог.Уровень());

ВыборкаДетали = ВыборкаОбщийИтог.Выбрать();

Пока ВыборкаДетали.Следующий() Цикл

ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетали);

ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетали.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();

ТабДок.Вывести(ОбластьПодвалТаблицы);

ТабДок.Вывести(ОбластьПодвал);

//}}КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ

КонецПроцедуры

2.7 Администрирование

В программе были созданы три пользователя с различными правами и интерфейсами:

1) Администратор. Этому пользователю предоставляются полные администраторские права.

Интерфейс:

2) Бухгалтер. Этому пользователю предоставляются права выполнять все возможные действия, помимо административных, в подсистеме «Бухгалтерия».

Интерфейс:

3) Кассир. Этому пользователю предоставляются права выполнять все возможные действия, помимо административных, в подсистеме «Кассир».

Интерфейс:

Заключение

Работа была выполнена в среде 1С:Предприятие 8.0. В результате данной работы была создана автоматизированная информационно-справочная система, которая полностью решает поставленную задачу и удовлетворяет всем поставленным требованиям.

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

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

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

Гибкость платформы позволяет применять «1С:Предприятие 8.0» в самых разнообразных областях:

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

  • поддержка оперативного управления предприятием;

  • автоматизация организационной и хозяйственной деятельности;

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

  • широкие возможности для управленческого учета и построения аналитической отчетности, поддержка многовалютного учета;

  • решение задач планирования, бюджетирования и финансового анализа;

  • другие области применения.


1. Реферат Первобытная культура как исторический тип
2. Курсовая на тему Привод транспортера для перемещения грузов на склад
3. Реферат Устранение неполадок Windows 98 на аппаратном уровне.
4. Реферат на тему King Arthur Essay Research Paper The uglier
5. Реферат Мифы корпоративной стратегии
6. Курсовая Токсические химические элементы Химизм действия
7. Реферат на тему Варикозная распространенная экзема нижних и верхних конечностей
8. Сочинение на тему Вальтер Скотт Карамзин Пушкин
9. Диплом на тему Состав и содержание бухгалтерской финансовой отчётности и её применение в анализе и оценке
10. Реферат Радіоекологія з основами радіобіології