Taikoma
Objektas Form |
Objektas Report |
Ypatybę RecordSource galite naudoti norėdami nurodyti forma arba ataskaita duomenų šaltinį. Skaityti/rašyti String.
reiškinys.RecordSource
reiškinys Būtina. Reiškinys, kuris pateikia vieną iš sąrašo „Taikoma“ objektų.
Pastabos
Ypatybės RecordSource parametras gali būti lentelės pavadinimas, užklausos pavadinimas arba SQL sakinys. Pavyzdžiui, galite naudoti toliau pateiktus parametrus.
Parametro pavyzdys |
Aprašas |
Darbuotojai |
Lentelės pavadinimas, nurodantis lentelę Darbuotojai kaip duomenų šaltinį. |
SELECT Orders!OrderDate FROM Orders; |
SQL sakinys, nurodantis lauką OrderDate lentelėje Orders kaip duomenų šaltinį. Galite susieti valdiklį formoje arba ataskaitoje su lauku OrderDate lentelėje Orders nustatydami valdiklio ypatybę ControlSource kaip OrderDate. |
Pastaba: Ypatybę RecordSource galite nustatyti naudodami formos arba ataskaitos ypatybės lapas, makrokomanda arba "Visual Basic for Applications" (VBA) kodą.
VBA naudokite eilutės išraišką norėdami nustatyti šią ypatybę.
Pastaba: Pakeitus atviros formos arba ataskaitos įrašo šaltinį, automatiškai iš naujo užklausiami esami duomenys. Jei formos ypatybė Recordset nustatyta vykdymo aplinkoje, formos ypatybė RecordSource yra atnaujinama.
Kai sukuriate formą arba ataskaitą, galite keisti jos duomenų šaltinį pakeisdami ypatybę RecordSource. Ypatybė RecordSource taip pat naudinga, jei norite sukurti daugkartinio naudojimo formą ar ataskaitą. Pvz., galite sukurti formą, kuri apima standartinį dizainą, tada nukopijuoti šią formą ir pakeisti ypatybę RecordSource, kad būtų rodomi duomenys iš kitos lentelės, užklausos ar SQL sakinio.
Formos įrašo šaltinyje esančių įrašų skaičiaus apribojimas gali padidinti efektyvumą, ypač, jei jūsų programa veikia tinkle. Pavyzdžiui, galite formos ypatybę RecordSource nustatyti kaip SQL sakinį, kuris pateikia vieną įrašą, ir pakeisti formos įrašo šaltinis, atsižvelgiant į vartotojo pasirinktus kriterijus.
Pavyzdys
Šiame pavyzdyje formos ypatybė RecordSource nustatoma lentelei Klientai:
Forms!frmCustomers.RecordSource = "Customers"
Kitame pavyzdyje formos įrašo šaltinis pakeičiamas į vieną įrašą lentelėje Klientai, atsižvelgiant į įmonės pavadinimą, pasirinktą cmboCompanyName pasirinktinio įvedimo lauko valdiklyje. Pasirinktinio įvedimo laukas užpildomas SQL sakiniu, kuris pateikia kliento ID (susietame stulpelyje) ir įmonės pavadinimą. CustomerID duomenų tipas yra Tekstas.
Sub cmboCompanyName_AfterUpdate()
Dim strNewRecord As String
strNewRecord = "SELECT * FROM Customers " _
& " WHERE CustomerID = '" _
& Me!cmboCompanyName.Value & "'"
Me.RecordSource = strNewRecord
End Sub