Rakenduskoht
Objekt Form |
Objekt Report |
Tuvastab stringavaldise, mis on määratud argumendis OpenArgs meetodis OpenForm, mis vormi avas. Loetav/kirjutatav variant.
avaldis.OpenArgs
avaldis Nõutav. Avaldis, mis tagastab loendi Rakenduskoht objekti.
Kommentaarid
See atribuut on saadaval ainult siis, kui kasutate objekti DoCmd meetodiga OpenFormmakrot või Visual Basic for Applicationsit (VBA). See atribuudisäte on kõigis vaadetes kirjutuskaitstud.
Atribuudi OpenArgs kasutamiseks avage vorm objekti DoCmd meetodit OpenForm ja määrake argumendi OpenArgs väärtuseks soovitud stringiavaldis. Seejärel saab atribuudisätet OpenArgs kasutada vormi koodis (nt sündmuseprotseduuri avamine). Atribuudi sättele saate viidata ka makros (nt avamismakros) või avaldises (nt avaldises, mis määrab vormi juhtelement atribuudi ControlSource väärtuse).
Näiteks oletagem, et avatav vorm on klientide loendi pidevvorm. Kui soovite, et fookus liiguks vormi avamisel teatud kliendikirje juurde, saate atribuudi OpenArgs väärtuseks määrata kliendi nime ja kasutada Open-makros toimingut FindRecord, et viia fookus määratud nimega kliendi kirjele.
Näide.
Järgmises näites kasutatakse vormi Töötajad kindla töötaja kirje juures avamiseks atribuuti OpenArgs ja näitab, kuidas meetod OpenForm määrab atribuudi OpenArgs. Selle protseduuri saab käivitada sobival ajal, näiteks töötaja kohta uue teabe sisestamiseks kasutatava dialoogiboksi sündmuse AfterUpdate toimumisel.
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
Järgmises näites kasutatakse atribuudis OpenArgs nimetatud töötaja leidmiseks meetodit FindFirst.
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