Розробка гнучкої системи автоматизації розрахунку учбового навантаження

База даних як складова частина інформаційної системи. Загальні принципи створення контролерів автоматизації MS Office. Розробка гнучкої комп'ютеризованої системи, призначеної для автоматизації розрахунку учбового навантаження. Моделі представлення даних.

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

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

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

Дія електромагнітних полів на організм людини виявляється у функціональному розладі центральної нервової системи. В результаті тривалого перебування в зоні дії електромагнітних полів наступають передчасна стомлюваність, сонливість або порушення сну, з'являються часті головні болі.

Джерелами випромінювання електромагнітних полів (ЕМП) в ПЕОМ є система відхилення випромінювання монітору, а також елементи блоків живлення системного модуля, монітору, принтера.

Систематичний вплив на працюючого ЕМП з рівнями, що перевищують допустимі, призводить до порушення стану його здоров'я. При цьому можуть виникати зміни в нервовій, серцево-судинній та інших системах організму людини. При впливі ЕМП значної інтенсивності на організм можуть виникати поразки кришталиків ока, нервово-психічні захворювання і трофічні явища (випадення волосся, ломкість нігтів). Ступінь шкідливого впливу ЕМП на організм людини визначається напругою електромагнітного поля, довжиною хвилі і тривалістю перебування організму в зоні діяльності ЕМП.

6.1.6 Рентгенівське випромінювання

Електронно-променеві трубки, які працюють при напрузі понад 6 кВ є джерелами „м'якого” рентгенівського випромінювання. При напрузі понад 10 кВ рентгенівське випромінювання виходить за межі скляного балону і розсіюється в навколишньому просторі виробничого приміщення.

Шкідливий вплив рентгенівських променів зв'язаний з тим, що, проходячи через біологічну тканину, вони викликають в тканині іонізацію молекул тканинної речовини, що може призвести до порушення міжмолекулярних зв'язків, що в свою чергу, призводить до порушення нормальної течії біохімічних процесів і обміну речовин.

6.1.7 Освітлення

Значення освітлення в процесі життєдіяльності і особливо виробничої діяльності сучасного суспільства величезне. Організація раціонального освітлення робочих місць - одне з основних питань охорони праці. Залежно від джерела світла виробниче освітлення може бути трьох видів: природне, штучне і суміщене.

Для природного освітлення характерна висока дифузна (неуважність) денного світла від небозводу, що вельми сприятливе для зорових умов роботи. Природне освітлення підрозділяють на бічне, здійснюване через світлові віконні отвори; верхнє, здійснюване через аераційні і зенітні ліхтарі, отвори в перекриттях; комбіноване - бічне з верхнім. Природне освітлення характеризується тим, що створювана освітленість змінюється в надзвичайно широких межах залежно від часу дня, року, метеорологічних чинників. Тому природне освітлення неможливе кількісно задавати величиною освітленості. Як нормована величина для природного освітлення прийнята відносна величина - коефіцієнт природної освітленості (КЕО), який є вираженим у відсотках відношенням освітленості в даній крапці усередині приміщення до одночасного значення зовнішньої горизонтальної освітленості, створюваної світлом повністю відкритого небозводу, тобто

Штучне освітлення передбачається у всіх виробничих і побутових приміщеннях, де не досить природного світла, а також для освітлення приміщень в нічний час. По функціональному призначенню штучне освітлення підрозділяють на робоче, аварійне, евакуаційне, охоронне, чергове. Робоче освітлення забезпечує зорові умови нормальний роботи, проходу людей і руху транспорту. Аварійне освітлення влаштовують для продовження роботи при раптовому відключенні робочого освітлення. При цьому нормована освітленість повинна складати 5 % від робочого освітлення. Евакуаційне освітлення передбачається для евакуації людей з приміщень при аваріях в місцях, небезпечних для проходу людей, на сходових клітках (повинно бути в приміщеннях не менше 0,5, а на відкритих територіях - не менше 0,2 лк).

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

Штучне освітлення може бути загальним (рівномірним або локалізованим) і комбінованим (до загального додається місцеве). Застосування тільки місцевого освітлення забороняється.

В силу тісного взаємозв'язку зору людини з роботою мозку освітлення виявляє істотний вплив на центральну нервову систему, яка керує всією життєдіяльністю людини. Раціональне освітлення сприяє підвищенню продуктивності і безпеки праці і збереженню здоров'я працюючих. Недостатнє освітлення робочих місць - одна з причин низької продуктивності праці. В цьому випадку очі працюючого сильно напружені, важко розрізняють предмети, у людини знижується темп і якість роботи, погіршується загальний стан.

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

6.1.8 Промислова естетика приміщень

Важливе значення для створення сприятливих умов праці має культура праці й виробнича естетика. Чистота на робочому місці, правильно підібрана колірне фарбування приміщень, інвентарю, устаткування, форма й покрій робочого одягу, спеціально підібрана музика - все це створює гарний настрій, підвищує життєвий тонус і працездатність. Естетичні умови на виробництві мають істотне значення не тільки для оздоровлення, полегшення праці, але й для підвищення його привабливості і продуктивності. У зв'язку із цим на промислових підприємствах велике значення надається промисловій естетиці.

Як самостійна галузь знань промислова естетика і теоретично і організаційно сформувалась порівняно недавно. Вона вивчає закони художньої творчості в сфері виробництва. Коло питань, розроблювальних промисловою естетикою, дуже широкий. Це раціональне колірне оформлення промислових приміщень і встаткування, розумна організація робочого місця, художнє конструювання верстатів, машин, інструментів, впровадження функціональної музики, художня розробка моделей робочого одягу, устаткування стендів наочної агітації, озеленення території цехів і підприємств.

Колір є одним з найбільш потужних засобів емоційного впливу на людину. Колір робочих приміщень, устаткування, механізмів викликає в людини певні емоції, впливає на стомлюваність, травматизм, брак у роботі, а отже, на продуктивність праці. Впливаючи на нервову систему, колір збуджує або заспокоює, створює ілюзію тепла або холоду, тяжкості або легкості, наближення або віддалення. Колірне фарбування виробничих приміщень доцільно робити з урахуванням технологічного призначення приміщень, умов роботи, температури, характеру висвітлення й вимог охорони праці. Колір устаткування повинен бути м'яким, спокійним, психологічно сприятливим. У яскраві контрастні кольори фарбують органи керування встаткування, рухливі частини.

У виробничому інтер'єрі колір також відіграє попереджуючу роль, використовується для зображення технологічних символів і всіляких сигналів. Наприклад, при будівництві промислових об'єктів трубопроводи різного призначення (для води, кислоти, газу) пофарбовані в різний колір. Усім відомі сигнально-попереджуючі кольори: червоний - стоп, небезпечно; жовтий - можлива небезпека; зелений - повна безпека. З економічної точки зору раціональне фарбування робочих приміщень і встаткування підвищує продуктивність праці на 5-20%, зменшує число нещасних випадків.

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

Основні принципи ергономічної організації робочого місця - комфорт і мінімізація навантажень. Зрозуміло, принципам ергономіки повинна відповідати й використовувані меблі. Наприклад, зручне крісло, у якому можна без шкоди для здоров'я працювати тривалий час, повинне бути оснащений підлокітниками й підголівником, що знімають навантаження з м'язів плечового поясу. Пружна спинка анатомічної форми зменшує навантаження на хребет. У результаті конструкція рівномірно підтримує все тіло. Також крісло повинне регулюватися по висоті й глибині сидіння, залежно від ваги й росту людини.

Серед столів найбільш ергономічною визнана криволінійна кутова форма. За рахунок увігнутості більша частина їхньої площі виявляється використовуваної, оскільки попадає в зону охоплення руками людини, рівну 35-40 см.

Самим оптимальним фахівцями вважається розташування меблів за принципом «усе під рукою», коли всі необхідні для щоденної роботи полиці, тумби, шафи перебувають на відстані витягнутої руки. Це дозволяє виключити непотрібні витрати енергії й зосередиться на виконанні прямих обов'язків.

6.2 Заходи щодо нормалізації шкідливих і небезпечних факторів

6.2.1 Захист від електромагнітних випромінювань

На сьогоднішній день основним засобом захисту від електромагнітних випромінювань, що застосовуються в обчислювальній техніці є екранування джерел випромінювання. Сьогодні всі монітори, що випускаються, а також блоки живлення мають корпус, виконаний зі спеціального матеріалу, що практично повністю затримує проходження електромагнітного випромінювання. Застосовуються також спеціальні екрани, що зменшують ступінь впливу електромагнітних і рентгенівських променів на оператора.

Для зниження електромагнітного впливу на людину-оператора використовуються також раціональні режими роботи, при яких норма роботи на ПЕОМ не повинна перевищувати 50 % робочого часу.

6.2.2 Захист від ураження електричним струмом

Гранично допустимі рівні напруги дотику і струмів при експлуатації і ремонті обладнання забезпечені:

- застосуванням малої напруги;

- ізоляцією струмоведучих мереж;

- обґрунтуванням і оптимальним вибором елементної бази, що виключає передумови поразки електричним струмом;

- правильного компонування, монтажу приладів і елементів;

- дотриманням умов безпеки при настанові і заміні приладів і інше.

Захист від небезпечних впливів електричного струму при експлуатації обчислювальних комплексів забезпечені:

- застосування захисного заземлення або обнуління;

- ізоляцією струмопровідних частин;

- дотриманням умов безпеки при настанові і заміні агрегатів;

- надійним контактним сполученням з урахуванням перепаду кліматичних параметрів.

6.2.3 Захист від статичної електрики

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

На робочих місцях всі металеві та електропровідні неметалеві обладнання заземлені.

6.2.4 Захист від шуму та вібрації

Ефективне рішення проблеми захисту від впливу шуму досягається проведенням комплексу заходів, в які входить ослаблення інтенсивності цього шкідливого виробничого чинника в джерелах і на шляху розповсюдження звукових хвиль.

Зниження виробничого шуму в приміщеннях, де розміщені ПЕОМ, досягається за рахунок акустичної обробки приміщення - зменшення енергії відбитих хвиль, збільшення еквівалентної площі звукопоглинаючих поверхонь, наявність в приміщеннях штучних звукопоглиначів.

З метою зниження шуму в самих джерелах встановлюються віброгасячі і шумогасячі прокладки або амортизатори. В якості засобів звукопоглинання застосовуються не горючі або тяжко горючі спеціальні перфоровані плити, панелі, мінеральна вата з максимальним коефіцієнтом поглинання в межах частот 31.5-8000 Гц.

6.2.5 Оздоровлення повітряного середовища

Для створення нормальних умов роботи програмістів і операторів ПЕОМ в машинному залі використовується система кондиціювання, що забезпечує необхідні оптимальні мікрокліматичні параметри і чистоту повітря.

В холодні періоди року температура повітря, швидкість його руху і відносна вологість повітря відповідно складають: 22-24 С; 0,1 м/с; 40-60%; в теплі періоди року температура повітря - 23-25 Сє; відносна вологість 40-60 %; швидкість руху повітря - 0,1 м/с.

6.2.6 Захист від рентгенівського випромінювання

Електронно-променеві трубки, магнетрони, тиратрони та інші електровакуумні прилади, що працюють при напрузі вище 6 кВ, є джерелами „м'якого” рентгенівського випромінювання. При технічній експлуатації апаратури, в якій напруга вище 15 кВ, використовують засоби захисту для відвертання рентгенівського опромінення операторів і інженерно-технічних робітників, бо при такій напрузі рентгенівське випромінювання розсіюється в навколишньому просторі виробничого приміщення.

Шкідливий вплив рентгенівських променів зв'язаний з тим, що порушення міжмолекулярних зв'язків тканинної речовини може призвести до порушення нормальної течії біохімічних процесів і обміну речовин.

Засобами захисту від „м'якого” рентгенівського випромінювання є застосування поляризаційних екранів, а також використання в роботі моніторів, що мають біо-керамічне покриття і низький рівень радіації. В якості засобів захисту від чинності м'яких рентгенівських променів застосовуються екрани з сталевого листа (0,5-1 мм) або алюмінію (3 мм), спеціальної гуми.

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

6.2.7 Забезпечення раціонального освітлення

При правильно розрахованому і виконаному освітленні очі працюючого за комп'ютером протягом тривалого часу зберігають здатність добре розрізняти предмети не втомлюючись. Це сприяє зниженню професійного захворювання очей, підвищується працездатність. Раціональне освітлення відповідає ряду вимог:

- достатнє, щоб очі без напруги могли розрізняти деталі;

- постійна напруга в мережі не коливається більше ніж на 4%;

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

- не викликає дії, яка сліпить органи зору працюючого (зменшення блищання джерел, що відбивають світло, досягається застосуванням світильників, які розсіюють світло);

- не викликає різких тіней на робочих місцях.

Задачею розрахунку є визначення необхідної потужності електричної освітлювальної установки для створення у виробничому приміщенні заданої освітленості. При проектуванні освітлювальної установки необхідно вирішити наступні основні питання:

- вибрати тип джерела світла - рекомендуються газорозрядні лампи, за винятком місць, де температура повітря може бути менш +5°С і напруга в мережі падати нижче 90 % номінального, а також місцевого освітлення (у цих випадках застосовуються лампи розжарювання);

- визначити систему освітлення (загальна локалізована або рівномірна, комбінована);

- вибрати тип світильників з урахуванням характеристик світорозподілення, умов середовища (конструктивного виконання) та інше;

- розподілити світильники і визначити їх кількість (світильники можуть матися в своєму розпорядженні рядами, в шаховому порядку, ромбоподібно);

- визначити норму освітленості на робочому місці.

Для розрахунку штучного освітлення використовують в основному три методи. Найчастіше її розраховують по світловому потоку. Для цього визначається світловий потік кожної лампи по нормуючій мінімальній горизонтальній освітленості Еmin (лк) з вираження:

F=(Emin·S·K·z) / n1·n·N

де F - світловий потік лампи в світильнику, лм;

S - площа приміщення, м2;

K - коефіцієнт запасу;

z - коефіцієнт нерівномірного освітлення;

n1 - коефіцієнт використання світлового потоку;

n - кількість ламп в світильнику;

N - число світильників.

Якщо освітлення здійснюється рядами люмінесцентних ламп, те вираження вирішується відносно N. Значення коефіцієнта n1 визначається по довіднику в залежності від типу світильника, коефіцієнтів відбивання стін Рс, стелі Рп, робітничій поверхні і від розмірів приміщення. Показник приміщення fi визначається з виразу:

fi= А·В/Нр·(А+В)

де А і В - довжина і ширина освітленого приміщення, м;

Нр - висота підвісу світильника над робітничою поверхнею, м.

У випадку застосування люмінесцентних ламп потрібна кількість світильників N, яка визначається за формулою:

N=Emin·S·K·z/F·n1·n

Поділивши число світильників N на число вибраних рядів світильників, визначають число світильників у кожному ряду.

Нехай зал має розміри А=8м, В=5м, h=3м, стеля обладнується світильниками Л201Б з люмінесцентними лампами ЛБ80, технічні характеристики ламп і світильників наведені в таблицях 6.1, 6.2 (згідно Держстандарту 6825-74)

Таблиця 6.1 Технічні характеристики ламп

Тип

Потужність, Вт

Напруга, В

Світловий потік (номін.)

Довжина, мм

Діаметр, мм

ЛБ80

80

110

5220

1500

40

Таблиця 6.2 Технічні характеристики світильників

Серія

Модифікація

Кількість* потужність, шт, Вт

Розміри, мм

Номер групи

Прим.

Довжина

Ширина

Висота

Л201Б

3

2·8

1575

354

127

9

Стеля

Рівень робітничої поверхні над полом 0,8 м, при цьому Нр=2,2 м.

Показник приміщення рівний:

fi=40/2,2 (8+5)=1,3986

По довіднику визначаємо значення коефіцієнта n1 (для значень Рс=0,5, Рп=0,3): n1=0,7. Значення коефіцієнта нерівномірного освітлення приймаємо рівним 1,1, а коефіцієнта запасу - 1,5. При загальному типі освітлення значення Emin=400 лк. Знаючи значення світлового потоку кожної лампи, можемо визначити необхідну кількість світильників:

N=400·8·5·1,5·1,1/5220·0,7·2=3(штук)

Загальна потужність освітлювальної установки рівна:

Р=2·80·3=480(Вт)

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

