Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/40: Рейтинг темы: голосов - 40, средняя оценка - 4.63
81 / 0 / 0
Регистрация: 22.05.2015
Сообщений: 80
1

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

17.05.2016, 12:09. Показов 7487. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!!! Подскажите, пожалуйста, ответ на вопрос:

Имеется вычисляемое поле в форме access 2007, в нем выводится результат вычисления. Как мне сохранить этот результат в одном из полей таблицы.

Спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.05.2016, 12:09
Ответы с готовыми решениями:

Сохранение данных из вычисляемого поля
Как сохранить в БД данные из вычисляемого поля?

Данные вычисляемого поля не отображаются в таблице
Подскажите новичку, пожалуйста. Есть таблица Продажи с полями Цена, Количество, Сумма, Размер...

Отображением вычисляемого поля запроса в поле формы
В поле формы «Форма ввода» есть поле «Поле63», в котором должен отображаться результат находящийся...

Сохранение данных с поля формы в таблицу
Добрый день. Необходима ваша помощь при создании базы данных. Столкнулся с небольшой задачкой,...

16
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
17.05.2016, 12:11 2
В событии перед обновлением формы присваивать его полю таблицы.
0
81 / 0 / 0
Регистрация: 22.05.2015
Сообщений: 80
17.05.2016, 12:22  [ТС] 3
Прошу прощения, это где или как?
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
17.05.2016, 12:32 4
У формы есть события, открываете в свойствах формы соответствующую вкладку и создаете процедуру обработки события До обновления (подробности в Справке).
0
81 / 0 / 0
Регистрация: 22.05.2015
Сообщений: 80
17.05.2016, 12:54  [ТС] 5
А ссылочку на пример? Я открываю в конструкторе форму. Выделяю вычисляемое поле. перехожу на вкладку "События". Выбираю "До обновления". Нажимаю появляется окно: Макросы, Выражения, программы. И что выбрать. Или я что-то делаю не так?
0
Эксперт MS Access
 Аватар для ltv_1953
17536 / 7288 / 1663
Регистрация: 21.06.2012
Сообщений: 13,957
17.05.2016, 13:04 6
А это уж выбирайте то, что знаете. Я всегда выбираю программу. И вообще - хранить вычислимые поля в таблице ... . Не, если данные таблицы обновляются только в единственной форме, то сойдет. А если запросом - нужно будет еще и вычислимое поле обновлять.
0
81 / 0 / 0
Регистрация: 22.05.2015
Сообщений: 80
17.05.2016, 13:09  [ТС] 7
Извините за наглость, а строчку кода можно в программе (попробовал по выражению = [Cумма](это название поля в таблице) ничего не получилось)? У меня вычисляемое поле только в 1 форме для 1 таблицы.
0
 Аватар для VinniPuh
9113 / 6059 / 591
Регистрация: 27.03.2013
Сообщений: 19,887
17.05.2016, 13:11 8
Цитата Сообщение от vash_sa Посмотреть сообщение
...вычисляемое поле ... сохранить этот результат в одном из полей таблицы....
Это по идее извращение, вычисляемое поле из запроса хранить в таблице.
Его всегда можно взять из запроса для вычисления в другом запросе.
Но если вы не боитесь трудностей и ошибок, то например
в форме у кнопки - Записать,
в событии - Нажатие кнопки,
в процедуре обработки события, там где будет моргать курсор, скопируйте и вставьте следующее:

Me.[ИстинноеИмяПоляКудаВставить] = Me.[ИстинноеИмяВычисляемогоПоляФормы]

Естественно эти оба-два поля должны быть на форме.
Но повторюсь, это извращение и ненужное увеличение веса БД.
1
81 / 0 / 0
Регистрация: 22.05.2015
Сообщений: 80
17.05.2016, 13:31  [ТС] 9
Получилось только через дополнительную кнопку. А через обновление - нет.

PuhKMV, спасибо, подумаю над вашим предупреждением.

Но пока не пойму в чем опасность записи данных в таблице. Я же их 1 раз записал и больше они не связаны с вычисляемым полем.
0
 Аватар для VinniPuh
9113 / 6059 / 591
Регистрация: 27.03.2013
Сообщений: 19,887
17.05.2016, 13:35 10
Цитата Сообщение от vash_sa Посмотреть сообщение
А через обновление - нет.
По чему?
Как я понимаю у вас к примеру 2 поля, в которые вы вносите значения для вычисления.
У последнего, на событии - После обновления пишите такой же код.
По идее должно получиться.
0
81 / 0 / 0
Регистрация: 22.05.2015
Сообщений: 80
17.05.2016, 13:43  [ТС] 11
Не выходит не До обновления не После. Программирование - всегда танцы с бубном.
Займусь вечером перебором вариантов, а то сейчас нужно бежать.
0
 Аватар для VinniPuh
