«Аргумент« Тип объекта »для действия или метода пуст или недействителен».ошибка с пустой формой при открытии из элемента управления в другой форме - PullRequest
0 голосов
/ 21 января 2019

Я пытаюсь создать элемент управления, который перемещается из одной формы в другую и переходит к определенной записи в новой форме. Однако я получаю некоторые странные ошибки, которые просто не имеют большого смысла для меня (мудрый код). Кроме того, даже если я открою форму frmService из окна проводника объектов, я не получу сообщение об ошибке, но форма откроется полностью пустой.

frmService, открытый из браузера объектов - пусто
frmService открывается из элемента управления в frmWorkOrders - с ошибкой
Что на самом деле имеет frmService
Для хорошей картины, изображение frmWorkOrders.

Элемент управления на frmWorkOrders, который открывает frmService, - это кнопка с надписью «Service Record» и именем cmdService (код ниже).

Когда я пытаюсь открыть frmService, используя элемент управления на frmWorkOrders, при открытии frmService я получаю сообщение об ошибке:

Аргумент типа объекта для действия или метода пуст или недействителен.

Код для открытия и закрытия форм чертовски прост, поэтому я не уверен, почему возникают ошибки.

Это ВСЕ код на frmService, где и происходит ошибка.

Option Compare Database

Private Sub cmdClose_Click()
    DoCmd.Close acForm, "frmService"
    DoCmd.OpenForm "frmWorkOrders", acNormal
End Sub

Private Sub cmdComputer_Click()
 Me.Computer.SetFocus
End Sub

Private Sub cmdFirst_Click()
 Me.FirstStage.SetFocus
End Sub

Private Sub cmdHPSPG_Click()
 Me.HPSPG.SetFocus
End Sub

Private Sub cmdInflator_Click()
 Me.Inflator.SetFocus
End Sub

Private Sub cmdOcto_Click()
 Me.Octo.SetFocus
End Sub

Private Sub cmdSecond_Click()
 Me.SecondStage.SetFocus
End Sub

Private Sub Command86_Click()
 Me.Computer.SetFocus
End Sub

А вот код для открытия frmService и закрытия frmWorkOrders.

Private Sub cmdService_Click()
On Error GoTo cmdService_Click_Err

    DoCmd.OpenForm "frmService", , , "tblRegSR.[ID] = " & Me!txtID
    DoCmd.SearchForRecord , "frmService", acFirst, "[WorkOrderID] = " & Me.txtID
    DoCmd.Close acForm, "frmWorkOrders"

cmdService_Click_Exit:
    Exit Sub

cmdService_Click_Err:
    MsgBox Error$
   Resume cmdService_Click_Exit
End Sub

И на всякий случай, если это проблема SQL, вот оператор SQL для frmService.

SELECT tblRegSR.*, [tblCustomers].[FName] & " " & [LName] AS FullName, tblWorkOrder.Task, "WD0" & [tblWorkOrder]![ID] AS WONumber, tblFirstSR.*, tblHPSPGSR.*, tblInflatorSR.*, tblOctoSR.*, tblSecondSR.*, tblComputerSR.*
FROM ((((((tblCustomers RIGHT JOIN (tblWorkOrder INNER JOIN tblRegSR ON tblWorkOrder.ID = tblRegSR.ID) ON tblCustomers.ID = tblWorkOrder.CustomerID) 
INNER JOIN tblComputerSR ON tblRegSR.ID = tblComputerSR.ServiceRecordID) 
INNER JOIN tblFirstSR ON tblRegSR.ID = tblFirstSR.ServiceRecordID) 
INNER JOIN tblHPSPGSR ON tblRegSR.ID = tblHPSPGSR.ServiceRecordID) 
INNER JOIN tblInflatorSR ON tblRegSR.ID = tblInflatorSR.ServiceRecordID) 
INNER JOIN tblOctoSR ON tblRegSR.ID = tblOctoSR.ServiceRecordID) 
INNER JOIN tblSecondSR ON tblRegSR.ID = tblSecondSR.ServiceRecordID;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...