6.3 Пожежна безпека

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

По класифікації приміщень з ПЕОМ по пожежній небезпеці відносяться до категорії В (СНиП 2.09.02-85), що характеризуються наявністю твердих горючих і важко горючих речовин і матеріалів, а також легкозаймистих матеріалів.

В зв'язку з цим можна виділити ряд заходів для пожежної безпеки:

- не палити і не використовувати нагрівальні прилади в приміщеннях з ПЕОМ;

- не від'єднувати і не приєднувати кабелі, усувати несправності за наявності напруги в мережі;

- не визначати наявність напруги в ланцюзі, замиканням клем.

В електронно-обчислювальній техніці пожежну небезпеку створюють прилади, що нагріваються, електро- і радіотехнічні елементи. Вони нагрівають навколишнє повітря і близько розташовані деталі і провідники. Все це може призвести до займання означених елементів, руйнування ізоляції і короткого замикання.

Для виявлення пожеж в приміщенні встановлені датчики, що спрацьовують при появі диму, підвищенні температури і відкритого вогню.

Технологічні об'ємні підлоги виконуються з негорючих або тяжко горючих матеріалів з межею вогнестійкості не менше 0,5 г. Підпільні простори під об'ємними підлогами відділяють негорючими перегородками з межею вогнестійкості не менше 0,75 г на ділянки площею не більш 250 м2.

Для гасіння можливих пожеж передбачена наявність первинних засобів пожежогасіння, згідно «Правил пожежної безпеки в Україні» так і пожежні крани із брезентовими рукавами, пожежні щити (1 щит на 5000м2).

В кожній кімнаті знаходяться вогнегасники. Вогнегасники діляться на хімічні, пінні, повітряно-пінні, СО2 - вогнегасники і порошкові.

Вогнегасники допускаються до експлуатації якщо їхні технічні характеристики відповідають нормативним значенням, встановленим експлуатаційно-технічною документацією. Зменшення змісту вогнегасячої речовини і тиску у вогнегасниках не повинне перевищувати 10 % від встановленого номінального значення.

При розміщенні вогнегасників виключений безпосередній вплив на них сонячних променів, опалювальних і нагрівальних пристроїв. За конструкцією, матеріалами, методами контролю, умовами змісту, обслуговуванням вогнегасники повинні відповідати вимогам Правил пристрою і безпечної експлуатації судин, що працюють під тиском.

Первинні засоби пожежогасіння: ручні вогнегасники в кількості 2 шт.

Засоби гасіння загорання й пожежі, які можуть бути ефективно використані в початковій стадії пожежі: внутрішні пожежні крани, вогнегасники, кошми, пісок.

Для успішного гасіння пожежі велике значення має швидке виявлення пожежі та своєчасний виклик пожежних підрозділів до місця пожежі. Пожежний зв'язок і сигналізація можуть бути спеціального або загального призначення, радіозв'язком, електричною пожежною сигналізацією (ЕПС), сиренами. ЕПС є найбільш швидким та надійним засобом сповіщення про виникнену пожежу. В залежності від схеми з'єднання розрізнюють променеві (радіальні) та шлейфні (кільцеві) системи ЕПС.

ЕПС складаються з таких основних частин: сповіщувачів, встановлених в приміщеннях; приймальної станції, яка знаходиться в черговій кімнаті пожежної команди; блока поживи від сіті та від акумулятора (резервний); системи переключення з одної поживи на іншу; електропровідній сіті, яка з'єднує сповіщувачі з приймальною станцією.

В кімнаті з ПЕОМ розміщений сповіщувач (датчик) тепловий легкоплавкий. При збільшенні температури легкоплавкий сплав розплавляється і пружинячі пластинки, розмикаючись, вмикають ланцюг сигналізації.

ВИСНОВКИ

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

Одним з головних завдань Delphi є розробка додатків для роботи з базами даних. У цій області Delphi займає самі передові позиції, працюючи з будь-якими системами управління базами даних. В цілому Delphi -- прекрасний інструмент, як для програмістів-початківців, так і для асів програмування.

Метою даної дипломної роботи є розробка гнучкої комп'ютеризованої системи для автоматизації розрахунку учбового навантаження. Система дозволяє повністю автоматизувати процес формування семестрових планів, карток учбового навантаження та інших документів звітності.

Office - це середовище, в якому більшість завдань можна вирішувати без якого-небудь програмування. Але вся цінність застосувань Office для розробника полягає в тому, що все, що можна зробити руками, можна зробити програмним шляхом з використанням засобів VBA (Visual Basic for Application). Крім того, додатки Office поставляють сервера COM, які надають інтерфейс доступу до додатку і його об'єктів. Завдяки цьому, розробник в середовищі Delphi має можливість, створивши контроллер автоматизації, управляти сервером. Використання контроллерів автоматизації COM серверів значно спростило процес розробки інтерфейсу користувача і виведення інформації проектованої системи. Використовуючи могутню мову Delphi 6 і відкритий інтерфейс серверів MS Office можна будувати дуже великі і серйозні додатки, що працюють спільно.

СПИСОК ЛІТЕРАТУРИ

1. Бобровский С. Delphi 5 - CПб.: Питер, 2000

2. Гаевский А. Разработка программных приложений на Delphi 6 - М.: Киев, 2000.

3. Галисеев, Г.В. Программирование в среде Delphi 8 for .NET. Самоучитель. :- М.: Издательский дом "Вильяме", 2004.

4. Глинский Я.Н., Анохин В.Е., Ряжская В.А. Turbo Pascal 7.0 и Delphi. Учебное пособие. СПб.: ДиаСофтЮП, 2003. - 208 с.

5. Гофман В., Хомоненко А. Delphi 6. CПб.: БХВ-Петербург, 2004.

6. Грибачев К. Г. Delphi и Model Driven Architecture. Разработка приложений баз данных. - СПб.. Питер, 2004.

7. Грибачев К. Тонкие базы данных и инструменты для их разработки в Delphi и C++Builder. - КомпьютерПресс, 2003, № 7, 8.

8. Дарахвелидзе П. Г., Марков Е. П. Delphi - среда визуального программирования. СПб.: BHV- Санкт-Петербург, 1999.-352с.

9. Елманова Н., Трепалин С., Тенцер А. Delphi 6 и технология COM. - CПб.: Питер, 2002. - 640 с.

10. Калверт Ч. Delphi 5. Энциклопедия пользователя. СПб.: ДиаСофтЮП, 2003.

11. Климова Л. М. "Delphi 7. Самоучитель. М.: ИД КУДИЦ-ОБРАЗ, 2005. - 480с.

12. Корняков В.Н. Программирование документов и приложений MS Office в Delphi. - CПб.: БХВ-Петербург, 2005. - 496 с.

13. Коцюбинский А.О., Грошев С.В. Язык программирования Delphi 5 - М.: "Издательство Триумф", 1999

14. Леонтьев В. Delphi 5 - М.: Москва "Олма-Пресс", 1999

15. Мадрел Тео. Разработка пользовательского интерфейса/ Пер. с англ.- М.:ДМК,2001.

16. Матросов А. В. и др. MS Office ХР: разработка приложений / Матро-

сов А. В., Новиков Ф. А., Усаров Г. Е., Харитонова И. А. / Под ред. Ф. А. Новикова. -- СПб.: БХВ-Петербург, 2003.

17. Немнюгин С.А. Программирование - CПб.: Питер, 2000.

18. Озеров В. Delphi. Советы программистов (2-е издание). -- СПб.: Символ- Плюс, 2002.

19. Пономарев В. Самоучитель Delphi 7. CПб.: БХВ-Петербург, 2005.

20. Ревнич Ю. В. Нестандартные приемы программирования на Delphi. -- СПб.: БХВ-Петербург, 2005.

21. Ремизов Н. Delphi - CПб.: Питер, 2000

22. Симонович С.В., Евсеев Г.А. Занимательное программирование: Delphi. М.: АСТ-ПРЕСС Кнрга, 2001. - 368 с.

23. Фараонов В. Система программирования Delphi. CПб.: БХВ-Петербург, 2005.

24. Ханекамп Д.. Вилькен П. Программирование под Windows/ Пер. с нем. -М.: ЭКОМ, 1996.

25. Хомоненко А.Д Delphi 7. CПб.: БХВ-Петербург, 2005.-1216с. :ил.

Додаток

Лістинг програми

unit data_module;

interface

uses

SysUtils, Classes, DB, ADODB,Variants;

type

TDataModule7 = class(TDataModule)

ADOConnection1: TADOConnection;

ADOTable1: TADOTable;

ADOTable1kod_pr: TAutoIncField;

ADOTable1prizv: TWideStringField;

ADOTable1name: TWideStringField;

ADOTable1f_name: TWideStringField;

ADOTable1n_st: TWideStringField;

ADOTable1sht: TBooleanField;

ADOTable2: TADOTable;

ADOTable1date_r: TDateTimeField;

ADOTable1date_post: TDateTimeField;

ADOTable3: TADOTable;

ADOTable3prizv: TWideStringField;

ADOTable3name: TWideStringField;

ADOTable3f_name: TWideStringField;

ADOTable1tema_dis: TWideStringField;

ADOTable1zv_kaf: TWideStringField;

ADOTable1baz_vus: TWideStringField;

ADOTable1kvalif: TWideStringField;

ADOTable1spec: TWideStringField;

ADOTable1god_dip: TWideStringField;

ADOTable1god_zah: TWideStringField;

ADOTable1god_zv: TWideStringField;

ADOTable3kod_pr: TAutoIncField;

ADOTable1kod_pos: TIntegerField;

ADOTable4: TADOTable;

ADOTable4kod_pos: TAutoIncField;

ADOTable4posada: TWideStringField;

ADOTable4stavka: TIntegerField;

ADOTable1pos: TStringField;

ADOTable5: TADOTable;

ADOTable5kod_semestr: TAutoIncField;

ADOTable5kod_dis: TIntegerField;

ADOTable5semestr: TIntegerField;

ADOTable5kod_sp: TIntegerField;

ADOTable5lek: TIntegerField;

ADOTable5lab: TIntegerField;

ADOTable5prakt: TIntegerField;

ADOTable5naz_dis: TStringField;

ADOTable6: TADOTable;

ADOTable6kod_sp: TAutoIncField;

ADOTable6nazva: TWideStringField;

ADOTable6shifr: TWideStringField;

ADOTable5spec: TStringField;

ADOTable5f_kontr: TWideStringField;

ADOTable5k_r: TBooleanField;

ADOTable5k_p: TBooleanField;

ADOTable7: TADOTable;

ADOTable7kod_potoka: TAutoIncField;

ADOTable7kod_sp: TIntegerField;

ADOTable7kurs: TIntegerField;

ADOTable7kol_st: TIntegerField;

ADOTable7spec: TStringField;

ADOTable5ch_kons: TFloatField;

ADOTable5f_nav: TBooleanField;

sem_1_d: TADOTable;

sem_2_d: TADOTable;

sem_1_z: TADOTable;

sem_1_dsemestr: TIntegerField;

sem_1_df_nav: TBooleanField;

sem_1_dn_disc: TWideStringField;

sem_1_dshifr: TWideStringField;

sem_1_dlek: TIntegerField;

sem_1_dlab: TIntegerField;

sem_1_dprakt: TIntegerField;

sem_1_dk_r: TBooleanField;

sem_1_dk_p: TBooleanField;

sem_1_df_kontr: TWideStringField;

sem_1_dkod_sp: TIntegerField;

sem_1_dkod_dis: TIntegerField;

sem_2_dsemestr: TIntegerField;

sem_2_df_nav: TBooleanField;

sem_2_dn_disc: TWideStringField;

sem_2_dshifr: TWideStringField;

sem_2_dlek: TIntegerField;

sem_2_dlab: TIntegerField;

sem_2_dprakt: TIntegerField;

sem_2_dk_r: TBooleanField;

sem_2_dk_p: TBooleanField;

sem_2_df_kontr: TWideStringField;

sem_2_dkod_sp: TIntegerField;

sem_2_dkod_dis: TIntegerField;

sem_1_zsemestr: TIntegerField;

sem_1_zf_nav: TBooleanField;

sem_1_zn_disc: TWideStringField;

sem_1_zshifr: TWideStringField;

sem_1_zlek: TIntegerField;

sem_1_zlab: TIntegerField;

sem_1_zprakt: TIntegerField;

sem_1_zk_r: TBooleanField;

sem_1_zk_p: TBooleanField;

sem_1_zf_kontr: TWideStringField;

sem_1_zkod_sp: TIntegerField;

sem_1_zkod_dis: TIntegerField;

sem_2_z: TADOTable;

sem_2_zsemestr: TIntegerField;

sem_2_zf_nav: TBooleanField;

sem_2_zn_disc: TWideStringField;

sem_2_zshifr: TWideStringField;

sem_2_zlek: TIntegerField;

sem_2_zlab: TIntegerField;

sem_2_zprakt: TIntegerField;

sem_2_zk_r: TBooleanField;

sem_2_zk_p: TBooleanField;

sem_2_zf_kontr: TWideStringField;

sem_2_zkod_sp: TIntegerField;

sem_2_zkod_dis: TIntegerField;

ADOTable2kod_d: TAutoIncField;

ADOTable2n_disc: TWideStringField;

ADOTable3posada: TWideStringField;

ADOTable3stavka: TIntegerField;

sem_1_dkod_semestr: TAutoIncField;

sem_2_dkod_semestr: TAutoIncField;

sem_1_zkod_semestr: TAutoIncField;

sem_2_zkod_semestr: TAutoIncField;

ADOTable8: TADOTable;

ADOTable8kod_zap: TAutoIncField;

ADOTable8kod_pr: TIntegerField;

ADOTable8kod_semestr: TIntegerField;

ADOTable8lek: TIntegerField;

ADOTable8lab: TIntegerField;

ADOTable8prakt: TIntegerField;

ADOTable8kons: TIntegerField;

ADOTable8eks_kons: TIntegerField;

ADOTable8eks: TIntegerField;

ADOTable8zalik: TIntegerField;

ADOTable8uch_pr: TIntegerField;

ADOTable8k_r_p: TIntegerField;

ADOTable8dek: TIntegerField;

ADOTable8insh: TIntegerField;

ADOTable8n_dis: TStringField;

sem_1_dlek_ost: TIntegerField;

sem_1_dlr_ost: TIntegerField;

sem_1_dpr_ost: TIntegerField;

ADOTable5lek_ost: TIntegerField;

ADOTable5lr_ost: TIntegerField;

ADOTable5pr_ost: TIntegerField;

ADOTable5kr_ost: TIntegerField;

ADOTable5kons_ost: TIntegerField;

sem_2_dlek_ost: TIntegerField;

sem_2_dlr_ost: TIntegerField;

sem_2_dpr_ost: TIntegerField;

sem_1_zlek_ost: TIntegerField;

sem_1_zlr_ost: TIntegerField;

sem_1_zpr_ost: TIntegerField;

sem_2_zlek_ost: TIntegerField;

sem_2_zlr_ost: TIntegerField;

sem_2_zpr_ost: TIntegerField;

ADOTable7f_nav: TWideStringField;

ADOTable5kons: TIntegerField;

sem_1_dkons: TIntegerField;

sem_2_dkons: TIntegerField;

sem_1_zkons: TIntegerField;

sem_2_zkons: TIntegerField;

ADOTable5praktika: TIntegerField;

ADOTable5dek: TIntegerField;

ADOTable5inshe: TIntegerField;

ADOTable5eks_kons: TIntegerField;

ADOTable5eks: TIntegerField;

ADOTable5zalik: TIntegerField;

sem_1_dpraktika: TIntegerField;

sem_1_ddek: TIntegerField;

sem_1_dinshe: TIntegerField;

sem_1_deks_kons: TIntegerField;

sem_1_deks: TIntegerField;

sem_1_dzalik: TIntegerField;

sem_2_dpraktika: TIntegerField;

sem_2_ddek: TIntegerField;

sem_2_dinshe: TIntegerField;

sem_2_deks_kons: TIntegerField;

sem_2_deks: TIntegerField;

sem_2_dzalik: TIntegerField;

sem_1_zpraktika: TIntegerField;

sem_1_zdek: TIntegerField;

sem_1_zinshe: TIntegerField;

sem_1_zeks_kons: TIntegerField;

sem_1_zeks: TIntegerField;

sem_1_zzalik: TIntegerField;

