Введення 5 p>
Призначення проекту 6 p>
Основні сервісні й інформаційно-розрахункові можливості проектованоїсистеми 8 p>
Функціональні можливості системи 8
Взаємодія з банківською системою автоматизації 9
Надійність і резервування 9
Генерація звітів 10 p>
Аналіз потоків і взаємодії даних 10 p>
Купівля та продаж готівкової іноземної валюти за готівкові рублі. 11
Конверсія готівкової іноземної валюти 13
Форми звітної документації ВП 13 p>
Технічні вимоги до апаратури. 15 p>
Середа виконання програми. 16 p>
Вибір мови програмування для реалізації проекту. 17 p>
Розробка структури інформаційних файлів і їхніх зв'язків. 17 p>
Попередні міркування 17
Остаточний склад і структури інформаційних файлів. 20
Взаємодія даних, зв'язку і методи доступу. 22 p>
Розробка функціональної схеми програми. 26 p>
Приблизний перелік функцій системи. 26 p>
Розробка структурної схеми програми. 27 p>
Розробка екранного інтерфейсу програми 29 p>
Існуючі підходи до проектування екранного інтерфейсу 29
Вибір ідеології екранного інтерфейсу 31
Перелік функцій екранного інтерфейсу 32 p>
Проектування функціональних модулів. 32 p>
Розробка інтерфейсних функцій 33
Функція виведення меню в зазначених координатах 33
Функція виведення вікна у вказаних координатах 35
Висновок рядки підказки 36
Висновок повідомлення з очікуванням реакції або вибору користувача 37
Висновок лінійного індикатора процесу та його оновлення 39
Висновок транспаранта очікування 39
Допоміжні функції 40
Функцією перемикання ВИДУ КУРСОР 40
ФУНКЦІЯ ПЕРЕКЛАДУ СТРОКИ У ВЕРХНІЙ РЕГІСТР 40
ФУНКЦІЯ КОНТРОЛЮ ВИХОДУ 40
ФУНКЦІЯ ПЕРЕКЛАДУ Числовий величини У рядку «Сума прописом» 41
Розробка головного модуля програми 41
СТРУКТУРА ФУНКЦІЇ MAIN 41
ФУНКЦІЇ ВИКЛИКУ МЕНЮ НИЖНІХ РІВНІВ 44
ФУНКЦІЯ РЕЄСТРАЦІЇ КУПІВЛІ ВАЛЮТИ 44
ФУНКЦІЯ - Визначник ПОТОЧНОГО ПОЛЯ ДЛЯ ОТРИМАННЯ КОДА І НАЙМЕНУВАННЯ
ОБ'ЄКТА З ДОВІДНИКА 46 p>
Тестування програмного забезпечення. 46 p>
Сонце, що тестування. 46
Спадний тестування. 47
Метод сендвіча. 47 p>
Економічна частина. 48 p>
Питання техніки безпеки та охорони праці. 52 p>
Висновок 56 p>
Додаток 57 p>
Інтерфейсні функції 57
ФУНКЦІЯ ВИВЕДЕННЯ ВІКНА 57
ФУНКЦІЯ ВИВЕДЕННЯ ВІКНА з ефектом РОЗКРИТТЯ 57
ФУНКЦІЯ ВИВЕДЕННЯ СИСТЕМНИХ ПОВІДОМЛЕНЬ з очікуванням РЕАКЦІЇ КОРИСТУВАЧА 59
ФУНКЦІЯ ВИВЕДЕННЯ ЛІНІЙНЕ індикатор процесу 60
ФУНКЦІЯ ВИВЕДЕННЯ РАМКИ ДЛЯ Спливаюче меню 61
ФУНКЦІЯ ВИВЕДЕННЯ СТРОКИ ПІДКАЗКА 61
ФУНКЦІЯ ВИВЕДЕННЯ Транспаранти ОЧІКУВАННЯ 62
ФУНКЦІЯ ВИБОРУ ОПЦІЇ З МЕНЮ З ВИКОРИСТАННЯМ маніпулятор "миша" АБО
КЛАВІАТУРИ. 62
Допоміжні функції 66
Функцією перемикання ВИДУ КУРСОР 66
ФУНКЦІЯ ПЕРЕКЛАДУ СТРОКИ У ВЕРХНІЙ РЕГІСТР 66
ФУНКЦІЯ КОНТРОЛЮ ВИХОДУ 66
ФУНКЦІЯ ПЕРЕКЛАДУ Числовий величини У рядку «Сума прописом» 67
ФУНКЦІЯ ПОБУДОВИ СТРОКИ «Сума прописом» 68
ФУНКЦІЯ ОТРИМАННЯ Псевдоніми ВАЛЮТИ 69
Основні функції та процедури 69
ГОЛОВНИЙ МОДУЛЬ ПРОГРАМИ 69
ФУНКЦІЯ ВИКЛИКУ МЕНЮ «ОПЕРАЦІЇ» 73
ФУНКЦІЯ ВИКЛИКУ МЕНЮ ВЕДЕННЯ ДОВІДНИКІВ 73
ФУНКЦІЯ ВИКЛИКУ МЕНЮ «ЗВІТИ» 74
ФУНКЦІЯ ВИКЛИКУ МЕНЮ «РІЗНЕ» 74
ФУНКЦІЯ ВИКЛИКУ МЕНЮ «УСТАНОВКИ» 75
ФУНКЦІЯ ВИКЛИКУ МЕНЮ «КОПІЯ ДАНИХ» 76
ФУНКЦІЯ - селектор ОПЕРАЦІЙ 77
ФУНКЦІЯ РЕЄСТРАЦІЇ КУПІВЛІ ВАЛЮТИ 77
ФУНКЦІЯ РЕЄСТРАЦІЇ ПРОДАЖУ ВАЛЮТИ 79
ФУНКЦІЯ записувати переходи ВАЛЮТИ 81
ФУНКЦІЯ - Визначник ПОТОЧНОГО ПОЛЯ ДЛЯ ОТРИМАННЯ КОДА І НАЙМЕНУВАННЯ
ОБ'ЄКТА З ДОВІДНИКА 82
ФУНКЦІЯ ВИВЕДЕННЯ СУМИ ПОКУПКИ Прописи 83
ФУНКЦІЯ ВИВЕДЕННЯ СУМИ ПРОДАЖУ Прописи 83
ФУНКЦІЯ ОБЧИСЛЕННЯ СУМИ ОПЕРАЦІЇ КУПІВЛІ 83
ФУНКЦІЯ ОБЧИСЛЕННЯ СУМИ ОПЕРАЦІЇ ПРОДАЖУ 84
ФУНКЦІЯ ВИВЕДЕННЯ СПИСКУ ДОКУМЕНТІВ ДНЯ 84
ФУНКЦІЯ ЗАКРИТТЯ операційного дня 86 p>
Література 87 p>
Введення p>
На початку вісімдесятих років нашого століття фірма IBM розробила івипустила в продаж свій перший персональний комп'ютер (IBM PC, якийшвидко завоював ринок обчислювальної техніки завдяки своїй невисокійвартості, універсальності сфер застосування, простоті експлуатації і самеголовне, принципу відкритої архітектури, закладеного в конструкцію. Отримавшиназву "персональний" він і насправді виявився таким. p>
РС добре зарекомендував себе в області ділового використання. Дешевий інадійний комп'ютер став швидко "обростати" програмним забезпеченням, багатофірми стали випускати клони IBM-сумісних персональних комп'ютерів. За РСпослідували XT, AT на базі i286, i386, i486 і, нарешті, Pentium.
Обчислювальна техніка крокує в майбутнє гігантськими кроками, не залишаючи встороні нікого. Неможливо уявити область інтенсивної діяльностілюдини, яка могла б обійтися без обчислювальної техніки без шкодидля себе. У нашій країні за останні 5-6 років парк персональнихкомп'ютерів збільшився в сотні разів. Особливого значення в такій ситуації маєнаявність програмного забезпечення для персональних ЕОМ як загальногопризначення, так і чисто прикладних програм, що вирішують спеціалізованізавдання того, чи іншого підприємства.
Особливо гостро постала проблема спеціалізованого ПЗ для фінансовихорганізацій і, зокрема банків, кількість яких за останні п'ять --шість років перевищило декілька тисяч тільки в столиці. Відсутністьавтоматизованих банківських систем не могло не стимулювати багато фірм
- Виробники програмного забезпечення заповнити вакуум, що утворився. Упротягом 90-93 р.р. такі фірми як «Асофт», «ДиаСофт», «Р-Стайл» та іншівипустили на ринок кілька АБС, орієнтованих на російську банківськусистему. Перший досвід виявився вдалим і більшість комерційних банківмає на даний момент досить пристойними системами, реалізованими наоснові мережевих менеджерів запитів до баз даних, або мовамипрограмування Oracle, Gupta і їм подібних. Біда всіх АБС внестабільності законодавства держави, яка викликаєчисленні коригування технології бухгалтерського обліку і,отже коригування ПЗ. Крім того, перші версії АБС не покриваливсіх потреб банків в автоматизації. Максимально на що мігрозраховувати користувач, це операційний день банку в рублях і системазвітів. Розширення видів банківської діяльності, робота з валютамиіноземних держав, вклади громадян і організацій, розвиток ринку ціннихпаперів зажадали розробки нових підсистем для існуючих АБС.
Поряд з тим, що не всі фірми виробники прислухаються до вимогкористувачів, вартість нових розробок досить велика. В якостіприклад можна сказати, що тільки збільшення документообігу банківськоїсистеми з 500 до 2000 документів на день обходиться користувачеві, що має
АБС фірми "Р-Стайл" приблизно в 11500 Доларів США. Такі ціни, природноможуть змусити будь-якого користувача поповнювати складу програмногозабезпечення власними силами. p>
Призначення проекту p>
Обмінний пункт - підрозділ банку і є місцем здійснення банкомвалютно-обмінних операцій. Правила і норми здійснення валютних операцій вобмінному пункті регламентуються інструкцією Центрального банку Російськоїфедерації № 27 від 27 лютого 1995 року.
Комплекс розроблюваних програмних засобів призначений в першучергу для автоматизації роботи касирів пунктів обміну валют, що знаходятьсяяк в самому банку, так і поза його території. Використання програми маєзначно спростити і прискорити роботу касира за рахунок автоматизаціїобліково-розрахункових операцій при обміні валюти. Автоматичне формуваннявсій зведеної звітності та контроль фінансового стану обмінного пункту вбудь-який момент часу також повинні підвищити ефективність роботи касира.
Технологічний процес роботи пункту обміну валюти банку
У процесі роботи касира обмінного пункту з використаннямавтоматизованої системи бажано реалізувати як стандартніпроцедури, що забезпечують підтримку операцій обмінного пункту протягомдня, так і специфічні можливості, що підвищують продуктивність працікасира і полегшують обліково-розрахункові операції і зв'язок обмінного пункту збанківською системою автоматизації. Обмінний пункт банку при роботі зклієнтурою здійснює следуюшіе основні операції:
. Продаж валюти іноземної держави клієнта за національну валюту;
. Купівля у клієнта валюти іноземної держави за національну валюту;
. Коверсія (обмін) валюти однієї іноземної держави на валюту іншої іноземної держави.
Кожну з перерахованих операцій касир обмінного пункту зобов'язанийзафіксувати документально і оформити довідку про скоєння клієнтомвалютно-обмінної операції на бланку суворої звітності ф.0406007, з видачеюкопії довідки клієнту. Для роботи ОП, банк забезпечує його до початкуробочого дня авансом в готівковій іноземній валюті і рублях. Даний аванснеобхідно враховувати в документах ОП для подальшого відображення в звітнихдокументах при завершенні операційного дня. Після закінчення робочого дня
(або зміни при цілодобовому режимі роботи ОП) касир зобов'язаний заповнитиприбутково-видаткову відомість (реєстр угод) по кожній з валют, підрахуватипідсумки по всіх реєстрів та звірити суму отриманого авансу із сумою підсумківпо реєстрах і фактичним залишком цінностей по кожному виду. УВідповідно до результатів звірки складається довідка про щоденнірештки цінностей. p>
Основні сервісні й інформаційно-розрахункові можливості проектованоїсистеми p>
Перед початком проектування будь-якої системи необхідно в першучергу визначити склад тих операцій, які будуть закладені впроектований комплекс програмних засобів і проаналізувати необхідністьі можливість реалізації функцій засобами конкретної системипроектування. Система автоматизації роботи пункту обміну валютипризначена, як уже було сказано вище, в першу чергу для підвищенняефективності і швидкості роботи касира. Тому функціональні можливостіпрограмного комплексу повинні бути спрямовані на вирішення конкретних завдань
ВП що виникають у процесі роботи. P>
Функціональні можливості системи p>
У проектованої системі необхідно закласти можливості, що забезпечуютьнижче перераховані сервісні й інформаційно-розрахункові функції:
. автоматичний розрахунок сум за операціями обміну іноземної валюти;
. можливість установки автоматичного нарахування комісійних винагород (за вибором - комісія з приходу, витрат і різниці курсів) при обмінних операціях;
. автоматичний контроль наявності в пункті обміну грошових знаків національної та іноземної валюти різного гатунку;
. видача рекомендацій касиру з оптимального набору готівкових грошових знаків різного гатунку з числа наявних у касі при кожної обмінної операції;
. облік операцій обміну валют, заснований на веденні подвійного запису і забезпечує високий рівень контролю обмінних операцій;
. контроль і відновлення логічної цілісності бази даних навіть у випадках некоректної роботи обладнання за рахунок виконання процедур ревізій стану рахунків на поточну дату або за заданий період в будь-який момент роботи обмінного пункту;
. архівування всіх даних, оброблених системою з початку її функціонування на дату операційного дня або інтервал дат;
. на підставі даних про клієнта, що вводяться при здійсненні обмінної операції, повинна вироблятися автоматична друк довідки про обмін валюти і фіксація в системі інформації про клієнта з прив'язкою до конкретної операції. p>
Взаємодія з банківською системою автоматизації p> < p> Взаємодія підсистеми з системою автоматизації банку маєзадовольняти наступним вимогам:
. Незалежність від застосованої системи автоматизації банківської діяльності;
. Обмін інформацією з банківською системою за допомогою загальноприйнятих носіїв p>
(магнітні диски, електронна пошта і т.п.);
. Формат даних, що передаються повинен забезпечувати достовірний прийом інформації та її обробку в системі автоматизації банку.
Проблема сумісності з різними банківськими системами дозволяєтьсяшляхом застосування стандартного формату даних, що передаються у вигляді текстовогофайлу з роздільниками інформаційних полів. Послідовність полівфіксована, довжина даних - змінна. Використання даних фіксованогодовжини, звичайно спрощує їх обробку, проте при великих обсягах встаєпроблема величини переданого файлу. Такий спосіб обміну може бутиреалізований практично у всіх відомих на даний час системахавтоматизації банківської діяльності. p>
Надійність і резервування p>
Всі дані, що проходять через підсистему, підлягають обов'язковій фіксаціїв базах даних або інших інформаційних структурах. Система повинна зберігатидані в спеціальних архівних файлах починаючи з моменту запуску вексплуатацію. При закритті операційного дня всі поточні дані повинніпереноситься в архів, а файли готується для нової зміни (очищення,обнулення і т.п.). При роботі ВП в локальному режимі бажано забезпечитиможливість створення резервних копій баз даних на магнітних носіяхбажанням користувача. Для варіанту ВП що працює в складі ЛОМ банку,дана можливість може бути факультативної при розміщенні інформаційнихфайлів на мережевих дисках і щоденному виконанні процедур резервуваннямережним устаткуванням. p>
Генерація звітів p>
Найбільш відповідальною і трудомісткою з функцій касира ОП єщоденне складання та заповнення звітних документів за підсумками роботипункту за зміну. Проектована система має надати користувачуможливість у будь-який момент часу отримати документи дня (реєстри угод,довідки про залишки готівки тощо) в розрізі будь-якої валюти. Це дозволитьоперативно мати картину фінансового стану ОП в цілому і здійснитиоперативний контроль діяльності касира. До складу обов'язкових звітівнеобхідно включити:
. Реєстри з купівлі та продажу іноземної валюти за готівкові рублі;
. Довідку про залишки готівкової іноземної та національної валюти;
. Акт передачі (для ВП що працюють в режимі змінної роботи);
. Препроводітельние відомості до інкасаторських сумок.
Форми звітів повинні відповідати запропонованим в інструкції ЦБ РФ № 27
«Про порядок організації роботи обмінних пунктів ...» p>
Аналіз потоків і взаємодії даних p>
Мета реалізації даного проекту полягає в першу чергу в реєстрації тазберіганні всіх даних за операціями з готівковою іноземною валютою та іншимиплатіжними документами, даних про клієнтів і створення форм звітності.
Розгляд інформаційних складових почнемо з оформлення операціїугоди купівлі-продажу готівкової іноземної валюти клієнту. p>
Купівля та продаж готівкової іноземної валюти за готівкові рублі. p>
При здійсненні операції касир ОП повинен виконати ряд розрахункових операційі процедур оформлення угоди, до яких відносяться:
. Обчислення клієнтської суми за поточним курсом купівлі (продажу) даної валюти. P>
СУММА_В_РУБЛЯХ_ПОКУПКІ = СУММА_ВАЛЮТИ * КУРС_ПОКУПКІ або при продажу валюти p>
СУММА_В_ВАЛЮТЕ = СУММА_РУБЛЕЙ_КЛІЕНТА/КУРС_ПРОДАЖІ p>
Так як при купівлі валюти клієнт, як правило має на меті купитипевну суму валюти, обчислення суми купується валюти можназамінити розрахунком рубльового еквівалента зазначеної клієнтом суми валютианалогічно операції купівлі валюти у клієнта
. Заповнення довідки ф. 0406007 і видача клієнту копії. P>
Вся інформація про угоду і клієнті міститься в даних, що надаютьсяклієнтом касиру ОП для заповнення довідки. Проаналізувавши її змістможна зробити перший висновок про формат і структуру даних,необхідних для реєстрації угоди. Загальний вигляд довідки ф.0406007 наведено нарис.1.
Дані довідки можна розділити на наступні інформаційні одиниці:
. Прізвище
. Назва
. По-батькові
. Вид документа (паспорт, посвідчення особи і т.п.)
. Серія документа
. Номер документа
. Ознака резидент/нерезидент
Рис. 1 Довідка про здійснення валютно-обмінної операції
1-день, 2-місяць, 3-рік, 4-прізвище, ім'я та по батькові клієнта, 5-виддокумента,
6-номер документа ,7-серія документа, 8-відмітка резидент/нерезидент, 9,13 --код цінності, 10,14-код валюти, 11,15-Сума, 12,16-сума прописом
. Код цінності отриманої клієнтом
. Код валюти отриманої клієнтом
. Сума валюти отриманої клієнтом
. Код цінності прийнятої від клієнта
. Код валюти прийнятої від клієнта
. Сума валю?? и прийнятої від клієнта
. Серія довідки
. Номер довідки
. Дата здійснення обмінної операції p>
Конверсія готівкової іноземної валюти p>
Операція конверсії (обміну) готівкової іноземної валюти однієїдержави на готівкову іноземну валюту іншої держави практичноаналогічна описаним вище операцій купівлі/продажу валюти. Відмінність полягає втому, що касирові потрібно обчислити суму валюти, що видається клієнту напідставі суми валюти клієнта і крос-курсу. Крос-курс, або курсперерахунку валюти є числовий величиною, що визначає коефіцієнтперерахунку однієї валюти в іншу. p>
СУММА_ВАЛЮТИ_1 = СУММА_ВАЛЮТИ_2 * КРОСС_КУРС
Приклад:
Клієнт обмінює 100 доларів США на німецькі марки за крос-курсом USD-
DEM 1,51
Клієнт отримає 100 * 1,51 = 151DEM
Так як крос-курс зазвичай оголошується для односторонньої операції, тобто доНаприклад для конверсії USD-DEM, то для зворотного операції необхіднозастосовувати іншу формулу розрахунку: p>
СУММА_ВАЛЮТИ_2 = СУММА_ВАЛЮТИ_1 * (1/КРОСС_КУРС)
Приклад:
Клієнт обмінює 100 німецьких марок на долари США за крос-курсом USD-
DEM 1,51
Клієнт отримає 100 * (1/1, 51) = 66,2 USD
Документальне оформлення операції конверсії в плані клієнтськихдокументів аналогічно описаному вище. p>
Форми звітної документації ОП p>
Всі операції, здійснені протягом операційного дня обмінним пунктом,після закінчення зміни обробляються для видачі підсумкових документів роботи ВП.
До таких належать:
. Реєстр готівкової іноземної валюти, купленої за готівку рублі;
. Реєстр готівкової іноземної валюти, проданої за готівкові рублі;
. Реєстр по обміну (конверсії) готівкової іноземної валюти;
Нижче наведена форма реєстру купівлі та правила її заповнення
| найменування | | (код ОКПО уповноваженого |
| уповноваженого | | |
| банку (філії) | | банку (філії) |
| | | |
| (адреса обмінного пункту) | | (реєстраційний номер |
| | | Обмінного пункту, якщо |
| | | Обмінний пункт вже |
| | | Зареєстрований ГУ ЦБ РФ) |
| | | |
| | | |
| (дата заповнення реєстру) | | (обліковий номер реєстру) | p>
РЕЄСТР
ГОТІВКОВОЇ іноземної валюти, купленої ЗА готівкового рубля p>
Курс покупки на поточну дату
___________________________________________________________ p>
(вказується час в годинах і хвилинах, з якого діє встановлений банком курс покупки)
Курс Банку Росії на поточну дату
______________________________________________________ p>
| | | | | | | |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | p>
Разом за реєстром (цифрами): p>
Касир обмінного пункту
____________________________________________( прізвище та ініціали) p>
(підпис) p>
Порядок заповнення реєстру готівкової іноземної валюти, купленої за готівку рублі p>
. У колонці 1 вказується код купленої готівкової іноземної валюти за готівкові рублі. P>
. У колонці 2 вказується сума цифрами купленої готівкової іноземної валюти за готівкові рублі. P>
. У колонці 3 вказується код готівкових рублів. P>
. У колонці 4 вказується сума цифрами виплачених касиром обмінного пункту готівкових рублів за куплену готівкову іноземну валюту. P>
. У колонці 5 вказується номер виданої клієнту "Довідки ф. N 0406007". P>
. У колонці 6 вказується код і сума готівкової іноземної валюти або готівкових рублів, прийнятих касиром обмінного пункту у вигляді комісійної винагороди за здійсненої операції. P>
. У колонці 7 вказується запис "Резидент" або "Нерезидент" по кожній здійсненої операції.
На кожний вид готівкової іноземної валюти ведеться окремий реєстр.
У разі зміни банком протягом операційного дня курсу покупкиготівкової іноземної валюти за готівкові рублі касир обмінного пунктузакриває реєстр, що ведеться за попереднім курсом, підбиває підсумки тавідкриває новий реєстр, що ведеться за новим курсом.
Реєстри продажу та конверсії заповнюються аналогічно. p>
Технічні вимоги до апаратури. p>
Робота проектованого програмного комплексу повинна забезпечуватисянайбільш поширеною в даний час персональної ЕОМ. Цеміркування на увазі вибір комп'ютера побудованого на платформі INTEL.
До таких ПЕОМ відносяться різні модифікації PC/AT з процесорами від 386до Pentium різних фірм виробників. Оскільки в даний час машиникласу PC/ХТ практично не застосовуються, висувати будь-які особливівимоги до апаратури не має сенсу, так-як стандартний комп'ютер напоточний момент має достатню обчислювальну потужність і об'ємоперативної пам'яті для роботи практично будь-якого програмного забезпечення.
Займаємося програмою дисковий простір має бути відносноневелика. Звичайно, в процесі роботи програми обсяг даних будезростати, але з цією проблемою можна впоратися, застосовуючи різнізасоби стиснення та архівації даних на магнітних носіях приміромстрічкового типу (стриммерів тощо) чи інших зі змінними носіями. p>
середу виконання програми. p>
При виборі середовища виконання програми необхідно враховувати кількафакторів, а саме:
. складність і трудомісткість процесу проектування програмного забезпечення для конкретної середовища;
. наявність інструментальних засобів розробки програмного забезпечення;
. можливість внесення коректив у програму в процесі експлуатації;
. наявність засобів проектування призначеного для користувача інтерфейсу;
. швидкість виконання програми;
. надійність роботи програми і захищеність від програмних збоїв. p>
Вибір середовища обмежимо двома варіантами - середа DOS і Windows.
При розгляді переваг і недоліків тієї та іншої платформ мибачимо, що і в тій і в іншій середовищах є велика кількість системрозробки програмного забезпечення, таких, як Delphi, Dbase 5,
VisualBasic 4 (Windows) і Clipper, Fox Pro, Clarion (DOS). З точки зорутрудомісткості процесу проектування перевагу можна віддати середовищі
Windows, оскільки наявність систем візуального проектування значнополегшує роботу програміста, в той же час надійність роботи й захист відпрограмних збоїв з середовищі DOS значно вище, як в однозадачной середовищі. p>
Швидкість обробки даних і власне швидкість виконання програмтакож вище у DOS-додатків. Модифікація програм, написаних для середовища
Windows, досить складне завдання, тому що внесення змін до складнусистему взаємодії об'єктів і подій тягне за собою великукількість виправлень пов'язаних між собою. Повторна інсталяція програмногозабезпечення в середовищі Windows також не завжди зводиться до простого копіюваннязмінених файлів. Крім всього вище викладеного потрібно враховувати можливістьтого, що DOS-додатки можуть бути запущені і в середовищі Windows без будь -або ускладнень. p>
Вибір мови програмування для реалізації проекту. p>
Таким чином, виходячи з вищевикладеного, оптимальним варіантом дляпроектованої системи буде вибір системи розробки що працює в середовищі
DOS. З наявних інструментальних систем найбільш поширенимиє системи проектування Fox Pro і Clipper. p>
При порівнянні цих двох систем видно, що за форматом підтримуваних базданих набору операторів і функцій для обробки даних вони практичнонічим один отдруга не відрізняються: і та і інша система підтримують форматбаз даних Dbase IV з комбінованими індексними файлами формату CDX.
Наявність великої кількості бібліотек функцій і можливість їх створення,поповнення і швидкого підключення до програми робить систему більш Clipperприйнятною для реалізації даного проекту. З наявних на даний часкомпіляторів найбільш функціональним є CA-Clipper 5.02 фірми
Computer Associates International, Inc. P>
Розробка структури інформаційних файлів і їхніх зв'язків. P>
Попередні міркування p>
З проведеного вище аналізу вхідних та вихідних даних можна зробитипопередні міркування про структуру бази даних для зберігання інформаціїв нашій системі. У табл.1 наведено початковий варіант структури бази знайменуваннями полів та їх типами, а також описом призначення кожного зполів БД.
Таблиця 1
Попередня структура бази «Операції»
| Ім'я поля | Тип | Довжина | Дріб | Призначення |
| | Поля | | | |
| FAM | Char | 15 | | Прізвище |
| NAME | Char | 15 | | Назва |
| SNAME | Char | 15 | | По батькові |
| CDOC | Char | 10 | | Вид документа |
| DSER | Char | 7 | | Серія документа |
| DNOM | Num | 6 | 0 | Номер документа |
| REZIDENT | Logical | 1 | | Ознака резидент/нерезидент |
| BCODC | Num | 3 | 0 | Код цінності отриманої |
| | | | | Клієнтом |
| BNAMEC | Char | 20 | 0 | Найменування цінності |
| | | | | Отриманої клієнтом |
| BCODCUR | Num | 3 | 0 | Код валюти отриманої клієнтом |
| BNAMECUR | Char | 20 | 0 | Найменування валюти отриманої |
| | | | | Клієнтом |
| BSUM | Num | 15 | 2 | Сума валюти отриманої |
| | | | | Клієнтом |
| SCODC | Num | 3 | 0 | Код цінності прийнятої від |
| | | | | Клієнта |
| SNAMEC | Char | 20 | 0 | Найменування цінності прийнятої |
| | | | | Від клієнтів |
| SCODCUR | Num | 3 | 0 | Код валюти прийнятої від клієнта |
| SNAMECUR | Char | 20 | 0 | Найменування валюти прийнятої |
| | | | | Від клієнтів |
| SSUM | Num | 15 | 2 | Сума валюти прийнятої від |
| | | | | Клієнта |
| SSER | Num | 2 | 0 | Серія довідки |
| SNOM | Num | 6 | 0 | Номер довідки |
| DATA | Date | 8 | | Дата здійснення обмінної |
| | | | | Операції | p>
Аналізуючи наведену структуру можна внести деякі корективи, якв саму структуру, так і до складу інформаційних файлів програми в цілому.
. Немає необхідності зберігати Прізвище Ім'я та По-батькові клієнта в окремих полях БД, доцільно об'єднати їх в одне поле, прийнявши для нього прийнятну довжину.
. Для кодів цінностей і валют необхідно передбачити спеціальні бази даних (довідники), в яких повинні зберігатися коди і їх розшифровка, оскільки список кодів валют та цінностей, наведений на звороті довідки не включає в себе всі можливі коди, а зберігання кодів і найменувань в основній базі є невиправданим з точки зору розміру записи в
БД.Кроме того заповнення граф документа за допомогою довідників значно полегшить і прискорить роботу касира. У системі необхідно передбачити спеціальну процедуру внесення в довідники змін і доповнень.
. Зберігання в основний БД найменування документа клієнта в символьному вигляді також нецелесообразно.Желательно зберігати в базі код пред'явленого документа із спеціального довідника, аналогічно описаному вище. P>
Таким чином визначився первинний склад інформаційних файлів. Унього увійдуть:
. Основна БД «Операції»;
. Довідник кодів цінностей «Цінності»;
. Довідник кодів валют "Валюти»;
. Довідник видів документів «Документи». P>
Для виконання всіх розрахункових операцій необхідно також мати ще одну
БД, в якій будуть зберігатися числові величини обмінних курсів валют закожен день. Описати курс валюти можна наступними інформаційнимиодиницями:
. Код валюти;
. Найменування валюти;
. Коротке найменування валюти;
. Дата встановлення курсу;
. Час встановлення курсу;
. Курс купівлі валюти банком за готівкові рублі;
. Курс продажу валюти банком за готівкові рублі;
. Масштаб;
Поняття масштаб використовується в тому випадку, коли курс описуваної валютищодо базової менше одиниці. Зазвичай задають суму в базовій валюті,яка міститься в одиниці описуваної валюти, наприклад, 5500 карбованців на 1долар США. Число МАСШТАБ можна використовувати, як кількість одиницьописуваної валюти, щодо яких користувач задасть валютний курсу вигляді суми в базовій валюті. Наприклад, для українського карбованця курсбуде дорівнює 1 рубль на 20 карбованців, якщо МАСШТАБ прийняти за 20.
Для зручності роботи і підвищення швидкості обробки даних є сенс убазі даних «Валюти» зберігати крім коду та найменування валюти, також інекоторве Поточне дані, необхідні при розрахункових операціях - короткийнайменування, поточний курс купівлі та продажу, курс ЦБ Росії. p>
Остаточний склад і структури інформаційних файлів. p>
Таким чином ми можемо визначитися щодо складу БД проектованоїпрограми: основна база даних призначена для зберігання даних проздійснених протягом операційного дня (зміни) обмінних операціях і данихпро клієнтів, додаткові БД довідників, в яких міститься інформаціяпро коди і найменування цінностей, валют і видах документів та база данихкурсів валют на кожну дату. Структури БД системи наведено в табл. 2-6.
Таблиця 2.
Структура бази даних «Операції»
| Ім'я поля | Тип | Довжина | Дріб | Призначення |
| | Поля | | | |
| FIO | Char | 35 | | Прізвище, Ім'я, По батькові |
| CDOC | Num | 3 | | Код виду документа |
| DSER | Char | 7 | | Серія документа |
| DNOM | Num | 6 | 0 | Номер документа |
| REZIDENT | Logical | 1 | | Ознака резидент/нерезидент |
| BCODC | Num | 3 | 0 | Код цінності отриманої |
| | | | | Клієнтом |
| BCODCUR | Num | 3 | 0 | Код валюти отриманої клієнтом |
| BSUM | Num | 15 | 2 | Сума валюти отриманої |
| | | | | Клієнтом |
| SCODC | Num | 3 | 0 | Код цінності прийнятої від |
| | | | | Клієнта |
| SCODCUR | Num | 3 | 0 | Код валюти прийнятої від клієнта |
| SSUM | Num | 15 | 2 | Сума валюти прийнятої від |
| | | | | Клієнта |
| SSER | Num | 2 | 0 | Серія довідки |
| SNOM | Num | 6 | 0 | Номер довідки |
| DATA | Date | 8 | | Дата | p>
Таблиця 3
Структура бази даних «Цінності»
| Ім'я поля | Тип | Довжина | Дріб | Призначення |
| | Поля | | | |
| COD | Num | 3 | 0 | Код цінності |
| NAME | Char | 25 | | Найменування цінності | p>
Таблиця 4
Структура бази даних «Валюти»
| Ім'я поля | Тип | Довжина | Дріб | Призначення |
| | Поля | | | |
| COD | Num | 3 | 0 | Код валюти |
| NAME | Char | 25 | | Найменування валюти |
| BKURS | Num | 10 | 2 | Курс купівлі |
| SKURS | Num | 10 | 2 | Курс продажу |
| CKURS | Num | 10 | 2 | Курс ЦБ РФ |
| SHORT_NAME | Char | 3 | | Коротка назва валюти |
| SCALE | Num | 4 | 0 | Масштаб | p>
Таблиця 5
Структура бази даних «Документи»
| Ім'я поля | Тип | Довжина | Дріб | Призначення |
| | Поля | | | |
| COD | Num | 3 | 0 | Код документа |
| NAME | Char | 25 | | Найменування документа | p>
Таблиця 6
Структура бази даних «Курси валют по датам»
| Ім'я поля | Тип | Довжина | Дріб | Призначення |
| | Поля | | | |
| COD | Num | 3 | 0 | Код валюти |
| NAME | Char | 25 | | Найменування валюти |
| BKURS | Num | 10 | 2 | Курс купівлі |
| SKURS | Num | 10 | 2 | Курс продажу |
| CKURS | Num | 10 | 2 | Курс ЦБ РФ |
| SHORT_NAME | Char | 3 | | Коротка назва валюти |
| SCALE | Num | 4 | 0 | Масштаб |
| DATA | Date | 8 | | Дата встановлення курсу |
| TIME | Char | 5 | | Час встановлення курсу | p>
Взаємодія даних, зв'язку і методи доступу. P>
Надійність і швидкість обробки інформації програмою багато в чомувизначаються якістю проектування методів доступу до даних системи ізв'язків між окремими інформаційними одиницями. У нашому випадкупроглядається один тип зв'язків КОД-НАЙМЕНУВАННЯ для довідників кодів івалют. Такий тип зв'язку реалізується штатними засобами Clipper'а, такими,як установка реляційної зв'язку між двома базами даних (двома робочимиобластями) за значенням ключа або номеру запису за допомогою команди SET RELATION. p>
SET RELATION є командою обробки баз даних, яка пов'язуєбатьківську робочу область з одного або більше дочірніми областями шляхомвикористання ключового вирази, номера запису або числового виразу.
Кожна батьківська робоча область може бути пов'язана не більше, ніж звісьмома дочірніми робочими областями. Відношення зв'язку змушує покажчикзапису переміщатися в дочірній робочої області відповідно допереміщенням покажчика запису в батьківській робочої області. Якщо вдочірньої робочої області не виявляється відповідності, то дочірнійпокажчик запису поміщається в позицію «за кінець файлу», і результат пошукуприймає значення "брехня" (. F.).
Спосіб зв'язування батьківського і дочірньої робочих областей залежить відтипу вирази ключа і присутності активного провідного індексу в дочірнійробочої області. Якщо дочірня робоча область має активний індекс, пошукздійснюється за допомогою стандартної команди SEEK. Якщо ж дочірня робочаобласть не має активного індексу, а тип вирази ключа числовий, тозамість цього в дочірній робочої області виконується команда GOTO.
Такий спосіб доступу до даних дозволяє дуже швидко і надійно знаходитиключового значення виразу в пов'язаної БД і забезпечує автоматичнесканування дочірньої бази даних при переміщенні покажчика записи восновній базі.
Для забезпечення надійного зв'язку даних необхідно передбачити впроцедурі поповнення довідників автоматичне створення ключовоговирази. Воно повинно відповідати наступним вимогам:
. Унікальність ключа;
. Невеликий розмір ключового вирази для зменшення розмірів індексного файлу та прискорення пошуку при великій кількості записів.
При створенні ключа не бажано в його якості використовувати номерзапису. При такому способі унікальність ключа може бути збережена тількиякщо заборонено фізичне видалення записів з файлу довідника, хоча цейспосіб найбільш просто реалізуємо. У нашому випадку є сенс зупинитисясаме на ньому, оскільки фізична видалення записів із довідниківпризведе до втрати логічного зв'язку архівних документів. Таким чином принеобхідності видалення, запис буде просто позначена, як віддалена івдальнейшем не буде виводитися в списках.
Одним з важливих моментів у проектуванні?? аніі інформаційно-довідкових системє організація введення даних користувачем і їх подальша обробка.
При введенні даних, як правило, використовуються дві форми вводу: таблична ібланк. У проектованої системи введення даних обмінної операції бажаноорганізувати у формі бланка при оформленні операції і в таблиці прикоригування та поповнення довідників. Під час введення курсів валют можназастосувати комбіновану форму вводу: пошук валюти за списком табличнійформи, а введення курсу у формі бланка. Основним режимом роботи користувачабуде введення даних за операціями обміну, тому бланк введеннянеобхідно спроектувати так, щоб форма відповідаластандартної довідці. Введення даних з довідників можна оформити так, щобвиклик довідника забезпечувався натисканням функціональної клавіші,відповідність довідника поточному полю введення також повинно забезпечуватисяавтоматично на ім'я поля введення. Запис даних у базу повиннапроводитися після підтвердження користувачем правильності всіх введенихчислових і символьних даних і розрахункових величин.
Після введення даних необхідно дати користувачеві можливість роздрукуватибланка довідки і копії клієнта. ця операція повинна бути виконана вобов'язковому порядку. Друк може бути здійснена на два типи принтерів:ударної дії (матричні) і струминні. Друк довідки на лазернихпринтерах неможлива із-за підвищених вимог до якості паперу. Придруку довідки на матричному принтері можна здійснити друк двохпримірників (довідка + копія) за один прохід із застосуванням копіювальноїпаперу. На струменевому принтері необхідно друкувати кожен примірник окремо.
Таки м чином потрібно передбачити змінюваний користувачем лічильник числакопій чи спеціальну функцію налаштування на тип принтера.
Рис.2 Схема взаємодії і сязей даних p>
Розробка функціональної схеми програми. P>
Функціональний склад програми повинен максимально забезпечуватинеобхідний набір можливостей для виконання касиром ВП його посадовихобов'язків, пов'язаних з введенням даних, реєстрацією угод і оформленнямзвітних документів. Для цього складемо приблизний перелік функцій, якіповинні бути реалізовані в нашій системі. p>
Приблизний перелік функцій системи. p>
1. Реєстрація обмінної операції p>
2. Введення даних з купівлі валюти p>
3. Введення даних з продажу валюти p>
4. Введення даних по конверсії валюти p>
5. Друк довідки клієнта p>
6. Перегляд документів p>
7. Перегляд списку документів дня p>
8. Перегляд списку архівних документів p>
9. Ведення довідників p>
10. Введення даних за кодами цінностей p>
11. Введення даних по видах документів p>
12. Введення даних за кодами валют p>
13. Введення курсів валют по датам
14. Генерація звітних документів p>
. Друк реєстру готівкової іноземної валюти, купленої за готівку рублі; p>
. Друк реєстру готівкової іноземної валюти, проданої за готівкові рублі; p>
17. Друк реєстру по обміну (конверсії) готівкової іноземної валюти;
18. Інші функци