1с акада что это
Система управления учебным заведением «АКАДА — ВУЗ» демонстрирует возможности системы:
- автоматизация предоставления широкого перечня образовательных услуг;
- ориентация на индивидуальный процесс обучения студента;
- управление процессом подготовки специалистов (среднее профессиональное образование), бакалавров, магистров, специалистов (высшее профессиональное образование);
- управление процессом переподготовки кадров, повышения их квалификации и стажировки;
- управление послевузовским профессиональным образованием;
- управление учащимися подготовительных курсов;
- внедрение внутривузовской системы контроля качества образования;
- возможность реализации дистанционного обучения;
Дополнительные возможности:
- подготовка отчетов и статистики для органов управления образованием в автоматическом режиме;
- поддержка работы с системой через веб-интерфейс;
- соответствие ФЗ-152 о персонализации данных, многоуровневая система защиты информации от несанкционированного доступа.
Технические характеристики
Система разрабатывается на следующей конфигурации аппаратного и программного обеспечения. Соответственно, работоспособность системы гарантируется на комплексах, обладающих такими же или аналогичными характеристиками. Сведения о конфигурации приведены в таблице 1.
Таблица 1 – Характеристики аппаратно-программного комплекса
Название характеристики | Значение характеристики |
Процессор | Intel Core i7 860 2.89 GHz |
Видеокарта | NVIDIA GeForce GTX 550 Ti |
Оперативная память | Samsung M378B5273CH0 8 Gb |
Операционная система | MS Windows 7 |
Требования и временной график выполнения программного проекта
1.3.1 Постановка задачи
Исходя из всего вышесказанного, можно сделать вывод о том, что автоматизация образовательного процесса в ВУЗе является важной задачей, требующей решения.
Таким образом, можно сформулировать тему курсового проекта:
«Разработка автоматизированной системы работы преподавателей кафедры ВУЗа».
Основной целью разрабатываемой системы является повышение эффективности работы сотрудников кафедры ВУЗа.
Для достижения заданной цели требуется решить ряд задач:
- изучить предметную область;
- построить модель потоков данных и модель данных предметной области;
- на базе построенных моделей спроектировать базу данных для хранения информации разрабатываемой системы;
- реализовать базу данных в СУБД MS Access;
- разработать приложение, взаимодействующее с спроектированной базой данных и обеспечивающее работу пользователей;
- оформить комплект проектной документации.
1.3.2 Временной график разработки
Выполнение всех работ по разработке системы производится по графику. В качестве модели жизненного цикла принимается каскадная модель, включающая этапы, приведенные на рисунке 2.
Рисунок 2 – Временной график работ
1. анализ предметной области;
5. эксплуатация и поддержка.
РАЗРАБОТКА РАБОЧЕГО ПРОЕКТА
Разработка интерфейса программы
При разработке интерфейса программного продукта использовался оконный подход. При запуске программы пользователю должно открываться основное окно приложения, содержащее главное меню со средствами навигации и основными командами. Для выполнения основных операций предназначены индивидуальные формы, которые вызываются из основного окна приложения (рисунок 3).
Рисунок 3- Внешний вид главного окна
На примере формы просмотра представлена форма просмотра студентов на рисунке 4. Ширину каждого столбца можно свободно регулировать.
Рисунок 4 – Форма просмотра данных
Пример формы с добавлением данных в базу данных представлена на рисунке 5.
Рисунок 5 – форма добавления данных
Жизненный цикл программы
2.2.1 Моделирование потоков данных.
При разработке автоматизированных систем управления на этапах кодирования и тестирования выявляется большое количество ошибок, исправление которых влекло за собой кардинальное изменение всей разрабатываемой системы. Учесть такие ошибки возможно только при моделировании и глубоком, детальном анализе создаваемых проектов. Моделирование позволяет увидеть проект в процессе разработки и создать предпосылки для анализа поведения системы в зависимости от начальных условий.
Поскольку система содержит множество отдельных элементов, соединённых определённым образом, то и модель системы должна воспроизводить все подлежащие исследованию отношения и связи внутри объекта, касающиеся взаимоотношений всех элементов или выделяемых групп элементов, рассматриваемых в этом случае как подсистемы. При моделировании изучается влияние и действие одних элементов на другие и последствия этих взаимодействий.
Методы, помогающие предприятию определить план создания информационных систем, удовлетворяющих его ближайшие и перспективные информационные потребности, реализуются в процессе моделирования. Информация является одним из основных ресурсов и должна планироваться в масштабах всего предприятия, информационная система должна проектироваться независимо от текущего состояния и структуры предприятия. Экспериментировать нужно на модели, а не на реальных системах, на которые были потрачены время и средства.
Для достижения эффективности разрабатываемых систем требуется поддержка гибкости и настраиваемости, которые позволят в случае изменения структуры управления безболезненно перестроиться в нужную конфигурацию. Корректировка системы может производиться с использованием модели, созданной в процессе проектирования. Это существенно упрощает внесение изменений, так как можно промоделировать различные сценарии. Стандартизация моделей повышает удобочитаемость, понятность и способность разбираться в диаграммах не только разработчикам, но и специалистам предметной области.
Автоматизированная информационная система – это основной объект в нашей системе. Главный участник – это преподаватель. Поэтому потоки данных только внутри этих двух объектов (рисунок 6).
Рисунок 6 – Контекстная диаграмма
Для того, чтобы предоставить какие то отчеты необходимо ввести в информационную среду исходные данные. На рисунке 7 показано, какие данные необходимо запросить на начальном уровне у преподавателя для дальнейшего формирования и планирования отчетов.
Рисунок 7 – Начальный уровень
Данные, которые мы используем при процессе учета вида деятельности представляются смысловыми группировками, для которых необходимы свои определенные параметры. Такие как при учете учебных групп и предметов нам необходимо знать, какие группы, какие студенты, и какие предметы были в этом задействованы. В учете проведенных занятий нам так же необходимо знать, какие было проведено занятие. Следовательно, данную информацию система должна запрашивать от преподавателя (рисунок 8).
Рисунок 8 – Декомпозиция процесса «Учета видов деятельности»
По таким же принципам для составления плана и графика занятий необходимо запросить у преподавателя, какое было проведено занятие в тот или иной период, для дальнейшего планирования аттестационных мероприятий (рисунок 9).
Рисунок 9 – Декомпозиция процесса «Планирование деятельности»
2.2.2 Моделирование данных и разработка базы данных.
Моделирование данных будет разрабатываться программой ERwin которая имеет два уровня представления модели – логический и физический.
Логический уровень – это абстрактный взгляд на данные, на нем данные представляются так, как выглядят в реальном мире, и могут называться так, как они называются в реальном мире, например, «Фамилия сотрудника», «Отдел». Объекты модели, представляемые на логическом уровне, называются сущностями и атрибутами. Логическая модель может быть построена на основе другой логической модели, например на основе модели процессов. Логическая модель данных является универсальной и никак не связана с конкретной реализацией СУБД.
Физическая модель данных, напротив, зависит от конкретной СУБД, фактически являясь отображением системного каталога. В физической модели содержится информация о всех объектах БД. Поскольку стандартов на объекты БД не существует, физическая модель зависит от конкретной реализации СУБД. Следовательно, одной и той же логической модели могут соответствовать несколько разных физических моделей. Разделение модели данных на логические и физические позволяет решить несколько важных задач.
При создании ER-модели были выделены следующие сущности (рисунок 10).
Рисунок 10 – Схема отношений между сущностями
Разработанная таким образом модель была использована для генерации базы данных в среде MS Access на рисунке 11.
Рисунок 11 – Модель схемы данных в MS Access
Описание программы
2.3.1 Создание проекта
Для начала разработки приложения необходимо создать новый проект в среде разработки Microsoft Visual C++ 2008 Express. При создании проекта выбирается вид проекта «Приложение Windows Forms». Указав название проекта и его местоположение, нажмем кнопку «Создать». При этом будет создан новый проект, содержащий одну пустую форму Form1.
Данная форма будет стартовой формой разрабатываемого приложения.
В качестве основного инструмента работы используем меню приложения. Для этого на панели элементов выберем элемент «MenuStrip» и переносим его на форму Form1. Заполним меню, добавив в него разделы «Просмотр данных» и «Добавление данных», внеся в них дополнительные пункты, как на рисунке 12.
Рисунок 12 – Главное меню продукта
При выборе одного из пунктов меню открывается новое окно, предназначенное для выполнения соответствующих выбранному пункту меню действий. Для создания этих окон необходимо расширить состав проекта, включив в него дополнительные формы, щелкнув правой кнопкой мыши на проект в обозревателе решений и выбрав в выпадающем меню пункт «Добавить … - Создать элемент». В качестве типа элемента выбираем «Форма Windows Forms». Разработанное приложение должно предусматривать просмотр семь таблиц базы данных, поэтому добавим поочередно семь новых форм, дав им имена Form2, Form3, …, Form8.
Данные формы должны быть доступны при выборе соответствующих пунктов меню формы Form1. Для этого необходимо связать их друг с другом. Щелчком правой кнопкой мыши в свободном месте формы Form1 и выбераем пункт «Перейти к коду». Откроется файл с исходным программным кодом формы Form1 (файл Form1.h). Добавим в начало файла код (рисунок 13)
Рисунок 13 – Код добавления форм
Переключимся обратно в режим конструктора формы Form1. Выбираем в меню формы пункт «Просмотр Занятий» и дважды щелкнем по нему мышью. В программном коде автоматически создастся обработчик для события «Выбор пункта меню», а курсор будет установлен в начало добавленного обработчика. Внесем в него следующий код (рисунок 14).
Рисунок 14 – Обработчик события
Теперь, при выборе данного пункта меню в работающем приложении будет создана и открыта новое окно Form2.
Выполним аналогичные действия для остальных пунктов меню раздела «Просмотр данных», изменяя код, чтобы открывать формы Form3, Form4 и т.д.
Теперь перейдем непосредственно к просмотру данных, содержащихся в базе данных. Открываем форму Form2 в режиме конструктора. Для просмотра данных будем использовать таблицу. Добавим ее, найдя на панели элементов элемент DataGridView. Так как таблица «Оценки» содержит семь полей данных, добавим в размещенной нами таблице семь колонок, дав им заголовки, соответствующие названиям полей таблицы «Оценки».
Так как данные таблицы должны автоматически отображаться при открытии данной формы, необходимо создать обработчик события Load у формы Form2. После создания обработчика внесем в него следующий код (рисунок 15).
Рисунок 15 – Код обработчика в форме просмотра данных
Теперь при открытии окна «Просмотр оценок» приложение будет обращаться к базе данных, выбирать из нее соответствующие данные и отображать их в таблице на форме.
Аналогичные действия выполняются на формах Form3-Form8, за исключением того, что информация выбирается из других таблиц базы данных.
Аналогично тому, как в проект были добавлены формы для просмотра данных, включим в проект и формы добавления информации в БД. Для этого создаем семь дополнительных форм (через меню «Проект – Добавить… – Создать элемент»). Именуем формы имена с Form9 по Form15 и подключим их к соответствующим пунктам меню аналогично тому, как это было сделано для форм просмотра (т.е. добавим в начало файла Form1.h строки с подключением новых файлов и создадим обработчики для пунктов меню «Добавление данных»).
Таблицы используемой нами при проектировании БД можно разбить на 2 группы: независимые и зависимые. Разница между ними состоит в том, что зависимые таблицы содержат информацию, которая уже присутствует в БД, например, в таблице «Занятия» присутствует поле «Табельный номер». При вводе данных в это поле пользователь должен быть ограничен только теми вариантами единиц измерения, которые уже присутствуют в таблице «Преподаватели».
Действия по добавлению данных будут отличаться для независимых и зависимых таблиц.
В нашей БД присутствует четыре независимые таблицы («Предмет», «Преподаватели», «Группы», «Виды занятий») и три зависимые («Оценки», «Студенты», «Занятия»).
Рассмотрим добавление данных в независимую таблицу «Группы». Данная таблица содержит три переменные, поэтому разместим на форме Form12 (открывающейся по команде меню «Добавление группы») 3 элементов управления TextBox. Помимо этого добавим на форму кнопку (элемент управления Button). При нажатии на кнопку, введенные пользователем в текстовые поля данные, должны добавляться в таблицу «Группы». Добавим для этого обработчик события Click у кнопки (рисунок 16).
Рисунок 16 – Код обработчика события Click
Принцип добавления зависимых данных.
При добавлении зависимых данных необходимо контролировать, чтобы пользователь мог ввести только те значения в зависимые поля, которые уже присутствуют в какой-либо другой таблице. Для этого необходимо использовать вместо элемента TextBox элемент управления ComboBox для каждого из зависимых полей.
Рассмотрим добавление данных в таблицу «Студенты». Данная таблица содержит пять полей, второе из которых («название группы») обеспечивает связь с таблицей «Группы». Добавим на форму Form11 четыре текстовых поля, выпадающий список (элемент ComboBox) и кнопку (элемент Button). Порядок расположения элементов должен соответствовать порядку полей: сначала одно текстовое поле, затем один выпадающий список, после все оставшиеся три текстового поля (рисунок 17).
Рисунок 17 – Внешний вид расположения полей ввода в зависимой таблице
Чтобы ограничить выбор единицы измерения только теми значениями, которые указаны в списке, необходимо изменить его вид. Для этого выберираем элемент управления comboBox1, щелкаем по нему правой кнопкой мыши и выбираем пункт «Свойства». Меняем свойство «DropDownStyle» на значение «DropDownList». Теперь при работе с этим элементом управления пользователь не сможет ввести в него произвольные данные, а будет ограничен доступным ему списком значений.
Добавим обработчик события Load у формы Form11 (рисунок 18).
Рисунок 18 – Обработчик события Load зависимой переменной
На этапе загрузки формы мы обращаемся к таблице «Группы», считываем оттуда информацию и добавляем ее в список для выбора названий групп на форме. В том случае, если зависимых полей несколько (как, например, в таблице «Занятия»), необходимо выполнить несколько запросов к разным таблицам базы данных и заполнить несколько списков.
Когда список выбора единицы измерения заполнен, можно реализовать само добавление данных, аналогично тому, как это происходит в случае независимых данных: (рисунок 19)
Рисунок 19 – Обработчик Click в зависимой форме
Аналогично осуществляется добавление данных в другие зависимые таблицы БД.
Тестирование программы
Во время тестирования разработанного программного продукта имитируем работу работника кафедры вуза.
При добавлении студента в БД необходимо выбрать «Добавление данных -> Добавление студента». Заполнить все необходимые поля, представленные в форме (рисунок 20).
Рисунок 20 – Образец добавления студента в БД
После добавления данных через «Добавление студента» можно просмотреть на внесенные изменения в таблицу БД через форму «Просмотр данных -> Просмотр студентов» (рисунок 21).
Рисунок 21 – Форма просмотра таблицы студентов после внесения нового студента
После тестирования видно, что программа корректно работает с таблицей БД и правильно формирует отчеты выполненных процессов.
Заключение
Целью выполнения курсового проекта ставилась задача практического освоения объектно-ориентированного программирования. При выполнении курсового проекта планировалось развить навыки программирования и отладки программ, а также проверить умение оформления документации на свою разработку в соответствии со стандартами и навыки публичных выступлений при защите курсового проекта.
Поставленная задача выполнена.
Данная программа является законченным программным продуктом, но так же возможна её доработка. Актуальна необходимость добавления таких возможностей как:
- обеспечение защиты информации (пароль, кодировка и так далее);
- обеспечение многопользовательского режима с предоставлением каждому пользователю своего режима работы и настроек;
- автоматическое заполнение одинаковых полей в разных таблицах при вводе.
Программа имеет удобный пользовательский интерфейс. Она написана для использования в операционной системе Windows. Пользование программой не составит труда для тех, кто знаком с данной оболочкой.
В результате выполнения курсового проекта усовершенствованы знания в области программирования, баз данных и объектно-ориентированного программирования. Приобретены навыки использования научно-технической информации.
© 2014-2022 — Студопедия.Нет — Информационный студенческий ресурс. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав (0.028)
• Первым шагом необходимо проверить наличие искомого клиента
в базе КИС АКАДА.
• Для этого следует запустить 1С и выбрать необходимую базу.
Если у вас не установлена программа 1С или не прописаны базы,
обратитесь в службу поддержки.
• Запустив 1С, зайдите в меню «Обработки» и выберете обработку
«Карта клиента» (Рис.2)
6. Единая карта клиента
7. Единая карта клиента
• В открывшейся форме поиска
клиента в поле «ФИО»
необходимо ввести ФИО
искомого клиента (Рис.3) и
нажать кнопку «Поиск».
• В этом же окне появится
табличная часть со списком
клиентов, среди которых
необходимо по дате рождения,
учебному заведению и
контактной информации
определить нужного.
Рис.3
8. Единая карта клиента
• Так же, в случае
необходимости, можно искать
клиентов по полю «Контактная
информация» (Рис.4).
• Т.е. можно ввести телефон, или
часть телефона и система
выдаст Вам всех, у кого в
контактной информации есть
эта часть.
Рис.4
9. Единая карта клиента. Редактирование существующей карты клиента
• Если вы нашли искомого
клиента в базе и хотите
внести информацию в карту,
следует открыть карту
клиента (Рис.5).
• В эту карточку для удобства
выведены все договора
клиента, вся контактная
информация, а также
карточки студента и
события.
Рис.5
10. Единая карта клиента. Редактирование существующей карты клиента
• Для того, чтобы добавить
новую карту Абитуриента
или Анкету, необходимо
нажать на кнопку
«Добавить» (Рис.6) на
соответствующей вкладке,
затем работа с Анкетой или
картой Абитуриента ведется
согласно установленным
правилам и принятым
регламентам.
Рис.6
11. Единая карта клиента. Редактирование существующей карты клиента
• Для того, чтобы создать
событие, необходимо
нажать на кнопку
«Добавить» на
соответствующей вкладке,
затем работа с Анкетой или
картой Абитуриента ведется
согласно установленным
правилам и принятым
регламентам.
• Обратите внимание, что
событие, созданное
непосредственно в Анкете,
не продлит срок действия
мотиватора входа.
• Мотиватор входа – системный атрибут (признак) в КИС АКАДА, по
которому идентифицируется подразделение, которое первым
привлекло клиента и зафиксировало его в КИС АКАДА.
• Мотиватор входа имеет срок действия, в течение которого
необходимо заключить договор на обучение и довести клиента до
оплаты.
• После истечения срока действия мотиватора входа клиент
становится свободным для мотивации на обучение.
• Система автоматически присвоит мотиватора входа по
подразделению сотрудника, который проведет контакт с клиентом и
создаст в Единой карте клиента (не в анкете) «Событие».
• В соответствии в п.3.5. «Событием» не является комментарии, не
описывающий детали работы с клиентом, такие как: ведется работа,
мотивация на поступление, думает, отказ, Н/Д.
15. Мотиватор Оплаты
• Мотиватор оплаты – системный атрибут (признак) в КИС АКАДА, по
которому идентифицируется подразделение, в котором работает
сотрудник, лично проводивший мотивацию клиента на заключение
договора и оплату обучения.
* Регламент работы с карточками клиентов в КИС АКАДА и проставления мотиваторов
• Первым шагом необходимо проверить наличие искомого клиента
в базе КИС АКАДА.
• Для этого следует запустить 1С и выбрать необходимую базу.
Если у вас не установлена программа 1С или не прописаны базы,
обратитесь в службу поддержки.
• Запустив 1С, зайдите в меню «Обработки» и выберете обработку
«Карта клиента» (Рис.2)
6. Единая карта клиента
7. Единая карта клиента
• В открывшейся форме поиска
клиента в поле «ФИО»
необходимо ввести ФИО
искомого клиента (Рис.3) и
нажать кнопку «Поиск».
• В этом же окне появится
табличная часть со списком
клиентов, среди которых
необходимо по дате рождения,
учебному заведению и
контактной информации
определить нужного.
Рис.3
8. Единая карта клиента
• Так же, в случае
необходимости, можно искать
клиентов по полю «Контактная
информация» (Рис.4).
• Т.е. можно ввести телефон, или
часть телефона и система
выдаст Вам всех, у кого в
контактной информации есть
эта часть.
Рис.4
9. Единая карта клиента. Редактирование существующей карты клиента
• Если вы нашли искомого
клиента в базе и хотите
внести информацию в карту,
следует открыть карту
клиента (Рис.5).
• В эту карточку для удобства
выведены все договора
клиента, вся контактная
информация, а также
карточки студента и
события.
Рис.5
10. Единая карта клиента. Редактирование существующей карты клиента
• Для того, чтобы добавить
новую карту Абитуриента
или Анкету, необходимо
нажать на кнопку
«Добавить» (Рис.6) на
соответствующей вкладке,
затем работа с Анкетой или
картой Абитуриента ведется
согласно установленным
правилам и принятым
регламентам.
Рис.6
11. Единая карта клиента. Редактирование существующей карты клиента
• Для того, чтобы создать
событие, необходимо
нажать на кнопку
«Добавить» на
соответствующей вкладке,
затем работа с Анкетой или
картой Абитуриента ведется
согласно установленным
правилам и принятым
регламентам.
• Обратите внимание, что
событие, созданное
непосредственно в Анкете,
не продлит срок действия
мотиватора входа.
• Мотиватор входа – системный атрибут (признак) в КИС АКАДА, по
которому идентифицируется подразделение, которое первым
привлекло клиента и зафиксировало его в КИС АКАДА.
• Мотиватор входа имеет срок действия, в течение которого
необходимо заключить договор на обучение и довести клиента до
оплаты.
• После истечения срока действия мотиватора входа клиент
становится свободным для мотивации на обучение.
• Система автоматически присвоит мотиватора входа по
подразделению сотрудника, который проведет контакт с клиентом и
создаст в Единой карте клиента (не в анкете) «Событие».
• В соответствии в п.3.5. «Событием» не является комментарии, не
описывающий детали работы с клиентом, такие как: ведется работа,
мотивация на поступление, думает, отказ, Н/Д.
15. Мотиватор Оплаты
• Мотиватор оплаты – системный атрибут (признак) в КИС АКАДА, по
которому идентифицируется подразделение, в котором работает
сотрудник, лично проводивший мотивацию клиента на заключение
договора и оплату обучения.
* Регламент работы с карточками клиентов в КИС АКАДА и проставления мотиваторов
«1С:Автоматизированная проверка конфигураций» (АПК) предназначена для автоматизированной проверки конфигураций и расширений конфигурации, разработанных на платформе «1С:Предприятие 8», на соответствие стандартам и иным требованиям технического характера.
АПК существенно расширяет платформенную проверку конфигурации и выполняет статический анализ технического качества конфигураций и расширений в автоматическом режиме, не требуя их запуска. При этом код конфигурации (расширения конфигурации) может быть написан как на русском, так и на английском языках или их сочетании.
Техническое качество решений
Для разработки технически качественных решений на платформе «1С:Предприятие 8» необходимо придерживаться выработанных стандартов и рекомендаций «Системы стандартов и методик разработки конфигураций для платформы 1С:Предприятие 8». Эти стандарты предполагают соблюдение правил разработки конфигураций на платформе «1С:Предприятие 8», в частности, принципов построения архитектуры конфигурации, ее запуска и работы, правил написания кода и правил орфографии в программном коде и текстах.
Регулярное выполнение проверок и исправление найденных ошибок в процессе разработки прикладных решений способствует значительному повышению качества работ, однако выполнение проверок даже небольших конфигураций на постоянной основе вручную бывает проблематично.
Основные возможности
АПК выполняет проверку технического качества конфигураций в следующих вариантах:
- Разовая автоматическая проверка конфигураций на соответствие актуальным стандартам разработки конфигураций на платформе «1С:Предприятие 8» для получения детального представления о качестве конкретной версии прикладного решения (например, при сертификации на статус «1С:Совместимо»).
Это рекомендуемый вариант для непрерывной интеграции (CI, англ. Continuous Integration) с целью выявления ошибок и несоответствий стандартам на ранней стадии разработки. Непрерывная интеграция — практика частой сборки и тестирования продукта с целью выявления и устранения ошибок почти сразу же, как только они были привнесены.
Для этого в распоряжении у разработчика есть целый ряд средств:
Проверка орфографии
Для более тщательной проверки конфигурации на орфографические ошибки и исключения ложных ошибок применяется сервис «Проверка правописания: Яндекс.Спеллер». Орфография проверяется как в именах переменных, параметров, процедур, функций, так и в комментариях в коде, в именах и синонимах метаданных, а также в макетах.
Сервисные возможности
- Выгрузка и загрузка списка ответственных для их переноса между различными конфигурациями в одной или между несколькими базами АПК.
- Выгрузка и загрузка особенностей конфигурации в файл для учета этих особенностей при проверке других конфигураций, основанных на исходной.
- Выгрузка и загрузка словаря верных слов для его актуализации в других базах.
Сравнение качества различных конфигураций
Для сравнения качества можно выполнить проверку нескольких конфигураций в одной информационной базе АПК и построить сводный отчет по выявленным ошибкам в интересующих конфигурациях.
Расширяемость
Предусмотрена возможность разработки собственных правил проверки конфигурации для автоматического контроля внутренних регламентов разработки прикладных решений.
Порядок распространения и использования
Для использования финальной версии «1С:Автоматизированная проверка конфигураций» необходима платформа «1С:Предприятие 8» версии 8.3.6 и выше.
Приобретение клиентских лицензий специально для работы с данной конфигурацией не требуется. Документация и примеры проверок включены в продукт в электронном виде.
Привет, Хабр!
В этой статье мы начнем рассказ о том, как устроена внутри платформа «1С:Предприятие 8» и какие технологии используются при ее разработке.
Нативные приложения
- STL (в частности, строки, контейнеры и алгоритмы)
- множественное наследование, в т.ч. множественное наследование реализации
- шаблоны
- исключения
- умные указатели (собственная реализация)
Компоненты
- Разделение способствует лучшему проектированию, в частности лучшей изоляции кода
- Из набора компонентов можно гибко собирать разные варианты поставки:
- Например, инсталляция тонкого клиента будет содержать wbase, но не будет backend
- а на сервере wbase, наоборот, не будет
- оба варианта будут, конечно, содержать nuke и bsl
- Предоставляет фабричные методы, позволяющие создать класс из другой компоненты зная только его название (без раскрытия реализации)
- Предоставляет инфраструктуру умных указателей с подсчетом ссылок. За временем жизни SCOM-класса не нужно следить вручную
- Позволяет узнать реализует ли объект конкретный интерфейс и автоматически привести указатель на объект к указателю на интерфейс
- Создать объект-сервис, всегда доступный через метод get_service и т.д.
Этот макрос опишет специальный статический класс-регистратор, конструктор которого будет вызван при загрузке компоненты в память.
После это можно создать его экземпляр в другой компоненте:Для поддержки сервисов SCOM предлагает дополнительную, достаточно сложную инфраструктуру. Центральным в ней является понятие SCOM-процесса, который служит контейнером для запущенных сервисов (т.е. выполняет роль Service Locator), а также содержит привязку к локализуемым ресурсами. SCOM процесс привязывается к потоку ОС. Благодаря этому внутри приложения можно вот так получать сервисы:
Более, того переключая логические (SCOM) процессы привязанные к потоку, можно получить практически независимые с точки зрения информационного пространства приложения, выполняющиеся в рамках одного потока. Так устроен наш тонкий клиент, работающий с файловой базой — внутри одного процесса ОС находятся два SCOM-процесса, один связан с клиентом, а второй — с сервером. Такой подход позволяет унифицировать написания кода, который будет работать как на локальной файловой базе, так и в «настоящем» клиент-серверном варианте. Цена за такое единообразие — накладные расходы, но практика показывает, что они того стоят.
На основе компонентной модели SCOM реализована и бизнес-логика и интерфейсная часть 1С: Предприятия.
Пользовательский интерфейс
Кстати, об интерфейсах. Мы не используем стандартные контролы Windows, наши элементы управления реализованы напрямую на Windows API. Для Linux-версии сделана прослойка, работающая через библиотеку wxWidgets.
Библиотека элементов управления не зависит от других частей «1С:Предприятия» и используется нами еще в нескольких небольших внутренних утилитах.За годы развития 1С:Предприятие внешний вид контролов менялся, но серьезное изменение принципов произошло только один раз, в 2009 году, с выходом версии 8.2 и появлением «управляемых форм». Помимо изменения внешнего вида, фундаментально изменился принцип компоновки формы — произошел отказ от попиксельного позиционирования элементов в пользу flow-компоновки элементов. Кроме того, в новой модели элементы управления работают не напрямую с доменными объектами, а со специальными DTO (Data Transfer Objects).
Эти изменения позволили создать веб-клиент «1С:Предприятия», повторяющий С++ логику контролов на JavaScript. Мы стараемся поддерживать функциональную эквивалентность между тонким и веб клиентами. В том случае, когда это невозможно, например, из-за ограничений доступных из JavaScript API (например, возможности работы с файлами очень ограничены), мы часто реализуем нужную функциональность при помощи расширений браузеров, написанных на C++. На данный момент мы поддерживаем Internet Explorer и Microsoft Edge (Windows), Google Chrome(Windows), Firefox (Windows и Linux) и Safari (MacOS).Кроме того, технология управляемых форм используется для создания интерфейса мобильных приложений на платформе 1С. На мобильных устройствах отрисовка контролов реализована с использованием «родных» для операционной системы технологий, но уже для логики компоновки формы и реакции интерфейса используется тот же код, что и в «большой» платформе «1С:Предприятие».
Интерфейс 1С на ОС Linux
Интерфейс 1С на мобильном устройстве
Интерфейс 1С на ОС Windows
Интерфейс 1С — веб-клиентOpen source
Заключение
В статье мы коснулись нескольких основных аспектов разработки платформы «1С: Предприятие». В ограниченном объеме статьи мы затронули лишь некоторые интересные, на наш взгляд, аспекты.
Общее описание различных механизмов платформы можно посмотреть тут.
Какие темы были бы интересны Вам в следующих статьях?Как реализована мобильная платформа 1С?
Описание внутреннего устройства веб-клиента?
Или, может быть, Вам интересен процесс выбора фич для новых релизов, разработки и тестирования?Читайте также: