Atribuut Recordset (Kirjekomplekt)

NB! :  See artikkel on masintõlgitud, vaadake lahtiütlust. Selle artikli ingliskeelse versiooni leiate aadressilt (viiteks).

Rakenduskoht

Objekt ComboBox (Liitboks)

Objekt Form (Vorm)

Objekt ListBox (Loendiboks)

Objekt Report (Aruanne)

Tagastab või seab ADO-kirjekomplekti või DAO-kirjekomplekti objekti, mis esindab määratud vormi, aruande, loendiboksi juhtelemendi või liitboksi juhtelemendi kirje allikas. Lugemis-/kirjutamisõigusega.

avaldis.Recordset

avaldis on kohustuslik. Avaldis tagastab loendi Rakenduskoht ühe objekti.

Kommentaarid

Atribuut Recordset (Kirjekomplekt) tagastab selle kirjekomplektiobjekti, mis pakub vormis, aruandes, loendiboksi juhtelemendis või liitboksi juhtelemendis sirvitavaid andmeid. Kui vorm põhineb päringul, on näiteks viitamine atribuudile Recordset (Kirjekomplekt) samaväärne atribuudi Recordset (Kirjekomplekt) kloonimisega sama päringu abil. Kuid erinevalt atribuudist RecordsetClone (Kirjekomplekti kloon) määratakse vormi atribuudi Recordset (Kirjekomplekt) tagastatud kirjekomplekti korral praeguse kirje muutmisel atribuudi poolt ka vormi praegune kirje.

Atribuut on saadaval vaid rakenduse Visual Basic for Applications (VBA) kood.

Atribuudi Recordset (Kirjekomplekt) lugemis- ja kirjutamisõiguse käitumine määratakse kirjekomplekti tüübiga (ADO või DAO) ja atribuudi tuvastatud kirjekomplektis sisalduva andmetüübiga (Access või SQL).

Kirjekomplekti Tüüp

SQL-i andmetel põhinev

Accessi andmetel põhinev

ADO

Lugemis- ja kirjutamisõigus

Lugemis- ja kirjutamisõigus

DAO

Pole saadaval

Lugemis- ja kirjutamisõigus

Järgmises näites avatakse vorm, seejärel avatakse kirjekomplekt ning seotakse vorm kirjekomplektiga, seades vormi atribuudi Recordset (Kirjekomplekt) sätteks äsja loodud objekti Kirjekomplekt.

Global rstSuppliers As ADODB.RecordsetSub MakeRW()DoCmd.OpenForm "Suppliers"Set rstSuppliers = New ADODB.RecordsetrstSuppliers.CursorLocation = adUseClientrstSuppliers.Open "Select * From Suppliers", _CurrentProject.Connection, adOpenKeyset, adLockOptimisticSet Forms("Suppliers").Recordset = rstSuppliersEnd Sub

Atribuuti Kirjekomplekt saate kasutada järgmiste toimingute korral.

  • Mitme vormi sidumine üldise andmekomplektiga. See võimaldab sünkroonida mitut vormi. Nt

    Set Me.Recordset = Forms!Form1.Recordset

  • Otsese vormide toeta meetodite kasutamine objekti Kirjekomplekt korral. Näiteks saate atribuuti Recordset (Kirjekomplekt) kirje otsimisel kohandatud dialoogiboksis kasutada koos meetodiga ADO Find (Otsi) või DAO Find (Otsi).

  • Transaktsiooni murdmine (mida saab tagasi pöörata) mitut vormi mõjutava muudatustekogumi suhtes.

Vormi atribuudi Recordset (Kirjekomplekt) muutmine võib mõjutada ka atribuute RecordSource (Kirje allikas), RecordsetType (Kirjekomplekti tüüp) ja RecordLocks (Kirjelukud). Samuti võidakse alistada mõni andmeseostega atribuut (nt Filter (Filter), FilterOn (Filtreerimisalus), OrderBy (Järjestusalus) ja OrderByOn (Järjestusalus sees)).

Vormi kirjekomplekti meetodi Requery (Korduspäring) (nt Forms(0).Recordset.Requery) kutsumine võib põhjustada vormi seoste tühistamise. Kirjekomplektiga seotud vormi andmete värskendamiseks määrake kirjekomplektiga seotud vormi atribuudi RecordSource (Kirje allikas) sätteks tema enda väärtus (Forms(0).RecordSource = Forms(0).RecordSource).

Kirjekomplektiga seotud vormi korral tekib käsu Vormi filter kasutamisel tõrge.

Näide

Järgmises näites kasutatakse kasutatakse atribuuti Recordset (Kirjekomplekt) praegusest vormist objekti Kirjekomplekt uue koopia loomisel ning seejärel prinditakse väljanimed silumisaknasse.

Sub Print_Field_Names()
Dim rst As DAO.Recordset, intI As Integer
Dim fld As Field
Set rst = Me.Recordset
For Each fld in rst.Fields
' Print field names.
Debug.Print fld.Name
Next
End Sub

Järgmises näites kasutatakse atribuuti Recordset (Kirjekomplekt) ja objekti Kirjekomplekt kirjekomplekti sünkroonimiseks vormi praeguse kirjega. Kui ettevõtte nimi on valitud liitboksist, kasutatakse selle ettevõtte kirje asukoha kindlaksmääramisel meetodit FindFirst (Otsi esimene), põhjustades leitud kirje kuvamise vormis.

Sub SupplierID_AfterUpdate()
Dim rst As DAO.Recordset
Dim strSearchName As String
Set rst = Me.Recordset
strSearchName = CStr(Me!SupplierID)
rst.FindFirst "SupplierID = " & strSearchName
If rst.NoMatch Then
MsgBox "Record not found"
End If
rst.Close
End Sub

Järgmine kood aitab kindlaks määrata atribuudi Recordset (Kirjekomplekt) tagastatud kirjekomplekti tüübi eri tingimuste korral.

Sub CheckRSType()
Dim rs as Object
Set rs=Forms(0).Recordset
If TypeOf rs Is DAO.Recordset Then
MsgBox "DAO Recordset"
ElseIf TypeOf rs is ADODB.Recordset Then
MsgBox "ADO Recordset"
End If
End Sub

Märkus. : Masintõlke lahtiütlus. Selle artikli tõlkis arvutisüsteem ilma inimese sekkumiseta. Microsoft pakub selliseid masintõlkeid, et inglise keelt mittekõnelevad kasutajad saaksid vaadata sisu Microsofti toodete, teenuste ja tehnoloogiate kohta. Kuna artikkel on masintõlgitud, võib see sisaldada sõnavara-, süntaksi- või grammatikavigu.

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liituge Office Insideri programmiga

Kas sellest teabest oli abi?

Täname tagasiside eest!

Täname tagasiside eest! Tundub, et võiksime teid kokku viia ühega meie Office'i tugiagentidest, kes aitab teil probleemi lahendada.

×