Разработка приложений интегрированных систем
Объекты для взаимодействия с системой регистрации
Вход в систему регистрации
Информация о приложении
Регистрация приложения
Размещение иконы приложения
Регистрация прав пользователей
Регистрация привилегии
Использование привилегии в приложении
Постановка блокировки при редактировании объекта
Постановка "короткой" блокировки
Экран блокировки. Контроль блокировок
Запись в журнал. Просмотр журнала
Системные параметры
Управление транзакцией
Отправка сообщения
Вызов отчета
Открытие документа
2.57M
Category: softwaresoftware

Разработка приложений интегрированных систем. Тема 8

1. Разработка приложений интегрированных систем

Проектирование и разработка программного обеспечения интегрированных систем управления
Разработка приложений
интегрированных систем
Шевченко А. В.
Разработка приложений интегрированных систем
1

2.

Проектирование и разработка программного обеспечения интегрированных систем управления
Разработка приложений интегрированных систем
Регистрация
Администратор
База данных
Приложения
Пользователи
Сессии
Привилегии
Блокировки
Журнал
Сообщения
Приложение
Шевченко А. В.
Разработка приложений интегрированных систем
2

3.

Проектирование и разработка программного обеспечения интегрированных систем управления
Системный каталог, файл конфигурации
Системный
каталог
app
log
icon
documents
Файл
конфигурации
Каталог
приложений
Приложение
"Регистрация"
Шевченко А. В.
Системный
каталог
Имя
базы данных
Разработка приложений интегрированных систем
3

4.

Проектирование и разработка программного обеспечения интегрированных систем управления
Пользователь
Пользователи, сессии
Регистрация
Приложения
Станция
База данных
Сессия
Приложение
Приложение
Приложение
Блокировки
Журнал
Сообщения
Шевченко А. В.
Разработка приложений интегрированных систем
4

5.

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

6.

Проектирование и разработка программного обеспечения интегрированных систем управления
Регистрация рабочих станций
Модуль
«Оборудование»
Шевченко А. В.
Редактирование
оборудования
Разработка приложений интегрированных систем
6

7. Объекты для взаимодействия с системой регистрации

Проектирование и разработка программного обеспечения интегрированных систем управления
Объекты для взаимодействия с системой регистрации
Главная форма приложения
IOSystem
Connection
LogSystem
io;
DB;
LOG;
__fastcall TMainForm::TMainForm(TComponent* Owner) :
TForm(Owner)
{
UI.Init();
LOG.InitInfo(this, DATE_TIME);
}
Шевченко А. В.
Разработка приложений интегрированных систем
7

8. Вход в систему регистрации

Проектирование и разработка программного обеспечения интегрированных систем управления
Вход в систему регистрации
Головной модуль приложения
int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR argv, int)
{
try
{
if(LOG.Init(argv))
{
Application->Initialize();
Application->Title = "...";
Application->CreateForm(__classid(...), &...);
}
Application->Run();
}
...
return(0);
}
Шевченко А. В.
Разработка приложений интегрированных систем
8

9. Информация о приложении

Проектирование и разработка программного обеспечения интегрированных систем управления
Информация о приложении
Главная форма приложения
TBitBtn : login_bt
TBitBtn : info_bt
__fastcall TMainForm::TMainForm(TComponent* Owner) :
TForm(Owner)
{
...
LOG.InitInfo(this, DATE_TIME);
}
Шевченко А. В.
Разработка приложений интегрированных систем
9

10. Регистрация приложения

Проектирование и разработка программного обеспечения интегрированных систем управления
Регистрация приложения
Редактирование
приложения
Загрузка
exe-файла
Модуль
«Приложения»
Редактирование
версии
Шевченко А. В.
Разработка приложений интегрированных систем
10

11. Размещение иконы приложения

Проектирование и разработка программного обеспечения интегрированных систем управления
Размещение иконы приложения
Имя файла
иконы
Каталог
…/icon/application
Формат .ico, 32 x 32
Шевченко А. В.
Разработка приложений интегрированных систем
11

12. Регистрация прав пользователей

Проектирование и разработка программного обеспечения интегрированных систем управления
Регистрация прав пользователей
Редактирование
пользователя
Модуль
«Пользователи»
Доступные
приложения
Шевченко А. В.
Разработка приложений интегрированных систем
12

13. Регистрация привилегии

