Форум программистов, компьютерный форум, киберфорум
Наши страницы
MS Access
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.71/84: Рейтинг темы: голосов - 84, средняя оценка - 4.71
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
#1

Подсчет количества записей с условиями

11.03.2012, 19:33. Просмотров 15248. Ответов 152
Метки нет (Все метки)

Я создала таблицы: паспортная часть и форма 14. Как сделать так, чтобы в каждой строчке было заложено определнное условие: данные выбирались из "Паспортной части" по возрасту, по полу, по шифру МКБ и причине выбытия из стационара - выводилось одной цифрой в определеной строке и графе в "Форме 14". Ни как не могу загрузить файл.
0
Вложения
Тип файла: rar Форма 14.rar (183.0 Кб, 67 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2012, 19:33
Ответы с готовыми решениями:

Подсчет количества записей с группировкой повторяющихся записей с VBA
Доброго времени суток! Вопрос возник следующий. Имеется ленточная форма...

Подсчет количества записей
Задача: Вывести сведения о работающих в фирмах с указанием наименования...

Подсчет количества отмеченных записей
Собсно в этом и вопрос ... Каким образом подсчитать записи "отмеченные"...

Подсчет количества записей в результате запроса
Выполнен SQL запрос. Как програмно посчитать сколько записей из исходной...

Подсчет количества записей за определенный период
Приветствую. Проблема с запросом на подсчет количества. Надо, чтобы выводился...

152
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
12.03.2012, 08:38 #2
1.Уберите поля подстановки из таблицы Паспортная часть (кстати лучше переименовать её без пробелов, как у меня). Подстановку значений и ввод данных осуществляют в форме, а не в таблице. Обратите внимание как введены в базу районы, посмотрите на схему данных и переделайте все списки значений по аналогии, а то так и будете в каждом поле повесть временных лет писать.
2. По форме 14. Во первых там какая-то долгозагружающаяся сводная штука. А вот 14_2 - это вроде форма, но там я не понял: Куда и что нужно вставлять? Связать с паспортными данными? Но для этого должен быть код паспортных данных связан в схеме данных с определённым полем вашей таблицы Форма14. Сама таблица ещё требует переработки, возможно лучше будет ограничится вообще полями: код, код_болезни, код_описания, сумма. Поле наименование болезни нужно вынести в отдельную таблицу (Шифр и номер строки туда же) и поступить также, как с районами, остальные поля наверное также стоит вынести в одну таблицу Описания (либо как это называется). Вообщем нужно переработать БД в сторону нормализации.
3. В форме 14 у вас перечисляются болезни и выписано больных, к примеру, допустим 20. Как вы видите связь этих 20-ти с одной записью из паспортной_части? Непонятна задача.
0
Вложения
Тип файла: rar Форма_14.rar (80.7 Кб, 78 просмотров)
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
12.03.2012, 16:35  [ТС] #3
То есть получается, что на каждую "задачу" нужно сделать таблицу с обсчетом данных?
0
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
12.03.2012, 16:57 #4
Почему? Поместите задачи также, как районы и выбирайте потом на форме из списка. Задачи, как и районы, будут же со временем добавляться, меняться. Вы это учитываете? И мне очень хочется услышить ответы на свои вопросы.
0
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
12.03.2012, 19:16  [ТС] #5
Моя цель создания этой программы - создать выборку данных по нескольким параметрам в количественном выражении. Я пытаюсь решить следующие задачи:
1. Таблица "Паспортная часть" создана как накопитель интересующей информации о пациенте, пролечившемся в стационаре;
2. Форма 14 - это одна из сложных форм отчетности в нашем ведомстве;
3. Все, что я создала - это макет того, что должно быть в окончательном варианте.
4. Основная задача: (например) в графе "выписаны..." в строке "Шифр по МКБ" со значением "А00-А98" должно суммироваться то количество выборки, которое соответствует следующим условиям: количество выписанных пациентов в возрасте от 18 и страше с определенным шифром по МКБ ("А00-А98").
0
Ameli
2059 / 1135 / 38
Регистрация: 05.11.2009
Сообщений: 1,604
12.03.2012, 21:21 #6
Нет необходимости хранить в таблице вычисляемые данные, их всегда можно получить в запросах, формах и отчетах. Таблицы должны быть такими:
-Диагнозы: КодДиагноза, Наименование болезни, Шифр
-Списки (лучше переименовать в Учреждения): КодУчрежд, и все, как есть, хотя мне не понятны пробелы в записях, будут ли они заполнены?
-Паспортная часть: достаточно хранить по одному полю для связи с каждой из таблиц, т.е. достаточно поля Диагноз (связанное с КодомДиагноза) и Учерждение (связанное с КодомУчреждения). Т.е. можно отбросить поля Шифр по МКБ, который есть в таблице Диагнозы, а также поля Тип учреждения, Наименование учреждения, Отделение, Профиль койки, которые есть в таблице Списки (Учрежедения).
Также из таблицы Паспортная часть можно удалять Проведено дней, его можно вычислить, как разницу между датами приема и выписки, с помощью функции DateDiff() (В приложении запрос Подсчеты по Паспортной части):
КолДней: DateDiff("d";[Дата поступления в стационар];[Дата выбытия из стационара])
Все подсчеты из вашей таблицы Форма14 также можно сделать в запросе с помощью функции DCount(), в которой отобразить нужные условия. Например, Выписано больных от 18 и старше: для этого подсчета нужно отдельно подсчитать возраст по дате рождения (в приложении запрос Подсчеты по Паспортной части):
Возраст: Round((Date()-[Дата рождения])/365,25)
Далее составляем запрос по таблице Диагнозы, создаем вычисляемое поле Выписано от 18:
DCount("*";"[Подсчеты по Паспортной части]";"[Диагноз при выписке] = " & [КодДиагноз] & " AND [возраст]>=18 AND [Причина выбытия из стационара] = 'выписан' ")
Т.о. по каждому диагнозу будут подсчитываться записи в запросе Подсчеты по Паспортной части, для которых возраст более 18 и причина выбытия = выписан
0
Вложения
Тип файла: rar Форма 14.rar (36.1 Кб, 58 просмотров)
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
13.03.2012, 03:17  [ТС] #7
Спасибо большое!!!! Я поняла теперь свои ошибки. Теперь исправлю и еще раз с Вами свяжусь.
0
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
17.03.2012, 19:25  [ТС] #8
Я попыталась привести таблицы в порядок. Помогите создать запрос "Для_формы14", чтобы в одной графе "выписано" по строкам считались только те заболевания, которые соответствовали бы шифрам МКБ + позиция "выписан" + возраст от 18 лет.
0
Вложения
Тип файла: rar Форма 14.rar (2.78 Мб, 32 просмотров)
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
18.03.2012, 08:31 #9
1.Делайте сжатие своей БД, у меня после сжатия в архиве она стала 300 кб, в 10 раз разница.
Чем больше объём вашей БД, тем меньше народу её скачает.
2.Вы имена полям, по которым делаете связи, одинаковые делайте везде, ну или похожие, а то:
3.Вы не запонили позиция "выписан", как создавать запрос?
4.Таблица для_формы_14 - это что?
5. Вы покажите свой вариант запроса?
1
Миниатюры
Подсчет количества записей с условиями  
Вложения
Тип файла: rar Форма 14.rar (350.6 Кб, 19 просмотров)
Ameli
2059 / 1135 / 38
Регистрация: 05.11.2009
Сообщений: 1,604
18.03.2012, 11:08 #10
1) Паспортная часть содержит текстовое поле Район с подстановкой из фиксированного списка (и не лень вам было перечислять?), при этом соединено с КодомРайона на схеме, как и должно быть. Оно должно быть числовым и содержать коды районов
2) В учреждениях Код района соединен с Районом, а не с Кодом Района.
3) С причинами не понятно, у вас есть Причина поступления и Причина выписки, при этом Причина поступления соединена с Причинами2, в которых причины не похожи на причины поступления:
-проведено патолого-анатомических вскрытий
-установлено расхождений диагнозов

это точно причины поступления в стационар?
4) У вас таблица Диагнозы распалась на две: Шифр по МКБ и Для формы 14, есть ли в этом необходимость? Зачем нужна таблица Для формы 14? Может эти поля добавить в таблицу Шифр по МКБ?
1
Вложения
Тип файла: rar форма 14.rar (296.1 Кб, 32 просмотров)
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
18.03.2012, 11:22  [ТС] #11
Таблица "Форма_14" в исправленном варианте - это то, что должно получиться из всей базы данных.
В графе "выписано..." должны включаться данные по следующей выборке: выписанные больные старше 18 лет с шифром по МКБ (этот шифр выбирается из очень большой таблицы "Шифр по МКБ"), который должен соответствовать строке в "форме_14" (Например: в строке с 2.1 (А00-А09) = выписанные больные от 18 лет с диагнозом (шифром) от А00 до А09.9 (которые соответствуют той большой таблице).

В паспортную часть выбирается шифр по МКБ из одной таблицы, а в таблицу Форма_14 из паспортной части.
0
Вложения
Тип файла: rar Форма 14.rar (353.6 Кб, 11 просмотров)
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
18.03.2012, 14:02 #12
Я наверное слишком много написал:
Подсчет количества записей с условиями

Хорошо, будем по порядку, вот скриншот из вашего последнего вложения по пункту №1:
0
Миниатюры
Подсчет количества записей с условиями  
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
18.03.2012, 14:19  [ТС] #13
Да, это то, что я выгружала последний раз. Я хочу, чтобы в паспортной части выбирались следующие параметры:
1) район из таблицы "Районы" (каждому району присвоен код),
2) учреждения из таблицы "Учреждения", но по определенному району (поэтому я их распределила по кодам района. Например: код района №1 = Агинский района, чему соответствуют учреждения именно этого района)
0
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
18.03.2012, 14:22 #14
Цитата Сообщение от Inessa Посмотреть сообщение
Да, это то, что я выгружала последний раз.
а я как раз хочу, чтобы этого не было, вообще, этому в таблице не место, для более развёрнутого ответа по этой теме поищите по форуму поля подстановки.
0
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
18.03.2012, 14:52  [ТС] #15
Получается нужно убрать все подстановки из таблицы. А потом все это сделать через запрос и сформировать в форме?????
0
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
18.03.2012, 14:59  [ТС] #16
Примерно так???
0
Вложения
Тип файла: rar Форма 14 - правленная 18.03.12.rar (350.7 Кб, 11 просмотров)
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
18.03.2012, 15:48 #17
Нет вот так --->
Надеюсь вы понимаете для чего нужны ключевые поля в таблицах?
1
Вложения
Тип файла: rar Форма 14 - правленная 18.03.12.rar (348.8 Кб, 14 просмотров)
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
18.03.2012, 16:07  [ТС] #18
Я попыталась исправить (работала в конструкторе). Правильно????
0
Вложения
Тип файла: rar Форма 14 - правленная 18.03.12.rar (349.9 Кб, 29 просмотров)
alvk
Эксперт MS Access
5574 / 3470 / 168
Регистрация: 12.08.2011
Сообщений: 8,823
18.03.2012, 16:24 #19
Да, это лучше. Теперь ответьте конкретнее на остальные вопросы и объясните, что нужно делать с шифрами МКБ? Абстрагируйтесь от таблицы для_формы_12.
1
Inessa
512 / 21 / 2
Регистрация: 11.03.2012
Сообщений: 443
18.03.2012, 17:04  [ТС] #20
В паспортную часть выбирается диагноз по коду шифра МКБ из таблицы "Шифр_МКБ"
А потом мне нужно получить данные в таблицу "для_формы_14". В эту таблицу делается выборка из таблицы "Паспортная часть" по следующим параметрам:
1 постоянный параметр - это возраст (Все поля, которые там преведены, выбираются по возрасту от 18 лет);
2 постоянный параметр - это шифр по МКБ (в каждой строке выбираются данные соответствующие шифру МКБ);
3 параметр - переменный, т.е. для каждой графы свой: "выписан", "доставлен по экстренным" и т.д.
Например:
1) для графы "Выписано старше 18 лет" включаются все "выписаные" по возрасту от 18 лет и выше по тем шифрам МКБ, которые расписаны в строках.
2) для графы "доставлены по экстренным показаниям" включаются все "выписаные" по возрасту от 18 лет и выше, но "доставленные по экстернным показаниям" (это причина поступления) по тем шифрам МКБ, которые расписаны в строках
3) но по строкам "шифр по МКБ" должна выборка делаться следующая: табл. "для формы 14" строка "А00-А09" = табл. "паспортная часть" "шифр по МКБ" от А00 до А09.0 включительно.
0
18.03.2012, 17:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.03.2012, 17:04

Подсчет количества одинаковых записей и перенос их числа в столбец другой таблицы
Есть таблица ОИ (Объект информатизации) в ней столбец "Состав ЛВС" в нее...

Подсчет количества записей из несвязанных таблиц и вывод результата в удобном виде
Подскажите пожалуйста для нивичка в создании БД, можно ли (вернее это по-любому...

Подсчет итогов в отчете из запросов с условиями. Функция Dcount(), DSum()
В итоговом отчете не могу вывести суммарные данные по классам из разных школ по...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru