Что не так с моим макросом Access After Update? - PullRequest
0 голосов
/ 07 октября 2019

Я пытаюсь сделать так, чтобы, если поле Баланс обновлялось, то автоматически вычислялся доступный кредит.

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

  If [Balance] <> [Old].[Balance] Then
    EditRecord
      SetField
        Name Available Credit
        Value= [Client].[CreditLimit]-[Client].[Balance]
  End If

1 Ответ

0 голосов
/ 07 октября 2019

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

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

Там просто используйте действие Set Field для изменения поля.

...