Проектирование и разработка программного обеспечения интегрированных систем управления
Регистрация привилегии
Новая
привилегия
Код
привилегии
Описание
привилегии
Модуль
«Привилегии»
Шевченко А. В.
Сохранение
привилегии
Разработка приложений интегрированных систем
13

14. Использование привилегии в приложении

Проектирование и разработка программного обеспечения интегрированных систем управления
Использование привилегии в приложении
TBitBtn : import_bt
__fastcall TMainForm::TMainForm(TComponent* Owner) :
TForm(Owner)
{
...
UI.Visible(import_bt) = LOG.HasPrivilege("IMPORT_ACCESS");
Шевченко А. В.
Разработка приложений интегрированных систем
14

15. Постановка блокировки при редактировании объекта

Проектирование и разработка программного обеспечения интегрированных систем управления
Постановка блокировки при редактировании объекта
Заголовок формы (h-файл), часть «private»
DTInt2 lock_id;
Файл формы (cpp-файл), обработчик чтения объекта
lock_id = LOG.LockOn("order", number); if(!lock_id) return;
Чтение объекта из БД
Отображение информации
Файл формы (cpp-файл), обработчик сохранения объекта
Запись объекта в БД
LOG.LockOff(lock_id);
Шевченко А. В.
Разработка приложений интегрированных систем
15

16. Постановка "короткой" блокировки

Проектирование и разработка программного обеспечения интегрированных систем управления
Постановка "короткой" блокировки
Файл формы (cpp-файл), функция обновления объекта
{
Lock lock("order", number); if(!lock.granted) return;
...
}
Шевченко А. В.
Класс
объекта
Номер
объекта
Разработка приложений интегрированных систем
16

17. Экран блокировки. Контроль блокировок

Проектирование и разработка программного обеспечения интегрированных систем управления
Экран блокировки. Контроль блокировок
Блокировки
Экран
блокировки
Мониторинг
Шевченко А. В.
Разработка приложений интегрированных систем
17

18. Запись в журнал. Просмотр журнала

Проектирование и разработка программного обеспечения интегрированных систем управления
Запись в журнал. Просмотр журнала
Файл формы (cpp-файл), функция обновления объекта
...
LOG.Journal(number^"Изменен заказ %d");
...
Журнал
Шевченко А. В.
Разработка приложений интегрированных систем
18

19. Системные параметры

Проектирование и разработка программного обеспечения интегрированных систем управления
Системные параметры
Файл формы (cpp-файл)
...
DTInt2 rate = LOG.PAR("RATE");
...
Шевченко А. В.
Разработка приложений интегрированных систем
Редактирование
параметров
19

20. Управление транзакцией

Проектирование и разработка программного обеспечения интегрированных систем управления
Управление транзакцией
Файл формы (cpp-файл)
...
TRANSACTION
{
DB.InpPar(...);
DB.Query("update ...");
DB.InpPar(...);
DB.Query("insert ...");
LOG.Journal("...");
}
...
Шевченко А. В.
Разработка приложений интегрированных систем
20

21. Отправка сообщения

Проектирование и разработка программного обеспечения интегрированных систем управления
Отправка сообщения
Файл формы (cpp-файл)
...
Уровень срочности:
MAIL_NORMAL - зеленый
MAIL_AVERTIS - желтый
MAIL_URGENT - красный
DTInt2 user_id = ...;
DTInt2 sess_id = LOG.GetSesID(user_id);
DTString mes
= "Получен новый заказ";
LogMail::Send(user_id, sess_id, mes, MAIL_NORMAL, NULL,
0, 0, 0, 0, 0, NULL);
...
Шевченко А. В.
Разработка приложений интегрированных систем
21

22. Вызов отчета

Проектирование и разработка программного обеспечения интегрированных систем управления
Вызов отчета
Файл формы (cpp-файл)
DTInt2
rep_id = ...;
DTString par1
= "...";
DTString par2
= "...";
TReportView::Open(rep_id, par1, par2);
Шевченко А. В.
Разработка приложений интегрированных систем
22

23. Открытие документа

Проектирование и разработка программного обеспечения интегрированных систем управления
Открытие документа
Файл формы (cpp-файл)
...
DTInt2 doc_id = ...;
DOC::Open(doc_id);
...
Шевченко А. В.
Разработка приложений интегрированных систем
23
English     Русский Rules