Розробка інформаційної підсистеми «Автостанція, облік продажу квитків»
В проекті для збереження даних використовують таблиці-довідники напрямків рейсів та рейсів (відповідно naprav та marshrut). Для ведення цих довідників використовуватимуться форми відповідно: dov_naprav, dov_reys. Для ведення журналу продажу білетів призначені таблиця bilet та форма jurn_bil. Також для контролю парольного доступу використовується таблиця password та форми parol та kontrol… Читати ще >
Розробка інформаційної підсистеми «Автостанція, облік продажу квитків» (реферат, курсова, диплом, контрольна)
Реферат
Курсовий проект, 38 с., 11 мал., 4 таблиці, 4 джерела, 8 додатків.
Дисципліна: «Бази даних»
Тема: «Розробка інформаційної підсистеми „Автостанція, облік продажу квитків“».
У роботі описані процес і результати проектування автоматизованої системи «Розробка інформаційної підсистеми „Автостанція, облік продажу квитків“», призначеної для автоматизації обліку продажу квитків на автостанції.
Результат розробки оформлений у виді програмної конфігурації і комплекту супроводжувальної документації.
Подальший розвиток роботи можливий у бік поліпшення зовнішнього інтерфейсу і адаптації програми до більшої області потенційного застосування, за рахунок інтеграції з іншими програмними пакетами призначеними для автоматизації різних сфер діяльності підприємства.
Робота має навчальний характер і тому розрахунок економічної ефективності її впровадження для конкретного підприємства не виконувався.
Вступ
Автоматизація розрахунково-облікових задач у різних областях практичної діяльності є одним із основних напрямків застосування обчислювальної техніки і персональних комп’ютерів зокрема. На основі сукупності апаратних засобів і спеціалізованого прикладного програмного забезпечення будуються автоматизовані робочі місця спеціалістів різного профілю.
Основною метою даної курсової роботи є розробка на основі вивчення та аналізу заданої предметної області АРМ касира автостанції, розробка структур та вибір методів обробки даних, алгоритмів функціонування програмних модулів, забезпечення якісних показників роботи програми: створення зручного графічного інтерфейсу користувача, розробка супроводжувальної документації, засобів для розгортання програмної системи в інформаційному середовищі користувачів.
Прикладом реалізації саме такої системи є запропонований програмний засіб «Автостанція», призначений для автоматизації обліку рейсів на автостанції, розроблений у відповідності до завдання на курсове проектування із дисципліни «Бази даних» .
Основною метою даного курсового проекту є розробка розгорнутого технічного завдання на основі вивчення та аналізу заданої предметної області, розробка структур та вибір методів обробки даних, алгоритмів функціонування програмних модулів, забезпечення якісних показників роботи програми: створення зручного графічного інтерфейсу користувача, розробка супроводжувальної документації, засобів для розгортання програмної системи в інформаційному середовищі користувачів.
Для реалізації поставленого завдання обрано сучасні інструментальні середовища і засоби програмування Visual FoxPro 9.0 у яку входять всі сучасні засоби програмування і підтримки процесу розробки програм.
Не зважаючи на те, що проект носить навчальний характер, він має певне практичне значення і може бути застосований для автоматизації вказаної прикладної задачі на підприємствах із різною формою діяльності.
1. Аналіз предметної області і постановка задачі на розробку інформаційної системи
У відповідності до технічного завдання програма «Автостанція» повинна забезпечувати роботу стандартної автостанції (тобто присутність функції продажу квитків), і можливість отримання інформації, вибраної за певними критеріями.
На основі проведеного аналізу предметної області встановлено, що облік замовлення квитків ведеться у електронній формі.
Під час замовлення квитка відбувається вибірка потрібних даних з відповідних полів і інформація заноситься до бази даних, з вказанням потрібних для замовлення даних. А саме: час, дата, напрямок руху, номер місця та рейсу. Також відбувається контроль за номерами замовлених місць.
У відповідності до аналізу предметної області можна зробити висновок, що задача, яка підлягає автоматизації відноситься до складу типових аналітично-облікових задач і може бути вирішена з використанням програмних та інструментальних засобів, передбачених технічним завданням, а саме з використанням елементів файл-серверних баз даних.
2. Опис структур і методів обробки даних
2.1 Обґрунтування вибору методів та засобів обробки даних
Оскільки, у відповідності до технічного завдання і аналізу предметної області, розробка автоматизованої системи обліку рейсів проводиться на основі принципів та елементів систем управління базами даних, то логічним є збереження даних здійснювати у вигляді файлів таблиць бази даних певного типу, вибір і обробку інформації виконувати на основі запитів, для введення і відображення даних використовувати діалогові екранні форми, а вихідні паперові документи формувати у вигляді звітів.
Однією із сучасних універсальних інструментальних систем програмування є Visual FoxPro, яка має розвинені засоби для програмування та обробки баз даних і дає можливість вирішувати відповідні задачі.
Оформлення бази даних у Visual FoxPro здійснюється у вигляді проекту який може містити різні структурні елементи такі як: данні, документи, класи, коди та інші елементи.
В свою чергу
— данні включають таблиці баз даних локальні і віддалені представлення та засоби встановлення з'єднань з віддаленими даний ми, а також запити;
документи — це форми та з звіти;
класи — містять бібліотеку класів, що підключаються до проекту;
коди — містять тексти програм створених проектувальником;
— інші - це як правило меню за допомогою якого різні структурні елементи об'єднуються в єдиний програмний засіб.
Створений в Visual FoxPro проект займає досить малий об'єм, як для готової програми з такими можливостями.
2.2 Опис структур даних
В проекті для збереження даних використовують таблиці-довідники напрямків рейсів та рейсів (відповідно naprav та marshrut). Для ведення цих довідників використовуватимуться форми відповідно: dov_naprav, dov_reys. Для ведення журналу продажу білетів призначені таблиця bilet та форма jurn_bil. Також для контролю парольного доступу використовується таблиця password та форми parol та kontrol. Структура всіх цих елементів буде наведена нижче. Для збереження конфігурації буде використовувати каталог С: avto_st.
Структури довідників:
Таблиця naprav — містить дані про напрямки рейсів автобусів, які можуть здійснюватись з автостанції. Структура полів довідника наведена у таблиці 1.
Таблиця 1. Структура полів таблиці naprav
Ім'я поля | Тип | Довжина | Кількість символів в дробовій частині | Тип індексу | |
kod_npr | integer | ; | primary | ||
name_napr | character | ; | ; | ||
vart | numeric | ; | |||
Таблиця marshrut — містить дані про рейси, які здійснюються з автостанції. Структура полів довідника наведена у таблиці 2.
Таблиця 2. Структура полів таблиці marshrut
Ім'я поля | Тип | Довжина | Кількість символів в дробовій частині | Тип індексу | |
kod_marsh | Integer | ; | primary | ||
kod_napr | Integer | ; | regular | ||
kil_mist | Integer | ; | ; | ||
chas_vidpr | Character | ; | ; | ||
Таблиця bilet призначена для реєстрації проданих білетів. Структура полів журналу наведена в таблиці 3.
Таблиця 3. Структура полів таблиці bilet
Ім'я поля | Тип | Довжина | Кількість символів в дробовій частині | Тип індексу | |
kod_bilet | Integer | ; | primary | ||
kod_marshr | Integer | ; | regular | ||
non_mist | Integer | ; | ; | ||
data_vidprav | Date | ; | ; | ||
chas | Character | ; | ; | ||
Таблиця password — містить дані про користувачів, які мають доступ до автоматизованої системи. Структура полів наведена в таблиці 4.
Таблиця 4. Структура полів таблиці password
Ім'я поля | Тип | Довжина | Кількість символів в дробовій частині | Тип індексу | |
id_kor | Integer | ; | primary | ||
login_kor | Character | ; | —; | ||
pass_kor | Character | ; | —; | ||
dostup_kor | Integer | ; | ; | ||
Зв’язки між таблицями встановлюються за індексними полями kod_npr, kod_marsh. Структура зв’язків представлена на мал. 1.
Мал. 1. Структура зв’язків між таблицями бази даних
2.3 Опис алгоритму функціонування програмного виробу
Інформаційна модель системи представлена на мал. 2.
Для функціонування програми в першу чергу необхідно сформувати довідники. Для цього розроблені форми відповідно — dov_naprav, dov_reys.
Структура форм довідників наведена на мал. 3.
Форма «Довідник напрямків» призначена для ведення таблиці-довідника naprav. Світлова кнопка «Новий» генерує код нового напрямку і створює новий запис в таблиці. З клавіатури в стовпчики таблиці користувачу необхідно для нового напрямку ввести назву пункту призначення і вартість проїзду. Редагування записів виконують безпосередньо в стовпчиках таблиці. Світлова кнопка «Видалити» відмічає вибраний в таблиці запит на видалення. Світлова кнопка «Вихід» видаляє відмічені записи і закриває форму.
Форма «Довідник рейсів» призначена для ведення таблиці-довідника marshrut. Світлова кнопка «Новий» генерує код нового рейсу. Випадаючий список «Напрямок рейсу» служить для вибору напрямку рейсу автобуса. Світлова кнопка «Додати» створює новий запис в таблиці. З клавіатури в стовпчики таблиці користувачу необхідно для ново створеного рейсу ввести загальну кількість місць в автобусі та час відправлення. Редагування записів виконують безпосередньо в стовпчиках таблиці. Світлові кнопка «Видалити» та «Вихід» мають таке ж саме призначення як і в формі «Довідник напрямків». Процедури що реалізують роботу світлових кнопок наведені в додатку 2.
Для ведення журналу продажу квитків призначена форма jurn_bil, структура якої наведена на мал. 4.
Світлові кнопки «Новий», «Додати», «Видалити» і «Вийти» форми виконують ті ж самі функції що і в довідниках.
Мал. 4. Структура форм для ведення журналу продажу білетів Створення нового запису слід виконувати в такій послідовності:
— з випадаючого списку «Напрямок» вибрити напрямок рейсу. При цьому в таблиці «Рейси» залишаться рейси автобусів, що належать до вибраного напрямку;
— в таблиці рейси вибрати потрібний рейс;
— в поле «Дата відправлення» ввести дату відправлення рейсу;
— клацнути світлову кнопку «Вільних місць». Після цього в полі що знаходиться поруч з кнопкою з’явиться кількість вільних місць, а в полях «№№ проданих» і «№№ вільних», з’являться номери проданих і номери вільних місць рейсу;
— якщо в полі «№№ вільних» присутні номери вільних місць, то клацнути світлову кнопку «Новий»;
— лічильником «№ місця «встановити номер місця, яке присутнє в полі «№№ вільних»;
— Клацнути світлову кнопку «Додати».
Друк білету відбувається після натиснення на кнопку «Друк». Для перегляду результатів розроблено звіт. Структура зображена на мал. 5.
Мал. 5. Структура звіту Процедури що реалізують роботу світлових кнопок наведені в додатку 3.
Для контролю парольного доступу було створено форми parol та kontrol, структура яких наведена на мал. 6.
Мал. 6. Структура форм для авторизації
Форма «Довідник користувачів» призначена для ведення таблиці-довідника password. Світлова кнопка «Новий» генерує код нового користувача і створює новий запис в таблиці. З клавіатури в стовпчики таблиці користувачу необхідно ввести логін, пароль та тип доступу. Редагування записів виконують безпосередньо в стовпчиках таблиці. Світлова кнопка «Видалити» відмічає вибраний в таблиці запит на видалення. Світлова кнопка «Вихід» видаляє відмічені записи і закриває форму.
Форма «Авторизація» призначена для здійснення контролю парольного доступу під час запуску програми. Для коректного входу в програму користувачу потрібно з випадаючого списку вибрати свій логін, ввести пароль та натиснути кнопку ОК. Якщо інформація коректно введена відбудеться вхід в програму з наданням користувачу відповідних прав. Якщо пароль введений не вірно, з’явиться повідомлення про помилку.
Процедури що реалізують роботу світлових кнопок наведені в додатку 4.
Форма zv_per призначена для формування запиту про рейси здійснювані в певний період та вивід інформації на друк.
Для формування запиту потрібно ввести межі звітного періоду у відповідні поля і клацнути світлову кнопку «Сформувати». Після цього на екран буде виведене діалогове вікно про дозвіл перезаписати таблицю в якій зберігаються результати запиту. При клацанні світлової кнопки «ОК» цього вікна результати запиту будуть збережені. Для друку звіту потрібно натиснути на кнопці «Друк».
Мал. 7. Структура форм для формування запиту Мал. 8. Структура звіту Форма zapit призначена для формування запиту про рейси здійснювані в певному напрямку та про вартість квитків. Структура форми наведена на мал. 9.
Для формування запиту необхідно з випадаючого списку «Напрямок» вибрати необхідний напрямок і клацнути світлову кнопку «Сформувати». Після цього на екран буде виведене діалогове вікно про дозвіл перезаписати таблицю в якій зберігаються результати запиту. При клацанні світлової кнопки «ОК» цього вікна результати запиту будуть збережені.
Процедури що реалізують роботу світлових кнопок наведені в додатку 5.
Для перегляду результатів запиту розроблена форма form_zap, структура якої наведена на мал. 10.
Світлова кнопка «Вихід» форм «Формування запиту» та «Рейси за напрямком» використовуються для закриття цих форм.
Мал. 10. Структура форм для перегляду результатів запиту
2.4 Опис програми
Для роботи з програмою розроблено меню структура якого представлена на малюнку 11.
Мал. 11. Структура меню проекту Текст програми меню наведений в додатку 6.
При виборі пунктів підменю на виконання запускаються відповідні форми робота з якими описана в розділі 2.3.
Для запуску меню розроблена програма start, на основі якою генерується стартовий файл програмного виробу. Текст програми start наведений у додатку 7.
Інструкція по встановленню програмного виробу представлена в додатку 8.
Інсталяційний пакет на програмний виріб не розроблявся.
Висновок
автоматизація облік продаж квиток У курсовому проекті розроблена автоматизована інформаційна підсистема обліку замовлення квитків на автостанції.
Автоматизована інформаційна система реалізована в середовищі Visual FoxPro 9.
У процесі налагодження програмного виробу був отриманий цілком працездатний програмний продукт.
Проведено тестування програмного виробу, проаналізовані отримані результати.
Аналіз результатів показав, що поставлена задача успішно розв’язується.
Список використаних джерел
1. Проектування інформаційних систем: Посібник / За редакцією В. С. Пономаренка. — К, ВЦ «Академія», 2001. — 488 с.
2. Інформаційні системи і технології в економіці: Посібник для студентів вищих навчальних закладів / За редакцією В. С. Пономаренка. — К.: ВЦ «Академія», 2001. — 544 с.
3. Информационные системы / Петров В. Н. — СПб.: Питер, 2002. — 688 с.
4. Базиян, Менехем и др. Использование Visual FoxPro 6. Специальное издание: Пер. с англ. — М.: Издательский дом «Вильямс», 2000. — 928 с.
Додаток 1
Технічне завдання
1. Загальне положення
1.1. Найменування програмного засобу
Повне найменування програмної розробки: «Розробка інформаційної підсистеми „Автостанція, облік замовлення квитків“»., надалі іменована як «програма». Коротка назва програми — «Автостанція».
1.2. Призначення розробки та область застосування
Програма «Автостанція» призначена для автоматизації обліку рейсів на автостанції і забезпечує можливість реєстрації нового рейсу, внесення поточних змін в дані рейсу, збереження даних про всі дії з рейсами, одержання поточних даних про стан рейсів, а також друк білету. Програма може бути застосована на різних автостанціях із можливостями внесення змін для конкретної автостанції.
1.3. Найменування розроблювача та замовника
Розроблювач даного програмного продукту — студент групи ПІК-9 О. О. Оленюк надалі іменований як «розроблювач».
Замовник програмного продукту — Кафедра програмного забезпечення обчислювальної техніки Житомирського державного технологічного університету в особі викладача Данильченка Олександра Михайловича.
2. Підстава для розробки
2.1. Документ на підставі якого ведеться розробка
Робота ведеться на підставі завдання на курсове проектування з дисципліни «Бази даних».
3. Вимоги до програми
3.1. Вимоги до функціональних характеристик
3.1.1. Склад виконуваних функцій
Програма повинна забезпечувати введення, збереження і редагування даних по матеріалам, формувати запити по основним обліковим і статистичним показникам. Програма повинна мати можливість автозаповнення або підстановки даних у визначені поля (напрямок рейсу) для прискорення роботи.
Програма повинна надавати можливість відслідковувати дані про замовлення квитка.
Програма повинна забезпечувати коректне введення та перевірку інформації на відповідність типу.
Програма повинна мати можливість настроювання необхідних параметрів роботи (загально програмні константи, шляхи збереження файлів і т.д.)
Програма повинна виконувати типові операції з використанням функціональних клавіш, або клавіатурних комбінацій.
3.1.2. Організація вхідних і вихідних даних
Організація вхідних і вихідних даних повинна відповідати інформаційній структурі виконуваних операцій, вхідним та вихідним паперовим документам.
Введення оперативних даних повинно виконуватися з використанням діалогових екранних форм, побудованих на основі візуальних компонентів, Будь який документ повинен мати своє паперове представлення і можливість виводу на друк.
Звіти, які створені програмою повинні роздруковуватись і мати аналог своїх паперових документів.
3.1.3. Часові характеристики і розмір пам’яті, необхідної для роботи програми
Час реакції програми на натискання клавіш і маніпуляцій мишею не повинен перевищувати 0,25 с.
Реакція на команди меню, крім Відкриття, Збереження, Пошук не повинна перевищувати 1 с.
Реакція на команди Відкриття, Збереження, Пошук повинна залежати тільки від розміру файлів даних і параметрів пошуку.
Обсяг оперативної пам’яті, необхідний для роботи програми не повинний перевищувати 1 Мбайт.
Дисковий простір, необхідний для збереження програми і файлів даних не повинен перевищувати 4 Мбайт (для 100 записів таблиць бази даних).
В архівному вигляді файли початкового коду програми і баз даних не повинні перевищувати 1,2 Мбайт.
Розмір інсталяційного пакету програми, який включає базову програму і програми для підтримки її роботи не повинен перевищувати 10 Мбайт.
3.2. Вимоги до надійності
3.2.1. Вимоги до надійного функціонування
Програма повинна нормально функціонувати при безперебійній роботі ПК. При виникненні збою в роботі апаратури, відновлення нормальної роботи програми повинне виконуватися після: перезавантаження операційної системи; запуску стартового файлу програми; повторного виконання дій, втрачених до останнього збереження інформації на магнітному диску.
Програма повинна забезпечувати можливість відновлення накопичених даних при її повторній інсталяції.
Програма повинна забезпечувати архівне збереження накопичених даних на зовнішніх або мере ж них носіях інформації.
Програма повинна забезпечувати коректну обробку виняткових ситуацій.
3.2.2. Контроль вхідної і вихідної інформації
Програма повинна забезпечувати правильне введення інформації за рахунок використання, там де це доцільно, шаблонів введення, процедурного блокування введення некоректної інформації, списків та автопідстановки.
Обробка виняткових ситуацій, пов’язаних із доступом до дисків, пристроїв введення — виведення інформації, повинна оброблятися програмно з виведенням відповідних інформаційних повідомлень, і не призводити до блокування роботи програми.
3.2.3. Час відновлення після відмови
Час відновлення після відмови, не пов’язаною з роботою програми, повинен складатися із: часу перезапуску користувачем операційної системи; часу запуску користувачем стартового файлу програми, часу повторного введення або зчитування з носіїв втрачених даних.
3.3. Умови експлуатації і збереження
Програма повинна зберігатися у виді двох маркірованих дискових копій — еталонної і робочої, на яких вказується номер версії програми, дата запису програми на диск і дата її наступного перезапису. Періодичний перезапис інформації повинен здійснюватися відповідно до нанесеного маркірування. Умови збереження дисків повинні відповідати загальним вимогам.
3.4. Вимоги до інформаційної і програмної сумісності
3.4.1. Вимоги до інформаційних структур на вході і виході
Вимоги до інформаційних структур на вході і виході визначені в п. 3.1.2 «Організація вхідних і вихідних даних» .
3.4.2. Вимоги до методів рішення і мов програмування
Вибір методів рішення здійснюється розроблювачем без узгодження з замовником. Розробка програми повинна вестися на одній із мов з використанням засобів візуального об'єктно-орієнтованого програмування.
3.4.3. Вимоги до системних програмних засобів
Програма повинна працювати під управлінням операційних систем Windows 98/2000/ХР/Vista/7.
Для забезпечення функціонування програми до складу системного програмного забезпечення повинен входити драйвер принтера відповідного типу (з урахуванням моделі принтера і встановленої версії операційної системи), архіватор RAR.
3.5. Вимоги до складу і параметрів технічних засобів
Вимоги до складу технічних засобів:
· персональний комп’ютер у базовій конфігурації;
· пристрій для роботи з компакт-дисками, якщо передбачено встановлення програми з CD;
· принтер для друку листків формату A4.
Системні параметри ПК визначаються типом операційної системи, обумовленої у п. «Вимоги до системних програмних засобів» з урахуванням ресурсів, необхідних для підтримки роботи самої програми, Рекомендовані мінімальні характеристики технічних засобів, які забезпечують ефективну роботу програми у будь якому із вказаних системних програмних середовищ:
· процесор — Pentium III з тактовою частотою 750 МГц;
· оперативна пам’ять — 128 Мбайт;
· об'єм дискової пам’яті - 20 Гбайт.
4. Вимоги до програмної документації
Програмна документація повинна включати наступні документи:
· "Інструкція по інсталяції (встановленню) програми", складається з опису інсталяційного пакету, переліку етапів інсталяції та їх послідовності, шляху інсталяції, розміру інсталяційного пакету та програмних файлі після інсталяції;
· "Керівництво користувача" складається з опису послідовності завантаження програми, основних режимів роботи, основних екранних форм та їх структури, переліку виняткових ситуацій та реакції користувача на них, контрольні приклади;
· "Керівництво адміністратора баз даних", складається з опису складу таблиць бази даних та доступів до них (список користувачів, їх права і паролі), опису та послідовності робіт по обслуговуванню бази даних (архівування, резервне копіювання, з вказівкою періодичності виконання та засобів, що для цього використовуються).
5. Техніко-економічні показники
Техніко-економічні показники визначаються замовником без участі виконавця.
6. Стадії та етапи розробки
Стадії та етапи розробки програми, та терміни їх виконання повинні відповідати затвердженому графіку курсового проектування.
7. Порядок контролю та приймання
Основними формами контролю виконання проекту є - поточний, проміжковий і підсумковий.
Поточний контроль здійснюється виконавцем, шляхом систематичної перевірки відповідності стану виконуваних робіт графіку виконання проекту і поточних характеристик проекту вимогам технічного завдання.
Проміжковий контроль здійснюється замовником із залученням виконавця, у відповідності до графіку проведення контролю, шляхом перевірки поточного стану проекта графіку розробки відвічності основних етапів та характеристик проекту технічному завданню. Недоліки, виявлені у результаті проміжкового контролю повинні бути усунені до наступної перевірки.
Підсумковий контроль проводиться комісією, яка складається із представників замовника, у присутності виконавця в термін визначений графіком виконання проекту. Підсумковий контроль передбачає комплексне тестування всього проекту і окремих модулів на відповідність функціональним і якісним характеристикам, перевірку складу та якості програмної документації, комплектність проекту у відповідності до пред’явленого опису і технічного завдання.
На основі результатів підсумкового контролю комісія робить висновок про приймання або неприймання проекту, з оформленням відповідного акту (рецензії) на виконану роботу.
Додаток 2
Процедури, що реалізують роботу світлових кнопок форм dov_naprav, dov_reys — довідників напрямків і рейсів.
Кнопка | Довідник напрямків | |
Завантаження форми | SET EXCLUSIVE ON USE naprav | |
PUBLIC n_napr SELECT naprav n_napr=0 scan IF naprav. kod_npr>n_napr n_napr=naprav.kod_npr endif ENDSCAN APPEND BLANK replace naprav. kod_npr WITH n_napr+1 thisform.grdNaprav.Refresh thisform.grdNaprav.column2.setfocus | ||
IF MESSAGEBOX («Дійсно видалити?», 4+32+256)=6 DELETE ELSE RECALL endif | ||
IF MESSAGEBOX («Закрити форму», 4+32+256)=6 PACK thisform.Release endif | ||
Кнопка | Довідник рейсів | |
Завантаження форми | SET EXCLUSIVE ON USE marshrut | |
PUBLIC nom_reys SELECT marshrut SET FILTER TO nom_reys=0 scan IF marshrut. kod_marsh>nom_reys nom_reys=marshrut.kod_marsh endif ENDSCAN | ||
IF MESSAGEBOX («Дійсно видалити?», 4+32+256)=6 DELETE ELSE RECALL endif | ||
SELECT marshrut SET FILTER TO IF MESSAGEBOX («Закрити форму», 4+32+256)=6 PACK thisform.Release endif | ||
APPEND BLANK replace marshrut. kod_marsh WITH nom_reys+1 replace marshrut. kod_napr WITH thisform. combo1.value thisform.grdMarshrut.Refresh thisform.grdmarshrut.column3. setfocus | ||
Додаток 3
Процедури, що реалізують роботу світлових кнопок форми jurn_bil - продаж білетів
Кнопка | Довідник напрямків | |
Завантаження форми | PUBLIC mist | |
PUBLIC i, kol_prod, k_r, f, d, kilk, st_ms, pr_st thisform.grdmarshrut.column1.setfocus k_r=thisform.grdmarshrut.column1.text1.Value thisform.grdmarshrut.column3.setfocus kilk=thisform.grdmarshrut.column3.text1.Value d=thisform.text1.value DIMENSION mist (kilk) kol_prod=0 st_ms='' st_av='' FOR i=1 TO kilk mist (i)=i ENDFOR SELECT bilet SCAN FOR bilet. kod_marsh=k_r AND bilet. data_vidpr=d kol_prod=kol_prod+1 st_ms=st_ms+str (non_mist)+' ' mist (non_mist)=0 ENDSCAN f=kilk-kol_prod pr_st='' FOR i=1 TO kilk IF mist (i)<>0 pr_st=pr_st+STR (i)+' ' ENDIF ENDFOR thisform.edit1.value=LTRIM (RTRIM (pr_st)) thisform.text2.value=f thisform.text2.refresh thisform.edit2.Value=LTRIM (RTRIM (st_ms)) thisform.edit2.refresh thisform.edit1.refresh | ||
PUBLIC bil_kod, vidpr_chas bil_kod=0 SELECT bilet SET FILTER TO SCAN IF bilet. kod_bilet>bil_kod bil_kod=bilet.kod_bilet endif ENDSCAN thisform.grdBilet.SetFocus SET FILTER TO bilet. kod_marsh=marshrut.kod_marsh AND bilet. data_vidpr=thisform.text1.value thisform.grdBilet.refresh bil_kod=bil_kod+1 thisform.grdMarshrut.column2.SetFocus vidpr_chas=thisform.grdMarshrut.column2.text1.value | ||
SELECT bilet SET FILTER TO APPEND BLANK replace bilet. kod_bilet WITH bil_kod replace bilet. kod_marsh WITH thisform.grdMarshrut.column1.text1.value replace bilet. chas WITH vidpr_chas replace bilet. data_vidpr WITH thisform. text1.value replace bilet. non_mist WITH thisform. spinner1.Value thisform.grdBilet.Refresh thisform.grdBilet.SetFocus SET FILTER TO bilet. kod_marsh=marshrut.kod_marsh AND bilet. data_vidpr=thisform.text1.value thisform.grdBilet.refresh | ||
SELECT bilet IF MESSAGEBOX («Дійсно видалити», 4+256+32)=6 DELETE ELSE RECALL endif | ||
IF MESSAGEBOX («Закрити форму», 4+32+256)=6 USE SET EXCLUSIVE ON USE bilet PACK thisform.Release ENDIF | ||
PUBLIC k_bil c=1 thisform.grdBilet.column1.SetFocus k_bil=thisform.grdBilet.column1.text1.Value DO query2. qpr REPORT FORM bilet TO PRINT PREVIEW | ||
Додаток 4
Процедури, що реалізують роботу світлових кнопок форми parol, kontrol — контроль парольного доступу та авторизація
Кнопка | Довідник користувачів | |
PUBLIC n_pas SELECT password n_pas=0 scan IF password. id_kor>n_pas n_pas=password.id_kor endif ENDSCAN APPEND BLANK replace password. id_kor WITH n_pas+1 thisform.Grid1.Refresh thisform.Grid1.column2. setfocus | ||
IF MESSAGEBOX («Дійсно видалити?», 4+32+256)=6 DELETE ELSE RECALL endif | ||
IF MESSAGEBOX («Закрити форму», 4+32+256)=6 PACK thisform.Release endif | ||
Кнопка | Авторизація | |
PUBLIC pas, dost dost=0 SELECT pass_kor FROM password WHERE login_kor=thisform.combo1.Text into cursor myCursor if reccount ('myCursor') > 0 pas = myCursor. pass_kor endif IF (thisform.text1.Value=pas) SELECT dostup_kor FROM password WHERE login_kor=thisform.combo1.Text into cursor myCursor if reccount ('myCursor') > 0 dost = myCursor. dostup_kor endif ENDIF IF (dost=1) DO my_menu.mpr thisform.Release ELSE IF (dost=2) DO menu_for_user.mpr thisform.Release ELSE MESSAGEBOX («Не вірно введено пароль» ," Помилка", 16) ENDIF ENDIF | ||
Додаток 5
Процедури, що реалізують роботу світлових кнопок форми zapit, zv_per - формування запиту про рейси та запита з завданням параметрів
Кнопка | Код | |
PUBLIC zap_kod zap_kod=thisform.combo1.Value DO query1. qpr | ||
DO FORM form_zap | ||
IF MESSAGEBOX («Закрити форму», 4+32+256)=6 thisform.Release ENDIF | ||
Кнопка | Код | |
public poch_p, kin_p poch_p=thisform.text1.value kin_p=thisform.text2.value do vid_vip.qpr | ||
REPORT FORM period TO PRINT PREVIEW | ||
IF MESSAGEBOX («Закрити форму», 4+32+256)=6 thisform.Release ENDIF | ||
Додаток 6
Текст програми меню
20.12.11 MY_MENU.MPR 19:41:53
Author’s Name
Copyright © 2011 Company Name
Address
City, Zip
Description:
This PROGRAM was automatically generated BY GENMENU.
Menu Definition
SET SYSMENU TO
SET SYSMENU AUTOMATIC
DEFINE PAD _3dz167ww3 OF _MSYSMENU PROMPT «1_Довідники» COLOR SCHEME 3 ;
KEY ALT+1, «»
DEFINE PAD _3dz167ww4 OF _MSYSMENU PROMPT «2_Продаж білетів» COLOR SCHEME 3 ;
KEY ALT+2, «»
DEFINE PAD _3dz167ww5 OF _MSYSMENU PROMPT «3_Звіт» COLOR SCHEME 3 ;
KEY ALT+3, «»
DEFINE PAD _3dz167ww6 OF _MSYSMENU PROMPT «4_Користувачі» COLOR SCHEME 3 ;
KEY ALT+4, «»
DEFINE PAD _3dz167ww7 OF _MSYSMENU PROMPT «5_Вихід» COLOR SCHEME 3 ;
KEY ALT+5, «»
ON PAD _3dz167ww3 OF _MSYSMENU ACTIVATE POPUP _2lt1alke6
ON SELECTION PAD _3dz167ww4 OF _MSYSMENU ;
DO _3dz167ww8 ;
IN LOCFILE («AVTO_STMY_MENU» ," MPX;MPR|FXP;PRG" ," WHERE is MY_MENU?")
ON PAD _3dz167ww5 OF _MSYSMENU ACTIVATE POPUP _2lt1aqaj3
ON SELECTION PAD _3dz167ww6 OF _MSYSMENU ;
DO _3dz167ww9 ;
IN LOCFILE («AVTO_STMY_MENU» ," MPX;MPR|FXP;PRG" ," WHERE is MY_MENU?")
ON SELECTION PAD _3dz167ww7 OF _MSYSMENU Quit
DEFINE POPUP _2lt1alke6 MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF _2lt1alke6 PROMPT «Напрямки»
DEFINE BAR 2 OF _2lt1alke6 PROMPT «Рейси»
ON SELECTION BAR 1 OF _2lt1alke6 ;
DO _3dz167wwa ;
IN LOCFILE («AVTO_STMY_MENU» ," MPX;MPR|FXP;PRG" ," WHERE is MY_MENU?")
ON SELECTION BAR 2 OF _2lt1alke6 ;
DO _3dz167wwb ;
IN LOCFILE («AVTO_STMY_MENU» ," MPX;MPR|FXP;PRG" ," WHERE is MY_MENU?")
DEFINE POPUP _2lt1aqaj3 MARGIN RELATIVE SHADOW COLOR SCHEME 4
DEFINE BAR 1 OF _2lt1aqaj3 PROMPT «Звіт про рейси напрямку»
DEFINE BAR 2 OF _2lt1aqaj3 PROMPT «Звіт по проданим білетам»
ON SELECTION BAR 1 OF _2lt1aqaj3 ;
DO _3dz167wwc ;
IN LOCFILE («AVTO_STMY_MENU» ," MPX;MPR|FXP;PRG" ," WHERE is MY_MENU?")
ON SELECTION BAR 2 OF _2lt1aqaj3 ;
DO _3dz167wwd ;
IN LOCFILE («AVTO_STMY_MENU» ," MPX;MPR|FXP;PRG" ," WHERE is MY_MENU?")
_3DZ167WW8 ON SELECTION PAD
Procedure Origin:
From Menu: MY_MENU.MPR, Record: 7
Called By: ON SELECTION PAD
Prompt: 2_Продаж білетів
Snippet: 1
PROCEDURE _3dz167ww8
DO FORM jurn_bil
_3DZ167WW9 ON SELECTION PAD
Procedure Origin:
From Menu: MY_MENU.MPR, Record: 12
Called By: ON SELECTION PAD
Prompt: 4_Користувачі
Snippet: 2
PROCEDURE _3dz167ww9
DO FORM parol
_3DZ167WWA ON SELECTION BAR 1 OF POPUP _2lt1alke6
Procedure Origin:
From Menu: MY_MENU.MPR, Record: 5
Called By: ON SELECTION BAR 1 OF POPUP _2lt1alke6
Prompt: Напрямки
Snippet: 3
PROCEDURE _3dz167wwa
DO FORM dov_napr
_3DZ167WWB ON SELECTION BAR 2 OF POPUP _2lt1alke6
Procedure Origin:
From Menu: MY_MENU.MPR, Record: 6
Called By: ON SELECTION BAR 2 OF POPUP _2lt1alke6
Prompt: Рейси
Snippet: 4
PROCEDURE _3dz167wwb
DO FORM dov_reys
_3DZ167WWC ON SELECTION BAR 1 OF POPUP _2lt1aqaj3
Procedure Origin:
From Menu: MY_MENU.MPR, Record: 10
Called By: ON SELECTION BAR 1 OF POPUP _2lt1aqaj3
Prompt: Звіт про рейси напрямку
Snippet: 5
PROCEDURE _3dz167wwc
DO FORM zapit
_3DZ167WWD ON SELECTION BAR 2 OF POPUP _2lt1aqaj3
Procedure Origin:
From Menu: MY_MENU.MPR, Record: 11
Called By: ON SELECTION BAR 2 OF POPUP _2lt1aqaj3
Prompt: Звіт по проданим білетам
Snippet: 6
PROCEDURE _3dz167wwd
DO FORM zv_per
Додаток 7
Текст програми start.prg
set date german
DO start. mpr
DO FORM kontrol. scx
read events
Додаток 8
Інструкція по встановленню програмного виробу
Програмний продукт постачається на дискеті. Для встановлення програми достатньо скопіювати папку auto_st в кореневий каталог диску С, або в папку Program Files цього диску. Запуск програми виконують файлом start.exe.