Attiecas uz
Objekts Form |
Atskaites objekts |
Nosaka virknes izteiksme, ko norāda metodes OpenForm arguments OpenArgs, kas atvēra formu. Lasāms/rakstāms Variant.
izteiksme.OpenArgs
expression Obligāti. Izteiksme, kas atgriež vienu no objektiem sarakstā Attiecas uz.
Piezīmes
Šis rekvizīts ir pieejams, tikai izmantojot makro vai izmantojot Visual Basic for Applications (VBA) kodu ar objekta DoCmd metodi OpenForm. Šis rekvizīta iestatījums visos skatos ir tikai lasāms.
Lai izmantotu rekvizītu OpenArgs, atveriet formu, izmantojot objekta DoCmd metodi OpenForm un iestatiet argumentu OpenArgs uz vēlamo virknes izteiksmi. Rekvizīta OpenArgs iestatījumu var izmantot kodā formai, piemēram, Open notikuma procedūra. Varat arī izveidot atsauci uz rekvizīta iestatījumu makro, piemēram, Atvērt makro, vai izteiksmi, piemēram, izteiksmi, kas iestata rekvizītu ControlSourcevadīkla formā.
Piemēram, pieņemsim, ka forma, ko atverat, ir klientu nepārtrauktu formu saraksts. Ja vēlaties fokuss pārvietot uz konkrētu klienta ierakstu, kad forma tiek atvērta, varat iestatīt rekvizītu OpenArgs uz klienta vārdu un pēc tam izmantot darbību FindRecord opcijā Atvērt makro, lai pārvietotu fokusu uz ierakstu klientam ar norādīto vārdu.
Piemērs
Tālāk esošajā piemērā rekvizīts OpenArgs tiek izmantots, lai atvērtu formu Darbinieki konkrētā darbinieka ierakstā, kā arī tiek parādīts, kā metode OpenForm iestata rekvizītu OpenArgs. Šo procedūru varat veikt kā aptuvenu — piemēram, ja notikums AfterUpdate notiek pielāgotam dialoglodziņam, lai ievadītu jaunu informāciju par darbinieku.
Sub OpenToCallahan()
DoCmd.OpenForm "Employees", acNormal, , , _ acReadOnly, , "Callahan" End Sub Sub Form_Open(Cancel As Integer) Dim strEmployeeName As String ' If OpenArgs property contains employee name, find ' corresponding employee record and display it on ' form. For example,if the OpenArgs property ' contains "Callahan", move to first "Callahan" ' record. strEmployeeName = Forms!Employees.OpenArgs If Len(strEmployeeName) > 0 Then DoCmd.GoToControl "LastName" DoCmd.FindRecord strEmployeeName, , True, , _ True, , True End If End Sub
Nākamajā piemērā tiek izmantota metode FindFirst, lai atrastu darbinieku, kas nosaukts rekvizītā OpenArgs.
Private Sub Form_Open(Cancel As Integer)
If Not IsNull(Me.OpenArgs) Then Dim strEmployeeName As String strEmployeeName = Me.OpenArgs Dim RS As DAO.Recordset Set RS = Me.RecordsetClone RS.FindFirst "LastName = '" & _ strEmployeeName & "'" If Not RS.NoMatch Then Me.Bookmark = RS.Bookmark End If End If End Sub