sem_2_zpraktika: TIntegerField;

sem_2_zdek: TIntegerField;

sem_2_zinshe: TIntegerField;

sem_2_zeks_kons: TIntegerField;

sem_2_zeks: TIntegerField;

sem_2_zzalik: TIntegerField;

ADOTable5kurs: TIntegerField;

sem_1_dkurs: TIntegerField;

sem_2_dkurs: TIntegerField;

sem_1_zkurs: TIntegerField;

sem_2_zkurs: TIntegerField;

ADOTable1nauk_zv: TWideStringField;

ADOTable9: TADOTable;

ADOTable10: TADOTable;

ADOTable11: TADOTable;

ADOTable12: TADOTable;

ADOTable13: TADOTable;

ADOTable14: TADOTable;

d1: TADOTable;

d2: TADOTable;

d3: TADOTable;

d4: TADOTable;

d5: TADOTable;

z1: TADOTable;

z2: TADOTable;

z3: TADOTable;

z4: TADOTable;

z5: TADOTable;

d1kol_st: TIntegerField;

d1f_nav: TWideStringField;

d1kurs: TIntegerField;

d2kol_st: TIntegerField;

d2f_nav: TWideStringField;

d2kurs: TIntegerField;

d3kol_st: TIntegerField;

d3f_nav: TWideStringField;

d3kurs: TIntegerField;

d4kol_st: TIntegerField;

d4f_nav: TWideStringField;

d4kurs: TIntegerField;

d5kol_st: TIntegerField;

d5f_nav: TWideStringField;

d5kurs: TIntegerField;

z1kol_st: TIntegerField;

z1f_nav: TWideStringField;

z1kurs: TIntegerField;

z2kol_st: TIntegerField;

z2f_nav: TWideStringField;

z2kurs: TIntegerField;

z3kol_st: TIntegerField;

z3f_nav: TWideStringField;

z3kurs: TIntegerField;

z4kol_st: TIntegerField;

z4f_nav: TWideStringField;

z4kurs: TIntegerField;

z5kol_st: TIntegerField;

z5f_nav: TWideStringField;

z5kurs: TIntegerField;

ADOTable3sht: TBooleanField;

procedure ADOTable5CalcFields(DataSet: TDataSet);

procedure ADOTable8BeforePost(DataSet: TDataSet);

procedure ADOTable5BeforePost(DataSet: TDataSet);

procedure sem_1_dCalcFields(DataSet: TDataSet);

procedure ADOTable2AfterPost(DataSet: TDataSet);

procedure ADOTable2AfterDelete(DataSet: TDataSet);

private

{ Private declarations }

public

{ Public declarations }

end;

var

DataModule7: TDataModule7;

implementation

uses U_sem_plan, Unit4;

{$R *.dfm}

procedure TDataModule7.ADOTable5CalcFields(DataSet: TDataSet);

var koef:real;

begin

{ adotable7.Active:=true;

if ADOTable5f_nav.AsBoolean then

begin

adotable7.Locate('kurs;f_nav', vararrayof([(ADOTable5semestr.AsInteger+1) div 2,'д']),[]);

koef:=ADOTable7kol_st.AsInteger/30;

ADOTable5ch_kons.AsFloat:=koef* (ADOTable5lek.AsInteger+ADOTable5lab.AsInteger+ADOTable5prakt.AsInteger)/100*6;}

end;

procedure TDataModule7.ADOTable8BeforePost(DataSet: TDataSet);

begin

ADOTable8kod_pr.AsInteger:=ADOTable3kod_pr.AsInteger;

end;

procedure TDataModule7.ADOTable5BeforePost(DataSet: TDataSet);

var kurs:integer;

begin

if sem_plan.TabControl1.TabIndex=0 then

ADOTable5f_nav.AsBoolean:=true

else ADOTable5f_nav.AsBoolean:=false;

case ADOTable5semestr.AsInteger of

1,2:kurs:=1;

3,4:kurs:=2;

5,6:kurs:=3;

7,8:kurs:=4;

9:kurs:=5;

end;

if ADOTable5f_nav.AsBoolean then

begin

adotable7.Locate('kod_sp;kurs;f_nav',VarArrayOf([ADOTable5kod_sp.AsInteger,kurs,'д']),[]);

adotable5kons.AsFloat:=ADOTable7kol_st.AsInteger/30*(ADOTable5lek.AsInteger+ADOTable5lab.AsInteger+ADOTable5prakt.AsInteger)/100*6;

adotable5eks_kons.AsFloat:=ADOTable7kol_st.AsInteger/30*2;

if ADOTable5f_kontr.AsString='е' then

ADOTable5eks.AsFloat:=0.33* ADOTable7kol_st.AsInteger

else

ADOTable5zalik.AsFloat:= ADOTable7kol_st.AsInteger/30*2

end;

if ADOTable5k_r.AsBoolean then

ADOTable5kurs.AsFloat:=ADOTable7kol_st.AsInteger*3-2*ADOTable7kol_st.AsInteger*0.33;

if ADOTable5k_p.AsBoolean then

ADOTable5kurs.AsFloat:=ADOTable7kol_st.AsInteger*4-2*ADOTable7kol_st.AsInteger*0.33

else

begin

adotable7.Locate('kod_sp;kurs;f_nav',VarArrayOf([ADOTable5kod_sp.AsInteger,kurs,'з']),[]);

adotable5kons.AsFloat:=ADOTable7kol_st.AsInteger/30*(ADOTable5lek.AsInteger+ADOTable5lab.AsInteger+ADOTable5prakt.AsInteger)/100*12;

adotable5eks_kons.AsFloat:=ADOTable7kol_st.AsInteger/30*2;

if ADOTable5f_kontr.AsString='е' then

ADOTable5eks.AsFloat:=0.33* ADOTable7kol_st.AsInteger

else

ADOTable5zalik.AsFloat:= ADOTable7kol_st.AsInteger/30*2;

if ADOTable5k_r.AsBoolean then

ADOTable5kurs.AsFloat:=ADOTable7kol_st.AsInteger*3-2*ADOTable7kol_st.AsInteger*0.33;

if ADOTable5k_p.AsBoolean then

ADOTable5kurs.AsFloat:=ADOTable7kol_st.AsInteger*4-2*ADOTable7kol_st.AsInteger*0.33;

end;

end;

procedure TDataModule7.sem_1_dCalcFields(DataSet: TDataSet);

var x,kurs:integer;

begin

end;

procedure TDataModule7.ADOTable2AfterPost(DataSet: TDataSet);

begin

sp_dis.Label1.Caption:='Загальна кількість '+inttostr(DataModule7.ADOTable2.recordcount);

end;

procedure TDataModule7.ADOTable2AfterDelete(DataSet: TDataSet);

begin

sp_dis.Label1.Caption:='Загальна кількість '+inttostr(DataModule7.ADOTable2.recordcount);

end;

end.

unit U_inf_vikl;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs,data_module, DB, StdCtrls, Mask, DBCtrls, ComCtrls, ExtCtrls,

Buttons;

type

Tinf_vikl = class(TForm)

DataSource1: TDataSource;

GroupBox1: TGroupBox;

Panel1: TPanel;

GroupBox2: TGroupBox;

DBEdit1: TDBEdit;

DBEdit2: TDBEdit;

DBEdit3: TDBEdit;

DateTimePicker1: TDateTimePicker;

DateTimePicker2: TDateTimePicker;

DBEdit4: TDBEdit;

Label1: TLabel;

Label2: TLabel;

DBEdit5: TDBEdit;

BitBtn1: TBitBtn;

Label3: TLabel;

DBEdit6: TDBEdit;

Label4: TLabel;

DBEdit7: TDBEdit;

GroupBox3: TGroupBox;

Label5: TLabel;

DBComboBox1: TDBComboBox;

Label6: TLabel;

DBEdit8: TDBEdit;

Label7: TLabel;

DBEdit9: TDBEdit;

Label8: TLabel;

DBEdit10: TDBEdit;

Label9: TLabel;

DBEdit11: TDBEdit;

Label10: TLabel;

Label11: TLabel;

Label12: TLabel;

Label13: TLabel;

Label14: TLabel;

Label15: TLabel;

DBCheckBox1: TDBCheckBox;

DBLookupComboBox1: TDBLookupComboBox;

DataSource2: TDataSource;

Label16: TLabel;

DBComboBox2: TDBComboBox;

procedure BitBtn1Click(Sender: TObject);

procedure FormShow(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

inf_vikl: Tinf_vikl;

implementation

uses Unit2;

{$R *.dfm}

procedure Tinf_vikl.BitBtn1Click(Sender: TObject);

begin

DataModule7.ADOTable1date_r.AsDateTime:=DateTimePicker1.Date;

DataModule7.ADOTable1date_post.AsDateTime:=DateTimePicker2.Date;

DataModule7.ADOTable1.Post;

DataModule7.ADOTable3.Close;

DataModule7.ADOTable3.Open;

close;

end;

procedure Tinf_vikl.FormShow(Sender: TObject);

begin

DBEdit1.SetFocus;

DateTimePicker1.Date:=DataModule7.ADOTable1date_r.AsDateTime;

DateTimePicker2.Date:=DataModule7.ADOTable1date_post.AsDateTime;

end;

end.

unit U_kartka;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, ComCtrls, Grids, DBGrids,data_module, DB, ExtCtrls, StdCtrls,

Buttons, DBCtrls;

type

Tkartka = class(TForm)

TabControl1: TTabControl;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

Panel1: TPanel;

DBGrid3: TDBGrid;

Panel2: TPanel;

BitBtn1: TBitBtn;

Panel3: TPanel;

Panel4: TPanel;

Edit1: TEdit;

Edit2: TEdit;

StaticText1: TStaticText;

StaticText2: TStaticText;

StaticText3: TStaticText;

DBNavigator1: TDBNavigator;

Label1: TLabel;

procedure DBGrid1EditButtonClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

kartka: Tkartka;

implementation

uses U_sem_plan;

{$R *.dfm}

procedure DrawGridCheckBox(Canvas: TCanvas; Rect: TRect; Checked: boolean);

var DrawFlags: Integer;

begin

end;

procedure Tkartka.DBGrid1EditButtonClick(Sender: TObject);

begin

sem_plan.DBGrid1.Columns[3].FieldName:='lek_ost';

sem_plan.DBGrid1.Columns[4].FieldName:='lab_ost';

sem_plan.DBGrid1.Columns[5].FieldName:='prakt_ost';

sem_plan.DBGrid1.Columns[6].FieldName:='kons_ost'; fl:=false;

DataModule7.sem_1_d.Close;

DataModule7.sem_1_d.Open;

DataModule7.sem_2_d.Close;

DataModule7.sem_2_d.Open;

DataModule7.sem_1_z.Close;

DataModule7.sem_1_z.Open;

DataModule7.sem_2_z.Close;

DataModule7.sem_2_z.Open;

sem_plan.Panel2.Visible:=true;

sem_plan.ShowModal;

end;

end.

unit U_sem_plan;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,


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

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