Переходные характеристики регулятора

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Другое
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    18,33 Кб
  • Опубликовано:
    2015-07-04
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Переходные характеристики регулятора

Реферат

Курсова робота: _____ с., 7 рис., 6 джерел, 2 додатки.

Обєктом дослідження є типові оператори та базові конструкції мови програмування С++.

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

Методика (метод дослідження): компютерна реалізація та компютерне тестування.

Одержані висновки та їх новизна: розроблені алгоритми та складені програми для створення бази даних телефонних номерів.

Результати досліджень можуть бути застосовані при розробці алгоритмів та програм складних задач; створенні великих баз даних.

Перелік ключових слів: АЛГОРИТМ, ПРОГРАМА, КЛАС, ОБКТ, ДАНІ, ЗМІННА, СТРУКТУРА, ІНСТРУКЦІЯ, ФУНКЦІЯ, ПРОЦЕДУРА.

Зміст

Реферат

Вступ

1. Постановка завдання

2. Опис предметної області

3. Обєктно орієнтоване програмування

3.1 Основи ООП

3.2 Створення класів. Методи, властивості, поля

3.3 Конструктори та деструктори. Успадкування класів

4. Побудова обєктної моделі

4.1 Визначення об'єктів та класів і звязків між ними

4.2 Побудова діаграми ієрархії класів

5. Реалізація програми в середовищі Visual Studio C++

5.1 Інтерфейс програми

5.2 Тестування програми

Висновок

Список використаної літератури

Приложения

Вступ

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

Курсова робота з об'єктно-орієнтованого програмування передбачає знання студентами обєктно-орієнтованого проектування та програмування і є завершальним етапом вивчення у рамках курсу об'єктно - орієнтованє програмування підготовки студентів.

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

Виконання курсової роботи (КР) направлено на закріплення знань, отриманих при вивченні теоретичної частини курсу, і набуття практичних навичок розробки об'єктно-орієнтованих програм. В результаті виконання курсової роботи студент повинен освоїти:

концепції об'єктно-орієнтованого програмування;

спеціалізовані засоби розробки програмного забезпечення мовою Java;

спеціалізовані засоби розробки програмного забезпечення мовою С ++;

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

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

Під час виконання курсової роботи студент повинен продемонструвати:

вміння збирати і аналізувати відповідні матеріали про обєкт дослідження, використовуючи сучасні джерела інформації, включаючи Інтернет - ресурси;

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

здатність доводити розв'язання поставленої задачі до логічного кінця;

вміння аналізувати отримані результати і робити з них висновки.

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

програмне забезпечення мова java

1. Постановка завдання

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

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

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

·прізвище, імя, по-батькові;

·дату народження;

·адресу проживання;

·освіту;

·спеціальність;

·дату прийняття на роботу;

·номер телефону;

·заробітну плату;

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

Прийняття працівника на роботу.

-Відображення переліку всіх співробітників фірми.

Звільнення працівника.

Пошук працівника за визначиними критеріями (ПІБ, освіта, спеціальність).

Визначивши основні функції перейдемо до вирішення проблеми зберігання вихідних даних. Так як проект міститиме обємну кількість інформації, її доцільно буде зберігати у вигляді таблиць БД Access. І на кінець, нам потрібно вибрати мову програмування, для реалізації проекту. Для нашого проекту ми виберемо мову С++.

2. Опис предметної області

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

Використання системи дозволяє:

·реєструвати в системі анкети співробітників з можливістю подальшого їх виведення на друк;

·створювати штатний розклад по співробітниках

·вести розширений облік відпусток персонала

·проводити дії над співробітниками і їх особовими рахунками

·вести облік анкет вступників на роботу (здобувачів).

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

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

3. Обєктно орієнтоване програмування

3.1 Основи ООП

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

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

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

Кожен обєкт є екземпляром (представником) певного класу. Відповідно, клас - це відповідна абстракція обєктів.

Основні переваги концепції ООП:

·моделювання предметів та явищ реального світу;

·можливість створювати користувацькі типи даних (класи);

·приховування деталей реалізації (інкапсуляція);

·можливість повторного використання коду (наслідування);

·інтерпретація викликів процедур та функцій на етапі виконання (поліморфізм).

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

Модифікатори доступу:

Модифікатор private - забороняє доступ до полів і методів класу ззовні самого класу. Поля і методи, оголошені з модифікатором private, будуть доступні тільки в межах самого класу.

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

Успадкування - це властивість, з допомогою якої один обєкт може набувати властивостей іншого. При цьому підтримується концепція ієрархічної класифікації. Без використання успадкування кожний обєкт повинен явно визначати всі свої характеристики; використовуючи наслідування, обєкт повинен визначати тільки ті якості, які роблять його унікальним в межах свого класу. Визначення нового класу (породжений клас, підклас) може базуватись на визначенні вже існуючого (базовий клас). В такому випадку, новий клас отримає властивості та поведінку базового класу, та доповнить їх своїми власними. У випадку одиничного успадкування, у кожного класу може бути лише один безпосередній базовий клас. У випадку множинного успадкування, дозволяється існування декількох безпосередніх надкласів. Застосування методів успадкування дозволяє покращити повторне використання коду шляхом використання вже визначених властивостей та методів <#"center">3.2 Створення класів. Методи, властивості, поля

Клас є основою для створення обєктів. В класі визначаються дані і функціонал, який працює з цими даними. Обєкти являються екземплярами класу. Ініціалізація змінних екземпляру відбувається в конструкторі. В класі можуть бути декілька конструкторів, тобто клас являється набором проектів, які визначають як будувати обєкт. Дуже важливо розуміти різницю між класом і обєктом: клас являється логічною абстракцією до тих пір, поки не буде створений обєкт і не появиться фізична реалізація цього класу в памяті компютера. Методи і змінні, які складають клас називаються членами класу.

Імена в закритій private частині можна використовувати тільки у функціях-членах класу. Відкрита public частина утворює відкритий інтерфейс обєктів класу. (Структура - клас, члени якого відкриті за замовчуванням). Крім того, існує мітка protected (захищений), тобто всі змінні будуть доступні тільки прямим "спадкоємцям" цього класу.

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

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

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

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

Наприклад, за таким визначенням

class S: X{…};

клас S породжений класом X, звідки він успадковує компоненти.

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

Поле - це член даних, який містить екземпляр значущого типу або посилання на вказівниковий тип. Загальномовне середовище (CLR) підтримує поля які належать як класу (статичні) так і екземпляру (нестатичні). Динамічна пам'ять для зберігання статичного поля виділяється в межах обєкта класу, який створюється при його завантаженні. Динамічна пам'ять для збереження екземплярних полів виділяється при створенні екземпляра даного типу. [1]

3.3 Конструктори та деструктори. Успадкування класів

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

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

Конструктор за замовчуванням. Це конструктор, що викликається без параметрів:

Point ();(int a=5);

Його використовують для створення масиву обєктів, оскільки не зрозуміло, які конструктори і з якими параметрами треба викликати для кожного елемента масиву. Наприклад:

Point A [10];* B=new Point [10];

Конструктор за замовчуванням викликається також тоді, якщо не вказано параметри для ініціалізації обєкта, як у цьому випадку:

Point p;

Конструктор копіювання. Цей конструктор викликається тоді, коли потрібно створити копію обєкта. Аргументом цього конструктора має бути посилання на обєкт цього самого класу:

Point (Point& p);

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

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

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

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

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

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

Наприклад, за таким визначенням

class S: X, Y, Z {. };

клас S породжений класами X, Y, Z, звідки він успадковує компоненти. [2]

4. Побудова обєктної моделі

Для побудови об'єктної моделі даної системи необхідно виконати наступні етапи:

визначення об'єктів і класів;

-визначення залежностей між об'єктами;

визначення зв'язків;

-побудова діаграми ієрархії класів.

4.1 Визначення об'єктів та класів і звязків між ними

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

До стандартних класів, які будуть використовуватись в програмі належатимуть:

Форма 1 (Form1)

-Форма 2 (Form2)

Кнопки (Button)

Текстові блоки (textBox)

Конектори (oleDbConnection)

Мітки (Label)

Таблиця (DataGridView)

Також в програмі будуть використовуватися власні класи:

·Клас Персональні дані (PersonalData)

·Клас Робочі дані (JobData)

·Клас Співробітник (Emploee)

Після визначення класів нам потрібно виділити обєкти кожного з вище зазначених класів. Нижче наведено обєкти класів:

В класі Form2 наявні обєкти: обєкт класу Button, 8 обєктів класу label і 8 обєктів класу textbox, обєкт класу DataGridView і обєкт класів oleDbConnection та oleDbDataAdapter і обєкти класів PersonalData, JobData, Emploee.

Після того як ми визначилися з класами та обєктами нам потрібго визначити звзки між ними.

Між виділеними класами потрібно виділити явні і неявні звязки.

Між класами Form1 s Form2 існує звязок використання. Клас Form1 викликає інші класи на виконання.

Клас Form2 передає дані від обєктів класу textBox обєкту класу Emploee.

Клас Emploee передає дані отримані від класу Form2 обєкту класу oleDbConnection.

Класи JobData та PersonalData мають звязок агрегації з класом Emploee. Остальній утворюється внаслідок множинного успадкування від перших.

4.2 Побудова діаграми ієрархії класів

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

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

4.2.1 Діаграма класів

5. Реалізація програми в середовищі Visual Studio C++

Після дослідження предметної області, постановки завдання і побудови обєктної моделі можна приступити до реалізації програми на мові програмування. Нашу програму ми будемо реалізовувати в середовищі Visual Studio C++.

5.1 Інтерфейс програми

Для гарної роботи нашої майбутньої програми, вона повинна бути легкою у використанні. Щоб програмою могли користуватися будь-які користувачі, створюють графічний інтерфейс. В Visual Studio C++ інтерфейс програми створюється за допомогою простих маніпуляцій "мишкою". Для цього просто на панелі інструментів потрібно вибрати необхідний компонент і помістити його на робочу область.

Для початку створення програми відкриваємо середовище програмування Visual Studio C++ за допомогою піктограми на робочому столі компютера. В розділі створити вибираємо вкладку Windows Form і задаємо місце, де буде зберігатися наш проект. Після цих дій перед нами появиться середовище розробки зображене не рис. 5.1.1.

Рис. 5.1.1 Середовище розробки Visual Studio C++

Далі нам потрібно розробити інтерфейс програми. Для цього Форму1 помістимо компонент DataGridView з панелі інструментів і 3 компоненти Button. Так як наш проект буде зберігати дані в БД Access, то потрібно створити звязок БД з нашою програмою. Для цього вибираємо компонент oleDbDataAdapter. Після цього перед нами появиться майстер добавлення підключення де вказуємо шлях до нашої БД. Вікно майстра зображено на рис. 5.1.2.

Рис. 5.1.2 Вікно майстра добавлення підключення

Після того як ми створили інтерфейс програми і налаштували звязок з БД, можна перейти до програмування програми. Для цього вибираємо вкладку редактора коду і вводимо необхідні оператори. Лістинг коду Форми1 наведений в додатку 1.

Далі нам потрібно до нашого проекту додати 3 додаткові форми. Для цього потрібно вибрати наступні пункти: Проект->Додати новий елемент-> Форма Windows. Після цього аналогічним чином створюємо інтерфейс і програмуємо. Лістинг коду форми 2 наведені в додатках 2.

Оскільки наша програма містить користувацькі класи, потрібно до проекту також додати файл заголовків де будуть описані наші класи. Для цього виконуємо наступні команди: Проект->Додати клас. Перед нами появиться вікно де потрібно описати наші класи. Для початку описуємо клас PersonalData:

Розглянемо перший клас:

class PersonalData

{^PIB;^adress;^datnar;^tell;()

{="";="";="";="";

}get ()

{PD;^F2=gcnew Form2 ();. PIB=F2->textBox1->Text;. adress=F2->textBox3->Text;. datnar=F2->textBox2->Text;. tell=F2->textBox8->Text;->textBox1->Text="";->textBox2->Text="";->textBox3->Text="";->textBox8->Text="";

};

};

Цей клас містить в собі 4 атрибути типу System:: String, конструктор і один метод void get (). Метод void get () слугує для отримання значень від обєктів класів textbox.

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

class JobData

{()

{="";="";="";="";

}^osvita;^spec;^datvst;^ZP;get ()

{JD;^F2=gcnew Form2 ();=F2->textBox4->Text;=F2->textBox5->Text;=F2->textBox6->Text;=F2->textBox7->Text;->textBox4->Text="";->textBox5->Text="";->textBox6->Text="";->textBox7->Text="";

};

};

Від вище наведених класів внаслідок множинного успадкування утворюється клас Emploee:

class Emploee: PersonalData,JobData

{:(void);^PIB;^fdress;^datnar;^tell;^osvita;^spec;^datvst;^ZP;search ()

{^F2=gcnew Form2 ();->listBox1->Items->Clear ();j;:: String ^str;=F2->textBox1->Text;(j=0; j<F2->dataGridView1->RowCount; j++)

{=F2->dataGridView1->Rows [j] - >Cells [4] - >FormattedValue->ToString ();= F2->dataGridView1->Rows [j] - >Cells [3] - >FormattedValue->ToString ();= F2->dataGridView1->Rows [j] - >Cells [0] - >FormattedValue->ToString ();( (PIB==str) || (osvita==str) || (spec==str))

{= F2->dataGridView1->Rows [j] - >Cells [1] - >FormattedValue->ToString ();= F2->dataGridView1->Rows [j] - >Cells [2] - >FormattedValue->ToString ();= F2->dataGridView1->Rows [j] - >Cells [5] - >FormattedValue->ToString ();= F2->dataGridView1->Rows [j] - >Cells [7] - >FormattedValue->ToString ();= F2->dataGridView1->Rows [j] - >Cells [6] - >FormattedValue->ToString ();->listBox1->Items->Add ("ПІБ: "+PIB+" - "+datanar+" - адр. "+adress+" тел: "+tell);->listBox1->Items->Add ("Освіта: "+osvita+" Спеціальність: "+spec+" Дата прийняття: "+datavst+" Зарплата: "+ZP+" грн. ");

}

};get ()

{PD;JD;Em;. PIB=PD. PIB;. adress=PD. adress;. datnar=PD. datnar;. tell=PD. tell;. osvita=JD. osvita;. spec=JD. spec;. datvst=JD. datvst;. ZP=JD. ZP;

}set ()

{^F2=gcnew Form2 ();->oleDbConnection1->Open ();(textBox1->Text! ="")

{->oleDbDataAdapter1->InsertCommand->CommandText=L"INSERT INTO `Працівники` (`ПІБ`, `Дата народження`, `Дата влаштування`, `Освіта`, `Адрес`, `Спеціальність`, `Зарплата`, `Телефон`) VALUES ('"+Em. PIB+"','"+Em. datnar+"', '"+Em. datvst+"', '"+Em. osvita+"', '"+Em. adress+"', '"+Em. spec+"', '"+Em. ZP+"', '"+Em. tell+"')";->oleDbDataAdapter1->InsertCommand->ExecuteNonQuery ();

}->oleDbConnection1->Close ();

};

};

Цей клас містить в собі всі атрибути попередніх класів, а також три методи:

.Метод void search () відповідає за пошук інформації за такими критеріями: ПІБ, освіта, спеціальність

2.Метод void get () відповідає за отримання інформації від батьківських класів

.Метод void set () відповідає за збереження даних в БД

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

5.2 Тестування програми

Щоб переконатися що програма працює вірно при різних варіантах вхідних даних необхідно провести її тестування. Тестування надає можливості зробити висновки виконання проекту і виявити можливі несправності. Щоб розпочати тестування програми натискаємо на клавішу "F5". Після цього перед нами появиться вікно нашої програми. Вікно програми зображено на рис 5.2.1.

Рис. 5.2.1 Вікно програми.

Як видно з рисунка вище, наша програма відображає дані з БД, отже цей блок проекту працює вірно і жодних помилок не виникає. Далі перевіряємо процес добавлення нових даних. Для цього натискаємо кнопку "Прийняти працівника". Перед нами зявляється вікно де ми можемо вводити в задані поля інформацію. Скріншот вікна показаний на рис. 5.2.2.

Рис. 5.2.2 Вікно добавлення працівника

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

Рис.5.2.3 Вікно з добавленими даними

Завершальним кроком перевірки працездатності програми є перевірка функції пошуку. Для цього в поле вводу критерію вводимо дані для пошуку (даними можуть слугувати ПІБ співробітника, освіта чи спеціальність) і натискаємо клавішу "знайти працівника). Результати пошуку показані на рис. 5.2.4

Рис. 5.2.4 Результати пошуку

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

Висновок

В ході виконання завдання курсової роботи з обєктно-орієнтованого програмування, мною було вивчено базові конструкції мови програмування С++ з позиції обєктного програмування; використано на практиці знання отримані мною на заняттях з дисципліни "Обєктно-орієнтованого програмування"; розроблено і протестовано систему обліку співробітників, яка здійснює наступні функції: прийняття нового працівника, звільнення працівника та пошук працівника в базі за заданим критерієм, розвинено вміння використовувати основні принципи ООП і вміння працювати з класами та обєктами.

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

Список використаної літератури

1.Інформатика. Мова програмування С++. Спецкурс.10-12 класи. Навчальний посібник / Лєхан С.А. - Шепетівка, "Аспект", 2007 - 160 с.

2.Обєктно-орієнтоване програмування мовою С++, Навчальний посібник, Т. Є. Рак, Львів, 2011 - 401с

.Борис Пахомов - C C++ и MS Visual С++ 2010 для начинающих - БХВ-Петербург, 2011 - 736 с.

4.Сайт: www.google.com <#"center">Приложения

Додаток 1. Лістинг Form1

#pragma once

#include "Form2. h"

#include "Dani. h"kur {namespace System;namespace System:: ComponentModel;namespace System:: Collections;namespace System:: Windows:: Forms;namespace System:: Data;namespace System:: Drawing;ref class Form1: public System:: Windows:: Forms:: Form

{:(void)

{();

}:

~Form1 ()

{(components)

{components;

}

}: System:: Data:: OleDb:: OleDbCommand^ oleDbSelectCommand1;:: System:: Data:: OleDb:: OleDbConnection^ oleDbConnection1;: System:: Data:: OleDb:: OleDbCommand^ oleDbInsertCommand1;: System:: Data:: OleDb:: OleDbCommand^ oleDbUpdateCommand1;: System:: Data:: OleDb:: OleDbCommand^ oleDbDeleteCommand1;: System:: Data:: OleDb:: OleDbDataAdapter^ oleDbDataAdapter1;: System:: Data:: DataSet^ dataSet1;: System:: Data:: DataTable^ dataTable1;: System:: Data:: DataColumn^ dataColumn1;: System:: Data:: DataColumn^ dataColumn2;: System:: Data:: DataColumn^ dataColumn3;: System:: Data:: DataColumn^ dataColumn4;: System:: Data:: DataColumn^ dataColumn5;: System:: Data:: DataColumn^ dataColumn6;: System:: Data:: DataColumn^ dataColumn7;: System:: Data:: DataColumn^ dataColumn8;: System:: Windows:: Forms:: BindingSource^ bindingSource1;: System:: Windows:: Forms:: DataGridView^ dataGridView1;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ пІБDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ датаНародженняDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ адресDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ освітаDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ спеціальністьDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ датаВлаштуванняDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ зарплатаDataGridViewTextBoxColumn;: System:: Windows:: Forms:: DataGridViewTextBoxColumn^ телефонDataGridViewTextBoxColumn;: System:: Windows:: Forms:: Button^ button1;: System:: Windows:: Forms:: Button^ button2;: System:: Windows:: Forms:: Button^ button3;: System:: Windows:: Forms:: TextBox^ textBox1;: System:: Windows:: Forms:: Label^ label1;: System:: Windows:: Forms:: ListBox^ listBox1;: System:: Windows:: Forms:: Label^ label2;: System:: ComponentModel:: IContainer^ components;:

#pragma region Windows Form Designer generated codeInitializeComponent (void)

{>components = (gcnew System:: ComponentModel:: Container ());:: ComponentModel:: ComponentResourceManager^ resources = (gcnew System:: ComponentModel:: ComponentResourceManager (Form1:: typeid));>oleDbSelectCommand1 = (gcnew System:: Data:: OleDb:: OleDbCommand ());>oleDbConnection1 = (gcnew System:: Data:: OleDb:: OleDbConnection ());>oleDbInsertCommand1 = (gcnew System:: Data:: OleDb:: OleDbCommand ());>oleDbUpdateCommand1 = (gcnew System:: Data:: OleDb:: OleDbCommand ());>oleDbDeleteCommand1 = (gcnew System:: Data:: OleDb:: OleDbCommand ());>oleDbDataAdapter1 = (gcnew System:: Data:: OleDb:: OleDbDataAdapter ());>dataSet1 = (gcnew System:: Data:: DataSet ());>dataTable1 = (gcnew System:: Data:: DataTable ());>dataColumn1 = (gcnew System:: Data:: DataColumn ());>dataColumn2 = (gcnew System:: Data:: DataColumn ());>dataColumn3 = (gcnew System:: Data:: DataColumn ());>dataColumn4 = (gcnew System:: Data:: DataColumn ());>dataColumn5 = (gcnew System:: Data:: DataColumn ());>dataColumn6 = (gcnew System:: Data:: DataColumn ());>dataColumn7 = (gcnew System:: Data:: DataColumn ());>dataColumn8 = (gcnew System:: Data:: DataColumn ());>bindingSource1 = (gcnew System:: Windows:: Forms:: BindingSource (this->components));>dataGridView1 = (gcnew System:: Windows:: Forms:: DataGridView ());>пІБDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>датаНародженняDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>адресDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>освітаDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>спеціальністьDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>датаВлаштуванняDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>зарплатаDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>телефонDataGridViewTextBoxColumn = (gcnew System:: Windows:: Forms:: DataGridViewTextBoxColumn ());>button1 = (gcnew System:: Windows:: Forms:: Button ());>button2 = (gcnew System:: Windows:: Forms:: Button ());>button3 = (gcnew System:: Windows:: Forms:: Button ());>textBox1 = (gcnew System:: Windows:: Forms:: TextBox ());>label1 = (gcnew System:: Windows:: Forms:: Label ());>listBox1 = (gcnew System:: Windows:: Forms:: ListBox ());>label2 = (gcnew System:: Windows:: Forms:: Label ());

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->dataSet1)) - >BeginInit ();

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->dataTable1)) - >BeginInit ();

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->bindingSource1)) - >BeginInit ();

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->dataGridView1)) - >BeginInit ();>SuspendLayout ();

//

// oleDbSelectCommand1

// >oleDbSelectCommand1->CommandText = L"SELECT ПІБ, [Дата народження], [Дата влаштування], Адрес, Освіта, Спеціальність, ""Зарплата, Телефон, Код FROM Працівники";>oleDbSelectCommand1->Connection = this->oleDbConnection1;

//

// oleDbConnection1

// >oleDbConnection1->ConnectionString = L"Provider=Microsoft. Jet. OLEDB.4.0; Data Source=C: \\Users\\Андрій\\Desktop\\kur\\kur\\Прац""івники. mdb";

//

// oleDbInsertCommand1

// >oleDbInsertCommand1->CommandText = L"INSERT INTO `Працівники` (`ПІБ`, `Дата народження`, `Дата влаштування`, `Адрес`, ""`Освіта`, `Спеціальність`, `Зарплата`, `Телефон`) VALUES (\?, \?, \?, \?, \?, \?, \?, \?"")";>oleDbInsertCommand1->Connection = this->oleDbConnection1;>oleDbInsertCommand1->Parameters->AddRange (gcnew cli:: array< System:: Data:: OleDb:: OleDbParameter^ > (8) { (gcnew System:: Data:: OleDb:: OleDbParameter (L"ПІБ",:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"ПІБ")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Дата_народження", System:: Data:: OleDb:: OleDbType:: VarWChar,

, L"Дата народження")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Дата_влаштування", System:: Data:: OleDb:: OleDbType:: VarWChar,

, L"Дата влаштування")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Адрес", System:: Data:: OleDb:: OleDbType:: VarWChar,

, L"Адрес")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Освіта", System:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Освіта")),

(gcnew System:: Data:: OleDb:: OleDbParameter (L"Спеціальність", System:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Спеціальність")),

(gcnew System:: Data:: OleDb:: OleDbParameter (L"Зарплата", System:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Зарплата")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Телефон",:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Телефон")) });

//

// oleDbUpdateCommand1

// >oleDbUpdateCommand1->CommandText = resources->GetString (L"oleDbUpdateCommand1.commandText");>oleDbUpdateCommand1->Connection = this->oleDbConnection1;>oleDbUpdateCommand1->Parameters->AddRange (gcnew cli:: array< System:: Data:: OleDb:: OleDbParameter^ > (25) { (gcnew System:: Data:: OleDb:: OleDbParameter (L"ПІБ",:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"ПІБ")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Дата_народження", System:: Data:: OleDb:: OleDbType:: VarWChar,

, L"Дата народження")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Дата_влаштування", System:: Data:: OleDb:: OleDbType:: VarWChar,

, L"Дата влаштування")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Адрес", System:: Data:: OleDb:: OleDbType:: VarWChar,

, L"Адрес")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Освіта", System:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Освіта")),

(gcnew System:: Data:: OleDb:: OleDbParameter (L"Спеціальність", System:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Спеціальність")),

(gcnew System:: Data:: OleDb:: OleDbParameter (L"Зарплата", System:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Зарплата")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Телефон",:: Data:: OleDb:: OleDbType:: VarWChar, 0, L"Телефон")), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_ПІБ", System:: Data:: OleDb:: OleDbType:: Integer,

, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0), L"ПІБ", System:: Data:: DataRowVersion:: Original,, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_ПІБ", System:: Data:: OleDb:: OleDbType:: VarWChar, 0,System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0), L"ПІБ", System:: Data:: DataRowVersion:: Original,)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Дата_народження", System:: Data:: OleDb:: OleDbType:: Integer,

, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0), L"Дата народження",:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Дата_народження",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Дата народження", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Дата_влаштування",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Дата влаштування", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Дата_влаштування",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Дата влаштування", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Адрес",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Адрес", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Адрес",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Адрес", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Освіта",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Освіта", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Освіта",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Освіта", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Спеціальність",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Спеціальність", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Спеціальність",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Спеціальність", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Зарплата",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Зарплата", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Зарплата",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Зарплата", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Телефон",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Телефон", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Телефон",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Телефон", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Код",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Код", System:: Data:: DataRowVersion:: Original, nullptr)) });