9113 / 6059 / 591
Регистрация: 27.03.2013
Сообщений: 19,887
17.05.2016, 13:49 12
Цитата Сообщение от vash_sa Посмотреть сообщение
...Не выходит...
На 99.9 % БД построена не правильно.

Добавлено через 1 минуту
У меня последние 2-3 года, если чего то изменяю, то вычисляемое поле сразу мгновенно обновляется, стоит только перейти на другое поле.
0
0 / 0 / 0
Регистрация: 09.04.2019
Сообщений: 2
09.04.2019, 02:21 13
Прошу помощи! По сути вопрос у меня такой же как в заглавии даной темы! Прочитав ответы что это не верно прошу помочь как найти правильный путь.... В аксесе полный ноль, просто пытаюсь помочь жене в работе и самому сделать ей несложную базу даных!
Моя идея проста:
1 Таблица в которой накапливаются общие данные детей на приеме
2 Форма с которой удобно вводить данные на ребенка и привязывать сканы документов:
- форма должна иметь два номера (пример: 30/153):
а) номер протокола который присваивается всем детям в один определенный день приема, на основе которого позже нужно получить отчет ввиде протокола (ведомости) со списком детей за день и минимальным набором данных;
б) номер порядковый уникальный, грубо это количество всех детей которые проходили комисию в центре;
- форма должна получать системную дату с возможностью ее менять самому, для случая если база наполняется не в день приема
- на основе даты обследования и для рождения форма вычисляет полное количество лет и месяцев ребенку (это важно)... но я не знаю как сделать чтобы результат вносился в таблицу данных (Масив)
3 После внесения данных на ребенка, каждый из специалистов после собеседования пишет подробный отчет (думаю как то через определенную форму) и рекомендации....
4 В итоге я хочу создать базу где за каждым ребенком числятся его данные, уникальный номер и номер протокола, вложеные сканы документов, и главное отчет (заключение специалистов)!

Возможно я не понимая как вообще должна работать база данных совсем неправильно подошел к идее создания, возможно совсем не верная концепция как я ее вижу.... сейчас уперся в не записи данных расчета возраста в годах и месяцев ребенка в масив данных и не могу понять как это можно сделать через запросы!

Буду благодарен всем за любую помощь или советы!
Вложения
Тип файла: rar База даних ІРЦ – test7.rar (71.0 Кб, 16 просмотров)
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12108 / 4968 / 791
Регистрация: 07.08.2010
Сообщений: 14,618
Записей в блоге: 4
09.04.2019, 07:00 14
Цитата Сообщение от dyos_isi Посмотреть сообщение
Возможно я не понимая как вообще должна работать база данных совсем неправильно подошел к идее создания, возможно совсем не верная концепция как я ее вижу
более разумно поделить основную таблицу на 2
1-головная--данные о ребенке
2-подчиненная--данные по вашим опп
Вложения
Тип файла: zip irp0409a.zip (654.3 Кб, 21 просмотров)
0
Модератор
Эксперт MS Access
 Аватар для shanemac51
12108 / 4968 / 791
Регистрация: 07.08.2010
Сообщений: 14,618
Записей в блоге: 4
09.04.2019, 07:02 15
Цитата Сообщение от dyos_isi Посмотреть сообщение
самому сделать ей несложную базу даных!
не такая уж она и простая --просто вы не видите задачу в целом, учитываете только факт посещения центра
1
126 / 96 / 33
Регистрация: 28.02.2017
Сообщений: 478
09.04.2019, 11:21 16
Цитата Сообщение от vash_sa Посмотреть сообщение
Как мне сохранить этот результат в одном из полей таблицы.
Посмотри такой вариант, вычисления производятся в модуле и заносятся в форму и таблицу.
Visual Basic
1
2
3
4
Private Sub Дата_народження_AfterUpdate()
Вік_дитини = DateDiff("yyyy", [Дата_народження], [Дата_обстеження]) + (Format([Дата_народження], "mmdd") > Format([Дата_обстеження], "mmdd"))
Вік_дитини_місяць = (DateDiff("m", [Дата_народження], [Дата_обстеження])) - IIf(Format([Дата_народження], "mmdd") <= Format([Дата_обстеження], "mmdd"), Year([Дата_обстеження]) - Year([Дата_народження]), (Year([Дата_обстеження]) - Year([Дата_народження])) - 1) * 12
End Sub
А так же "Дата_обстеження", тоже заносится в таблицу.
Visual Basic
1
2
3
Private Sub Дата_обстеження_GotFocus()
Дата_обстеження = Date
End Sub
Вложения
Тип файла: zip База даних ІРЦ – test7.zip (180.5 Кб, 31 просмотров)
1
0 / 0 / 0
Регистрация: 09.04.2019
Сообщений: 2
10.04.2019, 07:50 17
Спасибо большое! Попробую!
0
10.04.2019, 07:50
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.04.2019, 07:50
Помогаю со студенческими работами здесь

Как занести значение вычисляемого поля формы в поле таблицы
Добрый день всем. Посоветуйте, пожалуйста, в таком вопросе. Есть форма Ф1, созданая...

Копирование из вычисляемого поля в поле данных
Здравствуйте. Подскажите пожалуйста как организовать копирование/дублирование данных из...

Копирование данных вычисляемого поля в поле таблицы
Приветствую Есть вычисляемое поле1 на форме1 и у этой формы есть табличная подформа в одно из...

База данных, запрос с получением вычисляемого логического поля
нужно определить актуальность даты, срок окончания, --если истек то в колонке было написано &quot;да&quot;, ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Как клонировать определенную ветку в Git
bytestream 24.01.2025
Одной из ключевых функций Git является возможность клонирования веток, что позволяет создавать локальные копии удаленных репозиториев и работать с определенными версиями проекта. Этот механизм. . .
Как в цикле обойти строки DataFrame в Pandas Python
bytestream 24.01.2025
DataFrame представляет собой одну из основных структур данных в библиотеке Python Pandas, которая организует информацию в виде двумерной таблицы с строками и столбцами. Эта структура данных особенно. . .
Как получить имя текущей ветки в Git
bytestream 24.01.2025
При работе с Git часто возникает необходимость определить имя текущей ветки, в которой ведется разработка. Знание текущей ветки является критически важным аспектом для эффективного управления. . .
Как отсортировать массив объектов по значению поля объекта в JavaScript
bytestream 24.01.2025
При разработке веб-приложений на JavaScript разработчики часто сталкиваются с необходимостью работать с массивами объектов. Эти структуры данных представляют собой упорядоченные наборы элементов, где. . .
Ошибка "src refspec master does not match any" при пуше коммита в Git
bytestream 24.01.2025
При работе с системой контроля версий Git разработчики нередко сталкиваются с различными ошибками, одной из которых является сообщение "src refspec master does not match any". Эта ошибка возникает. . .
Как округлить не более двух цифр после запятой в JavaScript
bytestream 24.01.2025
При работе с числами в JavaScript разработчики часто сталкиваются с необходимостью округления десятичных значений до определенного количества знаков после запятой. Это особенно важно при работе с. . .
Как сделать UPDATE из SELECT в SQL Server
hw_wired 24.01.2025
В современных системах управления базами данных операции обновления и выборки данных являются фундаментальными инструментами для работы с информацией. SQL Server предоставляет мощные команды UPDATE и. . .
Как вставить элемент в массив на указанный индекс в JavaScript
hw_wired 24.01.2025
Массивы являются одной из фундаментальных структур данных в JavaScript, предоставляющей разработчикам мощный инструмент для хранения и управления упорядоченными наборами данных. Они позволяют хранить. . .
Чем отличаются HashMap и Hashtable в Java
hw_wired 24.01.2025
В мире разработки на Java существует множество инструментов для работы с коллекциями данных, и среди них особое место занимают структуры данных для хранения пар ключ-значение. HashMap и Hashtable. . .
Как конвертировать видео в GIF
hw_wired 24.01.2025
В современном мире анимированные изображения стали неотъемлемой частью цифровой коммуникации. Формат GIF (Graphics Interchange Format) представляет собой особый тип файлов, который позволяет. . .
Как скопировать текст в буфер обмена на JavaScript во всех браузерах
hw_wired 24.01.2025
Копирование текста в буфер обмена стало неотъемлемой частью современных веб-приложений, значительно улучшающей пользовательский опыт и упрощающей работу с контентом. В эпоху активного обмена. . .
Как скрыть клавиатуру на Android
hw_wired 24.01.2025
При разработке Android-приложений часто возникает необходимость управлять видимостью экранной клавиатуры для улучшения пользовательского опыта. Одним из наиболее эффективных способов контроля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru