Не отобразилась форма расчета стоимости? Переходи по ссылке

Не отобразилась форма расчета стоимости? Переходи по ссылке

Дипломная работа на тему «Автоматизация учебного процесса в высших учебных заведениях»

В данной работе рассмотрены основные проблемы автоматизации учебного процесса в высших учебных заведениях. Эти проблемы распространяются на все специальности вуза, но в качестве примера за основу взяты направления, связанные с разработкой ИТ. Несмотря на то, что вузы выпускают большое количество специалистов в этой области, многим компаниям и на многих предприятиях требуются квалифицированные специалисты.

Написание диплома за 10 дней

Введение

В данной работе рассмотрены основные проблемы автоматизации учебного процесса в высших учебных заведениях. Эти проблемы распространяются на все специальности вуза, но в качестве примера за основу взяты направления, связанные с разработкой ИТ. Несмотря на то, что вузы выпускают большое количество специалистов в этой области, многим компаниям и на многих предприятиях требуются квалифицированные специалисты. Бурное развитие техники и технологий постоянно опережает документированные в стандартах требования к профессиям и профессиональным компетенциям специалистов. Кроме того, разрывается связь между требованиями работодателей и теми компетенциями, которые студенты получают в системе образования. В результате у работодателей возникают проблемы с нехваткой работников, обладающих необходимым набором и уровнем компетенций. По этой причине в сфере образования происходят частые корректировки образовательных стандартов, учебных планов и программ, которые обеспечивают необходимую траекторию развития будущего специалиста на всех этапах его обучения.

Необходимость учета и согласования больших объёмов информации и постоянные изменения содержания высшего образования под воздействием требований и рекомендаций работодателей обусловливают актуальность создания автоматизированных средств разработки образовательных программ и учебных планов. Необходимо создание конструктивных механизмов, повышающих эффективность и снижающих издержки процесса подготовки и «сопряжения» образовательных программ и учебных планов с нормативными документами, регулирующими требования к квалификациям в сфере труда и в сфере образования. Чтобы из неопытного студента подготовить современного ИT-специалиста, нужно вести постоянный мониторинг за развитием высоких технологий, вести постоянное сотрудничество с работодателями и стараться максимально учитывать новые направления ИТ сферы в учебных программах и в образовательном процессе.

Внедрение автоматизированных информационных систем в этой сфере позволит комплексно подойти к решению задач, стоящих перед образованием, и обеспечить возможность обратной связи с работодателями. Многочисленные попытки автоматизировать процесс формирования учебного процесса ВУЗа успехов пока не принесли. Исследования в этой области продолжаются, что говорит об актуальности данного направления. Именно поэтому в данной работе рассмотрены аналоги, их достоинства и недостатки, а также собственные разработки для автоматизации некоторых компонентов учебного процесса. Надо заметить, что в ходе внедрения и использования автоматизированных систем возникают множество вопросов, требующих постоянного и глубокого осмысления и анализа. У каждого высшего учебного заведения имеются свои уникальные проблемы, и решать их одним методом невозможно. Универсальных моделей решения в этих случаях не существует. Из приведенных выше доводов вытекает, что разработка информационной системы для решения существующих проблем позволит упростить и ускорить сопряжение сферы труда и сферы образования и решить проблемы противоречивости документов этих сфер.

учебный документ интерфейс программа

1. Аналитический обзор

1.1 Анализ предметной области

Растущая потребность в информационной поддержке оперативного принятия управленческих решений в различных областях приводит к необходимости создания и внедрения автоматизированных информационных средств. Не является исключением и автоматизация процессов высших учебных учреждений. Главной задачей, стоящей перед высшими учебными заведениями, является формирование качественного учебного процесса. Рассмотрим образование как технологический процесс, в котором используются различные информационные технологии. Заметим, что любой технологический процесс, обычно стремятся автоматизировать с целью повышения качества и количества продукции. В нашем случае продукцией будут являться студенты, обладающие определенными качественными характеристиками, и в первую очередь, профессиональной компетентностью, формируемой в результате освоения дисциплины. Компетентностный подход — это как раз то решение, которое позволяет создать крепкую связь между системой образования и потребностями работодателей. У компетентностного подхода много положительных сторон. Наряду с требованиями к знаниям, появились требования к практическим навыкам. Произошел переход от знаний как основного результата образования к результату — компетенциям. Благодаря компетентностному подходу процесс получения знаний становится постоянным, который не останавливается при завершении определенного образовательного этапа. Так как человек получает образование непрерывно, тем самым он увеличивает свой потенциал и конкурентоспособность. В таком случае человек становится наиболее востребованным на рынке для нанимателей и получает шансы на более высокий достаток. То есть знание становится капиталом, а образование — как средство получения знания, к которому стремится человек. Другой положительной стороной является достижение открытости образовательных систем для работодателей. Благодаря этому предоставляется возможность увидеть, какими характеристиками обладает будущий сотрудник, получивший образование в определенном вузе.

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

Автоматизированные системы позволяют значительно упростить и автоматизировать большое количество внутренних процессов. Это неизбежно приводит к повышению эффективности работы и деятельности сторон, вовлеченных в образовательный процесс. Например, благодаря автоматизации, объединяются множество документов, составляющих одно целое, благодаря чему учебные планы и распределение нагрузки преподавателей рассматриваются в едином комплексе процессов формирования, что позволяет избежать ошибок несоответствия этих документов. Автоматизированные информационные системы и мероприятия по информатизации процедур управления учебным процессом способны помочь эффективно решить большинство задач, связанных с жизнедеятельностью ВУЗА, способны существенно улучшить качество управления и сократить его трудоемкость.

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

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

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

Во-вторых, это распределение нагрузки между учебными структурами и преподавательским составом.

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

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

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

В-шестых, это ведение справочной информации об учете зданий и помещений, которые находятся в составе ВУЗА.

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

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

Особенностью этих задач является то, что, с одной стороны, они являются глубоко взаимосвязанными, а с другой — они затрагивают интересы больших групп людей с различными, хотя и не противоположными, интересами. Надо заметить, что из списка решаемых задач, центральное место занимает управление учебными планами. Качественные учебные планы значительно облегчают выполнение всех основных задач управления учебным процессом. Вместе с тем нельзя не отметить, что учебный план обладает весьма сложной структурой. В стандартах третьего поколения ситуация дополнительно усложняется в связи с введением компетентностного подхода.

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

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

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

    • Федеральные государственные образовательные стандарты (ФГОС).

 

    • Основные профессиональные образовательные программы (ОПОП).

 

    Примерные основные общеобразовательные программы (ПООП).

ФГОС — комплекс неотъемлемых требований к образованию определенного уровня, к профессии, специальности и направленности подготовки, утвержденных федеральным органом исполнительной власти, которая осуществляет различные функции в сфере образования. Главная задача ФГОС — обеспечение целостности образовательного пространства Российской Федерации.

ОПОП высшего образования (ВО) представляет собой комплекс документов, который разработан и утвержден высшим учебным учреждением. ОПОП учитывает потребности рынка труда и регион, где находится учебное заведение. ОПОП так же учитывает соответствующие отраслевые требования на основе ФГОС ВО по различным направлениям подготовки, а также рекомендации учебно-методического объединения ПООП ВО.

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

ОПОП ВО включает в себя следующие документы:

    • Рабочий учебный план.

 

    • Рабочие программы учебных курсов.

 

    • Программу учебной практики.

 

    • Программу производственной практики.

 

    • Календарный учебный график.

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

    Методические материалы и др.

Все эти компоненты обеспечивают качество подготовки обучающихся и будущих выпускников ВУЗа.

Если говорит про ПООП ВО, то она занимает промежуточное место между ФГОС ВО и ОПОП ВО. Цель ПООП ВО — предложение вузам возможного варианта ОПОП ВО.

ПООП содержит в себе:

    • Список профилей.

 

    • Направления подготовки выпускника.

 

    Требования к результатам освоения основной образовательной программы.

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

Современным методологическим инструментарием в формировании ФГОС ВО и реализующих их ОПОП ВО является компетентностный подход. Язык компетенций позволяет решить большинство задач связанных с образованием и сделать системы высшего профессионального образования прозрачными, сравнимыми и сопоставимыми. Компетенция включает в себя следующие понятия:

    • Знание.

 

    • Способность применять полученные знания.

 

    Способность применять приобретенные навыки.

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

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

 

    • к выполнению каких функций выпускник должен быть подготовлен;

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

    степень готовности выпускника к выполнению конкретных функций.

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

    • Общекультурные (ОК) или универсальные (УК) компетенции.

 

    • Общепрофессиональные компетенции (ОПК).

 

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

 

    Профессионально-специализированные компетенции (ПСК).

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

Учитывая все это, кафедра выполняет следующие операции:

    • Составление учебного плана.

 

    • Распределение нормы нагрузки.

 

    • Составление расписания занятий за семестр.

 

    Составление рабочей программы учебной дисциплины (РПД).

РПД является обязательной составной частью ООП. РПД направлена на подготовку определенного специалиста и представляет собой базовый учебно-методический документ. РПД разрабатывается для каждой дисциплины учебного плана, которые существуют в университете.

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

1.2 Анализ аналогов

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

В настоящее время рынок систем автоматизации образовательных учреждений достаточно насыщен и на нем представлены специализированные решения для учебных заведений, которые изначально разрабатывались с учетом российских законов об образовании, специфики процессов образования. Ниже представлены системы автоматизации деятельности учебных заведений:

    • Информационная система «Планы».

 

    «Магеллан».

«ИРТех <#»justify»>Продукты ООО «Электронная школа».
LMS «Школа».
«КМ-Школа».
Программы ООО «Хронобус».
АИС «Интеграл».
Автоматизированная Система Управления «Спрут».
Система комплексной автоматизации учебного процесса «GS-Ведомости».

«Softlogic.Eureka <#»justify»>Решение «ВУЗ-Документооборот».
«Аксиома».
«Галактика Управление вузом».

«Naumen University» — система управления учебным процессом <#»justify»>Информационная система «Orgflow-ВУЗ».

«Комкон:ВУЗ <#»justify»>Комплекс «Ковчег».
«Система учета абитуриентов» и «Система учета студентов» «Тауруна».
«Университетская информационная система» «Softmotions».
«Управление образовательным учреждением» «Infosuite».

Рассмотрим более подробно некоторые системы из вышеприведенного списка, а также, какой функционал они предлагают.

Структура системы «GS-Ведомости» состоит из отдельных модулей, т.е функции системы «GS-Ведомости» распределены между отдельными частями системы. Но надо заметить, что при этом вся информация, сопровождающая процессы внутри учебного заведения, находится в единой базе данных. Учебное заведение может выбирать различный состав модулей.

Система «GS-Ведомости» позволяет:

    • Сократить время и повысить эффективность планирования и управления деятельностью учебного учреждения.

 

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

 

    • Получить необходимую информацию о студенте и проследить за его успеваемостью

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

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

 

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

 

    Обеспечить связь между лицами вовлеченных в учебный процесс с помощью web-технологий в режиме on-line.

В состав «GS-Ведомости» входят следующие модули:

«Абитуриент <#»justify»>Для создания отчетов применяется мощный и в то же время простой для разработки инструмент «FastReport».

В качестве следующего аналога автоматизированных систем возьмем решение «Галактика Управление Вузом». Система так же состоит из модулей, как и система «GS-Ведомости». Благодаря модульной структуре, при настройке может быть выбран нужный функционал системы. «Галактика Управление Вузом» позволяет решать многочисленные задачи, которые связанны с образовательной, научной и другой деятельностью вуза.

Из множества существующих модулей, рассмотрим наиболее важный и отличающий данный аналог от других систем модуль. Модуль «Учебный процесс» предназначен для планирования и автоматизации учебного процесса вуза и позволяет осуществлять:

    • Работу с набором регламентирующих образовательный процесс стандартов второго (ГОС ВПО) и третьего поколения (ФГОС ВПО).

 

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

 

    • Выполнять расчет нагрузки кафедр и распределять ее по профессорско-преподавательскому составу. Может выполняться корректировка нагрузки в соответствии с внесенными изменениями в учебные планы.

 

    • Планировать штат сотрудников кафедр.

 

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

Рассмотрим информационную систему «Планы ВПО». Данная система также решает комплекс задач, связанных с организацией учебного процесса для различных уровней образования и форм обучения. Программный комплекс «Планы ВПО» предназначен для создания, хранения и обработки учебных планов специальностей. На рисунке 1.1 представлен интерфейс системы «Планы ВПО» при составлении учебных планов.

Рис. 1.1 — Создание, хранение и обработка учебных планов специальностей

Использование системы «Планы ВПО» позволяет полностью автоматизировать процесс создания учебных планов специальностей. Программный комплекс «Планы ВПО» содержит механизм проверки корректности составления учебного плана. Если измененный учебный план по каким-либо параметрам расходится с государственным стандартом специальности, то программа выдает сообщение об ошибке. Таким образом, программа позволяет контролировать изменения, внесенные в учебные планы.

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

Используемые в программном комплексе «Планы ВПО» средства делают его простым в изучении и в работе, а встроенный механизм анализа корректности составления учебного плана полностью исключает наличие ошибок, которые могут привести к нарушениям учебного процесса. Кроме того, программа не допускает расхождений составленного учебного плана с государственным стандартом специальности. «Планы ВПО» также позволяет автоматизировать разработку РПД, являющихся неотъемлемыми компонентами учебно-методических комплексов дисциплин.

Данная программа позволяет производить следующие операции:

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

 

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

 

    • формировать печатные формы статистических и аналитических отчетов.

 

    • Проводить проверку соответствия содержимого Рабочего учебного плана нормативным документам;

 

    • Проводить проверку преемственности и согласованности по родственным специальностям;

 

    • Проводить проверку корректности данных и орфографии в названиях дисциплин;

 

    • Производить экспорт и импорт данных с использованием открытого XML формата;

 

    • создавать РПД на базе учебного плана любой формы обучения, предоставляя удобный интерфейс для заполнения содержательной части рабочей программы;

 

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

 

    Качественный результат достигается перекрестным контролем всеми заинтересованными сторонами: кафедрами, деканатами, учебным управлением.

В качестве следующего аналога возьмем продукт под названием «ГОС-Мастер». Он не вошел вышерасположенный список систем автоматизации деятельности учебных заведений, так как предназначен для поддержки оперативного принятия управленческих решений в органах государственной власти. Будем рассматривать систему «ГОС-Мастер» в качестве технологического аналога. Главной особенностью и главной причиной, по которой система «ГОС-Мастер» была взята в качестве аналога, является возможность системы работать с классификаторами разных объектов и упорядочить элементы по многоуровнему классификатору и связывать их.

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

«ГОС-Мастер» является развитым инструментом, который позволяет описать не только структуру органа власти в виде иерархически упорядоченной системы функций и организационных звеньев, а также создавать отношения между этими компонентами.

В основе программного средства «ГОС-Мастер» лежат два основных инструмента:

    • Классификаторы.

 

    Проекции.

Классификаторы позволяют описать поэлементный состав понятий, их атрибуты и иерархически упорядочить входящие в них элементы. На рисунке 1.2 приведен пример классификатора.

Рис. 1.2 — Пример классификатора

Проекции устанавливают связи между понятиями, зафиксированными в классификаторах. На рисунке 1.3 представлены три способа установления связей между элементами классификаторов с помощью проекций.

Рис. 1.3 — Схема формирования связей между классификаторами в проекции

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

На рисунке 1.4 представлен пример установления связи между классификаторами.

Рис. 1.4 — Пример связи классификаторов «Государственные функции»

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

1.3 Анализ автоматизируемых при разработке учебных планов функций

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

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

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

 

    • выбрать наиболее значимые трудовые функции;

 

    при необходимости на основе выбранных трудовых функций составить обобщенный перечень задач профессиональной деятельности выпускника образовательной программы высшего образования и сопоставить его с ФГОС.

Вышеперечисленные операции можно изобразить в виде таблицы (таблица 1.1).

Таблица 1.1 — Сопоставление профессиональных задач ФГОС и трудовых функций ПС

Требования ФГОС ВОТребования ПСПрофессиональные задачиОбобщенные трудовые функции (ОТФ), трудовые функции (ТФ)

Для нашей системы также необходимо формирование перечня компетенций, вносимых в ОПОП дополнительно к компетенциям ФГОС ВО. При использовании ПС для формирования расширенного перечня профессиональных компетенций образовательной программы необходимо:

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

 

    • проанализировать описание характеристик обобщенных трудовых функций всех ПС, используемых для разработки образовательных программ;

 

    • отобрать наиболее значимые для конкретного проекта образовательной программы трудовые функции;

 

    • проанализировать сформулированные в ПС квалификационные требования к выбранным трудовым функциям;

 

    составить на основе отобранных единиц профессионального стандарта и квалификационных требований к ним перечень профессиональных компетенций.

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

Так же оформим эти действия в виде таблицы (таблица 1.2).

Таблица 1.2 — Сопоставление профессиональных компетенций ФГОС и трудовых функций ПС

Требования ФГОС ВОТребования ПСПрофессиональные компетенции по каждому ВДТрудовые функции по каждой ОТФ и квалификационные требования к ним, сформулированные в ПС

Надо заметить, что ВУЗ может изменять и расширять компетенции в соответствии с идеологией последнего поколения федеральных государственных образовательных стандартов. Также нельзя забывать, что при учете требований работодателей к профессиональным квалификациям будущих работников возникает ряд проблем. В первую очередь к ним относятся понятийно-терминологические расхождения сферы труда и сферы образования. Это происходит во многом из-за того, что документы, регулирующие развитие сфер труда и образования, разрабатываются разными ведомствами. В сфере труда и в сфере образования часто применяются термины, имеющие разную смысловую нагрузку, однако, несмотря на различия в определениях, имеются сопоставимые термины:

    • «вид трудовой деятельности» из профессиональных стандартов и «основной вид профессиональной деятельности» из федеральных государственных образовательных стандартов;

 

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

Функция учета взаимосвязи трудовой деятельности, трудовых функций, профессиональных компетенций, профессиональных задач в интерпретации различных стандартов необходима и представляет интерес для всех вовлеченных в этот процесс сторон. Например, в основной профессиональной образовательной программе высшего образования и учебном плане прослеживается связь между дисциплинами и набором компетенций. В свою очередь, в рабочей программе учебной дисциплины существует связь между компетенцией и основными темами дисциплины. С другой стороны, должны учитываться требования профессиональных стандартов. В них представлены трудовые функции по различным профессиям, трудовые действия, знания и умения, которыми должен владеть сотрудник. Нечто похожее существует и в ФГОС. Это профессиональные задачи в соответствии с видами профессиональной деятельности, которые должен решать студент.

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

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

 

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

 

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

 

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

 

    • формировать структурные элементы текста и таблиц в профессиональной образовательной программе и рабочей программе учебной дисциплины;

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

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

 

    • производить всевозможные выборки данных;

 

    генерировать разнообразные отчёты.

На основании приведенных возможностей системы, выделим основные задачи, которые будут решаться в рамках ВКР. Но для начала составим диаграмму вариантов использования (use-case) для разрабатываемой системы. Диаграмма вариантов использования является исходным концептуальным представлением системы в процессе ее проектирования и разработки.

Разработка диаграммы вариантов использования преследует цели:

    • Определить общие границы моделируемой предметной области;

 

    • Сформулировать общие требования к функциональному поведению проектируемой системы;

 

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

Суть данной диаграммы состоит в следующем: проектируемая система представляется в виде множества сущностей или актеров, взаимодействующих с системой с помощью так называемых вариантов использования. При этом актером (actor) или действующим лицом называется любая сущность, взаимодействующая с системой извне. Вариант использования (use case) служит для описания сервисов, которые система предоставляет актеру. Каждый вариант использования определяет некоторый набор действий, совершаемый системой при диалоге с актером. Use case диаграмма разрабатываемой системы приведена на рисунке 1.5.

Рис. 1.5 Упрощенная Use case диаграмма

На представленной use case диаграмме в качестве актера был выделен пользователь, которым может быть любой сотрудник кафедры, участвующий в формировании учебного процесса, а так же варианты использования системы.

Учитывая варианты использования, приведенные на диаграмме, выделим возможности, необходимые для работы системы:

    • Ведение справочников кафедр, специальностей, видов связанных профессий и пр.

 

    • Ведение справочников профессиональных компетенций, профессионального стандарта.

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

    • Составление классификатора, связывающего (обобщенные) профессиональные задачи с профессиональными компетенциями и профессиональными задачами.

 

    • Фильтрация данных классификатора.

 

    Составление отчетов по классификатору.

 

2. Разработка

2.1 Определение целевого сегмента пользователей

Подобные информационные системы в первую очередь рассчитаны на лица, которые вовлечены в сферу образования. К ним относятся заведующие кафедрами, преподаватели, методисты и другие сотрудники, которые участвуют в формирование учебного процесса в ВУЗе. Их функция состоит в формировании учебных курсов, своевременное их обновление и корректировка, слежение за обновлением документов ФГОС и ПС и их сопоставление.

Именно поэтому, для сферы образования программа предоставляет возможность:

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

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

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

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

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

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

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

Пользователи, для работы с программным продуктом, могут обладать минимальными познаниями в сфере ИТ технологий. Именно поэтому разработанный программный продукт имеет дружественный, простой и эстетически привлекательный интерфейс. Интерфейс программного продукта не должен отвлекать внимание пользователя от задач, выполняемых им.

2.2 Разработка структуры базы данных

Для начала построим концептуальную модель базы данных. Цель построения концептуальной модели (КМ) для предметной области — это разработка высокоуровневой модели предметной области в виде совокупности взаимосвязанных сущностей, атрибутов и связей. Необходимо, чтобы концептуальная модель адекватно отображала реалии той предметной области, для которой она разрабатывается. Первым этапом построения концептуальной модели является построение локальных концептуальных моделей для каждой задачи в отдельности.

В качестве основы деления на части будем использовать перечень функций, который уже определен, т.е для каждой функции (задачи) создается своя собственная локальная КМ. Затем эти локальные КМ объединяются в общую (глобальную) модель. Для идентификации задач программного продукта используем идентификатор КМ и порядковый номер задачи. В качестве задач будем брать необходимые возможности для работы системы.

КМ1 — Ведение справочников кафедр, специальностей, видов связанных профессий и пр.

КМ2 — Ведение справочников профессиональных компетенций, профессионального стандарта.

КМ3 — Составление классификатора, связывающего (обобщенные) профессиональные задачи с профессиональными компетенциями и профессиональными задачами.

КМ4 — Фильтрация данных классификатора.

КМ5 — Составление отчетов по классификатору.

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

КМ1 для задачи 1 изображена на рисунке 2.1.

Рис. 2.1 — Локальная концептуальная модель для задачи 1

КМ2 — КМ5 и общая (глобальная) концептуальная модель

Описание сущностей концептуальной модели приведено в таблице 2.1.

Таблица 2.1 — Описание сущностей

№ п/пИмя сущностиОписаниеОсобенности использованияНомера задач, в которых используются сущности1КафедраНазвания существующих кафедрУчёт кафедр — справочник12СпециальностьСпециальности, которые существуют на кафедреУчёт специальностей — справочник13ПрофессияПрофессии, к которым готовит кафедраУчёт профессий — справочник1,2,3,4,54Виды профессиональной деятельностиНазвания видов профессиональной деятельностиВыбор между двумя видами профессиональной деятельности: прикладной и академической. Справочник создается единожды на стадии внедрения1,2,3,4,55Обобщенная трудовая функцияНаименование функций прессующих определенной профессиональной деятельностиУчет обобщенных трудовых функций взятых определенном образом из профессионального стандарта. Справочник.1,2,3,4,56Трудовая функцияНаименования функций прессующих обобщенной трудовой деятельности определенного профессионального стандартаСодержит список, который более подробно описывает каждую обобщенную трудовою функцию. Справочник.2,3,4,57Типы уточнений к трудовым функциямНаименования существующих типов по каждой трудовойУчёт информации о типах таких, как: трудовые действия, необходимые умения, необходимые знания. Свойства которыми должен владеть сотрудник Выбор только между этими тремя понятиями.2,58Уточнения к трудовой функцииСписок описаний каждого типаПозволяет дать определение и описать каждый тип свойств взятого из профессионального стандарта2,59ПрофкомпетенцияНаименование профессиональной компетенцииНабор профессиональных компетенций, которыми должен владеть выпускник. Берутся каким либо образом из ФГОС.2,3,4,510ПрофзадачаНаименование профессиональных задачНабор профессиональных задач, которые должен решать выпускник. Берутся каким либо образом из ФГОС.2,3,4,511Профкомпетенция_(Обобщенная) трудовая функцияСодержит id связи между профессиональной компетенцией и (Обобщенной) трудовой функциейСвязь между компонентами создается с помощью классификатора и заносится в БД. Связь происходить между id компонентов. Связь так же нужна для составление отчетов по классификатору.3,4,512Профзадача (Обобщенная трудовая функцияСодержит id связи между профессиональной задачей и (Обобщенной) трудовой функциейСвязь между компонентами создается с помощью классификатора и заносится в БД. Связь происходить между id компонентов. Связь так же нужна для составление отчетов по классификатору.3,4,5

Атрибуты сущностей концептуальной модели описаны в таблице 2.2.

Таблица 2.2 — Описание атрибутов сущностей

№Имя сущностиИмя атрибутаОписаниеТип данных, длинаЗначение по ум.NULL1КафедраId КафедрыУникальный идентификаторЦелочисленное значениеНетНет2НазваниеНазвание кафедрыСимвольный 100НетНет3Короткое названиеСокращенное название кафедрыСимвольный 10NULLДа4СпециальностьId специальностиУникальный идентификаторЦелочисленное значениеНетНет5НазваниеНазвание специальностиСимвольный 100НетНет6Короткое названиеСокращенное название специальностиСимвольный 10NULLДа7Id кафедрыК какой кафедре относитсяЦелочисленное значениеНетНет8ПрофессияId профессииУникальный идентификатор профессииЦелочисленное значениеНетНет9НазваниеНазвание ПрофессииСимвольный 100НетНет10Id специальностиId специальности к которой относится профессияЦелочисленное значениеНетНет11Id профессионального вида деятельностиId вида профессиональной деятельности, к которой относится профессия(1- академический,2- прикладной)Целочисленное значениеНетНет12Виды профессиональной деятельности Id вида профессиональной деятельностиУникальный идентификаторЦелочисленное значениеНетНет13НазваниеНазвание вида профессиональной деятельностиСимвольный, 30НетНет14Обобщенная трудовая функция (ОТФ)Id ОТФУникальный идентификаторЦелочисленное значениеНетНет15Название ОТФНазвание ОТФСимвольный, 300НетНет16Id профессииК какой профессии относится ОТФЦелочисленное значениеНетНет17Трудовая функция (ТФ)Id ТФУникальный идентификаторЦелочисленное значениеНетНет

Для описанных выше атрибутов определим домены (таблица 2.3).

Таблица 2.3 — Описание доменов

№ п/пИмя доменаХарактеристики доменаПримеры допустимых значений1Id КафедрыЦелое число12НазваниеСтрока длиною в 100 символовАвтоматики и вычислительной техники3Короткое названиеСтрока длиною в 10 символовАВТ4Id специальностиЦелое число25НазваниеСтрока длиною в 100 символовУправление и информатика в технических системах6Короткое названиеСтрока длиною в 10 символовЭМ7Id профессииЦелое число38НазваниеСтрока длиною в 100 символовПрограммист9Id профессионального вида деятельностиЦелое число410НазваниеСтрока длиною в 30 символовПрикладной11Id ОТФЦелое число512Название ОТФСтрока длиною в 300 символовРазработка и отладка программного кода13Id ТФЦелое число614Название ТФСтрока длиною в 300 символовФормализация и алгоритмизация поставленных задач15Id типа ТФЦелое число716Название типаСтрока длиною в 30 символовТрудовые действия17Id уточнения к ТФЦелое число818НазваниеСтрока длиною в 300 символовИспользовать программные продукты для графического отображения алгоритмов19Id ПрофкомпетенцииЦелое число920НазваниеСтрока длиною в 300 символовспособностью понимать и применять в исследовательской и прикладной деятельности современный математический аппарат (ПК-3);21Id (ПЗ)Целое число1022НазваниеСтрока длиною в 200 символовисследование автоматизированных систем и средств обработки информации, средств администрирования и методов управления безопасностью компьютерных сетей;23Общее Id ПК и ТФЧисловое значение11

Описание ключей сущностей концептуальной модели приведено в таблице 2.4.

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

Таблица 2.4 — Описание ключей

№ п/пИмя сущностиПервичный ключ1КафедрыId Кафедры2СпециальностьId специальности3ПрофессияId профессии4Виды профессиональной деятельностиId вида профессиональной деятельности5Обобщенная трудовая функция (ОТФ)Id ОТФ6Трудовая функция (ТФ)Id ТФ7Типы уточнений к трудовым функциямId типа ТФ8Уточнения к трудовой функцииId уточнения к ТФ9Профкомпетенция (ПК)Id Профкомпетенции10Профзадача (ПЗ)Id (ПЗ)11Профкомпетенция_(Обобщенная) трудовая функцияОбщее Id ПК и ТФ12Профзадача_(Обобщенная) трудовая функцияОбщее Id ПК и ТФ

В таблице 2.5 описаны связи между сущностями.

Таблица 2.5 — Описание связей

№ п/пТип сущностиТип связиТип сущностиОтношение1КафедраРазбит наСпециальность1:N2СпециальностьРазделяется наПрофессия1:N3ПрофессияТребованияОбобщенная трудовая функция1:N4ПрофессияРазделяется поВиды профессиональной деятельности1:N5Обобщенная трудовая функцияУточняетсяТрудовая функция1:N6Трудовая функцияУточняетсяУточнения к трудовой функции1:N7Уточнения к трудовой функцииПодразделяютсяТипы уточнений к трудовым функциям1:N8Виды профессиональной деятельностиТребованияПрофзадача1:N9Виды профессиональной деятельностиТребованияПрофкомпетенция1:N10ПрофзадачаВходитПрофзадача_(Обобщенная) трудовая функция1:N11ПрофкомпетенцияВходитПрофкомпетенция_(Обобщенная) трудовая функция1:N

Чтобы не загромождать схему, были описаны только основные компоненты структуры БД.

Для того, чтобы ЛМ БД находилась в первой нормальной форме, необходимо, чтобы все атрибуты отношений ЛМ были единичными или атомарными. В полученной логической модели все отношения являются атомарными, т.о. логическая модель находится в первой нормальной форме.

Для того, чтобы отношения ЛМ БД находились во второй нормальной форме, они должны находится в первой нормальной форме и необходимо, чтобы все атрибуты любого отношения ЛМ БД были полностью зависимы от ключа отношения. В представленной логической модели атрибуты отношений полностью зависят от своих ключей. Следовательно, все отношения логической модели находятся во второй нормальной форме.

Для того, чтобы отношения ЛМ БД находились в третьей нормальной форме, необходимо, чтобы для отношений ЛМ выполнялись условие нахождения во второй нормальной форме, а также во всех отношениях между атрибутами любого отношения ЛМ отсутствовали транзитивные связи. В отношениях представленной ЛМ БД отсутствуют транзитивные связи, поэтому можно сказать, что отношения находятся в третьей нормальной форме. Представленная модель ЛМ БД находится в третьей нормальной форме.

Описания отношений логической модели базы данных представлены в таблицах 2.6 — 2.17.

Таблица 2.6 — Описание отношения «Кафедры»

№Имя атрибутаТип атрибута ОписаниеТип данных, длинаДопустимость NULLПроизводный1IDПерв. ключУникальный идентификатор Целочисленное значениеНетНет2НаименованиеПростойНазвание кафедрыСимвольный, 100НетНет3Сокращенное наименованиеПростойСокращенное название кафедрыСимвольный, 10NULLДа

Таблица 2.7 — Описание отношения «Специальности»

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

№Имя атрибутаТип атрибутаОписаниеТип данных, длинаДопустимость NULLПроизводный1IDПерв. КлючУникальный идентификаторЦелочисленное значениеНетНет2НаименованиеПростойНазвание специальностиСимвольный, 100НетНет3Сокращенное наименованиеПростойСокращенное название специальностиСимвольный, 10NULLДа4ID кафедрыВнешний ключК какой кафедре относитсяЦелочисленное значениеНетНет

Таблица 2.8 — Описание отношения «Профессии»

№Имя атрибутаТип атрибута ОписаниеТип данных, длинаДопустимость NULLПроизводный1IDПерв. ключУникальный идентификатор профессииЦелочисленное значениеНетНет2НаименованиеПростойНазвание ПрофессииСимвольный, 100НетНет3ID СпециальностиВнешний ключId специальности к которой относится профессияЦелочисленное значениеНетНет4ID Вида профессиональной деятельностиВнешний ключId вида профессиональной деятельности, к которой относится профессия (1- академический,2- прикладной)Целочисленное значениеНетНет

Таблица 2.9 — Описание отношения «Профессиональные компетенции»

№Имя атрибутаТип атрибутаОписаниеТип данных, длинаДопустимость NULLПроизводный1Id Перв. ключУникальный идентификаторЦелочисленное значениеНетНет2НаименованиеПростойНаименование ПКСимвольный, 300НетНет3ID Вида профессиональной деятельностиВнешний ключК какому типу относится ПКЦелочисленное значениеНетНет4ID специальностиВнешний ключК какой специальности относится ПКЦелочисленное значениеНетНет

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

В СУБД Microsoft SQL server 2008 будут использованы типы данных, представленные в таблице.

Таблица 2.10 — Описание типов данных

ТипОписание значенияintЦелое число в диапазоне: -2147483648…2147483647nvarcharСтроковые данные переменной длины в Юникоде. Длина строки может иметь значение от 1 до 4000. Максимальный размер при хранении составляет 2 ГБ. Размер хранилища в байтах вдвое больше числа введенных символов + 2 байта. bitЦелочисленный тип данных, который может принимать значения 1, 0 или NULL.

2.3 Разработка структуры отчетных документов

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

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

Для конструирования различных документов в приложении будем использовать мощную библиотеку компонентов для создания отчётов любой сложности, построенный на базе генератора отчётов FastReport, как в приведенном выше аналоге GS-Ведомости.

Рассмотрим непосредственно те компоненты, которые использовались при разработке системы.- основной компонент, генератор отчета. В design-time двойной щелчок на компоненте открывает дизайнер, где можно составить необходимый документ по определенной форме и сохранить его в файл с расширением fr3 для дальнейшего использования.- источник данных для отчета, ориентированный на данные из таблицы БД или запроса. Для этого у компонента имеется свойство DataSet, которое ссылается на данные таблицы или запроса., TfrPDFExport — компоненты для экспорта отчета в формат rtf или pdf.

После создания необходимых связей межу компонентами система позволяет составить следующие отчеты:

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

 

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

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

    • профессиональные компетенции, сгруппированные по трудовым функциям;

 

    трудовые функции, сгруппированные по профессиональным компетенциям.

Отчеты можно сразу вывести на печать или экспортировать в такие форматы как:

    • RTF.

 

    • Excel (OLE).

 

    PDF.

 

2.4 Дизайн интерфейса

Обычно технология ведения автоматизированного учета предполагает выполнение подготовительного этапа по вводу нормативно-справочной информации. В нашем случае к ней относятся названия кафедр, направлений подготовки, видов профессиональной деятельности. Заполнение таких справочников предполагается при помощи ручного ввода, так как количество действий минимально. Эти данные необходимы для оформления различных документов и включения в них справочных сведений. Такие справочники используются для формирования списков возможных значений и для организации предоставления данных пользователю для аналитики и выявления связей между образовательными и профессиональными стандартами. Состав и структура справочников закладываются на начальном этапе конфигурирования системы. Пользователю необходимо научиться работать с существующими справочниками — добавлять в них новые элементы и удалять ненужные. Существуют и более сложные конструкции данных, где ввод информации утомителен и занимает много времени. К ним относятся:

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

 

    справочник профессиональных стандартов.

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

    • обобщенная трудовая функция;

 

    • набор трудовых функций входящих в обобщенную трудовую функцию;

 

    трудовые действия, необходимые умения и необходимые знания, входящие в каждую трудовую функцию.

Структура знаний в рамках ОТФ существенно отличается от структуры ФГОС и основной профессиональной образовательной программы. Чтобы облегчить работу с такими структурами предоставления данных, необходима разработка и реализация механизмов получения информации из текстов ФГОС и профессиональных стандартов. Для пользователей это необходимо сделать максимально просто, чтобы работа была понятна на интуитивном уровне. Предлагается реализация с использованием системного буфера обмена, как при работе с обычным текстовым документом, и ввода скопированной информации в нашу систему.

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

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

Для создания качественного интерфейса в первую очередь необходимо соблюдать интересы пользователя. Но данный принцип относится не только к интерфейсу, а должен применяться при разработке всего программного продукта. В некоторых источниках для такого подхода используется понятие UCD (User-centered Design), что с перевода на русский означает — «Разработка, ориентированная на пользователя». Такая технология подразумевает проектирование интерфейса на более ранних этапах с последующим его развитием в процессе разработки самого программного продукта. Пользователь должен всегда чувствовать, что именно он управляет программой, а не программа управляет им. Для того чтобы обеспечить такое ощущение у пользователя, необходимо обеспечить интерфейс следующими свойствами:

Во-первых, это естественность интерфейса. Естественный интерфейс не вынуждает пользователя существенно изменять привычные для него способы решения задачи. Это значит, что сообщения и результаты, выдаваемые программным продуктом, не должны требовать дополнительных пояснений и пользователь должен понимать алгоритм работы на интуитивном уровне. Целесообразно также создать некоторую систему обозначений и терминов, которые включены и используются в программном продукте в определенной предметной области.

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

В — третьих, это создание дружественного интерфейса. Обычно, пользователь, при изучении особенностей механизмов работы с новым программным продуктом, пользуется методом проб и ошибок. Эффективный интерфейс должен реагировать и на это. На каждом этапе работы он должен позволять пользователю совершать только те действия, которые необходимы для работы. Эффективный интерфейс должен выдавать сообщения с предупреждением, если пользователь своими действиями может повредить систему. Но самым лучшим вариантом является возможность вернуться к исправной версии или отменить действия пользователя.

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

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

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

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

Обычно, каждая из частей пользовательского интерфейса системы состоит из набора пунктов меню и механизмов, которые пользователь выбирает для выполнения определенных действий. Для начала работы с системой будет необходимо подключится к базе данных. Создадим два окна. В окне «Сервер», необходимо будет вести название сервера. Во втором окне необходимо будет ввести название созданной базы данных. Пользовательский интерфейс для главной формы должен обеспечивать пользователю решение следующих задач:

    • Выбор необходимого справочника для заполнения.

 

    • Выбор кафедры.

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

    • Выбор специальности.

 

    • Выбор вида профессиональной деятельности.

 

    • Выбор профессиональной деятельности.

 

    • Создания связей между профессиональными задачами, профессиональными стандартами и профессиональными компетенциями.

 

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

Для наглядности, главное меню формы будет состоять только из двух пунктов меню:

    1. «Справочники», который содержит в себе 5 видов справочников:

 

    1. Федеральные государственные образовательные стандарты.

 

    1. Профессиональные стандарты.

 

    1. Кафедры.

 

    1. Специальности.

 

    1. Профессиональная деятельность.

 

    Справка, в которой необходимо привести информацию о разработчике.

Пользовательский интерфейс справочника ФГОС должен обеспечивать пользователю решение следующих задач:

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

    • Выбор необходимой кафедры, специальности, вида профессиональной деятельности.

 

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

Как видно из структуры формы, добавлена два окна, «тип» и «описание» профессиональных задач или профессиональных компетенций.

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

 

    • Предполагается, что данная возможность позволяет в удобном виде получить информацию из документов и структурировать ее. На рисунке 2.2 представлен механизм взятия информации о профессиональной деятельности выпускника из документа ФГОС, с помощью буфера обмена и стандартных механизмов Microsoft office, т.е. копирование необходимой информации и последующее ее занесение в форму приложения.

Рис. 2.2 — Получение информации из текстового документа ФГОС
Произведение необходимых изменений в названии профессиональных задач и профессиональных компетенций.
Удаление устаревших или ненужных профессиональных задач и профессиональных компетенций.

При выборе справочника «профессиональные стандарты» нужно создать очередную форму, интерфейс которой представлен на рисунке 2.3.

Рис. 2.3 — Форма справочника профессиональных стандартов

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

    • Выбор необходимой кафедры, специальности, вида профессиональной деятельности. Необходима возможность выбора профессиональной деятельности.

 

    • Ручное добавление обобщенных трудовых функций и трудовых функций. Структура формы при этом уже была представлена на рисунке 2.19.

 

    • Добавление из буфера обмена обобщенных трудовых функций и трудовых функций.

 

    • Произведение необходимых изменений в названии обобщенных трудовых функций и трудовых функций.

 

    Удаление устаревших или ненужных профессиональных задач и профессиональных компетенций

Но так как структура ПС очень сложная и обеспечить отображение всей информации без вреда для эстетической привлекательности интерфейса невозможно, было принято решение о добавлении дополнительной формы. Данная форма вызывается по двойному клику по нужной трудовой функции. Решается еще одна задача:

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

    • Описание каждой трудовой функции, и автоматическое разбиение этого описания на трудовые действия, необходимые умения, необходимые знания.

 

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

 

    • Внесение изменений в описание трудовой функции.

 

    Удаление описания трудовой функции.

Данная форма будущего приложения представлена на рисунке 2.4.

Рис. 2.4 — Дополнительной форма

При выборе справочника «кафедра» будет появляться форма, структура которой представлена на рисунке 2.5.

Рис. 2.5 — Структура справочника «Кафедра»

Интерфейс данной формы достаточно прост для понимания, даже при первом его использовании пользователем. Несмотря на его простоту, по логике будущей программы, справочник должен заполняется в первую очередь, так как информация о кафедре является основной частью программы и без этой информации невозможна последующая работа системы. Необходимо ввести полное название, а так же сокращенный вариант названия кафедры. При попытке добавления, изменения или удаления кафедры, необходимо организовать появление формы, структура которой представлена на рисунке 2.6.

Рис. 2.6 — Структура формы при попытке добавления, изменения или удаления

Следующим важным компонентом является справочник «Специальности». Структура данного справочника приведена на рисунке 2.7.

Рис. 2.7 — Структура справочника «Специальности»

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

Третьим справочником, который необходимо заполнить является справочник «профессиональная деятельность». Структура справочника представлена на рисунке 2.9.

Рис. 2.8 — Структура справочника «профессиональная деятельность»

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

После заполнения всех справочников можно приступать к созданию взаимосвязей между главными компонентами системы. Чтобы пользователь понимал, с каким объектом он работает, необходимо обеспечить принцип обратной связи. В отличии от технологического аналога «Гос — Мастер», где связка объектов происходит «стрелками», для эстетической привлекательности будем выделять компоненты различными цветовыми оттенками. Структурная схема при создании взаимосвязей компонентов будет выглядеть следующим образом (рисунок 2.9).

Рис. 2.9 — Структурная схема при создании взаимосвязей

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

3. Реализация

3.1 Исходные тесты с комментариями, скриншоты экранных форм

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

Среда разработки программного обеспечения C++ Builder 6 версии. C++ Builder — программный продукт, инструмент быстрой разработки приложений, интегрированная среда программирования, система, используемая программистами для разработки программного обеспечения на языке программирования C++. C++ Builder объединяет в себе комплекс объектных библиотек (STL, VCL, CLX, MFC и др.), компилятор, отладчик, редактор кода и многие другие компоненты. Большинство компонентов, разработанных в Delphi, можно использовать и в C++ Builder без модификации, но обратное утверждение не верно. C++ Builder содержит инструменты, которые при помощи drag-and-drop действительно делают разработку визуальной, упрощает программирование, благодаря встроенному WYSIWYG — редактору интерфейса и пр. Drag-and-drop — способ оперирования элементами интерфейса в интерфейсах пользователя при помощи манипулятора «мышь» или сенсорного экрана. WYSIWYG — свойство прикладных программ или веб — интерфейсов, в которых содержание отображается в процессе редактирования и выглядит максимально близко похожим на конечную продукцию, которая может быть печатным документом, веб — страницей или презентацией. В настоящее время для подобных программ также широко используется понятие «визуальный редактор».SQL Server 2008 Express является бесплатным выпуском SQL Server и представляет собой идеальную платформу данных для обучения и создания небольших серверных приложений, которые могут распространяться независимыми поставщиками программного обеспечения. Microsoft SQL Server 2008 Express — это мощная и надежная система управления данными, обеспечивающая множество функций, защиту данных и высокую производительность для внедренных приложений — клиентов, «легких» веб — приложений и локальных хранилищ данных. SQL Server 2008 Express предназначен для упрощенного развертывания и быстрого создания прототипов. Так же его можно получить бесплатно и свободно распространять вместе с приложениями. Он разработан таким образом, чтобы полностью интегрироваться с другими продуктами, входящими в серверную инфраструктуру.

Генератор отчетов FastReport 4.0 от FastReport Inc. FastReport — программный продукт, основанный на технологии COM+, который предоставляет сторонним разработчикам возможность использовать свои компоненты в привычных для них средах разработки: C++ Builder, Delphi, Visual C++, C# и других. При этом разработчик получает возможность использовать связь с различными СУБД (MS SQL, Oracle, MS Access, FoxPro и так далее) и встраивать ядро FastReport в оболочки своего программного продукта.

Библиотека EhLib включает в себя компоненты и классы для Borland Delphi версии 5, 6, 7, 8, 2005, 2006, 2007 и Borland C++ Builder версии 5, 6 Borland Developer Studio 2006, CodeGear Delphi 2007, RAD Studio 2009, Embarcadero RAD Studio 2010, RAD Studio XE & RAD Studio XE2 и предназначена для расширения функциональности клиентской части приложений, работающей с БД: вывод, печать и занесения данных конечным пользователем.Manager for SQL Server версии 4.1.1 — это высокопроизводительная программа для разработки и администрирования баз данных сервера Microsoft SQL. SQL Manager работает со всеми версиями SQL Server, начиная с версии 2000, и поддерживает все новейшие возможности SQL Server, включая последовательности, индексы columnstore и пространственные индексы, FileTables, автономные базы данных, пользовательские серверные роли и многое другое. Программа включает в себя множество инструментов, таких как визуальный конструктор баз данных, который позволяет быстро разрабатывать базы данных SQL Server, визуальный конструктор запросов для построения сложных запросов к SQL Server и множество других полезных инструментов для эффективного администрирования и разработки SQL Server. Современный, графический интерфейс и оптимальная система мастеров настроек будут понятны даже новичку.

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

Все компоненты, необходимые для работы с определёнными модулями системы, расположены на формах, что повышает наглядность и упрощает работу с данными. Формы манипулирования данными загружаются после нажатия пользователем кнопок, соответствующих определённому действию (добавление записи, редактирование, удаление).

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

Модуль «Main» — представляет из себя главную форму приложения, в который выполняется главный механизм программы по установлению взаимосвязей. На рисунке 3.1 представлено окно главной формы.

Рис. 3.1 — Окно главного модуля «Main»

«Specialities» — «Специальности», позволяет добавлять, изменять, удалять специальности, вводить полное и сокращенное название. На рисунке 3.2 представлен вид окна модуля «Specialities».

Рис. 3.2 — Вид окна модуля «Specialities»

В C++ Builder используется компонент «DataModule» — невидимая форма доступа к данным, на которой располагаются основные компоненты работы с БД. Другими словами, «DataModule» — это некий контейнер для компонентов доступа к данным. Использование этого компонента позволяет разместить все необходимые компоненты в одном месте, а не по всему проекту. Можно одновременно использовать и несколько компонентов «DataModule» — один для таблиц, другой — для запросов и отчетов, например для использования «FastReport». Так же «DataModule» снижает риск в определенный момент потерять все невизуальные компоненты, которые располагаются на формах приложения и случайно создать новые, что в свою очередь займет лишнюю память. На рисунке 3.3 представлен вид окна модуля «DataModule» и все компоненты расположенные на нем.

Рис. 3.3 — Вид окна модуля «DataModule»

«Departments» — «Кафедры», позволяет добавлять, изменять, удалять кафедры, вводить полное и сокращенное название. На рисунке 3.4 представлен вид окна модуля «Departments».

Рис. 3.4 — Окно модуля «Departments»

«ProfessionTypes» — «Профессиональная деятельность», позволяет добавлять, изменять, удалять профессиональную деятельность, вводить её название. На рисунке 3.5 представлен вид окна модуля «ProfessionTypes».

Рис. 3.5 — Окно модуля «ProfessionTypes»

«FGOS» — «ФГОС», позволяет добавлять, изменять, удалять, пользоваться специальными механизмами вставки, вводить названия профессиональных задач и профессиональных компетенций. На рисунке 3.6 представлены основные компоненты окна модуля «FGOS».

Рис. 3.6 — Окно модуля «FGOS»

«PS» — «ПС» позволяет добавлять, изменять, удалять, пользоваться специальными механизмами вставки, вводить названия обобщенных трудовых функций и трудовых функций. На рисунке 3.7 представлены основные компоненты окна модуля «PS».

Рис. 3.7 — Окно модуля «PS»

«ChangeDepartment» и «ChangeSpeciality» позволяют изменять названия кафедры и название специальности, если это необходимо. На рисунках 3.8 и 3.9 представлен вид окон модулей «ChangeDepartment» и «ChangeSpeciality».

Рис. 3.8 — Окно модуля «ChangeDepartment»

Рис. 3.9 — Окно модуля «ChangeSpeciality»

«ChangePZK» и «ChangeOTF» позволяют изменять содержательное описание профессиональных знаний и профессиональных компетенций. На рисунках 3.10 и 3.11 представлен вид окон модулей «ChangePZK» и «ChangeOTF».

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

Рис. 3.10 — Окно модуля «ChangeOTF»

Рис. 3.11 — Окно модуля «ChangePZK»

«TFDetails» позволяет добавлять, пользоваться специальным механизмом вставки, изменять и удалять описание каждой трудовой функции. На рисунке 3.12 представлен вид окна модуля «TFDetails».

Рис. 3.12 — Окно модуля «TFDetails»

«ChangeTFDetails». Данная форма появляется при нажатии кнопки «Изменить» на предыдущей форме. «ChangeTFDetails» позволяет произвести нужные изменения. На рисунке 3.13 представлен вид окна модуля «ChangeTFDetails».

Модуль «Connection» позволяет подключится к серверу и базе данных, а так же записать данные подключения в специальный файл «setting». Так же при возникновении непредвиденных ситуаций (неправильное имя сервера или базы данных и др.), модуль позволяет приложению произвести закрытие, показав сообщение об ошибке. На рисунке 3.14 представлен вид окна модуля «Connection».

Рис. 3.13 — Окно модуля «ChangeTFDetails»

Рис. 3.14 — Окно модуля «Connection»

Все исходные коды вышеперечисленных модулей представлены в приложении А.

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

3.2 Руководство пользователя

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

Разработанная система предназначена для оптимизации технологии принятия управленческих решений по созданию взаимосвязей между сферой труда и сферой образования на основе информации о всех аспектах содержащихся в основных нормативных документах этих сфер. Разработанная система предоставляет возможность работы с документами ФГОС и ПС. Система позволяет вести справочники кафедр, специальностей, видов связанных профессий, профессиональных компетенций, профессиональных стандартов. Данная система позволяет составлять классификаторы, связывающие (обобщенные) профессиональные задачи с профессиональными компетенциями и профессиональными задачами. Так же система позволяет производить фильтрацию данных классификатора. Имеется возможность вести работу с отчетностью, а именно составлять отчеты по классификатору. Данная система позволяет получать четыре вида отчетов, два из которых описывают взаимосвязь ПС с профессиональными компетенциями, а два остальных описывают взаимосвязь ПС с профессиональными задачами.

Пользователь системы должен иметь опыт работы с ОС MS Windows (95/98/NT/2000/XP/2007), иметь базовые представления по работе Microsoft Word (2003/XP/2007/2010/2010/2013/2016), а также по возможности обладать следующими знаниями:

    • знать соответствующую предметную область;

 

    • знать основы многомерного анализа;

 

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

Квалификация пользователя должна позволять:

    • формировать отчеты;

 

    осуществлять анализ данных.

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

Для работы с системой необходимо следующее программное обеспечение:

    Windows XP/Vista/7/ 8/10 и Microsoft SQL Server 2008.

 

4. Теститрование

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

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

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

 

    • ведение справочников (добавление, редактирование, удаление и поиск информации);

 

    • механизм поиска определений;

 

    проверка работы механизма вставки информации из документов.

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

    • Набор тестовых исходных данных.

 

    • Эталон для проверки.

 

    • Процедуру проверки.

 

    Результат проверки в виде экранных форм.

Тест № 1 заключается в добавлении записей в справочник «Профессиональная деятельность». Варианты состояния системы до выполнения теста № 1:

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

 

    • таблицы пусты.

 

    • Варианты исходных данных:

 

    • а) Набор корректных данных: выбрана кафедра, специальность, вид профессиональной деятельности.

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

    • б) Набор некорректных данных: попытка добавления записи о профессиональной деятельности без выбора кафедры, специальности, вида профессиональной деятельности.

 

    • Эталоны для проверки результатов после выполнения теста № 1:

 

    • а) при вводе корректных данных:

 

    • в справочник успешна добавлена профессиональная деятельность (рисунок 4.1).

Рис. 4.1 — Успешное добавление профессиональной деятельности

б) при вводе некорректных данных:
на экран выведено предупреждающее сообщение о том, что добавление профессиональной деятельности невозможно (рисунок 4.2).
Тест № 1 был выполнен успешно.
Тест № 2 заключается в доступе пользователя к системе. Варианты состояния системы до выполнения теста № 2:
система не подключена к серверу;
система не подключена к базе данных.

Варианты исходных данных:

а) Набор корректных данных: Имя сервера MS SQL Server «HOME-PC» и имя базы данных «StudyLoad».

б) Набор некорректных данных: Имя сервера MS SQL Server «PC», имя базы данных «BD».

Рис. 4.2 — Добавление профессиональной деятельности невозможно

Эталоны для проверки результатов после выполнения теста № 2:

а) при вводе корректных данных:

    • перед пользователем появилась главная форма приложения;

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

    • система подключена к базе данных;

 

    система подключена к серверу;

б) при вводе некорректных данных:

    • на экран выведено сообщение об ошибках;

 

    система не подключена к серверу (рисунок 4.3);

Рис. 4.3 — Система не подключена к серверу

    • система не подключена к базе данных (рисунок 4.4)

Рис. 4.4 — Система не подключена к базе данных

Тест № 2 выполнен успешно
Тест № 3 заключается в редактировании записи справочника ФГОС. Варианты состояния системы до выполнения теста № 3:
В справочнике ФГОС, в поле профессиональная компетентность, имеется некоторая запись, которую надо изменить (рисунок 4.5).

Рис. 4.5 — Выбор записи для изменения

Варианты исходных данных:
а) Набор корректных данных: редактирование записи о компетенции, с занесением некоторых поправок (рисунок 4.6).

Рис. 4.6 — редактирование записи о компетенции

б) Набор некорректных данных: редактирование записи о компетенции, при этом поле остается пустым.
Эталоны для проверки результатов после выполнения теста № 3:
а) при вводе корректных данных:
Редактирование записи о компетенции завершается успешно, в зависимости от введенных в поле поправок (рисунок 4.7)

Рис. 4.7 — Успешное завершение редактирования

б) при вводе некорректных данных:
окно редактирования не закрывается до тех пор, пока не будут введены данные или не будет закрыто окно с первоначальными данными (рисунок 4.8).

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

Рис. 4.8 — Неуспешное завершение редактирования

Тест № 3 выполнен успешно.
Тест № 4 заключается в удаление записи из справочника. Варианты состояния системы до выполнения теста № 4:
Имеется заполненная форма, но необходимо удалить запись о профессиональной компетенции в связи с выходом новой трактовки определения (рисунок 4.9).

Рис. 4.9 — Выбор записи для удаления

Варианты исходных данных:
а) Набор корректных данных: удаление записи о компетенции и вывод окна с вопросом о удалении.
б) Набор некорректных данных: нет, т.к. исключительных ситуаций возникнуть не может.
Эталоны для проверки результатов после выполнения теста № 4:
на экране появляется окно подтверждения удаления записи (рисунок 4.10);

Рис. 4.10 — Подтверждение удаления

при подтверждении запись удаляется, и таблица выглядит так, как показано на рисунке 4.11.

Рис. 4.11 — Успешное удаление записи

Тест № 4 выполнен успешно.
Тест № 5 заключается в поиске определения в таблице профессиональных задач с использованием фильтра по описанию. Варианты состояния системы до выполнения теста № 5:
В главной форме отображена таблица профессиональных задач, при этом фильтр пустой (рисунок 4.12).

Рис. 4.12 — Успешное удаление записи ПЗ

Варианты исходных данных:
а) набор корректных данных: фильтрация таблицы по существующим символам имеющихся в таблице;
б) набор некорректных данных: фильтрация таблицы по несуществующем в таблице символам.
Эталоны для проверки результатов после выполнения теста № 5:
а) при корректных данных:
таблица отфильтрована по выбранным символам и показаны похожие результаты (рисунок 4.13);
после удаления символов из фильтра, таблица возвращена в исходное состояние
б) при некорректных данных:
в таблице не выведено ни одной записи (рисунок 4.16).

Рис. 4.13 — Правильная работа фильтра

Рис. 4.14 — Неправильные данные в фильтре

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

Тест № 5 выполнен успешно.
Тест № 6 заключается в вставке из буфера обмена информации из ПС в форму «Трудовые функции. Детали». Варианты состояния системы до выполнения теста № 6:
В справочнике уже имеется трудовая функция и необходимо ввести её описание.
Варианты исходных данных:
а) набор корректных данных: вставка правильной структуры входных данных из ПС (рисунок 4.15)

Рис. 4.15 — Правильная структура для занесения в буфер обмена

б) Набор некорректных данных: вставка неправильной структуры входных данных (рисунок 4.16)

Рис. 4.16 — Неправильная структура для занесения в буфер обмена

Эталоны для проверки результатов после выполнения теста № 5:
а) при корректных данных:
Заполнение справочника и его правильное формирование и отображение (рисунок 4.17)

Рис. 4.17 — Отображение справочника

б) при некорректных данных:
в таблице не выведено ни одной записи (рисунок 4.18).

Рис. 4.18 — Неправильное отображение справочника

Вывод ошибки (рисунок 4.19)

Рис. 4.19 — Вывод ошибки

Тест № 6 выполнен успешно
Представленные выше результаты тестирования функций системы подтверждают правильность её реализации. На основе функционального тестирования можно сделать вывод, что реализованные в системе функции соответствуют постановке задачи на создание информационной системы.

5. Внедрение

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

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

Таким образом, программа была написана, опробована автором и научным руководителем. В систему заносился определенный объём данных, была проведена работа с этими данными, их коррекция, удаление, связывание различных данных, были получили отчеты.

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

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

6. Защита информации

Информационная безопасность — это процесс обеспечения конфиденциальности, целостности и доступности информации.

конфиденциальность <https://ru.wikipedia.org/wiki/Конфиденциальность> — состояние информации, при котором доступ к ней осуществляют только субъекты, имеющие на неё право;

доступность <https://ru.wikipedia.org/wiki/Доступность_информации> — избежание временного или постоянного сокрытия информации от пользователей, получивших права доступа.

целостность <https://ru.wikipedia.org/wiki/Целостность_информации> — избежание несанкционированной модификации информации;

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

Требуется защита только с точки зрения целостности.

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

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

    • целостность ссылок;

 

    целостность сущностей.

Требование целостности сущностей заключается в следующем: каждый кортеж любого отношения должен отличатся от любого другого кортежа этого отношения (т.е. любое отношение должно обладать первичным ключом). Вполне очевидно, что если данное требование не соблюдается (т.е. кортежи в рамках одного отношения не уникальны), то в базе данных может хранится противоречивая информация об одном и том же объекте. Поддержание целостности сущностей обеспечивается средствами системы управления базой данных (СУБД). Это осуществляется с помощью двух ограничений:

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

 

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

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

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

Заключение

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

Далее была спроектирована структура системы. В качестве средств реализации было использовано средство разработки Builder C++. На основе поставленной задачи были спроектированы: структура системы, структура базы данных, структура программного обеспечения и разработан пользовательский интерфейс.

Завершающей стадией создания системы были реализация и испытание системы. Результаты испытаний подтвердили корректность работы системы.

Созданная система предназначена для решения следующих задач:

    • Ведение справочников кафедр, специальностей, видов связанных профессий и пр.

 

    • Ведение справочников профессиональных компетенций, профессионального стандарта.

 

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

    • Составление классификатора, связывающего (обобщенные) профессиональные задачи с профкомпетенциями и профессиональными задачами.

 

    • Фильтрация данных классификатора.

 

    Составление отчетов по классификатору.

Основные идеи и результаты разработки представлены в докладах и публикациях:

    • Международная научная конференция «Молодые исследователи — регионам».

 

    • Межрегиональная научная конференция IX ежегодной научной сессии аспирантов и молодых ученых.

 

    IV Международная научно-практическая конференция «Современные образовательные технологии в мировом учебно-воспитательном пространстве».

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

    • Создание словаря синонимов основных понятий стандартов и документов.

 

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

 

Список литературы

1.Ежегодная научная сессия аспирантов и молодых ученых: Материалы Межрегиональной научной конференции IX ежегодной научной сессии аспирантов и молодых ученых. В 2-х т. — Вологда, 2015. — Т. 1. — 570 с.

2.Современные образовательные технологии в мировом учебно-воспитательном пространстве: сборник материалов IV Международной научно-практической конференции. — Новосибирск: Издательство ЦРНС, 2016. — 166 с.

.Профессиональные стандарты в области ИТ. [Электронный ресурс]: — Режим доступа: #»justify»>Приложение А

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

(обязательное)

Листинг программы.cpp

#include

#pragma hdrstop

#include «ChangeDepartment.h»

#include «DataModule.h»

#pragma package(smart_init)

#pragma resource «*.dfm»*fChangeDepartment;

__fastcall TfChangeDepartment::TfChangeDepartment(TComponent* Owner)(Owner)

{

}__fastcall TfChangeDepartment::Button1Click(TObject *Sender)

{

if ((Trim(full_name->Text) != «») && (Trim(short_name->Text) != «»)) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «ChangeDepartment;1»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = ID;

dm->qCommonProc->Parameters->ParamValues[«@full_name»] = Trim(full_name->Text);

dm->qCommonProc->Parameters->ParamValues[«@short_name»] = Trim(short_name->Text);>qCommonProc->ExecProc();

if (ID == 0)

ID = dm->qCommonProc->Parameters->ParamValues[«@ins_id»];

dm->qCommonProc->Active = false;

inserted = true;

Close();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}__fastcall TfChangeDepartment::Button2Click(TObject *Sender)

{

inserted = false;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

Close();

}__fastcall TfChangeDepartment::FormActivate(TObject *Sender)

{

inserted = false;

}

    ChangePZK.cpp

#include

#pragma hdrstop

#include «ChangePZK.h»

#include «DataModule.h»

#pragma package(smart_init)

#pragma resource «*.dfm»*fChangePZK;TfChangePZK::TfChangePZK(TComponent* Owner)(Owner)

{

}__fastcall TfChangePZK::Button2Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

inserted = false;

Close();

}__fastcall TfChangePZK::Button1Click(TObject *Sender)

{

if (Trim(name_->Text) != «») {

try {

dm->qCommonProc->Close();

if (PZ)

dm->qCommonProc->ProcedureName = «ChangePZ»;

else

dm->qCommonProc->ProcedureName = «ChangePK»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@name»] = Trim(name_->Text);

dm->qCommonProc->Parameters->ParamValues[«@id»] = ID;

dm->qCommonProc->Parameters->ParamValues[«@proftype_id»] = prof_id;

dm->qCommonProc->Parameters->ParamValues[«@speciality_id»] = spec_id;

dm->qCommonProc->ExecProc();(ID == 0) {

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

ins_id = dm->qCommonProc->Parameters->ParamValues[«@ins_id»];

inserted = true;

}

dm->qCommonProc->Close();

Close();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}__fastcall TfChangePZK::FormActivate(TObject *Sender)

{

inserted = false;

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

    ChangeSpeciality.cpp

#include

#pragma hdrstop

#include «ChangeSpeciality.h»

#include «DataModule.h»

#pragma package(smart_init)

#pragma resource «*.dfm»*fChangeSpeciality;TfChangeSpeciality::TfChangeSpeciality(TComponent* Owner)(Owner)

{

}__fastcall TfChangeSpeciality::Button1Click(TObject *Sender)

{

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «ChangeSpeciality;1»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = ID;

dm->qCommonProc->Parameters->ParamValues[«@full_name»] = Trim(full_name->Text);

dm->qCommonProc->Parameters->ParamValues[«@short_name»] = Trim(short_name->Text);

dm->qCommonProc->Parameters->ParamValues[«@dep_id»] = dep_id;>qCommonProc->ExecProc();

if (ID == 0)

ID = dm->qCommonProc->Parameters->ParamValues[«@ins_id»];

dm->qCommonProc->Active = false;();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}__fastcall TfChangeSpeciality::Button2Click(TObject *Sender)

{

Close();

}

    ChangeTFDetails.cpp

#include

#pragma hdrstop

#include «ChangeTFDetails.h»

#include «DataModule.h»

#pragma package(smart_init)

#pragma link «DBCtrlsEh»

#pragma link «DBGridEh»

#pragma link «DBLookupEh»

#pragma resource «*.dfm»*fChangeTFDetails;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

__fastcall TfChangeTFDetails::TfChangeTFDetails(TComponent* Owner)(Owner)

{

}__fastcall TfChangeTFDetails::FormActivate(TObject *Sender)

{

type->ListSource->DataSet->Open();

}__fastcall TfChangeTFDetails::Button2Click(TObject *Sender)

{

Close();

}__fastcall TfChangeTFDetails::Button1Click(TObject *Sender)

{{

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «ChangeTFDetails;1»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = id;

dm->qCommonProc->Parameters->ParamValues[«@name»] = Trim(name_->Text);

dm->qCommonProc->Parameters->ParamValues[«@tf_details_type»] = type->KeyValue;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

dm->qCommonProc->Parameters->ParamValues[«@tf_id»] = TF_ID;>qCommonProc->ExecProc();

if (id == 0)

id = dm->qCommonProc->Parameters->ParamValues[«@ins_id»];

dm->qCommonProc->Active = false;();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

    Connection.срр

#include

#include

#pragma hdrstop

#include «Connection.h»

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

#include «DataModule.h»

#pragma package(smart_init)

#pragma resource «*.dfm»*fConnect;

__fastcall TfConnect::TfConnect(TComponent* Owner)(Owner)

{

}__fastcall TfConnect::FormActivate(TObject *Sender)

{

//чтение настроек из ини файла*ini = new TIniFile(ExtractFilePath(Application->ExeName) + «\settings.ini»);>Text = ini->ReadString(«Connection», «Server», «»);

database->Text = ini->ReadString(«Connection», «Database», «»);

ini->Free();

activated = false;

}__fastcall TfConnect::FormClose(TObject *Sender, TCloseAction &Action)

{

if (!activated)

Application->Terminate();

}__fastcall TfConnect::Button1Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

try {

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

dm->ADOConnection1->Connected = false;

dm->ADOConnection1->ConnectionString =

«Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=» + database->Text.Trim() + «;Data Source=» + server->Text.Trim();

dm->ADOConnection1->Connected = true;

TIniFile *ini = new TIniFile(ExtractFilePath(Application->ExeName) + «\settings.ini»);>WriteString(«Connection», «Server», server->Text.Trim());

ini->WriteString(«Connection», «Database», database->Text.Trim());

ini->Free();

//подключились и записали данные подключения в файл

activated = true;

Close();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

//возникла ошибка, закрываем приложение, показав сообщение об ошибке

activated = false;

Application->Terminate();

}

}

    Departments.cpp

#include

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

#pragma hdrstop

#include «Departments.h»

#include «ChangeDepartment.h»

#include «DataModule.h»

#pragma package(smart_init)

#pragma link «DBGridEh»

#pragma link «DBGridEhGrouping»

#pragma link «GridsEh»

#pragma resource «*.dfm»*fDepartments;

__fastcall TfDepartments::TfDepartments(TComponent* Owner)(Owner)

{

}__fastcall TfDepartments::ToolButton1Click(TObject *Sender)

{

TfChangeDepartment *fChangeDepartment = new TfChangeDepartment(this);

fChangeDepartment->ShowModal();

delete fChangeDepartment;

RefreshTable();

}__fastcall TfDepartments::ToolButton2Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

TfChangeDepartment *fChangeDepartment = new TfChangeDepartment(this);

//передаем данные в форму редактирования

fChangeDepartment->full_name->Text = DBGridEh1->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangeDepartment->short_name->Text = DBGridEh1->DataSource->DataSet->FieldByName(«short_name»)->AsString;

fChangeDepartment->ID = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fChangeDepartment->ShowModal();

delete fChangeDepartment;

RefreshTable();

}TfDepartments::RefreshTable() {

DBGridEh1->DataSource->DataSet->Active = false;

DBGridEh1->DataSource->DataSet->Active = true;

}__fastcall TfDepartments::FormActivate(TObject *Sender)

{

RefreshTable();

}__fastcall TfDepartments::ToolButton3Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «DeleteDepartments»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qCommonProc->Parameters->Refresh();

//удаляем по айди выделенной записи

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

RefreshTable();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}

    FGOS.cpp

#include

#include

#pragma hdrstop

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

#include «FGOS.h»

#include «DataModule.h»

#include «ChangePZK.h»

#pragma package(smart_init)

#pragma link «DBGridEh»

#pragma link «DBGridEhGrouping»

#pragma link «GridsEh»

#pragma link «DBCtrlsEh»

#pragma link «DBLookupEh»

#pragma resource «*.dfm»*fFGOS;TfFGOS::TfFGOS(TComponent* Owner)(Owner)

{

}TfFGOS::ShowProfTypes()

{

proftypes->ListSource->DataSet->Active = true;

}TfFGOS::ShowDepartments()

{

deps->ListSource->DataSet->Active = false;

deps->ListSource->DataSet->Active = true;

}TfFGOS::ShowSpecialities()

{

specialities->ListSource->DataSet->Active = false;

dm->qSpeciality->Parameters->ParamValues[«id»] = deps->KeyValue;

specialities->ListSource->DataSet->Active = true;

}__fastcall TfFGOS::ToolButton5Click(TObject *Sender)

{

GetFromBuffer(true);

}TfFGOS::GetFromBuffer(bool PZ)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

AnsiString s = Clipboard()->AsText;

AnsiString test;

int from = 1;pasted = false;

for (int i = 1; i <= s.Length(); ++i) {

pasted = false;

switch (int(s[i])) {

//новая строка

case 10:

from = i+1;

break;

//возврат каретки

case 13:

test = s.SubString(from, i-from);

if ((s.SubString(from, i-from) != «») && (s.SubString(from, i-from) != «n»))

InsertFromBuffer(s.SubString(from, i-from), PZ);= i+1;

pasted = true;

break;

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

if ((!pasted) && (i == s.Length()) && (int(s[i]) != 10) && (int(s[i]) != 13))

InsertFromBuffer(s.SubString(from, i-from), PZ);

}

}__fastcall TfFGOS::FormActivate(TObject *Sender)

{

ShowDepartments();

}__fastcall TfFGOS::depsChange(TObject *Sender)

{

ShowSpecialities();

ShowProfTypes();

void ShowPZ();

void ShowPK();

}TfFGOS::ShowPZ()

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

AnsiString f = «%»;

try {

dm->qPZ->Close();

dm->qPZ->Parameters->ParamValues[«proftype_id»] = proftypes->KeyValue;

dm->qPZ->Parameters->ParamValues[«speciality_id»] = specialities->KeyValue;

dm->qPZ->Parameters->ParamValues[«fltr»] = f;>qPZ->Open();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}TfFGOS::ShowPK()

{

try {

dm->qPK->Close();

dm->qPK->Parameters->ParamValues[«proftype_id»] = proftypes->KeyValue;

dm->qPK->Parameters->ParamValues[«speciality_id»] = specialities->KeyValue;

dm->qPK->Parameters->ParamValues[«fltr»] = «%»;

dm->qPK->Open();

}

catch(Exception *e) {

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}__fastcall TfFGOS::specialitiesChange(TObject *Sender)

{

ShowPZ();

ShowPK();

}__fastcall TfFGOS::proftypesChange(TObject *Sender)

{

ShowPZ();

ShowPK();

}__fastcall TfFGOS::ToolButton7Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «DeletePZ»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh2->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

ShowPZ();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}__fastcall TfFGOS::ToolButton11Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «DeletePK»;

dm->qCommonProc->Parameters->Refresh();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

ShowPK();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}__fastcall TfFGOS::ToolButton4Click(TObject *Sender)

{

TfChangePZK *fChangePZK = new TfChangePZK(Application);

fChangePZK->Caption = «Профессиональные знания»;

fChangePZK->prof_id = proftypes->KeyValue;

fChangePZK->spec_id = specialities->KeyValue;

fChangePZK->PZ = true;

fChangePZK->ShowModal();

ShowPZ();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

if (fChangePZK->inserted)

dm->qPZ->Locate(«id», fChangePZK->ins_id, TLocateOptions() << loCaseInsensitive);

delete fChangePZK;

}__fastcall TfFGOS::ToolButton6Click(TObject *Sender)

{

TfChangePZK *fChangePZK = new TfChangePZK(Application);

fChangePZK->Caption = «Профессиональные знания»;

fChangePZK->name_->Text = DBGridEh2->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangePZK->ID = DBGridEh2->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fChangePZK->prof_id = proftypes->KeyValue;

fChangePZK->spec_id = specialities->KeyValue;

fChangePZK->PZ = true;

fChangePZK->ShowModal();

delete fChangePZK;

ShowPZ();

}__fastcall TfFGOS::ToolButton8Click(TObject *Sender)

{

TfChangePZK *fChangePZK = new TfChangePZK(Application);

fChangePZK->Caption = «Профессиональные компетенции»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

fChangePZK->prof_id = proftypes->KeyValue;

fChangePZK->spec_id = specialities->KeyValue;

fChangePZK->PZ = false;

fChangePZK->ShowModal();

ShowPK();

if (fChangePZK->inserted)

dm->qPK->Locate(«id», fChangePZK->ins_id, TLocateOptions() << loCaseInsensitive);

delete fChangePZK;

}__fastcall TfFGOS::ToolButton10Click(TObject *Sender)

{

TfChangePZK *fChangePZK = new TfChangePZK(Application);

fChangePZK->Caption = «Профессиональные компетенции»;

fChangePZK->name_->Text = DBGridEh3->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangePZK->ID = DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fChangePZK->prof_id = proftypes->KeyValue;

fChangePZK->spec_id = specialities->KeyValue;

fChangePZK->PZ = false;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

fChangePZK->ShowModal();

delete fChangePZK;

ShowPK();

}TfFGOS::InsertFromBuffer(AnsiString value, bool PZ)

{

if (value != «») {

try {

dm->qCommonProc->Close();

if (PZ)

dm->qCommonProc->ProcedureName = «ChangePZ»;

else

dm->qCommonProc->ProcedureName = «ChangePK»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@name»] = value;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

dm->qCommonProc->Parameters->ParamValues[«@id»] = 0;

dm->qCommonProc->Parameters->ParamValues[«@proftype_id»] = proftypes->KeyValue;

dm->qCommonProc->Parameters->ParamValues[«@speciality_id»] = specialities->KeyValue;

dm->qCommonProc->ExecProc();ins_id = dm->qCommonProc->Parameters->ParamValues[«@ins_id»];

dm->qCommonProc->Close();

if (PZ) {

ShowPZ();

dm->qPZ->Locate(«id», ins_id, TLocateOptions() << loCaseInsensitive);

}

else {

ShowPK();

dm->qPK->Locate(«id», ins_id, TLocateOptions() << loCaseInsensitive);

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}__fastcall TfFGOS::ToolButton9Click(TObject *Sender)

{

}

    Main.cpp

#include

#pragma hdrstop

#include «main.h»

#include «Specialities.h»

#include «ProfessionTypes.h»

#include «Departments.h»

#include «FGOS.h»

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

#include «PS.h»

#include «DataModule.h»

#include «Connection.h»

#pragma package(smart_init)

#pragma link «DBCtrlsEh»

#pragma link «DBGridEh»

#pragma link «DBGridEhGrouping»

#pragma link «DBLookupEh»

//#pragma link «GridsEh»

#pragma link «GridsEh»

#pragma link «DataDriverEh»

#pragma link «MemTableDataEh»

#pragma link «MemTableEh»

#pragma link «frxClass»

#pragma link «frxADOComponents»

#pragma link «frxExportRTF»

#pragma link «frxExportPDF»

#pragma link «frxExportRTF»

#pragma link «frxExportXLS»

#pragma resource «*.dfm»*fMain;TfMain::TfMain(TComponent* Owner)

: TForm(Owner)

{

}__fastcall TfMain::N3Click(TObject *Sender)

{

TfSpeciality *fSpeciality = new TfSpeciality(this);

fSpeciality->ShowModal();

delete fSpeciality;

}__fastcall TfMain::Rfa1Click(TObject *Sender)

{

TfDepartments *fDepartments = new TfDepartments(this);

fDepartments->ShowModal();

delete fDepartments;

}__fastcall TfMain::N4Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

TfProfessionTypes *fProfessionTypes = new TfProfessionTypes(this);

fProfessionTypes->ShowModal();

delete fProfessionTypes;

}__fastcall TfMain::N6Click(TObject *Sender)

{

TfFGOS *fFGOS = new TfFGOS(this);

fFGOS->ShowModal();

delete fFGOS;

}__fastcall TfMain::N7Click(TObject *Sender)

{

TfPS *fPS = new TfPS(Application);

fPS->ShowModal();

delete fPS;

}TfMain::ShowFGOS()

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

if (this->Active) {

//выводим таблицу ФГОС. Профзадачи. если введено что-то в поле фильтра, фильтруем

//если нет, выводим все

dm->qPZ->Close();

dsPZ->DataSet = dm->qPZ;

dm->qPZ->Parameters->ParamValues[«proftype_id»] = proftypes->KeyValue;

dm->qPZ->Parameters->ParamValues[«speciality_id»] = specialities->KeyValue;

dm->qPZ->Parameters->ParamValues[«fltr»] = «%» + filtr1->Text.Trim() + «%»;->qPZ->Open();

//то же и с профкомпетенциями

dm->qPK->Close();

dm->qPK->Parameters->ParamValues[«proftype_id»] = proftypes->KeyValue;

dm->qPK->Parameters->ParamValues[«speciality_id»] = specialities->KeyValue;

dm->qPK->Parameters->ParamValues[«fltr»] = «%» + filtr2->Text.Trim() + «%»;

dsPK->DataSet = dm->qPK;

dm->qPK->Open();

}__fastcall TfMain::RadioGroup1Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

ShowFGOS();

ShowPS();

}__fastcall TfMain::depsChange(TObject *Sender)

{

ShowFGOS();

ShowProfessions();

ShowSpecialities();

ShowPS();

}__fastcall TfMain::specialitiesChange(TObject *Sender)

{

ShowFGOS();

ShowProfessions();

ShowPS();

}__fastcall TfMain::proftypesChange(TObject *Sender)

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

{

ShowFGOS();

ShowProfessions();

ShowPS();

}TfMain::ShowProfTypes()

{>ListSource->DataSet->Active = true;

}TfMain::ShowDepartments()

{

deps->ListSource->DataSet->Active = false;

deps->ListSource->DataSet->Active = true;

}TfMain::ShowSpecialities()

{

specialities->ListSource->DataSet->Active = false;

dm->qSpeciality->Parameters->ParamValues[«id»] = deps->KeyValue;

specialities->ListSource->DataSet->Active = true;

}TfMain::ShowProfessions()

{

dm->qProfessions->Close();

dm->qProfessions->Parameters->ParamValues[«id»] = proftypes->KeyValue;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qProfessions->Parameters->ParamValues[«s_id»] = specialities->KeyValue;

dm->qProfessions->Open();

}__fastcall TfMain::FormActivate(TObject *Sender)

{();

ShowProfTypes();

table1_click = table3_click = Now();

}TfMain::ShowPS()

{

if (this->Active) {

mtPS_tree->Active = false;

qPS_tree->Close();_tree->Parameters->ParamValues[«id»] = prof->KeyValue;

qPS_tree->Open();

mtPS_tree->Active = true;

}

}__fastcall TfMain::profChange(TObject *Sender)

{

ShowPS();

}__fastcall TfMain::filtr1Change(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

ShowFGOS();

}__fastcall TfMain::DBGridEh1KeyUp(TObject *Sender, WORD &Key,

TShiftState Shift)

{

//если была нажата клавиша insert

if (Key == VK_INSERT) {

//если соответствия еще нет — добавляем

//если связки нет — добавим ее в базу

int reply = CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger, 1);

if (reply == 0)

dm->qCommonProc->ProcedureName = «ChangeClassifier»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

//если есть — удаляем

else

dm->qCommonProc->ProcedureName = «Delete_PZ_TF»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id_main»] = DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger;

dm->qCommonProc->Parameters->ParamValues[«@id_dep»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

if (DBGridEh2->DataSource->DataSet->FieldByName(«parent_id»)->AsInteger == NULL)

//если выбрана ОТФ

dm->qCommonProc->Parameters->ParamValues[«@is_otf»] = 1;

else

dm->qCommonProc->Parameters->ParamValues[«@is_otf»] = 0;

if (reply == 0)

dm->qCommonProc->Parameters->ParamValues[«@is_pz»] = 1;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qCommonProc->ExecProc();

//перерисуем таблицу профзадач в соответствии с новыми связками

DBGridEh1->Repaint();

}

}__fastcall TfMain::DBGridEh2CellClick(TColumnEh *Column)

{

DBGridEh1->Repaint();

DBGridEh3->Repaint();

}TfMain::CheckDependancy(int main_id, int dep_id, int ispz)

//main_id — id ТФ или ОТФ, т.е. ид мз средней таблицы

//dep_id — ПК или ПЗ

{

dm->qCommonProc->Close();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qCommonProc->ProcedureName = «CheckDependancies»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id_main»] = main_id;

dm->qCommonProc->Parameters->ParamValues[«@id_dep»] = dep_id;

if (DBGridEh2->DataSource->DataSet->FieldByName(«parent_id»)->AsInteger == NULL)

//если выбрана ОТФ

dm->qCommonProc->Parameters->ParamValues[«@isotf»] = 1;

else

dm->qCommonProc->Parameters->ParamValues[«@isotf»] = 0;

dm->qCommonProc->Parameters->ParamValues[«@ispz»] = ispz;>qCommonProc->ExecProc();

return dm->qCommonProc->Parameters->ParamValues[«@reply»];

}__fastcall TfMain::DBGridEh3KeyUp(TObject *Sender, WORD &Key,

TShiftState Shift)

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

{

if (Key == VK_INSERT) {

//если соответствия еще нет — добавляем

int reply = CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger, 0);

if (reply == 0)

dm->qCommonProc->ProcedureName = «ChangeClassifier»;

else

dm->qCommonProc->ProcedureName = «Delete_PK_TF»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id_main»] = DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger;

dm->qCommonProc->Parameters->ParamValues[«@id_dep»] = DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

if (DBGridEh2->DataSource->DataSet->FieldByName(«parent_id»)->AsInteger == NULL)

//если выбрана ОТФ

dm->qCommonProc->Parameters->ParamValues[«@is_otf»] = 1;

else

dm->qCommonProc->Parameters->ParamValues[«@is_otf»] = 0;

if (reply == 0)

dm->qCommonProc->Parameters->ParamValues[«@is_pz»] = 0;

dm->qCommonProc->ExecProc();->Repaint();

}

}__fastcall TfMain::filtr2Change(TObject *Sender)

{

ShowFGOS();

}__fastcall TfMain::FormCreate(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

TfConnect *fConnect = new TfConnect(Application);

fConnect->ShowModal();

if (Application->Terminated)

Close();

}__fastcall TfMain::FormClose(TObject *Sender, TCloseAction &Action)

{

dm->ADOConnection1->Connected = false;

}__fastcall TfMain::DBGridEh1DrawColumnCell(TObject *Sender,

const TRect &Rect, int DataCol, TColumnEh *Column,

Gridseh::TGridDrawState State)

{

if ((!DBGridEh1->DataSource->DataSet->IsEmpty()) && (prof->Text != «»)) {

//проверим, есть ли связка с текущей ячейкой

//если такая есть — раскрашиваем ячейку в голубой цвет

if (CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger, 1) == 1)->Canvas->Brush->Color = TColor(clSkyBlue);->DefaultDrawColumnCell(Rect, DataCol, Column, State);

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

}__fastcall TfMain::DBGridEh3DrawColumnCell(TObject *Sender,

const TRect &Rect, int DataCol, TColumnEh *Column,

Gridseh::TGridDrawState State)

{

if ((!DBGridEh3->DataSource->DataSet->IsEmpty()) && (prof->Text != «»)) {(CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger, 0) == 1)

DBGridEh3->Canvas->Brush->Color = TColor(clMoneyGreen);->DefaultDrawColumnCell(Rect, DataCol, Column, State);

}

}__fastcall TfMain::N11Click(TObject *Sender)

{

frxReport1->LoadFromFile(ExtractFileDir(Application->ExeName) + «\reports\prof_komp.fr3», true);

frxReport1->Variables->Variables[«@ptype_id»] = proftypes->KeyValue;

frxReport1->Variables->Variables[«@spec_id»] = specialities->KeyValue;

frxReport1->ShowReport();

}__fastcall TfMain::N10Click(TObject *Sender)

{

frxReport1->LoadFromFile(ExtractFileDir(Application->ExeName) + «\reports\prof_tasks.fr3», true);

frxReport1->Variables->Variables[«@ptype_id»] = proftypes->KeyValue;

frxReport1->Variables->Variables[«@spec_id»] = specialities->KeyValue;

frxReport1->ShowReport();

}__fastcall TfMain::DBGridEh1CellClick(TColumnEh *Column)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

table1_click = Now();

DBGridEh2->Repaint();

}__fastcall TfMain::DBGridEh3CellClick(TColumnEh *Column)

{

table3_click = Now();

DBGridEh2->Repaint();

}__fastcall TfMain::DBGridEh2KeyUp(TObject *Sender, WORD &Key,

TShiftState Shift)

{

if (Key == VK_INSERT) {

int id_main = DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger;

int id_dep, ispz;

if (table1_click > table3_click) {

id_dep = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

ispz = 1;

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

else {

id_dep = DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger;

ispz = 0;

}

int reply = CheckDependancy(id_main, id_dep, ispz);

if (reply == 0)

dm->qCommonProc->ProcedureName = «ChangeClassifier»;

else

dm->qCommonProc->ProcedureName = «Delete_PK_TF»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id_main»] = id_main;

dm->qCommonProc->Parameters->ParamValues[«@id_dep»] = id_dep;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

if (DBGridEh2->DataSource->DataSet->FieldByName(«parent_id»)->AsInteger == NULL)

//если выбрана ОТФ

dm->qCommonProc->Parameters->ParamValues[«@is_otf»] = 1;

else

dm->qCommonProc->Parameters->ParamValues[«@is_otf»] = 0;

if (reply == 0)

dm->qCommonProc->Parameters->ParamValues[«@is_pz»] = ispz;

dm->qCommonProc->ExecProc();->Repaint();

}

}__fastcall TfMain::DBGridEh2DrawColumnCell(TObject *Sender,

const TRect &Rect, int DataCol, TColumnEh *Column,

Gridseh::TGridDrawState State)

{

if ((!DBGridEh2->DataSource->DataSet->IsEmpty()) && (prof->Text != «»)) {

//если есть связь и с ПЗ и с ПК

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

if ((CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger, 0) == 1) &&

(CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger, 1) == 1))->Canvas->Brush->Color = TColor(clPurple);

//если только с ПК

else if (CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh3->DataSource->DataSet->FieldByName(«id»)->AsInteger, 0) == 1)->Canvas->Brush->Color = TColor(clMoneyGreen);

//если только с ПЗ

else if (CheckDependancy(DBGridEh2->DataSource->DataSet->FieldByName(«self_id»)->AsInteger,

DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger, 1) == 1)->Canvas->Brush->Color = TColor(clSkyBlue);->DefaultDrawColumnCell(Rect, DataCol, Column, State);

}

}

//—————————————————————————__fastcall TfMain::N12Click(TObject *Sender)

{

frxReport1->LoadFromFile(ExtractFileDir(Application->ExeName) + «\reports\prof_tasks_pz.fr3», true);

frxReport1->Variables->Variables[«@ptype_id»] = proftypes->KeyValue;

frxReport1->Variables->Variables[«@spec_id»] = specialities->KeyValue;

frxReport1->ShowReport();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

}

//—————————————————————————__fastcall TfMain::N13Click(TObject *Sender)

{

frxReport1->LoadFromFile(ExtractFileDir(Application->ExeName) + «\reports\prof_komp_pk.fr3», true);

frxReport1->Variables->Variables[«@ptype_id»] = proftypes->KeyValue;

frxReport1->Variables->Variables[«@spec_id»] = specialities->KeyValue;

frxReport1->ShowReport();

}

//—————————————————————————__fastcall TfMain::N9Click(TObject *Sender)

{

Application->MessageBoxA(«Разработала студентка гр. V курса n»

«факультета,n»

«Полина»,»Информация о разработчике», MB_OK | MB_ICONINFORMATION);

}

//—————————————————————————

    ProfessionTypes.cpp

#include

#pragma hdrstop

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

#include «ProfessionTypes.h»

#include «DataModule.h»

//—————————————————————————

#pragma package(smart_init)

#pragma link «DBGridEh»

#pragma link «DBGridEhGrouping»

#pragma link «GridsEh»

#pragma link «DBCtrlsEh»

#pragma link «DBLookupEh»

#pragma resource «*.dfm»*fProfessionTypes;

//—————————————————————————

__fastcall TfProfessionTypes::TfProfessionTypes(TComponent* Owner)

: TForm(Owner)

{

}TfProfessionTypes::ShowProfTypes()

{

proftypes->ListSource->DataSet->Active = false;

proftypes->ListSource->DataSet->Active = true;

}TfProfessionTypes::ShowDepartments()

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

deps->ListSource->DataSet->Active = false;

deps->ListSource->DataSet->Active = true;

}TfProfessionTypes::ShowSpecialities()

{

specialities->ListSource->DataSet->Active = false;

dm->qSpeciality->Parameters->ParamValues[«id»] = deps->KeyValue;

specialities->ListSource->DataSet->Active = true;

}TfProfessionTypes::ShowProfessions()

{

dm->qProfessions->Close();

dm->qProfessions->Parameters->ParamValues[«s_id»] = specialities->KeyValue;

dm->qProfessions->Open();

}

//—————————————————————————__fastcall TfProfessionTypes::FormActivate(TObject *Sender)

{

ShowProfTypes();

ShowDepartments();

}

//—————————————————————————__fastcall TfProfessionTypes::depsChange(TObject *Sender)

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

{

ShowSpecialities();

ShowProfessions();

}

//—————————————————————————__fastcall TfProfessionTypes::specialitiesChange(TObject *Sender)

{

ShowProfessions();

}

//—————————————————————————__fastcall TfProfessionTypes::proftypesChange(TObject *Sender)

{

ShowProfessions();

}

//—————————————————————————TfProfessionTypes::ChangeProfessions(AnsiString new_prof_name, bool ins) {

try {

dm->qCommonProc->Close();

dm->qCommonProc->ProcedureName = «ChangeProfession»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qCommonProc->Parameters->Refresh();

if (ins)

dm->qCommonProc->Parameters->ParamValues[«@id»] = 0;

if (!ins)

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->Parameters->ParamValues[«@proftype_id»] = proftypes->KeyValue;

dm->qCommonProc->Parameters->ParamValues[«@spec_id»] = specialities->KeyValue;

dm->qCommonProc->Parameters->ParamValues[«@name»] = new_prof_name;

dm->qCommonProc->ExecProc();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

//—————————————————————————__fastcall TfProfessionTypes::ToolButton1Click(TObject *Sender)

{

AnsiString prof_name = «»;

if( InputQuery(L»Профессиональная деятельность»,

L»Введите название профессиональной деятельности:»,

prof_name) == True )(prof_name, true);

ShowProfessions();

}

//—————————————————————————__fastcall TfProfessionTypes::ToolButton2Click(TObject *Sender)

{

AnsiString prof_name = DBGridEh1->DataSource->DataSet->FieldByName(«name»)->AsString;( InputQuery(L»Профессиональная деятельность»,

L»Введите название профессиональной деятельности:»,

prof_name) == True )(prof_name, false);

ShowProfessions();

}

//—————————————————————————__fastcall TfProfessionTypes::ToolButton3Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

dm->qCommonProc->ProcedureName = «DeleteProfession»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

ShowProfessions();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}

//—————————————————————————

    PS.cpp

#include

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

#include

#pragma hdrstop

#include «PS.h»

#include «DataModule.h»

#include «ChangeOTF.h»

#include «TFDetails.h»

//—————————————————————————

#pragma package(smart_init)

#pragma link «DBCtrlsEh»

#pragma link «DBGridEh»

#pragma link «DBLookupEh»

#pragma link «DBGridEhGrouping»

#pragma link «GridsEh»

#pragma resource «*.dfm»*fPS;

//—————————————————————————

__fastcall TfPS::TfPS(TComponent* Owner)

: TForm(Owner)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

}TfPS::ShowProfTypes()

{

proftypes->ListSource->DataSet->Active = true;

}TfPS::ShowDepartments()

{

deps->ListSource->DataSet->Active = false;

deps->ListSource->DataSet->Active = true;

}TfPS::ShowSpecialities()

{

specialities->ListSource->DataSet->Active = false;

dm->qSpeciality->Parameters->ParamValues[«id»] = deps->KeyValue;

specialities->ListSource->DataSet->Active = true;

}TfPS::ShowOTF()

{

dm->qOTF->Close();

dm->qOTF->Parameters->ParamValues[«spec_id»] = specialities->KeyValue;

dm->qOTF->Parameters->ParamValues[«prof_id»] = professions->KeyValue;

dm->qOTF->Open();

ShowTF();

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

//—————————————————————————__fastcall TfPS::FormActivate(TObject *Sender)

{

ShowDepartments();

proftypes->ListSource->DataSet->Active = false;

proftypes->ListSource->DataSet->Active = true;

}

//—————————————————————————__fastcall TfPS::depsChange(TObject *Sender)

{

ShowSpecialities();

ShowOTF();

ShowProfessions();

}TfPS::ShowProfessions()

{

dm->qProfessions->Close();

dm->qProfessions->Parameters->ParamValues[«id»] = proftypes->KeyValue;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qProfessions->Parameters->ParamValues[«s_id»] = specialities->KeyValue;

dm->qProfessions->Open();

}

//—————————————————————————__fastcall TfPS::proftypesChange(TObject *Sender)

{

ShowProfessions();

ShowOTF();

}

//—————————————————————————__fastcall TfPS::specialitiesChange(TObject *Sender)

{

ShowOTF();

ShowProfessions();

}

//—————————————————————————__fastcall TfPS::professionsChange(TObject *Sender)

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

{

ShowOTF();

}TfPS::ShowTF()

{

dm->qTF->Close();

dm->qTF->Parameters->ParamValues[«id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qTF->Open();

}

//—————————————————————————__fastcall TfPS::DBGridEh1CellClick(TColumnEh *Column)

{

ShowTF();

}

//—————————————————————————__fastcall TfPS::DBGridEh1SelectionChanged(TObject *Sender)

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

{

// ShowTF();

}

//—————————————————————————__fastcall TfPS::ToolButton1Click(TObject *Sender)

{

TfChangeOTF *fChangeOTF = new TfChangeOTF(Application);

fChangeOTF->Caption = «Общие трудовые функции»;

fChangeOTF->prof_id = proftypes->KeyValue;>OTF = true;

fChangeOTF->ShowModal();

ShowOTF();

if (fChangeOTF->inserted)

dm->qOTF->Locate(«id», fChangeOTF->ins_id, TLocateOptions() << loCaseInsensitive);

delete fChangeOTF;

}

//—————————————————————————__fastcall TfPS::ToolButton4Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

TfChangeOTF *fChangeOTF = new TfChangeOTF(Application);

fChangeOTF->Caption = «Трудовые функции»;

fChangeOTF->prof_id = proftypes->KeyValue;>OTF = false;

fChangeOTF->ShowModal();

ShowOTF();

if (fChangeOTF->inserted)

dm->qTF->Locate(«id», fChangeOTF->ins_id, TLocateOptions() << loCaseInsensitive);

delete fChangeOTF;

}

//—————————————————————————__fastcall TfPS::ToolButton3Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «DeleteOTF»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

ShowOTF();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}

//—————————————————————————__fastcall TfPS::ToolButton6Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

dm->qCommonProc->ProcedureName = «DeleteTF»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh2->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

ShowTF();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}

//—————————————————————————__fastcall TfPS::ToolButton2Click(TObject *Sender)

{

TfChangeOTF *fChangeOTF = new TfChangeOTF(Application);

fChangeOTF->Caption = «Общие трудовые функции»;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

fChangeOTF->name_->Text = DBGridEh1->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangeOTF->ID = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fChangeOTF->prof_id = professions->KeyValue;>OTF = true;

fChangeOTF->ShowModal();

delete fChangeOTF;

ShowOTF();

}

//—————————————————————————__fastcall TfPS::ToolButton5Click(TObject *Sender)

{

TfChangeOTF *fChangeOTF = new TfChangeOTF(Application);

fChangeOTF->Caption = «Трудовые функции»;

fChangeOTF->name_->Text = DBGridEh2->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangeOTF->ID = DBGridEh2->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fChangeOTF->prof_id = professions->KeyValue;>OTF = false;

fChangeOTF->ShowModal();

delete fChangeOTF;

ShowTF();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

}TfPS::InsertFromBuffer(AnsiString value, bool OTF)

{

if (value != «») {

try {

dm->qCommonProc->Close();

if (OTF)

dm->qCommonProc->ProcedureName = «ChangeOTF»;

else

dm->qCommonProc->ProcedureName = «ChangeTF»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@name»] = value;

dm->qCommonProc->Parameters->ParamValues[«@id»] = 0;

if (OTF)

dm->qCommonProc->Parameters->ParamValues[«@prof_id»] = professions->KeyValue;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

else

dm->qCommonProc->Parameters->ParamValues[«@otf_id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;>qCommonProc->ExecProc();ins_id = dm->qCommonProc->Parameters->ParamValues[«@ins_id»];

dm->qCommonProc->Close();

//позиционируемся на только что введенной записи

if (OTF) {

ShowOTF();

dm->qOTF->Locate(«id», ins_id, TLocateOptions() << loCaseInsensitive);

}

else {

ShowTF();

dm->qTF->Locate(«id», ins_id, TLocateOptions() << loCaseInsensitive);

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}TfPS::GetFromBuffer(bool OTF)

{

//читаем строку из буфера обмена

AnsiString s = Clipboard()->AsText;

//ставим наш «курсор» на начало строки

int from = 1;pasted = false;

for (int i = 1; i <= s.Length(); ++i) {

pasted = false;

switch (int(s[i])) {

//новая строка — символ n

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

case 10:

from = i+1;

break;

//возврат каретки — символ r

case 13:

//выделяем текущую подчтроку для вставки в базу

if ((s.SubString(from, i-from) != «») && (s.SubString(from, i-from) != «n»))

InsertFromBuffer(s.SubString(from, i-from), OTF);= i+1;

pasted = true;

break;

}

//на случай, если в самом конце строки из буфера не стоят специальные символы новой строки и возврата каретки

if ((!pasted) && (i == s.Length()) && (int(s[i]) != 10) && (int(s[i]) != 13))

InsertFromBuffer(s.SubString(from, i-from), OTF);

}

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

//—————————————————————————__fastcall TfPS::ToolButton7Click(TObject *Sender)

{(true);

}

//—————————————————————————__fastcall TfPS::ToolButton8Click(TObject *Sender)

{

GetFromBuffer(false);

}

//—————————————————————————__fastcall TfPS::DBGridEh2DblClick(TObject *Sender)

{

TfTFDetails *fTFDetails = new TfTFDetails(Application);

fTFDetails->TF_ID = DBGridEh2->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fTFDetails->ShowModal();

delete fTFDetails;

}

//—————————————————————————

    Specialities.cpp

#include

#pragma hdrstop

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

#include «Specialities.h»

#include «DataModule.h»

#include «ChangeDepartment.h»

#include «ChangeSpeciality.h»

//—————————————————————————

#pragma package(smart_init)

#pragma link «DBGridEh»

#pragma link «DBGridEhGrouping»

#pragma link «GridsEh»

#pragma link «DBCtrlsEh»

#pragma link «DBLookupEh»

#pragma link «MemTableDataEh»

#pragma link «MemTableEh»

#pragma link «DataDriverEh»

#pragma resource «*.dfm»*fSpeciality;

//—————————————————————————

__fastcall TfSpeciality::TfSpeciality(TComponent* Owner)

: TForm(Owner)

{

}TfSpeciality::ShowDepartments() {

dep_name->ListSource->DataSet->Close();

dep_name->ListSource->DataSet->Open();

}

//—————————————————————————__fastcall TfSpeciality::Button1Click(TObject *Sender)

{

TfChangeDepartment *fChangeDepartment = new TfChangeDepartment(Application);

fChangeDepartment->ShowModal();

ShowDepartments();

if (fChangeDepartment->inserted)

dep_name->KeyValue = fChangeDepartment->ID;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

delete fChangeDepartment;

}TfSpeciality::RefreshTable() {

DBGridEh1->DataSource->DataSet->Active = false;

dm->qSpeciality->Parameters->ParamValues[«id»] = dep_name->KeyValue;

DBGridEh1->DataSource->DataSet->Active = true;

}

//—————————————————————————__fastcall TfSpeciality::FormActivate(TObject *Sender)

{

ShowDepartments();

}

//—————————————————————————__fastcall TfSpeciality::dep_nameChange(TObject *Sender)

{

RefreshTable();

//—————————————————————————__fastcall TfSpeciality::ToolButton1Click(TObject *Sender)

{

TfChangeSpeciality *fChangeSpeciality = new TfChangeSpeciality(Application);

fChangeSpeciality->dep_id = dep_name->KeyValue;

fChangeSpeciality->ShowModal();

delete fChangeSpeciality;

RefreshTable();

}

//—————————————————————————__fastcall TfSpeciality::ToolButton2Click(TObject *Sender)

{

TfChangeSpeciality *fChangeSpeciality = new TfChangeSpeciality(Application);

fChangeSpeciality->dep_id = dep_name->KeyValue;

fChangeSpeciality->full_name->Text = DBGridEh1->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangeSpeciality->short_name->Text = DBGridEh1->DataSource->DataSet->FieldByName(«short_name»)->AsString;

fChangeSpeciality->ID = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;>ShowModal();

delete fChangeSpeciality;

RefreshTable();

}

//—————————————————————————__fastcall TfSpeciality::ToolButton3Click(TObject *Sender)

{

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «DeleteSpeciality»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

RefreshTable();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}

}

//—————————————————————————

    StudyLoad.cpp

#include

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

#pragma hdrstop

//—————————————————————————(«main.cpp», fMain);(«Specialities.cpp», fSpeciality);(«DataModule.cpp», dm); /* TDataModule: File Type */(«Departments.cpp», fDepartments);(«ProfessionTypes.cpp», fProfessionTypes);(«FGOS.cpp», fFGOS);(«PS.cpp», fPS);(«ChangeDepartment.cpp», fChangeDepartment);(«ChangeSpeciality.cpp», fChangeSpeciality);(«ChangePZK.cpp», fChangePZK);(«ChangeOTF.cpp», fChangeOTF);(«TFDetails.cpp», fTFDetails);(«ChangeTFDetails.cpp», fChangeTFDetails);(«Connection.cpp», fConnect);

//—————————————————————————WinMain(HINSTANCE, HINSTANCE, LPSTR, int)

{

try

{

Application->Initialize();

Application->CreateForm(__classid(Tdm), &dm);

Application->CreateForm(__classid(TfMain), &fMain);

if (!Application->Terminated)

Application->Run();

else

Application->Terminate();

}

catch (Exception &exception)

{

Application->ShowException(&exception);

}

catch (…)

{

try

{

throw Exception(«»);

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

}

catch (Exception &exception)

{

Application->ShowException(&exception);

}

}

return 0;

}

//—————————————————————————

    TFDetails.cpp

#include

#include

#pragma hdrstop

#include «TFDetails.h»

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

#include «DataModule.h»

#include «ChangeTFDetails.h»

//—————————————————————————

#pragma package(smart_init)

#pragma link «DBGridEh»

#pragma link «DBGridEhGrouping»

#pragma link «GridsEh»

#pragma resource «*.dfm»*fTFDetails;

//—————————————————————————

__fastcall TfTFDetails::TfTFDetails(TComponent* Owner)

: TForm(Owner)

{

}TfTFDetails::GetFromBuffer()

{

AnsiString s = Clipboard()->AsText;

AnsiString test;

int from = 1;

int details_type = 0;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

bool pasted = false;

for (int i = 1; i <= s.Length(); ++i) {

pasted = false;

switch (int(s[i])) {

//новая ячейка в той же строке, т.е. новая детализация ТФ

case 9:

if (!((int(s[i-2]) == 13) && (int(s[i-1]) == 10)))

details_type++;

test = s.SubString(from, i-from);

from = i+1;

break;

//новая строка

case 10:

test = s.SubString(from, i-from);

from = i+1;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

break;

//возврат каретки

case 13:

test = s.SubString(from, i-from);

if ((s.SubString(from, i-from) != «») && (s.SubString(from, i-from) != «n»))

InsertFromBuffer(s.SubString(from, i-from), details_type);= i+1;

pasted = true;

break;

}

if ((!pasted) && (i == s.Length()) && (int(s[i]) != 10) && (int(s[i]) != 13))

InsertFromBuffer(s.SubString(from, i-from), details_type);

}

}TfTFDetails::InsertFromBuffer(AnsiString s, int details_type_id)

{

try {

dm->qCommonProc->Close();

dm->qCommonProc->ProcedureName = «ChangeTFDetails»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = 0;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qCommonProc->Parameters->ParamValues[«@name»] = s;

dm->qCommonProc->Parameters->ParamValues[«@tf_details_type»] = details_type_id;

dm->qCommonProc->Parameters->ParamValues[«@tf_id»] = TF_ID;

dm->qCommonProc->ExecProc();();

if (dm->qCommonProc->Parameters->ParamValues[«@ins_id»] != NULL)

dm->qTFDetails->Locate(«id», dm->qCommonProc->Parameters->ParamValues[«@ins_id»], TLocateOptions() << loCaseInsensitive);

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

}TfTFDetails::ShowTFDetails()

{

dm->qTFDetails->Close();

dm->qTFDetails->Parameters->ParamValues[«tf_id»] = TF_ID;

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

dm->qTFDetails->Open();

}

//—————————————————————————__fastcall TfTFDetails::ToolButton9Click(TObject *Sender)

{

GetFromBuffer();

}

//—————————————————————————__fastcall TfTFDetails::FormActivate(TObject *Sender)

{

ShowTFDetails();

}

//—————————————————————————__fastcall TfTFDetails::ToolButton8Click(TObject *Sender)

{

TfChangeTFDetails *fChangeTFDetails = new TfChangeTFDetails(Application);

fChangeTFDetails->TF_ID = TF_ID;

fChangeTFDetails->ShowModal();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

if (fChangeTFDetails->id != 0)

dm->qTFDetails->Locate(«id», fChangeTFDetails->id, TLocateOptions() << loCaseInsensitive);

delete fChangeTFDetails;

ShowTFDetails();

}

//—————————————————————————__fastcall TfTFDetails::ToolButton10Click(TObject *Sender)

{

TfChangeTFDetails *fChangeTFDetails = new TfChangeTFDetails(Application);

fChangeTFDetails->TF_ID = TF_ID;

fChangeTFDetails->type->KeyValue = DBGridEh1->DataSource->DataSet->FieldByName(«TF_details_types_id»)->AsInteger;

fChangeTFDetails->name_->Text = DBGridEh1->DataSource->DataSet->FieldByName(«name»)->AsString;

fChangeTFDetails->id = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

fChangeTFDetails->ShowModal();

delete fChangeTFDetails;

ShowTFDetails();

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

}

//—————————————————————————__fastcall TfTFDetails::ToolButton11Click(TObject *Sender)

{

if (Application->MessageBoxA(«Вы действительно хотите удалить эту запись?»,

«Вопрос», MB_YESNO | MB_ICONQUESTION) == IDYES) {

try {

dm->qCommonProc->Active = false;

dm->qCommonProc->ProcedureName = «DeleteTFDetails»;

dm->qCommonProc->Parameters->Refresh();

dm->qCommonProc->Parameters->ParamValues[«@id»] = DBGridEh1->DataSource->DataSet->FieldByName(«id»)->AsInteger;

dm->qCommonProc->ExecProc();

ShowTFDetails();

}

catch(Exception *e) {

Application->MessageBoxA(e->Message.c_str(), «Ошибка!», MB_OK | MB_ICONERROR);

}

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Подробнее

}

//—————————————————————————

Приложение Б

(обязательное)

Создание таблиц

CREATE TABLE [dbo].[Specialities] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(100) COLLATE Cyrillic_General_CI_AS NOT NULL,

[short_name] nvarchar(10) COLLATE Cyrillic_General_CI_AS DEFAULT NULL NULL,

[department_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [Specialities_fk] FOREIGN KEY ([department_id])

REFERENCES [dbo].[Departments] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[OTF] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(300) COLLATE Cyrillic_General_CI_AS NOT NULL,

[prof_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [OTF_fk] FOREIGN KEY ([prof_id])

REFERENCES [dbo].[Professions] ([id])

ON UPDATE CASCADE

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[PK] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(250) COLLATE Cyrillic_General_CI_AS NOT NULL,

[proftype_id] int NOT NULL,

[speciality_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [PK_fk] FOREIGN KEY ([proftype_id])

REFERENCES [dbo].[Prof_Types] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE,

CONSTRAINT [PK_fk2] FOREIGN KEY ([speciality_id])

REFERENCES [dbo].[Specialities] ([id])

ON UPDATE NO ACTION

ON DELETE NO ACTION

)[PRIMARY]TABLE [dbo].[PK_TF] (

[id] int IDENTITY(1, 1) NOT NULL,

[PK_id] int NOT NULL,

[TF_id] int NOT NULL,

[isOTF] bit NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [PK_TF_fk] FOREIGN KEY ([PK_id])

REFERENCES [dbo].[PK] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[Prof_Types] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(30) COLLATE Cyrillic_General_CI_AS NOT NULL,

PRIMARY KEY CLUSTERED ([id])

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Цена диплома

)[PRIMARY]TABLE [dbo].[Professions] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(100) COLLATE Cyrillic_General_CI_AS NOT NULL,

[speciality_id] int NOT NULL,

[prof_type_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [Professions_fk] FOREIGN KEY ([speciality_id])

REFERENCES [dbo].[Specialities] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE,

CONSTRAINT [Professions_fk2] FOREIGN KEY ([prof_type_id])

REFERENCES [dbo].[Prof_Types] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[PZ] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(200) COLLATE Cyrillic_General_CI_AS NOT NULL,

[proftype_id] int NOT NULL,

[speciality_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [PZ_fk] FOREIGN KEY ([proftype_id])

REFERENCES [dbo].[Prof_Types] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE,

CONSTRAINT [PZ_fk2] FOREIGN KEY ([speciality_id])

REFERENCES [dbo].[Specialities] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

)[PRIMARY]TABLE [dbo].[PZ_TF] (

[id] int IDENTITY(1, 1) NOT NULL,

[PZ_id] int NOT NULL,

[TF_id] int NOT NULL,

[isOTF] bit NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [PZ_OTF_fk] FOREIGN KEY ([PZ_id])

REFERENCES [dbo].[PZ] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[Specialities] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(100) COLLATE Cyrillic_General_CI_AS NOT NULL,

[short_name] nvarchar(10) COLLATE Cyrillic_General_CI_AS DEFAULT NULL NULL,

[department_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [Specialities_fk] FOREIGN KEY ([department_id])

REFERENCES [dbo].[Departments] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[TF] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(300) COLLATE Cyrillic_General_CI_AS NOT NULL,

[OTF_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [TF_fk] FOREIGN KEY ([OTF_id])

REFERENCES [dbo].[OTF] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

Нужна помощь в написании диплома?

Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Сдача работы по главам. Уникальность более 70%. Правки вносим бесплатно.

Заказать диплом

)[PRIMARY]TABLE [dbo].[TF_details] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(300) COLLATE Cyrillic_General_CI_AS NOT NULL,

[TF_details_types_id] int NOT NULL,

[TF_id] int NOT NULL,

PRIMARY KEY CLUSTERED ([id]),

CONSTRAINT [TF_details_fk] FOREIGN KEY ([TF_details_types_id])

REFERENCES [dbo].[TF_details_types] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE,

CONSTRAINT [TF_details_fk2] FOREIGN KEY ([TF_id])

REFERENCES [dbo].[TF] ([id])

ON UPDATE CASCADE

ON DELETE CASCADE

)[PRIMARY]TABLE [dbo].[TF_details_types] (

[id] int IDENTITY(1, 1) NOT NULL,

[name] nvarchar(30) COLLATE Cyrillic_General_CI_AS NOT NULL,

PRIMARY KEY CLUSTERED ([id])

)[PRIMARY]

Средняя оценка 0 / 5. Количество оценок: 0

Поставьте оценку первым.

Сожалеем, что вы поставили низкую оценку!

Позвольте нам стать лучше!

Расскажите, как нам стать лучше?

1198

Закажите такую же работу

Не отобразилась форма расчета стоимости? Переходи по ссылке

Не отобразилась форма расчета стоимости? Переходи по ссылке