Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для sysghost
40 / 40 / 6
Регистрация: 12.01.2016
Сообщений: 406

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

23.03.2016, 11:17. Показов 2264. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую
Есть вычисляемое поле1 на форме1 и у этой формы есть табличная подформа в одно из полей которой (например поле2) нужно копировать данные из вычисляемого поля.
Копирование нужно произвести по событию в другом поле подформы (например поле3) - внесены изменения.

Иначе говоря, когда в одном из полей подформы меняются данные, по этим данным производится расчет в главной форме и результат нужно записать в другое поле подформы.
Подскажите пожалуйста как осуществить?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.03.2016, 11:17
Ответы с готовыми решениями:

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

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

Копирование данных одного поля из разделенной формы (таблицы) в нужные записи другой таблицы
Здравствуйте! Добрый вечер! Подскажите пожалуйста, как из разделенной формы (в которой после выборки осталось примерно 300 записей)...

8
 Аватар для sysghost
40 / 40 / 6
Регистрация: 12.01.2016
Сообщений: 406
23.03.2016, 11:43  [ТС]
Вот пример
Вложения
Тип файла: rar Копирование результата.rar (19.6 Кб, 14 просмотров)
0
 Аватар для sysghost
40 / 40 / 6
Регистрация: 12.01.2016
Сообщений: 406
23.03.2016, 11:53  [ТС]
Обнаружил ошибку в подсчете, вот верный вариант (удалить и править не могу, исправьте пожалуйста)
Вложения
Тип файла: rar Копирование результата.rar (20.8 Кб, 14 просмотров)
0
 Аватар для sysghost
40 / 40 / 6
Регистрация: 12.01.2016
Сообщений: 406
24.03.2016, 12:01  [ТС]
В общем получилось заносить результаты вычислений в нужное поле, хотя первый результат и не заносится, но задача в целом решена.
По поводу нужности и избыточности данных, этот подсчет будет единственным и на фоне остальных данных особо много места не заберет.
Кроме того получается невозможным менять предыдущие записи, так как это сразу нарушит порядок цифр остатка, что в сумме с идентификатором пользователя позволит определить кто пытался править списки выдачи.
Ну а кому не нужно, тому можно и не беспокоиться.
Вложения
Тип файла: rar Копирование результата.rar (58.2 Кб, 37 просмотров)
0
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
24.03.2016, 12:12
Конечно, убежденность и целеустремленность - полезные качества, но в данном случае они у вас все-таки на "авось" и "небось" основаны. Я смотрела вашу базу. Все ваши допущения
Цитата Сообщение от sysghost Посмотреть сообщение
этот подсчет будет единственным и на фоне остальных данных особо много места не заберет
Цитата Сообщение от sysghost Посмотреть сообщение
позволит определить кто пытался править списки выдачи
- это мина замедленного действия, которая не взрывается до поры до времени. Рано или поздно рванет.
Так, как вы организовали - делать НЕЛЬЗЯ.
0
 Аватар для sysghost
40 / 40 / 6
Регистрация: 12.01.2016
Сообщений: 406
24.03.2016, 13:32  [ТС]
Цитата Сообщение от texnik-san Посмотреть сообщение
- это мина замедленного действия, которая не взрывается до поры до времени. Рано или поздно рванет.
Так, как вы организовали - делать НЕЛЬЗЯ.
Причина?
Мне не ясно что рванет.
Эти данные ведутся только для статистики.
Индикация остатка подсчитывается независимо и цифра всегда актуальна.
Ничто не мешает производить эти вычисления запросом, но запрос не покажет что и когда менялось, а главное кем.
В чем мина?

Добавлено через 4 минуты
Цитата Сообщение от texnik-san Посмотреть сообщение
Конечно, убежденность и целеустремленность - полезные качества, но в данном случае они у вас все-таки на "авось" и "небось" основаны. Я смотрела вашу базу. Все ваши допущения
Авось и небось в плане самого технического решения проблемы или самого решения хранить промежуточные автоматические подсчеты?
В первом никто не предложил лучшего варианта, я покопался по интернету, ни одного вменяемого решения похожей проблемы, все отговаривают хранить результаты вычислений вместо помочь.
Поэтому пришлось решать на уровне своих знаний на данный момент, что бы тема была закрыта а не одна из сотен пустышек, покажите лучшее решение.
0
шапоклякистка 8-го дня
 Аватар для texnik-san
3681 / 2241 / 391
Регистрация: 26.06.2015
Сообщений: 4,647
Записей в блоге: 1
24.03.2016, 13:50
Мина в том, что значение в поле "Остатки" запросто может не соответствовать остальным данным. Ничто этому не мешает. И я уверена, что не только может не соответствовать, но и обязательно в какойто момент будет.
Цитата Сообщение от sysghost Посмотреть сообщение
Эти данные ведутся только для статистики.
А статистика - это что-то неважное и до такой степени никому не нужное, что в цифрах сатичтики можно ошибаться?
Цитата Сообщение от sysghost Посмотреть сообщение
Индикация остатка подсчитывается независимо и цифра всегда актуальна.
Так зачем нужна еще одна?
Цитата Сообщение от sysghost Посмотреть сообщение
Ничто не мешает производить эти вычисления запросом, но запрос не покажет что и когда менялось, а главное кем.
Оооочень удобный способ логировать изменения - пересчитывать поле "остаток".

Цитата Сообщение от sysghost Посмотреть сообщение
Авось и небось в плане самого технического решения проблемы или самого решения хранить промежуточные автоматические подсчеты?
В плане нажед, которые вы возлагаете на это поле. Оно не предотвращает порчу данных, хотя вам именно это кажется (даже возможность проанализирвовав это поле определить, кто виноват, не мешает их портить и не вернет данные в исходное состояние), и не даст достоверной информации об остатках. То есть не решает вообще ни одной задачи.

Добавлено через 1 минуту
Цитата Сообщение от sysghost Посмотреть сообщение
я покопался по интернету, ни одного вменяемого решения похожей проблемы, все отговаривают хранить результаты вычислений
Ага, и я оказалась тоже не оригинальна. Ну, база данных ваша - поступайте с ней так, как знаете. Удачи.
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
24.03.2016, 14:53
и вставлю свои 5 копеек - у вас в подчинённой пустые поля, это плохо, лучше ставить ноль, а не null, иначе в будущем ждут бесконечные проверки на пустоту.
0
 Аватар для sysghost
40 / 40 / 6
Регистрация: 12.01.2016
Сообщений: 406
24.03.2016, 15:01  [ТС]
Цитата Сообщение от texnik-san Посмотреть сообщение
Оооочень удобный способ логировать изменения - пересчитывать поле "остаток".
Этот и предыдущие ответы.
А почему не удобный?
Например можно конечно сохранять резервные копии всех записей с датами их внесения, тогда можно сверить данные по датам и увидеть, что в одно время брались разные количества, что недопустимо.
При этом нужно учитывать еще и время, потому как одно и то-же могло быть взято в один день но в разное время и в разных количествах.
И все эти данные нужно хранить в резерве, каждое изменение всех записей.
В моем варианте достаточно сохранять копию просто для исключения самой потери данных, независимо от достоверности а поиск причин косяков проводить на основе непоследовательного уменьшения чисел, и такая ситуация возможна только при ручной корректировке данных, что в принципе не допустимо для предыдущих записей.
Цитата Сообщение от texnik-san Посмотреть сообщение
Цитата Сообщение от sysghost Посмотреть сообщение
Индикация остатка подсчитывается независимо и цифра всегда актуальна.
Так зачем нужна еще одна?
Одна цифра показывает реальный остаток всегда для того, что бы было видно сколько можно реально взять.
Вторая, записывается автоматически в поле остаток после того, как было что то взято и служит для статистики и для возможности отследить порядок списания и наглядно показывает, что порядок внесения снимаемого количества был не нарушен.
На её основании никаких подсчетов не ведется а только отслеживается корректность внесения записей и по ней легко видно, что прядок был нарушен без каких либо дополнительных запросов.

Если Вам удобнее вести лог изменений отдельно и проверять его по графику или по еще каким то критериям, это то-же можно, но мне удобнее так. Так как любой взявший в руки распечатку сможет заметить некорректность а не только я при специальном исследовании.

И вопрос не стоял зачем и что удобнее, а как такое проще всего реализовать автоматически.
Я в целом стараюсь придерживаться догм работы с access но не до фанатизма.

Добавлено через 1 минуту
Цитата Сообщение от alvk Посмотреть сообщение
и вставлю свои 5 копеек - у вас в подчинённой пустые поля, это плохо, лучше ставить ноль, а не null, иначе в будущем ждут бесконечные проверки на пустоту.
Да, спасибо, но это только пример реализации, в реальности все это конечно будет доработано и переработано под конкретное исполнение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.03.2016, 15:01
Помогаю со студенческими работами здесь

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

Сравнение вычисляемого поля и поля из таблицы БД
Вот условие: Считая, что показатели даны на текущий год, а ежегодная добыча будет возрастать на 10% каждый год, определить те...

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

Ошибка вычисляемого поля таблицы Access 2010
Приветствую! В таблицах базы данных используются вычисляемые поля. Например, вот по такой формуле: : ...

Триггер SUM (вычисляемого поля из другой таблицы) с JOIN-ом
В институте преподают курс SQL На лабораторной триггеры задали написать триггер. Есть таблицы "Концерт Общее" и...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru