Ссылки в формах

У меня есть две формы доступа к Microsoft: одна называется «Счет», а другая - «Оплата». У них обоих есть поле «Общая сумма» в обеих формах. Я пытаюсь связать общую сумму счета с общей суммой платежа.

Я пробовал в источнике управления общей суммой платежа: = Forms! Bill! [Total Amount]

но это, похоже, не работает. В режиме просмотра "Дизайн" отображается "# Имя?" в текстовом поле.

Как бы ты это сделал?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
126
3

Ответы 3

Является ли какая-либо из форм подчиненной? Если это так, вам нужно сослаться на элемент управления подчиненной формы или родительское свойство:

Me.Parent.[Total order]
Me.[Subform Control name Here].form.[Total order]

Обратите внимание, что имя элемента управления подчиненной формы не всегда совпадает с именем содержащейся в нем формы.

Обновлено: либо опустите меня, либо используйте Form! FormName в элементе управления.

РЕДАКТИРОВАТЬ2: Обратите внимание, что обычный способ ссылки на формы, подчиненные формы и элементы управления - это либо удар (!), Либо точка (.). круглые скобки и кавычки используются редко. Это можно увидеть как на сайте Microsoft Access MVP (http://www.mvps.org/access/forms/frm0031.htm), так и на собственном сайте Microsoft (http://support.microsoft.com/kb/209099), как упомянул Нокс.

Если нет, пробовали ли вы построитель выражений? Это поможет убедиться, что у вас есть правильные имена.

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

Рему ответил правильно; может быть полезно просмотреть документацию Microsoft относительно ссылки на элемент управления: support.microsoft.com/kb/209099

Knox 08.11.2008 02:19

Ответ Remou работает только в коде - однако похоже, что вы определяете источник управления текстового поля, поэтому попробуйте следующее:

=Forms("Bill")![Total order]

Хотя часть моего ответа «Я» подходит только для кода, комментарии о подчиненных формах относятся к источникам управления. Необязательно использовать Формы («Счет»). Forms! Bill подходит для загруженной формы.

Fionnuala 08.11.2008 03:04

Мое любимое решение - всегда возвращаться к наборам записей и вычислять соответствующие итоги, поскольку вы не являетесь всегда уверен, итоги на уровне формы обновляются правильно (всегда может быть отложенное обновление элемента управления / набора записей по любой причине). После этого у вас есть возможность использовать DSUM и связанные с ним функции!

Пример:

dsum(Forms("Bill").recordsource, "unitPrice*lineQuantity")

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

Dim rs as DAO.recordset, _
    myBillNumber as variant, _
    myBillAmount as variant

set rs = currentDb.openRecordset(_ 
    "SELECT billNumber, sum(unitPrice*lineQuantity) as totalPrice FROM " & _
    Forms("Bill").recordset.name " GROUP BY billNumber")

myBillNumber = rs.fields(0)
myBillAmount = rs.fields(1)

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

Другие вопросы по теме