|
|
|
| Подскажите, пожалуйста, не специалисту, можно ли сделать так, что бы данные из вычисляемой ячейки в форме заносились в таблицу на базе которой работает эта форма. И еще как сделать запуск формы, что бы окно СУБД не отражалось на экране. Заранее спасибо! | |
|
| |
|
|
|
| совет:
данные, которые могут быть вычесленны, не хранить в БД, а именно вычислять.
2. см. меню "Сервис - Параметры запуска" | |
|
| |
|
|
|
| Вычисляемое поле - это возраст пациента, а в таблице эти данные нужны из-за последующего отчета, который делается на базе таблицы (за какой либо период), а не формы. Есть еще одна заморочка: есть поле даты рождения, т.о. находится разница с полем сегодняшней даты, т.е возраст, но иногда бывает известен возраст, а не год рождения и приходится вычисления делать вручную. Как сделать что бы ячейка считала и в одну и в другую сторону? Насчет меню "Сервис - Параметры запуска" делал, но все равно Аccess открывается, а хотел, чтобы его вообще видно не было | |
|
| |
|
|
|
| а зачем хранить данные, которые можно в любой момент вычислить и вывести в виде запроса?
убрать окно . меню-сервис-параметры запуска снять галку с окно базы данных | |
|
| |
|
|
|
| Вычисляемое поле - это возраст пациента, а в таблице эти данные нужны из-за последующего отчета, который делается на базе таблицы (за какой либо период), а не формы. Есть еще одна заморочка: есть поле даты рождения, т.о. находится разница с полем сегодняшней даты, т.е возраст, но иногда бывает известен возраст, а не год рождения и приходится вычисления делать вручную. Как сделать что бы ячейка считала и в одну и в другую сторону? Насчет меню "Сервис - Параметры запуска" делал, но все равно Аccess открывается, а хотел, чтобы его вообще видно не было | |
|
| |
|
|
|
| "последующего отчета, который делается на базе таблицы"
Делайте на базе запроса в котором посчитаете возраст
Иначе вы получите возраст не настоящий, а возраст на дату открытия в форме записи поданному человеку
| |
|
| |
|
|
|
| Если опустить тот факт, что хранить в поле таблицы данные которые можно посчитать из других полей этой таблицы, не совсем верно, то можно так:
на событие BeforeUpdate формы, пишите
me.ПолеТаблицы = Me.вычисляемоеПоле
|
Поле таблицы должно присутствовать в источнике даных формы | |
|
| |
|
|
|
| Извиняюсь за тупость, но я не профессионал, а начинающий чайник, к тому же с английским проблема. Нельзя ли подробней (по шагам) куда зайти и как прописать. Дело в том что вычисляемое поле - это возраст пациента, а в таблице эти данные нужны из-за последующего отчета, который делается на базе таблицы (за какой либо период), а не формы. Есть еще одна заморочка: есть поле даты рождения, т.о. находится разница с полем сегодняшней даты, т.е возраст, но иногда бывает известен возраст, а не год рождения и приходится вычисления делать вручную. Как сделать что бы ячейка считала и в одну и в другую сторону? | |
|
| |
|
|
|
| в вашей схеме есть существенный изъян, о котором я написал выше.
Возраст считается на дату когда была сохранена запись о клиенте.
т.е. если мои данные в БД не изменялись 10 лет, то мой возраст так и останется тем который был на момент изменения данных.
я бы предложил сделать в таблице поле "ДатаРождения"
а на форме разместить поле возраст которое вычислял бы на событие "после обновления" поля с датой рождения.
Для расчета даты рождения из возраста можно на событие "после обновления" поля с возрастом вычислял бы значение поля "ДатаРождения", при условии что поле даты рождения пустое.
Или сделал бы кнопку для принудительного расчета даты рождения. | |
|
| |