Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 1 674

/ вопрос открыт /

Здравствуйте, эксперты!Задача:Психолог опрашивает пациента и заносит баллы для соотвествующих вопросов.Цель необходимо подсчитать итог(сумму баллов)по каждой попытке заполнения.Есть база данных в Access,которая имеет таблици: есть таблица данные,куда заносится дата заполнения,номер попытки,имеется поле итого.Число попыток не ограничено.таблица опрос в которой выбрав из выподающего списка вопрос и ставится балл.Число вопросов не ограничено и их мы можем увеличить.для этого,имеется таблица вопросы где хранятся вопросы,она являетя справочником.Открыв форму с таблицей данные и выбрав необходимую попытку,двойным щелчком на таблице можем просмотреть вопросы и заполненные баллы.Таблици данные и опрос связаны ключами.Используются компоненты ADOConnection,ADOTable,DataSource.Данные ваводятся DBGrid.Необходимо подсчитаь сумму баллов которые заносятся в таблицу опрос,записываемые в таблице в один столбец-балл, и вывисти в таблицу данные в поле итого.Как это можно реализовать?(отправляю программу,где все можно посмотреть.Запускаем главную форму жмем просмотр пациентов выбираем необходимого и жмем просмотр,в личной карточке переходим на историю болезни и жмем просмотр таблици данные,где можем осуществить заполнение опроса)

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

kanyen Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: kanyen (статус: Посетитель)
Вопрос отправлен: 11 июня 2008, 18:28
Состояние вопроса: открыт, ответов: 1.

Ответ #1. Отвечает эксперт: Вадим К

Здравствуйте, kanyen!
Просмотрел я вашу программу, не нашёл, где же там сами вопросы. Надпись в окне "программа вмешательства" порадовала. люблю я за это психологов.
Но не об этом разговор.
Что бы реализовать запоминание ответов на вопросы и делать различный выборки по ним, обычно делают такую табличку.
id_пациента - целове
id_вопроса - целое
номер_попытки - целое
номер_ответа - целое или "правильно_ответил" - логическое.
бал - целое

И ответы всех пациентов заносим в эту табличку. теперь, когда надо подсумировать балы какого то пациента по какому то тесту, то пишем где то такой запрос
select sum(бал) from таблица where id_пациента = ??? and номер_попытки = ??? group by бал
Добавив чуточку фантазии, можно выбирать и список всех пациентов с их балами, или по какой то попытке. Главное придумать.

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 11 июня 2008, 23:13
Оценка за ответ: 4


Мини-форум вопроса

Всего сообщений: 3; последнее сообщение — 12 июня 2008, 09:06; участников в обсуждении: 2.
kanyen

kanyen (статус: Посетитель), 12 июня 2008, 02:18 [#1]:

Здравствуйте, эксперты!можно ли реализовать данную задачу не используя запросы?
kanyen

kanyen (статус: Посетитель), 12 июня 2008, 02:20 [#2]:

Здравствуйте, эксперты!Что необходимо для этого написать?
Вадим К

Вадим К (статус: Академик), 12 июня 2008, 09:06 [#3]:

Реализовать без запросов? можно, но прийдётся всё это реализовывать вручную. То, что можно написать в 3-4 строки с применением SQL запросов, вручную часто может вылиться в сотни строк.
Галочка "подтверждения прочтения" - вселенское зло.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:45
Выполнено за 0.02 сек.