Доброго времени суток, Посетитель!
|
|
|
|
|
|
|
|
|
вид форума:
|
|
|
|
| Помогите новичку разобраться
Есть таблица (Дети) поле (возраст) в это поле нужен Столбец подстановки - поле со списком из другой табицы (Дети по возрасту) .При подстановке нужно чтоб во второй изменилось значение поля для подсчёта итогов .Мастер делает строку - нада столбец , Через третью(Строка возраста) подставляет но значение во 2-ой не могу изменить. Как связать ? | |
|
| |
|
|
|
| извини, читал 3 раза ни фига не понял.
Мастер делает строку - нада столбец
|
Мастер подстановки в таблах делает ТОЛЬКО столбец.
если ты в конструкторе то это название столбца и его сво-ва - а не строка!!!!!!! | |
|
| |
|
|
|
| ни фига не понял - Я тоже
1. Нужна форма ввода (Дети) в ней ФИО,Возраст Диагноз и тд.
2. Делаю главн.таб. (Дети) (уйдёт в форму) в ней поля ФИО,Возраст, Диагнози тд. и поля с разбивкой по возр.[(0-3),(4-7)] - дальше диагн. 20 полей и тд. табла выходит километровая . Чтоб такой бяки не было, делаю Таб. (Дети по возрасту) (Диагноз) и тд. Вяжу 1-1.
3. Самое интересное: В связных таблах нужны итоги(сумма) по столбцам для отчета.
В таб.(Дети) в поле (Возраст) нужен столбец подстановки (по возрасту) [(0-3),(3-7)] из полей Таб. (Дети по возрасту) Мастер ,гад , их не видит или делает пустой лентой(головы пока не занесены) а нужно:
0-3
4-7
8-11
и было подставлено где нужно в табле значение (1) или (Да) для итогов.
Делаю таб. (Строка возраста) поле (возраст) заполняю строки, тыкаю Мастера носом в эту таблу - вышло по моему в столбце но как заставить что-б подставлялось где надо значение (1) в таблицу ???
Если можно, по шагам ,( ИД, запрос, макрос) я пока ещё темный в этом . | |
|
| |
|
|
|
| стоять буян!!
1. структура БД - как один из вариантов.
табла Пациенты - Код_ФИО, ФИО, возраст, адрес
табла Диагноз - Код Диагноза, Диагноз
табла У_кого_шо_Болит - Код_болезни, Код_ФИО, Код_Диагноз
табла Лекарства Код_Лекарства, Название
табла Назначения Код_Назначения, Код_Болезни, Код_Лекарства, Кол-во, Периодичность
и .т.д.
2. В таблах не хранятся итоговые, промежуточные значения - они вычисляются в формах/отчетах для промежутков времени либо по другому алгоритму.
после этого будем говорить на одном языке. | |
|
| |
|
|
|
| Стою!!!
У-ууу , одни коды - таблицы (у меня ещё пенсионеры & все остальные водятся) - заблудюсь.
А если У_кого_шо_и _чем в одну таблу - в столбец подставы - фиксированные.
И всё это добро оттянуть запросом и в отчет - прокатит???
| |
|
| |
|
|
|
|
И всё это добро оттянуть запросом и в отчет - прокатит???
|
для вас не было бы слишком сложным изъясняться понятнее? | |
|
| |
|
|
|
| если всё загонишь в одн табу точно заблудишся, подробно:
табла Пациенты - хранит данные о больных ВСЕХ, песнион, дети, голубые ...
если нужно разграничение - Табла Группа_Пациетов с Названием_Группы и в Таблу ФИО доп столбец Код_Группы - очень просто отфильтровываются нужне групы, Пол пац просто логическое поле.
табла Диагноз - перечень диагнозов (бронхит, трахеит, перелом)
табла У_кого_шо_Болит - ФИО + его Диагноз, если Диагнозов много - несколько строк
табла Лекарства Код_Лекарства, Название - без комментов
табла Назначения - каждое лекарство назначается По конкретному диагнозу, конкретному пациенту + от нее строится табла с фактом Принятия пациентом лекарств, процедур.
если объеденим Шо_Болит и Чем лечим - получим на один диагноз несколько (разное кол-во) лекарств, т.е. нужно неизвестое кол-во столбцов - а это не реально и в корне не правильно.
можно, как развитие, создать таблу Диагноз_Чем_Лечим - связь диагноз и группы лекарств/процедур - которую просто будем копировать нужному пациенту олегчая труд, и ускоряя его, при этом можно создавать разные варианты лечения одного и тогоже диагноза, добавив поле идентификации метода лечения.
и естествено Табла - Дата_Поступления, Дата_Выписки, ФИО, Диагноз, Врач для ведения истории по пациентам, врачам и проч.
Про диагноз - зачастую народ лежит с букетом болячек - можно использовать одно поле диагноз, но оно содержит последовательность кодов диагнозов, а при визуализации - разворачиваем в столбец на основании кодов (1253, 2135, 5873 - насморк, понос, геморой).
для понимания построения БД посмотри примеры Борей, Решения и проч.
п.с. давай конкретно что не понимаешь, хоть по шагово - если будешь спрашивать в общем - получишь обие ответы, конкретика. | |
|
| |
|
|
|
|
табла Диагноз - перечень диагнозов (бронхит, трахеит, перелом)
|
Не нужна вообще. Диагнозов может быть масса. Составить полный справочник - большая и никому не нужная работа Просто текстовое поле в таблице пациентов в которое вписывается диагноз
табла Лекарства Код_Лекарства, Название - без комментов
|
Не практично. Я бы еще добавли классификацию Типа от гриппа, от ожегов, от ИППП
А то пользователю будет выпадать список из сотен, если не тысяч наименований.
Код пациента код лекарства Коментарии
Код
ФИО
Дата рождения
пол
Симптомы
Диагноз
Дата | |
|
| |
|
|
|
| да диагнозов масса, но работая в хирургом не встеришь гриппа, есть типичные диагнозы с типичным методом лечения и процедур, так что все-таки есть смысл - перелом шейки бедра он всегда перелом шейки бедра, может разной тяжести но облегчить работу таким способом можно и ГЛАВОЕ что это дает - можно получить статистику!!! а если буду лапками писать названия диагнозов статистики пипец.
С классификацией прав но по другому Вид дйствия" Жаропонижающие, Обезболевающие и т.п. + группа "Фармакологическая группа", + "Вид упаковки" таблетки, мази , спреи
А от чего какое лекарство это еще одна табла.
я ему, по большому счету, разъяснял принцып построения структуры БД, т.к. он все в одну таблу валит. | |
|
| |
|
|
|
| Ох , робяты , куда-то Вас не туда понесло .
Что Вы предлагаете - классика жанра(АРМ врача), это когда в столбец можно добавлять какие-то значения в поцессе работы с базой, и выходит типа справочника. Правильно?
В конкретном случае, у Меня, вымогают статистику по категориям за период и ВСЁ.
И работаю не врачем а в социальной сфере.
По сему , я думаю, можно обойтись фиксированным значением в столбце ( ИЗМЕНЕНИЙ НЕ БУДЕТ в дальнейшем) а это значит что можно отказатся от кучи обвесов (пардон - таблиц обслуживающих столбец подстановки) что для новичка важно. А категорий не так и много да и не пересекаются меж собой. Можно и одну таблу уложить. Как увязать таблицы дети, пенсионеры и тд. это другой вопрос и решаеться на месте , будем думать в ту сторону после а пока структура базы в Моем чайнике нарисовалась, разберемси.
Я не силён в возможностях и тонкостях работы запросов (пока), хватит ли ему этой одной таблы для работы? Дети имеют свойство расти , как организовать в таблице перевод их в категориях возраста автоматом или за отчетный период а переростков долой с базы. Нужно нет что-то предусмотреть в табле или это работа запроса (макроса), которую можно прикрутить к ней позже ? | |
|
| |
|
|
|
| по поводу детей
Заведи столбец год рождения
Сделай запрос с условием год рождения < текущего года на (10 лет?????)
И всегда будут дети | |
|
| |
|
|
|
| Что Вы предлагаете - классика жанра(АРМ врача),
Да АРМ и есть база. Любая база делается так.
В конкретном случае, у Меня, вымогают статистику по категориям за период и ВСЁ.
Да любую статистику дает сама база. Ее только вести надо в течение определенного времени (год, лет) а потом только указать даты с-по и что хочу. (Сводная табла самое простое и эффективное средство) Мышкой таскаешь что куда, фильтры указываешь сам и смотри сколько чего за какой период. Или даже сколько чего в чем и сколько того чего в чем-то чего-то. Надеюсь ясно выразился.
А категорий не так и много да и не пересекаются меж собой. Можно и одну таблу уложить. Как увязать таблицы дети, пенсионеры и тд. это другой вопрос
Да это самый главный вопрос структуры базы. Если в ней будет ошибка - хана всему. Может в запросе получиться так, что детей пенсионного возраста будет больше чем людей.
Дети имеют свойство расти , как организовать в таблице перевод их в категориях возраста автоматом или за отчетный период а переростков долой с базы.
Самое простое через if с вычислением возраста. Ну типа с 1 до 7 - дети. с 8 - 16 полудети 17 - 21 полные дети 22-70 взрослые 70-90 почти дети и 90-.... уже дети
не надо макросов. Все и так ясно. В запросе указать кого хочу и все. (логикой типа Да с формы)
Ну еще высший пилотаж - мультиселектом. | |
|
| |
|
|
|
| Гоблин
+1 - дети имеют свойство расти
посему нужно дату рождения и от нее танцевать | |
|
| |
|
|
|
|
ИЗМЕНЕНИЙ НЕ БУДЕТ в дальнейшем
|
извини - но я смеялся
ага сщаззз, как минимум раз в пол-года, радостно какая-нибудь беспокойная головушка внесет "свои умные изменения", особенно в соц (ГОС) сфере. | |
|
| |
|
|
|
| Да-а , вот теперь я понимаю, почему у коммуняков в буденовке дырка была, мне в кепке пора свою вертеть .
Благодарю за дельные советы , особенно за последний,наши это точно свинью подложат.
Ухожу в ofline творить таблы .
С Празником Всех
P.S. Служил в ГДР , Weimar, есть что вспомнить. | |
|
| |
|
|
|
| Похоже опять со столбцом подстановки затупил
таблица Клиенты(ИД к) ,таблица Дети(ИД д)(ИД к), связь один ко многим.
Форма [Сведения о Клиентах] создана на основе запроса [Дополнительные сведения о Клиентах ]
на вкладке (Сведения о семье ) подчиненная форма ( сведения о детях) , источник записей запрос
[Дети сводка ]- (SELECT [Дополнительные сведения о детях].[ИД д], [Дополнительные сведения о детях].[ИД к], [Дополнительные сведения о детях].Дети, [Категория ] & " " & [Категория1] AS [Категории детей], [Дополнительные сведения о детях].[Год рождения_д], [Дополнительные сведения о детях].Пол FROM [Дополнительные сведения о детях];)
При помощи макроса с условием отбора ="[Дети]![ИД д]=" & Nz([ИД д];0) открывается Форма [Сведения о детях] создана на основе запроса
[Дополнительные сведения о детях ] - (SELECT Дети.*, IIf(IsNull([Фамилия_д]),IIf(IsNull([Имя_д]),[Имя_д]),IIf(IsNull([Имя_д]),[Фамилия_д],[Фамилия_д] & " " & [Имя_д])) AS Дети, IIf(IsNull([Фамилия]),IIf(IsNull([Имя]),[Имя]),IIf(IsNull([Имя]),[Фамилия],[Фамилия] & " " & [Имя])) AS Родители, [Дети].[Категория ] & " " & [Категория1] AS [Категории детей]
FROM Клиенты RIGHT JOIN Дети ON Клиенты.[ИД к] = Дети.[ИД к];)
При вводе вручную в таблицы данных в формах отображается всё как надо,(у каждого свои)
При вводе новой записи детей клиента с помощью формы[Сведения о детях] Access не может найти связных записей с ИД к ,ругается на - необходимо ввести значение в поле" Дети. ИД к"
Что и где я натворил не так ? И как правильно добавить & удалить запись в подчиненной форме?
Клиентов будет МНОГО , вводить в форму поле со списком клиентов чтоб ввести значение будет сложно. | |
|
| |
|
|
|
| пример - в студию, не воспринимается хоть убей | |
|
| |
|
98 Кб. |
|
| | |
|
| |
|
|
|
| читал топик аж зачитался... даже на работу опаздываю =) а можно еще и в формате 2003 сохранить БД? | |
|
| |
|
|
|
| девствительно - 2007 - это не красиво по отношению к окружающей общественности.
апрель, весна, коты .бутся и вдруг на тебе 2007-й акс - всё настроение испортил | |
|
| |
|
|
|
| У тебя при вводе отсутсвует Клиент!!! - я так понял это родитель ребенка
вот по этому он и орет как не нормальный, я б на его месте тожеб орал только от одних названий таблиц и полей. - поставил на форму поле Ид к (ааааааааа) все получилось - хотя вопрос если ребенок СИРОТА откуда РОДИТЕЛЬ /который у тебя по связям - обязателен/ ил подразумевается опекун/попечитель и проч.
- и че это за пол Мальчик/Девочка
- зачем лишний гемор - категория детей 1-3, 6-15 если для этого есть год рождения!!!!!!
п.с. как я ненавижу 2007-й акс. - все равно, что установить на тачку мотор вверх ногами, под уголом 45град к оси движения и орать осуперкаре. | |
|
| |
|
|
|
| убери к (на, в) маски из ФИО это бред
1. фамилия Иванов-Заде не вводится!!!!
2. нажав мышей на поле курсор попадает не в начало поля а кудато посередине - начинает ругаться о несоответсвии маски если не переставишь на начало.
3. сохраняет ФИО с пробелами - жуть.
еще по категории 1-3 года
1. это у тебя вводится руками - реально можешь получить в каетгории 16-80 лет пациента 2010 годо рождения и наоборот - это как юзер лапками ввседет.
2. представь каждый год, НЕТ КАЖДЫЙ ДЕНЬ!!!!!, каетгорию нужно просматривать и редактировать т.к. стукнет пацану 4-года и все пипец.
удаляй ее на... ( в..., к..... ) нужное подчеркнуть | |
|
| |
|
|
|
| Это бета версия да и ктому чайниковская , ну как без ошибок они обязательны!!!
Что для Вас как два пальца об... , то чайнику методом научного тыка на неделю, а чего стоят хелпы
в черепушке увсё перепуталось, ну да Вы в курсе - обычное дело.
Замечания приняты , спасибо, не ожидал. Буксанул на вводе записей поэтому руки не дошли по мелочам в таблах (формах), все поправим.
Пока проблемы:
- при вводе отсутсвует Клиент!!! - в том и дело , поставить на форму поле Ид не мудрено но какой будет выпадающий список через год и как из него выбрать, или я не понял эту синхронизацию
- поле Ид к (ааааааааа) - можно подробней ? Не уж-то 2007-у аксу слабо смому подставить ИД текущего клиента ?!
- По названию полей - с отчётами не игрался, если там на выходе всё правится - в табле поправим.
Хотя заказчику (Жене ) надо: если ребёнок то - Мальчик/Девочка; и категорию по годам
вынь да положь , ну как откажешь - с довольствия снимет. Категория нужна для отчёта и в форме при работе с клиентом было видно что у него водиться. Рукам вводить -себя не любить,было понятно сразу - вопрос уже задавалси в начале топика. Придется мутить с вычисляемым полям.
В общих нужно : К супруге приходит Некто, выясняется: кто, гражданин - семья , тут нужно применить условное форматирование если гражданин то семья с дитями (вкладка) недоступна и н/o.Если ребёнок хитрый, прикрутить сведения о (опека и т.д).К клиенту сведения где и чем живёт.
На этой основе решить кто он такой ( в какую катергорию попадает ) и выдать услугу:денежку,сапог,
послать нах.. , с этого добра снять статистику - работы крышу снимет.
Кому апрель, весна, коты - а мне лопата (фазенду топит),хвосты - железяки на работе(фермер)
дома жена уже топор точит - вот бы кто пример для начала кинул(вроде всё стандартно а найти не могу), время не хватает , ужас.
2АлаяЗаря - не получается 2007-й акс ругается . | |
|
| |
|
|
|
| поехали
- при вводе отсутсвует Клиент!!! - в том и дело , поставить на форму поле Ид не мудрено но какой будет выпадающий список через год и как из него выбрать, или я не понял эту синхронизацию
|
- для этого нужно сделать форму - которая на определенном этапе ввода инфы о ребенке или по нажатию кнопки (мож жебенка кто усыновил /уматерил/ ) - выскакивала - и сзаставляла вводить данные о клиенте. это для нормальной визуали и поиска клиента, я вообще не использую полесосписком.
алгоритм работы:
- нажали кнопку или в поле "Клиент" 2 раза даблклик/ - выскочила форма - /обнулась глобальная переменная/ - выбрали клиента -/даблклик на поле, глобальной переменной присваиваем код клиента, закрываем форму/ - полю ИД к присваиваем значение глобальной переменной и обновляем поле.
- поле Ид к (ааааааааа) - можно подробней ? Не уж-то 2007-у аксу слабо смому подставить ИД текущего клиента ?!
|
аааааа - названия полей/таблий/запросов/форм/отчетов желательно писать на аглицком.
а для того чтобы акс сам вставил текущего клиента то :
- должна быть открыта форма Клиенты - добавление новой строки или фильтр по детям клиента, при открытии формы Дети должно происходить следующее -
Me.ИД_к = Forms![Клиенты]!ИД_к
Me.ИД_к.Requery
ИД_к - акс вот так интерпритирует ТВОИ пробелы - жопка № 1.
и категорию по годам вынь да положь
|
- на событие "После обновления" поля датарождения ставим Процедуру которая вычисляет категорию в зависимости от текущей даты и присваиваем ее нужному полю, причем это можно /нужно/ сделать на регулярной основе - на форму Дети событие «Текущая запись» (Current) ставим запуск этой процедуры. | |
|
| |
HiProg.com - Технологии программирования
|