Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отчет
 
 автор: verba0   (25.09.2010 в 12:23)   личное сообщение
38 Кб.
 
 

Подскажите, как привязать в запросе поля параметров (норма) анализов
для отображения их так же в отчете.

[ОбщийБелокMin]
[ОбщийБелокMax]
[Холестерин ОбщийMin]
[Холестерин ОбщийMax]
[ТромбоцитыMin]
[ТромбоцитыMax]

SELECT зКровь.Дата, 1 As НомерПоказателя, "Общий белок :" As Наименование, зКровь.ОбщийБелокРезультат As Результат
FROM зКровь WHERE (((зКровь.ОбщийБелокРезультат)>0));
UNION All
SELECT зКровь.Дата, 2, "Холестерин общий :" As Наименование, зКровь.ХолестеринОбщийРезультат
FROM зКровь WHERE (((зКровь.ХолестеринОбщийРезультат)>0));
UNION All
SELECT зКровь.Дата, 3, "Тромбоциты :", зКровь.ТромбоцитыРезультат
FROM зКровь WHERE (((зКровь.ТромбоцитыРезультат)>0));


Заранее благодарен.

  Ответить  
 
 автор: Гоблин   (25.09.2010 в 14:23)   личное сообщение
 
 

А зачем 2 таблицы? 1 таблица - Вид анализа 2 - Результаты анализа. (подчиненная форма) Кроме того 1 таблица, зависящая от Вид анализа будет нормой. Итого 3 таблицы. А там все приложится.
Запрос на объединение не нужен будет.

  Ответить  
 
 автор: verba0   (25.09.2010 в 17:03)   личное сообщение
 
 

Ситуация следующая, я не силен в Access, якобы прогу уже сделал, переделывать сложно,
Мне бы, что бы в отчете на против значения анализов (только отражаются не входящих в норму Min и Max) стояли поля (Min и Max значения) только для отраженных анализов.
В примере 3 анализа, а так 42 анализа и соответственно 84 норм Min, Max.

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 10:23)   личное сообщение
 
 

Да нет там проги. И техзадачи нет. Сделай таблицу с шаблоном. Поля "Вид чего-то", "Мин значение", "Макс знаение"
Затем, как я предполагаю, должна быть таблица "Пациенты" куда вносится ФИО и дата рождения, пол. Затем от нее таблица с анализом и фиксацией даты его проведения. В табле "Анализы" из шаблона вводишь данные "Вид чего-то" и его значение. В отчет вкидываешь с запроса поля Дата в группе. Затем ФИО. И там запрос выдаст на каждое "Вид что-то" его значения из шаблона "Мин" Макс и значение.
Вариантов тут много разных.

  Ответить  
 
 автор: verba0   (26.09.2010 в 11:13)   личное сообщение
77 Кб.
 
 

Вы имеете ввиду приблизительно так?
Выложенный мой пример а не прога, я выложил тот кусочек, что мне надо поправить.

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 13:40)   личное сообщение
 
 

Ну примерно так. Однако в такой структуре сдается мне есть недостатки. Таблица «пациент» в которой есть фамилия, имя, пол, нет только даты рождения. И есть таблица паспорт в которой тоже есть фамилия, имя, и дата рождения. Заполнять обе???
Таблица тКровьБиохим не берусь судить. Но скорее всего неоправданно большая. (поля белок, тромбоциты...) А если их количество изменится, тогда надо будет в таблицу поля добавлять???
Может лучше с полями КодПациента, Дата??? (еще вопрос, но можно), и поле вид (или параметр) куда в столбец будут запросом на добавление из шаблона вводиться все эти (Общий белок, ХолестеринОбщий, Тромбоциты, …..) Рядом поле для фиксации его значения. А в таблице шаблон на эти наименования мин и макс значения. Тогда и с отчетом вопросов не должно будет возникать.
С остальными таблицами тоже надо бы поработать и слегка подправить структуру.
Но это чисто мое мнение, которое может быть и ошибочное.
Будет время попробую пример вставить ради смеха.

  Ответить  
 
 автор: verba0   (26.09.2010 в 14:41)   личное сообщение
 
 

Спасибо, правильно замечено (Таблица «пациент» и «паспорт» в которой дублируются фамилии), исправил.

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 18:24)   личное сообщение
33 Кб.
 
 

Не суди сильно строго, вот накидал примерчик на скору руку. Тут, если я правильно понял, отчет должен выглядеть где-то так. Посмотри. Мысль думаю будет ясна. Параметры в шаблоне, а все остальное из таблицы "Исследования". И не надо большое количество полей.
Пример не тестировался, так что может быть что-то не срабатывать.

PS Некоторые пояснения дал прямо в формах, но это к делу не относится.

  Ответить  
 
 автор: verba0   (26.09.2010 в 18:50)   личное сообщение
 
 

Круто, подскажите, и в Вашем примере и в Моем один и тот же вопрос.
В «отчете», если «значение»= «0», то поля всей строки не отображались и соответственно оставшиеся поля сдвинулись, чтобы отчет выглядел без пустых промежутков. В моем приме так, но надо что бы в отчете отобразились «Min и Max»

Заранее благодарен.

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 19:16)   личное сообщение
33 Кб.
 
 

В смысле, если параметр был не введен, то в отчете его не отображать? Тогда поставить в условие запроса отчета на поле "Значение" <>0
Вот прицепил.
Круто.

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 19:31)   личное сообщение
 
 

Блин! Допонял. Вы имеете в виду свой отчет. Ну я мало что знаю по базам, сдается мне, что в данном случае придется делать еще один запрос на объединение из таблицы тPARАнализ, сводя все значения в одну колонку. Затем на него делать отчет с полями "Параметр", "Значение макс", "Значение мин" и этот отчет цеплять подчиненным, с привязкой по полю "Параметр". Тогда что-то получится, но я на такой подвиг не готов. Время уйдет море.
И потом. Если завтра нужно будет еще на какую-нибудь "Менстроплазию" анализ делать, то придется и таблицы менять, и запрос на объединение корректировать, и отчеты переделывать. Вот это круто действительно.
Так нельзя.

  Ответить  
 
 автор: verba0   (26.09.2010 в 19:38)   личное сообщение
 
 

Спасибо, Ваш пример, то что доктор прописал.

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 19:45)   личное сообщение
 
 

Э-э-э!!
Это только пример по-скорому. Это не рабочая база. если его использовать, то надо много чего. Первое - это выполнить все рекомендации, что просто написаны на формах. потом добавить все остальные таблицы, продумать информацию, разбить по датам и т.д.
Я дал только набросок и направление.

  Ответить  
 
 автор: verba0   (26.09.2010 в 19:50)   личное сообщение
 
 

OK

  Ответить  
 
 автор: Гоблин   (26.09.2010 в 22:36)   личное сообщение
37 Кб.
 
 

Заинтересовал ты меня этой ретроцитой. Вот СЛЕГКА доработал свой пример. еще немного и можно заказ принимать на эту базу.
Все рекомендованные кода всунул. Возможность изменения, удаления... регистр ввода пациентов не имеет значения... Повторный ввод невозможен, будет находить введенного.. Отчет прежний, но можно добавить код для открытия на выбранного пациента, если надо. Вроде ничего не забыл.

  Ответить  
 
 автор: verba0   (26.09.2010 в 23:03)   личное сообщение
 
 

Спасибо, Вам

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList