У меня только один вопрос....
Создала хранимую процедуру Verify(), которая должна проверять введенную дату рождения. Если возраст превышает 18 лет, то возвращать True, в противном случае False.
Для определения системной даты используется функция Date(). Для определения года — Year(дата). Для возвращения результат — команда Return. Описание процедуры начинается с ключевого слова Procedure
Procedure Verify()
if year(date())-year(date_birth)>18 then
return.T.
else
return.F.
endif
КУДА ВОЗВРАЩАЕТМЯ .Т.
Здравствуйте, Succube, Вы писали:
S>У меня только один вопрос....
S>Создала хранимую процедуру Verify(), которая должна проверять введенную дату рождения. Если возраст превышает 18 лет, то возвращать True, в противном случае False.
S>Для определения системной даты используется функция Date(). Для определения года — Year(дата). Для возвращения результат — команда Return. Описание процедуры начинается с ключевого слова Procedure
S>Procedure Verify()
S>if year(date())-year(date_birth)>18 then
S>return.T.
S>else
S>return.F.
S>endif
S>КУДА ВОЗВРАЩАЕТМЯ .Т.
Какая бд?
например, в МS SQL:
declare @res bit
exec @Res = Verify(sysdate()-365*19);
print @res
и не забыл ли указать параметр date_birth в сигнатуре процедуры?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Здравствуйте, vav, Вы писали:
vav>Какая бд?
Читайте тему. Там написано: Фокс про. Считать её за БД или нет — это уже совсем другой вопрос

... << RSDN@Home 1.2.0 alpha rev. 642>>
Здравствуйте, Блудов Павел, Вы писали:
vav>>Какая бд?
БП>Читайте тему. Там написано: Фокс про. Считать её за БД или нет — это уже совсем другой вопрос
сорри, пропустил.
Здравствуйте, Succube, Вы писали:
S>У меня только один вопрос....
S>КУДА ВОЗВРАЩАЕТМЯ .Т.
Как уже говорили, вопрос не совсем понятен. Но, я включив телепатию, предположу, что Вы хотите узнать куда нужно поместить вызов Verify(), чтобы выполнялось то, что предполагалось.
У меня сейчас фокса под рукой нет, но вот что вспоминается. При редактировании списка полей таблицы, если выделить то поле, значение которого нужно проверять, есть три поля ввода "Insert trigger", "Update trigger", "Delete trigger". Вот в поля "Insert trigger", "Update trigger" и нужно поместить Verify().
Если я ничего не путаю.
Здравствуйте, Succube, Вы писали:
S>КУДА ВОЗВРАЩАЕТМЯ .Т.
процедуру немного подкорректируем
Procedure Verify()
lpara date_birth
if year(date())-year(date_birth)>18 then
return.T.
else
return.F.
endif
вызываем
llYear = Verify(<тут передаем дату рождения нужного чела>)
Итого, в llYear имеем рез-тат
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>