|
Вопрос # 1 674/ вопрос открыт / |
|
Здравствуйте, эксперты!Задача:Психолог опрашивает пациента и заносит баллы для соотвествующих вопросов.Цель необходимо подсчитать итог(сумму баллов)по каждой попытке заполнения.Есть база данных в Access,которая имеет таблици: есть таблица данные,куда заносится дата заполнения,номер попытки,имеется поле итого.Число попыток не ограничено.таблица опрос в которой выбрав из выподающего списка вопрос и ставится балл.Число вопросов не ограничено и их мы можем увеличить.для этого,имеется таблица вопросы где хранятся вопросы,она являетя справочником.Открыв форму с таблицей данные и выбрав необходимую попытку,двойным щелчком на таблице можем просмотреть вопросы и заполненные баллы.Таблици данные и опрос связаны ключами.Используются компоненты ADOConnection,ADOTable,DataSource.Данные ваводятся DBGrid.Необходимо подсчитаь сумму баллов которые заносятся в таблицу опрос,записываемые в таблице в один столбец-балл, и вывисти в таблицу данные в поле итого.Как это можно реализовать?(отправляю программу,где все можно посмотреть.Запускаем главную форму жмем просмотр пациентов выбираем необходимого и жмем просмотр,в личной карточке переходим на историю болезни и жмем просмотр таблици данные,где можем осуществить заполнение опроса)
К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)
 |
Вопрос задал: 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 (статус: Посетитель), 12 июня 2008, 02:18 [#1]:
Здравствуйте, эксперты!можно ли реализовать данную задачу не используя запросы?
|
|
kanyen (статус: Посетитель), 12 июня 2008, 02:20 [#2]:
Здравствуйте, эксперты!Что необходимо для этого написать?
|
|
Вадим К (статус: Академик), 12 июня 2008, 09:06 [#3]:
Реализовать без запросов? можно, но прийдётся всё это реализовывать вручную. То, что можно написать в 3-4 строки с применением SQL запросов, вручную часто может вылиться в сотни строк.
Галочка "подтверждения прочтения" - вселенское зло.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|