Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Есть форма в которой поле дата рождения. Если ребенок новорожденный(до 1 месяца, то надо, что бы подсчитал и вывел в какое нибудь поле количество дней. Если старше 1 месяца, то нужно подсчитывать возраст в годах и месяцах. При этом данные должны сохраняться в основной таблице, поле "Возраст". Каким образомэто можно сделать? Может это и не надо сейчас, но в зависимости от возрастной группы (новорожденный или ребенок старшего возраста) будут вводиться различные формализованные данные.
Поле "Дата рождения"
Поле "Возраст"
Прошу прощения за "Сумбур".
Сергей.
25 дек 07, 11:05    [5091967]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
sdfgsdfgsdf
Member

Откуда:
Сообщений: 5996
Еще зделай поле "Признак возраста" где будеш хранить :
1 - дни
2 - месяци
3 - года
25 дек 07, 11:08    [5091994]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
sdfgsdfgsdf
Member

Откуда:
Сообщений: 5996
А в основном тебе для подсчёта разници DateDiff поможет.
25 дек 07, 11:09    [5092004]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
mcgrow
Member

Откуда:
Сообщений: 2670
зачем в поле хранить информацию, которая меняется с течением времени?
лучше сделать функцию, входными параметрами были дата рождения и текущая дата и в зависимости от текущей даты выдавала результат в нужном виде.
25 дек 07, 11:11    [5092018]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
sdfgsdfgsdf
Member

Откуда:
Сообщений: 5996
mcgrow
зачем в поле хранить информацию, которая меняется с течением времени?
лучше сделать функцию, входными параметрами были дата рождения и текущая дата и в зависимости от текущей даты выдавала результат в нужном виде.


Вообще так конечно лучше, но если на основании токаго запроса строить отчёты и данных будет немеряно - то тогда, конечно, тормозить будеть.
25 дек 07, 11:12    [5092034]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Примерно так?
(хотя даже не понимаю, что написал и как привязать Это к полю возраст)
Private Sub Form_Load()
Dim strBirthday As String
'укажите дату Вашего рождения
strBirthday = "03.10.1983"
'расчитываем сколько Вам лет
Debug.Print "Возраст: " & _
DateDiff("Yyyy", strBirthday, Now) & " лет."
End Sub
25 дек 07, 11:13    [5092044]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Идея mcgrow мне нравиться.
25 дек 07, 11:14    [5092056]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Причем вычисляемый возраст, должен оставаться постоянным и не меняться с течением времени.
25 дек 07, 11:30    [5092162]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Форма

К сообщению приложен файл. Размер - 66Kb
25 дек 07, 11:36    [5092210]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
Ёжик`
Member

Откуда:
Сообщений: 5965


К сообщению приложен файл. Размер - 33Kb
25 дек 07, 11:40    [5092226]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
mcgrow
Member

Откуда:
Сообщений: 2670
saj
Причем вычисляемый возраст, должен оставаться постоянным и не меняться с течением времени.

тогда, лучше хранить в таблице. непонятно, только в какой момент будет производиться вычисление (в момент занесения данных о ребенке или в некий произвольный момент времени? и исходя из каких критериев будет выбираться "дата расчета"). в любом случае, если вычисляемый возраст должен оставаться постоянным, то это информация - некое свойство ребенка, "равноправное" с датой рождения в смысле хранить в таблице или нет.
25 дек 07, 11:41    [5092238]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Да. Вычисляемый возраст должен сохраняться в основной таблице. Этоти данные будут учавствовать в статистической обработке. А момент вычисления возста...., сразу после введения даты рождения.
25 дек 07, 11:56    [5092347]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
pation
Member

Откуда: Москва
Сообщений: 4342
saj
Да. Вычисляемый возраст должен сохраняться в основной таблице. Этоти данные будут учавствовать в статистической обработке. А момент вычисления возста...., сразу после введения даты рождения.


Бред
25 дек 07, 12:00    [5092383]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
baranovda
Guest
Если я правильно понял, автор пишет программку для здравоохранения. Тут принципы такие: действительно, возраст можно вычислять, кроме тех случаев, когда значение возраста необходимо зафиксировать для создания печатных документов. Если вы закрываете медицинскую карту, запомните в базе данных текущий возраст. Это нужно для того, чтобы, скажем, в поднятой из архива и распечатанной медкарте давно умершего пациента не фигурировало значение типа "150 лет".
25 дек 07, 12:01    [5092390]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
Cane Cat Fisher
Member

Откуда:
Сообщений: 847
saj
Причем вычисляемый возраст, должен оставаться постоянным и не меняться с течением времени.

....в зависимости от возрастной группы (новорожденный или ребенок старшего возраста) будут вводиться различные формализованные данные


Совершенно непонятно, что должно произойти в тот день, когда ребенку исполнится столько, что он перейдет из младшего возраста в старший. Ровно в полночь выскочит окошко "совершен переход на летнее вре.. тьфу, в старшую группу, вводите теперь другие формализованные данные" ?

Сама-то идея необходимости возрастных категорий для медицины понятна. Но автоматический расчет категории из даты родения не подойдет, так как, насколько я понял, при смене возрастной категории необходимо ручное довнесение какой-то информации. Сделайте справочник возрастных категорий, 1-2-3, с диапазоном лет, а у ребенка - поле "код возрастной категории". Алгоритм увязывания возрастной категории с датой рождения тривиален. Только продумайте, организационно и технически, когда и как этот алгоритм должен примениться.

Я думаю, при вводе ребенка возрастная категория должна инициализироваться из даты рождения. При редактировании даты рожения (исправление ошибки), если это редактирование ведет к смене возрастной категории - предупреждаться, и давать возможность (заставлять) довносить необходимую информацию. И сделать ежедневный отчет "подросшие дети" - те, у которых реальный возраст вылез за их возрастную категорию. Оператор будет довносить необходимые даные, и категория будет меняться на реальную. Отчет можно зарядить в автомат, чтоб каждое утро оператору приходило уведомление.
25 дек 07, 12:06    [5092442]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
osmor
Member

Откуда: hiprog.com
Сообщений: 1138
saj
Примерно так?
(хотя даже не понимаю, что написал и как привязать Это к полю возраст)
Private Sub Form_Load()
Dim strBirthday As String
'укажите дату Вашего рождения
strBirthday = "03.10.1983"
'расчитываем сколько Вам лет
Debug.Print "Возраст: " & _
DateDiff("Yyyy", strBirthday, Now) & " лет."
End Sub


Неправильно
DateDiff("Yyyy", "30.12.2006", Now)

baranovda

когда значение возраста необходимо зафиксировать для создания печатных документов


Для этого можно вычислять возраст на дату выдачи документа. если есть дата смерти то возраст вычисляется на дату смерти.

Хранить возраст в БД бред. 3 раза IMHO
25 дек 07, 12:07    [5092452]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 7693
saj
Да. Вычисляемый возраст должен сохраняться в основной таблице. Этоти данные будут учавствовать в статистической обработке. А момент вычисления возста...., сразу после введения даты рождения.

если стат обработка будет происходить каждые 3 минуты - тогда может быть
а так лишняя информация, которую желательно проверять, потому как найдутся умники , которые смогут её изменить.
есть дата рождения , есть дата составления записи - отсюда можно сделать все вычисления.
даже если просматривать подряд все записи одной формой эти вычисления незаметны.
25 дек 07, 12:07    [5092453]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
mcgrow
Member

Откуда:
Сообщений: 2670
Cane Cat Fisher
Но автоматический расчет категории из даты родения не подойдет, так как, насколько я понял, при смене возрастной категории необходимо ручное довнесение какой-то информации. Сделайте справочник возрастных категорий, 1-2-3, с диапазоном лет, а у ребенка - поле "код возрастной категории". ... Отчет можно зарядить в автомат, чтоб каждое утро оператору приходило уведомление.

зачем оператору что-то довносить? Смена возрастной категории может происходить автоматически в момент запроса данных (как перевод на летнее/зимнне время).
25 дек 07, 12:12    [5092492]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
Cane Cat Fisher
Member

Откуда:
Сообщений: 847
mcgrow
зачем оператору что-то довносить?


Исходное ТЗ: "...в зависимости от возрастной группы (новорожденный или ребенок старшего возраста) будут вводиться различные формализованные данные".
25 дек 07, 12:15    [5092519]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
saj
Member

Откуда:
Сообщений: 44
Возраст для данного ребенка вычисляется только один раз. То есть в момент постановки на учет. И далее он меняться не должен!!!! Именно возраст (а точнее до месяца- это новорожденный, старше месяца- группа детей старшего возраста) будет определять видимость полей заполнения формализованной истории болезни. Максимальное значение возраста 18 лет.
25 дек 07, 12:17    [5092535]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
sdfgsdfgsdf
Member

Откуда:
Сообщений: 5996
saj
Возраст для данного ребенка вычисляется только один раз. То есть в момент постановки на учет. И далее он меняться не должен!!!! Именно возраст (а точнее до месяца- это новорожденный, старше месяца- группа детей старшего возраста) будет определять видимость полей заполнения формализованной истории болезни. Максимальное значение возраста 18 лет.


Тогда делай так, как я написал...
25 дек 07, 12:19    [5092568]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 7693
ну и кто мешает сделать запрос на основании которого выводить нужную форму?
как ни крути придется с возрастом менять форму для одного и того же пациента.
тз не правильное в данном пункте
25 дек 07, 12:19    [5092569]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
adv
Member

Откуда:
Сообщений: 3331
saj
Возраст для данного ребенка вычисляется только один раз. То есть в момент постановки на учет. И далее он меняться не должен!!!! Именно возраст (а точнее до месяца- это новорожденный, старше месяца- группа детей старшего возраста) будет определять видимость полей заполнения формализованной истории болезни. Максимальное значение возраста 18 лет.
Если на учёт поставили новорождённого, через шестнадцать лет в поле возраст у него что должно быть - количество месяцев, когда он стал на учёт? Зачем?
25 дек 07, 12:19    [5092574]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 7693
челу 16 лет, форма для него - новорждённый ( хотя за 16 лет много чё изменится)
25 дек 07, 12:21    [5092594]     Ответить | Цитировать Сообщить модератору
 Re: Дата рождения и возраст  [new]
mcgrow
Member

Откуда:
Сообщений: 2670
saj
Возраст для данного ребенка вычисляется только один раз. То есть в момент постановки на учет. И далее он меняться не должен!!!! Именно возраст (а точнее до месяца- это новорожденный, старше месяца- группа детей старшего возраста) будет определять видимость полей заполнения формализованной истории болезни. Максимальное значение возраста 18 лет.

тогда однозначно или возраст ребенка или дата постановки на учет. скорее всего дата постановки на учет есть, поэтому возраст нужно вычислять. хоть возраст у вас не будет меняться с течением времени, его хранить нежелательно, в силу того, что возраст могут непроизвольно изменить (т.е. нужен дополнительный контроль соответствия возраста дате постановки на учет - дата рождения)
25 дек 07, 12:24    [5092618]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft Access Ответить
 
Лучший учебный центр Microsoft!
Новейшие курсы Microsoft SQL Server 2014!
ОЧЕНЬ привлекательные цены на курсы Oracle — от 26 тыс.руб.!
Все курсы по базам данных: Microsoft SQL Server 2014, Oracle, IBM DB2, Access, MySql