У меня есть форма в базе данных MS Access, в которой перечислены заказы с номером заказа, по одному заказу на страницу.Внизу формы есть кнопка, которая открывает другую форму, чтобы добавить элемент для заказа.
Я пытаюсь использовать vb в MS Access, чтобы взять номер заказа и автоматически поместить его в полев форме детали для нового элемента.Я пробовал разные способы, но рекомендуется использовать OpenArgs.Но форма детализации не открывается, и я получаю ошибки во время выполнения.Вот детали проблемы - совет будет высоко ценится:
Соответствующие формы и поля: Форма с заказами: frmPedidoAvifiFind Форма с строками заказа для одного заказа: frmPedidoAvifi-dtlAdd (отдельная форма для добавлениядетали, но не для просмотра существующих).Поле в обеих формах для номера заказа - PedidoAvifiNo.Это числовое поле в обеих таблицах, которые связаны отношением «один ко многим» через это поле.
Основная форма: кнопка вызывает подробный вид, код следующий:
Код включенкнопка основной формы:
Sub AddDetails_Click()
Dim strDocName As String
strDocName = "frmPedidoAvifi-dtlAdd"
' Open frmPedidoAvifi-dtl form in data entry mode and store PedidoAvifiNo in the form's OpenArgs property.
DoCmd.OpenForm strDocName, , , , acFormAdd, , [frmPedidoAvifiFind]![PedidoAvifiNo]
End Sub
Подробная форма: свойство On Open
Private Sub Form_Open()
If Me.OpenArgs <> vbNullString Then
Me.PedidoAvifiNo = Me.OpenArgs
End If
End Sub
Тест 1: выберите номер заказа в главной форме, чтобы отображалась запись.Нажмите кнопку, чтобы добавить строку заказа.- ошибка времени выполнения '2465' не может найти поле "|"упоминается.Отладка выделяет строку DoCmd.
Тест 2. Изменение строки openform на: DoCmd.OpenForm strDocName,,,, acFormAdd,, Me.PedidoAvifiNo результат: - ошибка во время выполнения 2501 действие openForm было отменено.
Спасибо, Майк Ганнер Реус, Испания