![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 14.02.2012
Сообщений: 7
|
![]()
Всем привет!
Я новичек в Access и тем более в языках программирования. Но, я учусь... Нужна ваша помощь в создании небольшой базы в помощь лаборантам и врачам, и прошу вас помочь советом или примером. У нас маленький мед.центр в области диетологии. Руководство поставило задачу по созданию БД в помощь сотрудникам. Чтобы они не выполняли одни и те же расчеты и не вели всё на бумаге. Я предположил, что нужно создать и вести карточки пациентов, куда будет занесена информация по ним, все расчеты и рекомендации. Приведу пример: есть некий пациент "Иванов Степан Сергеевич", пол "мужской", его параменты: возраст 30 лет, масса тела 110 кг, рост 1,86м. Необходимо расчитать его Индекс массы тела (формула ИМТ=Масса тела, кг/Рост^2) и для данного пациента =31,8. Я в форме добавил поле для расчета с формулой и в форме производится расчет ИМТ. Но, данные не сохраняються в таблице "Пациенты" в поле "ИМТ". Пока не знаю, как это сделать (после расчета вставлять в поле). После расчета ИМТ (31,8) нужно из таблицы "ИМТ" совершить выборку согласно периоду от MAX до MIN. В зависимости от ИМТ выбрать Оценку. И Оценка для данного числа равна "1-я степень ожирения", я не знаю, как выполнять автоматический подбор исходя из периода. И как результат оценки заносить в таблицу "Пациенты" в поле "Оценка ИМТ". И уже после проведения подбора ИМТ, необходимо подобрать "Рекомендации" согласно результатам "ИМТ", "Оценки ИМТ", "возраста" и "пол" (таблица для подбора с диапазоном - Рекомендации). В этом случае Рекомендации будут для Иванов Степан Сергеевич - Физические упражнения №3 и добавить этот результат в таблицу Пациенты (чтобы сохранить историю и вывести отчет) в поле Рекомендации к Иванов Степан Сергеевич. И конечно же для пациента распечатать отчет. Очень прошу вашей помощи, не смогу сам разобраться. Пожайлуста. Если вам тяжело и не хватает времени для примера, то подскажите где можно искать или посмотреть пример или инфу. Буду очень благодарен. Может у кого есть пример такой БД иследовательской лаборатории. Пожайлуста - помогите. Базу приложил: Последний раз редактировалось fori; 27.03.2012 в 14:31. Причина: Исправил ошибки в тексте... |
![]() |
![]() |
![]() |
#2 |
Регистрация: 14.02.2012
Сообщений: 7
|
![]()
Помогите решить вопрос:
Попробую упростить задачу: 1. есть таблица1 с полями: а - число, в - число, с - текст, d - число (неизвестное), нужно вычислить формулу d=a/в полученный ответ "d" подставить в поле "d" таблицы1 (формулу в форме я вписал - считает, но как добавить значение в таблицу1 - не знаю). 2. есть таблица2 с полями d max - число, d min - число, e - текст, и в зависимости в какой диапазон попадает значение d с таблиці1 (от мах до min), выбрать поле с. |
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 17.07.2011
Сообщений: 145
|
![]()
Так накропал навскидку событие конечно можно поменять. Лично мои рекомендации, так как вы указали что новичок:
- не использовать кирилицу в названиях полей, таблиц, переменных, элементов управления - подумать над структурой базы, она важнее вычисляемых полей - спрогнозировать изменения в базе, на предмет её усложнения, т.к. такой способ хранения данных мне представляется наиболее удобным, в вашем случае особенно, к примеру наверняка понадобиться история ведения больного, его приёмы у врачей, а это уже повлечёт за собой создание базы врачей ну и т.д. - и наконец поизучать Access, или предложить работу специалистам |
![]() |
![]() |
![]() |
#4 | |
Регистрация: 14.02.2012
Сообщений: 7
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 17.07.2011
Сообщений: 145
|
![]()
Прошу прощения, забыл указать, что происходит вычиление ИМТ, после обновления поля Масса_тела или обновления поля Рост, тогда же Поле13 присваивает значение первому найденому результату в таблице ИМТ. Это можно увидеть открыв код события "после обновлениия" поля Масса_тела. И кстати забыл упомянуть что в определении оценки у вас пересекаются диапазоны, долго смотрел — так ничего и не понял как пределить степень ожирения, та же ситуация с рекомендациями.
И ещё я вам советую для начала изучить например этот сайт. Последний раз редактировалось satka; 28.03.2012 в 12:20. |
![]() |
![]() |
![]() |
#6 | |
Регистрация: 14.02.2012
Сообщений: 7
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 17.07.2011
Сообщений: 145
|
![]()
Видимо проблема в версии Access.
Re: |
![]() |
![]() |
![]() |
#8 |
Регистрация: 14.02.2012
Сообщений: 7
|
![]() |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
fori
не подтверждаю. Вы форму открывали? Рост меняете, ИМТ изменяется?! Потому что у меня пример от Satka работает! (у меня MS Access 2007) А изменение назначено на событие "Рост" - "События" - "После обновления" назначен код Sub Рост_AfterUpdate(): Код:
p.s. Режим "Grammar-nazy" включён! "Возвраст:" и "Масс тела:" - написаны неграмотно. |
![]() |
![]() |
![]() |
#10 | |
Регистрация: 14.02.2012
Сообщений: 7
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
вывод результата | Илья- | Общие вопросы C/C++ | 0 | 16.11.2011 17:29 |
Вывод результата блоками | nervniy | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 28.05.2011 20:26 |
[access]реализовать вывод отчёта продажи за определённый период времени | nuevegramodelamor | Фриланс | 1 | 18.04.2011 09:50 |
Вывод результата Delphi | Nikita++ | Помощь студентам | 5 | 20.12.2010 15:48 |
Подсчет и вывод результата... | sew960i | Microsoft Office Excel | 18 | 31.01.2010 14:04 |