Я работаю с MS Access 2007.
У меня есть таблица с именем [tblDonors]
связан с дочерними записями в таблице называется [tblReceipts]
.
Я пытаюсь установить значение нового поля Boolean (y/n) [tblDonors].[blInactive]
. . Я хотел бы запустить скрипт, который проходит через каждую запись в [tblDonors]
и установите [blInactive]
поле для "True"
если последний год поступления ([tblReceipts].[Date]
) старше года (now())-2
Вот мой запрос:Настройки родительской запись значение поля на основе максимального значения поля Детского рекорда
ВЫБОР tblDonors.ID, Год ([tblReceipts]. [Дата]) AS [Год], tblDonors.Active
ОТ tblDonors
LEFT JOIN tblReceipts НА tblDonors.ID = tblReceipts.ID
ГДЕ (((Год ([tblReceipts]. [Дата]))> = Год (сейчас()) - 2))
ORDER BY Donors.ID;
Этот запрос показывает родительскую запись несколько раз, если донор пожертвовал более одного раза в течение последних двух лет, что создает дубликаты записей в отчете.
Как я могу пройти через каждую запись этого запроса, чтобы установить tblDonors.Active
в TRUE
, используя VBA
? Следующие помогают продемонстрировать суть того, что я пытаюсь выполнить.
Function fnActivity() 'locates active donors
For each record in recordset 'Go through each record in the query...
record.[Active].Value = True '...and flag as active member.
Next record
End Function
Это сделало очарование. Спасибо, что помогли решить проблему, вызвавшую большую досаду. –