//

// oleDbDeleteCommand1

// >oleDbDeleteCommand1->CommandText = resources->GetString (L"oleDbDeleteCommand1.commandText");>oleDbDeleteCommand1->Connection = this->oleDbConnection1;>oleDbDeleteCommand1->Parameters->AddRange (gcnew cli:: array< System:: Data:: OleDb:: OleDbParameter^ > (17) { (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_ПІБ",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"ПІБ", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_ПІБ",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"ПІБ", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Дата_народження",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Дата народження", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Дата_народження",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Дата народження", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Дата_влаштування",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Дата влаштування", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Дата_влаштування",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Дата влаштування", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Адрес",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Адрес", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Адрес",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Адрес", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Освіта",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Освіта", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Освіта",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Освіта", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Спеціальність",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Спеціальність", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Спеціальність",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Спеціальність", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Зарплата",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Зарплата", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Зарплата",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Зарплата", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"IsNull_Телефон",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, static_cast<System:: Byte> (0), static_cast<System:: Byte> (0),"Телефон", System:: Data:: DataRowVersion:: Original, true, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Телефон",:: Data:: OleDb:: OleDbType:: VarWChar, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Телефон", System:: Data:: DataRowVersion:: Original, nullptr)), (gcnew System:: Data:: OleDb:: OleDbParameter (L"Original_Код",:: Data:: OleDb:: OleDbType:: Integer, 0, System:: Data:: ParameterDirection:: Input, false, static_cast<System:: Byte> (0),_cast<System:: Byte> (0), L"Код", System:: Data:: DataRowVersion:: Original, nullptr)) });

//

// oleDbDataAdapter1

// >oleDbDataAdapter1->DeleteCommand = this->oleDbDeleteCommand1;>oleDbDataAdapter1->InsertCommand = this->oleDbInsertCommand1;>oleDbDataAdapter1->SelectCommand = this->oleDbSelectCommand1;:: array< System:: Data:: Common:: DataColumnMapping^ >^ __mcTemp__1 = gcnew cli:: array< System:: Data:: Common:: DataColumnMapping^ > (9) { (gcnew System:: Data:: Common:: DataColumnMapping (L"ПІБ","ПІБ")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Дата народження", L"Дата народження")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Дата влаштування","Дата влаштування")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Адрес", L"Адрес")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Освіта","Освіта")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Спеціальність", L"Спеціальність")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Зарплата","Зарплата")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Телефон", L"Телефон")), (gcnew System:: Data:: Common:: DataColumnMapping (L"Код","Код")) };>oleDbDataAdapter1->TableMappings->AddRange (gcnew cli:: array< System:: Data:: Common:: DataTableMapping^ > (1) { (gcnew System:: Data:: Common:: DataTableMapping (L"Table","Працівники", __mcTemp__1)) });>oleDbDataAdapter1->UpdateCommand = this->oleDbUpdateCommand1;

//

// dataSet1

// >dataSet1->DataSetName = L"NewDataSet";>dataSet1->Tables->AddRange (gcnew cli:: array< System:: Data:: DataTable^ > (1) {this->dataTable1});

//

// dataTable1

// >dataTable1->Columns->AddRange (gcnew cli:: array< System:: Data:: DataColumn^ > (8) {this->dataColumn1, this->dataColumn2,this->dataColumn3, this->dataColumn4, this->dataColumn5, this->dataColumn6, this->dataColumn7, this->dataColumn8});>dataTable1->TableName = L"Table1";

//

// dataColumn1

// >dataColumn1->ColumnName = L"ПІБ";

// dataColumn2

// >dataColumn2->ColumnName = L"Дата народження";

//

// dataColumn3

// >dataColumn3->Caption = L"Адреса";>dataColumn3->ColumnName = L"Адрес";

//

// dataColumn4

// >dataColumn4->ColumnName = L"Освіта";

//

// dataColumn5

// >dataColumn5->ColumnName = L"Спеціальність";

//

// dataColumn6

// >dataColumn6->ColumnName = L"Дата влаштування";

//

// dataColumn7

// >dataColumn7->ColumnName = L"Зарплата";

//

// dataColumn8

// >dataColumn8->ColumnName = L"Телефон";

//

// bindingSource1

// >bindingSource1->DataMember = L"Table1";>bindingSource1->DataSource = this->dataSet1;

//

// dataGridView1

// >dataGridView1->AutoGenerateColumns = false;>dataGridView1->ColumnHeadersHeightSizeMode = System:: Windows:: Forms:: DataGridViewColumnHeadersHeightSizeMode:: AutoSize;>dataGridView1->Columns->AddRange (gcnew cli:: array< System:: Windows:: Forms:: DataGridViewColumn^ > (8) {this->пІБDataGridViewTextBoxColumn,>датаНародженняDataGridViewTextBoxColumn, this->адресDataGridViewTextBoxColumn, this->освітаDataGridViewTextBoxColumn, this->спеціальністьDataGridViewTextBoxColumn,>датаВлаштуванняDataGridViewTextBoxColumn, this->зарплатаDataGridViewTextBoxColumn, this->телефонDataGridViewTextBoxColumn});>dataGridView1->DataSource = this->bindingSource1;>dataGridView1->Location = System:: Drawing:: Point (0, 0);>dataGridView1->Name = L"dataGridView1";>dataGridView1->Size = System:: Drawing:: Size (845, 462);>dataGridView1->TabIndex = 0;

//

// пІБDataGridViewTextBoxColumn

// >пІБDataGridViewTextBoxColumn->DataPropertyName = L"ПІБ";>пІБDataGridViewTextBoxColumn->HeaderText = L"ПІБ";>пІБDataGridViewTextBoxColumn->Name = L"пІБDataGridViewTextBoxColumn";

//

// датаНародженняDataGridViewTextBoxColumn

// >датаНародженняDataGridViewTextBoxColumn->DataPropertyName = L"Дата народження";>датаНародженняDataGridViewTextBoxColumn->HeaderText = L"Дата народження";>датаНародженняDataGridViewTextBoxColumn->Name = L"датаНародженняDataGridViewTextBoxColumn";

//

// адресDataGridViewTextBoxColumn

// >адресDataGridViewTextBoxColumn->DataPropertyName = L"Адрес";>адресDataGridViewTextBoxColumn->HeaderText = L"Адрес";>адресDataGridViewTextBoxColumn->Name = L"адресDataGridViewTextBoxColumn";

//

// освітаDataGridViewTextBoxColumn

// >освітаDataGridViewTextBoxColumn->DataPropertyName = L"Освіта";>освітаDataGridViewTextBoxColumn->HeaderText = L"Освіта";>освітаDataGridViewTextBoxColumn->Name = L"освітаDataGridViewTextBoxColumn";

//

// спеціальністьDataGridViewTextBoxColumn

// >спеціальністьDataGridViewTextBoxColumn->DataPropertyName = L"Спеціальність";>спеціальністьDataGridViewTextBoxColumn->HeaderText = L"Спеціальність";>спеціальністьDataGridViewTextBoxColumn->Name = L"спеціальністьDataGridViewTextBoxColumn";

//

// датаВлаштуванняDataGridViewTextBoxColumn

// >датаВлаштуванняDataGridViewTextBoxColumn->DataPropertyName = L"Дата влаштування";>датаВлаштуванняDataGridViewTextBoxColumn->HeaderText = L"Дата влаштування";>датаВлаштуванняDataGridViewTextBoxColumn->Name = L"датаВлаштуванняDataGridViewTextBoxColumn";

//

// зарплатаDataGridViewTextBoxColumn

// >зарплатаDataGridViewTextBoxColumn->DataPropertyName = L"Зарплата";>зарплатаDataGridViewTextBoxColumn->HeaderText = L"Зарплата";>зарплатаDataGridViewTextBoxColumn->Name = L"зарплатаDataGridViewTextBoxColumn";

//

// телефонDataGridViewTextBoxColumn

// >телефонDataGridViewTextBoxColumn->DataPropertyName = L"Телефон";>телефонDataGridViewTextBoxColumn->HeaderText = L"Телефон";>телефонDataGridViewTextBoxColumn->Name = L"телефонDataGridViewTextBoxColumn";

//

// button1

// >button1->Location = System:: Drawing:: Point (21, 483);>button1->Name = L"button1";>button1->Size = System:: Drawing:: Size (95, 38);>button1->TabIndex = 1;>button1->Text = L"Прийняти працівника";>button1->UseVisualStyleBackColor = true;>button1->Click += gcnew System:: EventHandler (this, &Form1:: button1_Click);

//

// button2

// >button2->Location = System:: Drawing:: Point (122, 483);>button2->Name = L"button2";>button2->Size = System:: Drawing:: Size (95, 38);>button2->TabIndex = 2;>button2->Text = L"Звільнити працівника";>button2->UseVisualStyleBackColor = true;>button2->Click += gcnew System:: EventHandler (this, &Form1:: button2_Click);

//

// button3

// >button3->Location = System:: Drawing:: Point (737, 483);>button3->Name = L"button3";>button3->Size = System:: Drawing:: Size (95, 38);>button3->TabIndex = 3;>button3->Text = L"Знайти працівника";>button3->UseVisualStyleBackColor = true;>button3->Click += gcnew System:: EventHandler (this, &Form1:: button3_Click);

//

// textBox1

// >textBox1->Location = System:: Drawing:: Point (466, 496);>textBox1->Name = L"textBox1";>textBox1->Size = System:: Drawing:: Size (244, 20);>textBox1->TabIndex = 4;

//

// label1

// >label1->AutoSize = true;>label1->Font = (gcnew System:: Drawing:: Font (L"Microsoft Sans Serif", 12, System:: Drawing:: FontStyle:: Regular, System:: Drawing:: GraphicsUnit:: Point,_cast<System:: Byte> (204)));>label1->Location = System:: Drawing:: Point (462, 473);>label1->Name = L"label1";>label1->Size = System:: Drawing:: Size (196, 20);>label1->TabIndex = 5;>label1->Text = L"Введіть критерій пошуку";

//

// listBox1

// >listBox1->FormattingEnabled = true;>listBox1->Location = System:: Drawing:: Point (21, 574);>listBox1->Name = L"listBox1";>listBox1->Size = System:: Drawing:: Size (796, 134);>listBox1->TabIndex = 6;

//

// label2

//

// Form1

// >AutoScaleDimensions = System:: Drawing:: SizeF (6, 13);>AutoScaleMode = System:: Windows:: Forms:: AutoScaleMode:: Font;>ClientSize = System:: Drawing:: Size (844, 532);>Controls->Add (this->label2);>Controls->Add (this->listBox1);>Controls->Add (this->label1);>Controls->Add (this->textBox1);>Controls->Add (this->button3);>Controls->Add (this->button2);>Controls->Add (this->button1);>Controls->Add (this->dataGridView1);>Name = L"Form1";>StartPosition = System:: Windows:: Forms:: FormStartPosition:: CenterScreen;>Text = L"Система обліку співробітників";>FormClosing += gcnew System:: Windows:: Forms:: FormClosingEventHandler (this, &Form1:: Form1_FormClosing);>Load += gcnew System:: EventHandler (this, &Form1:: Form1_Load);

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->dataSet1)) - >EndInit ();

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->dataTable1)) - >EndInit ();

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->bindingSource1)) - >EndInit ();

(cli:: safe_cast<System:: ComponentModel:: ISupportInitialize^ > (this->dataGridView1)) - >EndInit ();>ResumeLayout (false);>PerformLayout ();

}

#pragma endregion: System:: Void button1_Click (System:: Object^ sender, System:: EventArgs^ e)

{^F2=gcnew Form2 ();->ShowDialog ();

}: System:: Void button2_Click (System:: Object^ sender, System:: EventArgs^ e)

{i=dataGridView1->HitTestInfo->RowIndex->CellIndex;->Rows->RemoveAt (i);

}: System:: Void Form1_Load (System:: Object^ sender, System:: EventArgs^ e)

{->Fill (dataTable1);

}: System:: Void Form1_FormClosing (System:: Object^ sender, System:: Windows:: Forms:: FormClosingEventArgs^ e)

{->Update (dataTable1);

}: System:: Void button3_Click (System:: Object^ sender, System:: EventArgs^ e)

{Emp;. search ();

}

};

}

Додаток 2. Лістинг Form2

#pragma once

// #include "dani. h"kur{namespace System;namespace System:: ComponentModel;namespace System:: Collections;namespace System:: Windows:: Forms;namespace System:: Data;namespace System:: Drawing;namespace System:: Data:: OleDb;

// / <summary>

// / Сводка для Form2

// / </summary>ref class Form2: public System:: Windows:: Forms:: Form

{:(void)

{();

//

// TODO: добавьте код конструктора

//

}:

// / <summary>

// / Освободить все используемые ресурсы.

// / </summary>

~Form2 ()

{(components)

{components;

}

}: System:: Windows:: Forms:: Label^ label1;:: System:: Windows:: Forms:: TextBox^ textBox1;: System:: Windows:: Forms:: TextBox^ textBox2;: System:: Windows:: Forms:: Label^ label2;: System:: Windows:: Forms:: TextBox^ textBox3;: System:: Windows:: Forms:: Label^ label3;: System:: Windows:: Forms:: TextBox^ textBox4;: System:: Windows:: Forms:: Label^ label4;: System:: Windows:: Forms:: TextBox^ textBox5;: System:: Windows:: Forms:: Label^ label5;: System:: Windows:: Forms:: TextBox^ textBox6;: System:: Windows:: Forms:: Label^ label6;: System:: Windows:: Forms:: TextBox^ textBox7;: System:: Windows:: Forms:: Label^ label7;: System:: Windows:: Forms:: TextBox^ textBox8;: System:: Windows:: Forms:: Label^ label8;: System:: Windows:: Forms:: Button^ button1;: System:: Data:: OleDb:: OleDbCommand^ oleDbSelectCommand1;: System:: Data:: OleDb:: OleDbConnection^ oleDbConnection1;: System:: Data:: OleDb:: OleDbCommand^ oleDbInsertCommand1;: System:: Data:: OleDb:: OleDbCommand^ oleDbUpdateCommand1;: System:: Data:: OleDb:: OleDbCommand^ oleDbDeleteCommand1;: System:: Data:: OleDb:: OleDbDataAdapter^ oleDbDataAdapter1;: System:: Data:: DataSet^ dataSet1;: System:: Data:: DataTable^ dataTable1;: System:: Data:: DataColumn^ dataColumn1;: System:: Data:: DataColumn^ dataColumn2;: System:: Data:: DataColumn^ dataColumn3;: System:: Data:: DataColumn^ dataColumn4;: System:: Data:: DataColumn^ dataColumn5;: System:: Data:: DataColumn^ dataColumn6;: System:: Data:: DataColumn^ dataColumn7;: System:: Data:: DataColumn^ dataColumn8;:

// / <summary>

// / Требуется переменная конструктора.

// / </summary>:: ComponentModel:: Container ^components;

#pragma region Windows Form Designer generated code

// / <summary>

// / Обязательный метод для поддержки конструктора - не изменяйте

// / содержимое данного метода при помощи редактора кода.

// / </summary>InitializeComponent (void)

{

/*

Ініціалізація компонентів форми

*/

}

#pragma endregion: System:: Void button1_Click (System:: Object^ sender, System:: EventArgs^ e)

{Emp;PD;. get ();JD;. get ();. get ();set ();

}

};

}

Похожие работы на - Переходные характеристики регулятора

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!