Я работаю над базой данных доступа, которая позволяет пользователям щелкать записи в форме, чтобы получить более подробную информацию о конкретной записи. Это делается с помощью rst (с которым я не знаком). Я написал код: Attachment1 = rst![Doc]
и добавил правильное поле в таблицу, из которой он черпает информацию, но я получаю следующее сообщение:
Ошибка времени выполнения '438'
Объект не поддерживает это свойство или метод
Что я здесь не так делаю и что я могу сделать, чтобы это исправить?
Код, который я написал, - это то место, где брошен флаг. Я предполагаю, что первое не работает с полем вложения, так как я добавил текстовое поле, и это прекрасно работает. Я также попытался связать таблицу с формой и создать поле, в котором я хотел получить источник управления для блока вложений, но это привело к тому, что в каждом разделе «Сведения» использовалась верхняя строка поля вложения вместо каждой записи, имеющей свою собственную строку.
Редактировать: это мой код до того момента, когда он выдает ошибку
Dim rst As DAO.Recordset
Dim rstLabels As DAO.Recordset
Dim twoPerBox As Boolean
Dim showDDA As Boolean
Dim isSearching As Boolean
If tree_PTTInfo.SelectedItem Is Nothing Then
GoTo Good_Exit
End If
'check how many PTTs can fit in a box
Set rst = CurrentDb.OpenRecordset("SELECT tbl_Products.[MaxInBox], tbl_OrderGroup.[ProdID]" & _
", tbl_ProductTypes.[isGSM]" & _
" FROM [tbl_OrderGroup] INNER JOIN" & _
" ([tbl_Products] INNER JOIN [tbl_ProductTypes] ON tbl_Products.[TypeID] = tbl_ProductTypes.[TypeID])" & _
" ON tbl_OrderGroup.[ProdID] = tbl_Products.[ProdID]" & _
" WHERE tbl_OrderGroup.[GroupID] = " & CInt(Right(tree_PTTInfo.SelectedItem.key, Len(tree_PTTInfo.SelectedItem.key) - 3)), , dbReadOnly)
isSearching = False
If rst.EOF Then
Set rst = CurrentDb.OpenRecordset("SELECT tbl_Products.[MaxInBox], qry_OrderGroup_All.[ProdID]" & _
", tbl_ProductTypes.[isGSM]" & _
" FROM [qry_OrderGroup_All] INNER JOIN" & _
" ([tbl_Products] INNER JOIN [tbl_ProductTypes] ON tbl_Products.[TypeID] = tbl_ProductTypes.[TypeID])" & _
" ON qry_OrderGroup_All.[ProdID] = tbl_Products.[ProdID]" & _
" WHERE qry_OrderGroup_All.[GroupID] = " & CInt(Right(tree_PTTInfo.SelectedItem.key, Len(tree_PTTInfo.SelectedItem.key) - 3)), , dbReadOnly)
isSearching = True
End If
twoPerBox = False
If rst![MaxInBox] = 2 And rst![ProdID] <> DummyProdID Then
twoPerBox = True
End If
showDDA = False
If rst![isGSM] Then
showDDA = True
End If
'get the OrderGroup record
Set rst = CurrentDb.OpenRecordset("SELECT * FROM [tbl_OrderGroup]" & _
" WHERE [GroupID] = " & CInt(Right(tree_PTTInfo.SelectedItem.key, Len(tree_PTTInfo.SelectedItem.key) - 3)), , dbReadOnly)
If rst.EOF Then
Set rst = CurrentDb.OpenRecordset("SELECT * FROM [qry_OrderGroup_All]" & _
" WHERE [GroupID] = " & CInt(Right(tree_PTTInfo.SelectedItem.key, Len(tree_PTTInfo.SelectedItem.key) - 3)), , dbReadOnly)
End If
If rst![isPTT] Then
lbl_PTTInfo.Caption = "PTT Information - " & rst![GroupDesc]
txtbx_ProductionID.Enabled = True
txtbx_Species.Enabled = True
txtbx_SpeciesWeight.Enabled = True
txtbx_Location.Enabled = True
Text585.Enabled = True
Attachment595.Enabled = True
txtbx_ProductionID = rst![ProductionID]
txtbx_Species = rst![Species]
txtbx_SpeciesWeight = rst![SpeciesWeight]
txtbx_Location = rst![Location]
Text585 = rst![Admin Notes]
Attachment595 = rst![Prod Docs]