Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 10.06.2015, 19:32
Afonia63 Afonia63 вне форума
Прохожий
 
Регистрация: 10.06.2015
Сообщения: 2
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Экспертная система с БД MS Access

Добрый вечер все пользователям, заранее прошу прощения, если такая тема есть.
Я полный дуб и в Delphi и в Access, ни разу не работал с этими программами, но получилось так, что надо создать простенькую экспертную систему с помощью базы данных из MS Access. База данных у меня есть, она представляет собой табличку, состоящую из 3 столбцов: 1 - "Неисправность", 2 - "Причина неисправности", 3 - "Принимаемые меры". Вопрос в следующем, как в Delphi 7 организовать поиск "причины неисправности" и "принимаемой меры" через "неисправность". То есть пользователь данной экспертной системы выбирает одну из неисправностей, и у него на экране появляется причина этой неисправности и то какие меры необходимо принять. Объясните, хотя бы схематически, как это организовать?
P.S. Не прошу сделать всю работу за меня, а просто хотелось бы получить пояснения.
Ответить с цитированием
  #2  
Старый 10.06.2015, 23:13
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Ну а что здесь понимать: если симптом - движок троит, то причина - либо пробой СЖ или КЗ, лечение - замена или свечки или катушки сбоящего цилиндра, здесь нужна просто выборка из соответствующих столбцов таблицы (или нужен фильтр?), непонятки
Ответить с цитированием
  #3  
Старый 10.06.2015, 23:17
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,004
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

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

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

Доступ к БД - через ADO. Можно через DBExpress, но ADO в данном случае более нативный способ доступа.
Ответить с цитированием
  #4  
Старый 12.06.2015, 18:50
Afonia63 Afonia63 вне форума
Прохожий
 
Регистрация: 10.06.2015
Сообщения: 2
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Спасибо за ответ. У меня теперь возник другой вопрос: Как мне связать три формы (как на рисунке). То есть мне надо, чтобы при выборе одного из режимов работы (обучение или эксперт) и нажатии на кнопку "Далее", появлялась, соответствующая выбранному режиму, форма.
Ответить с цитированием
  #5  
Старый 15.06.2015, 00:26
Аватар для Kailon
Kailon Kailon вне форума
Активный
 
Регистрация: 06.06.2010
Сообщения: 339
Версия Delphi: 10.4
Репутация: 429
Сообщение

Я думаю, что CheckBox тут не пойдет. Потому, что можно выбрать оба режима сразу. Более уместно использовать RadioGroup.
Код:
procedure TFormMode.btnNextClick(Sender: TObject);
begin
  case rgSelectMode.ItemIndex of
    0: FormTraining.ShowModal;
    1: FormExpert.ShowModal;
  end;
end;
Да и вообще, смог связать с БД, но нес мог вызвать другую форму. Странно...
__________________
Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.

Последний раз редактировалось Kailon, 15.06.2015 в 00:29.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:24.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter