dbvs ms access iekšējās programmēšanas valodas  · web viewvienkāršas formas veidošana ar...

24

Click here to load reader

Upload: trannhan

Post on 21-Feb-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

Vienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application1. Datu avots (data source)

Tabula „Firmas”

1

Page 2: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

2. Veidojamā forma F_12

Page 3: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

3. Datu avota norādīšana

Sub Jaunas_formas_veidosana()' Pārbaude, vai ir tabula "Firmas"Dim m_lietojums As ObjectSet m_lietojums = CreateObject("Access.Application")

Dim m_datu_avots As ObjectSet m_datu_avots = Application.CurrentData

Dim m_objekts As AccessObjectSet m_objekts = m_datu_avots.AllTables("Firmas")

Debug.Print m_objekts.NameEnd Sub

Objekts: Access.Aplication - Lietojums

Objekts: CurrentData - Datu avots (patreizējā DB)

Objektu kolekcija: AllTables - Visas datu bāzes tabulas

Objekts: Table - Tabula "Firmas"

Objekta nosaukuma izvade - Name = Firmas

3

Page 4: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

Datu avota (tabulas) norādīšana manuāli4

Page 5: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

Programmas veidošanas logs5

Page 6: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

4. Formas karkasa izveidošana

Dim m_forma As FormSet m_forma = CreateForm(, "Sablons_F")' "Sablons_F" ir speciāli izveidota forma, lai norādītu formas ' noformējumu (arī satāvdaļas:Header,Footer, ...)m_forma.RecordSource = "Firmas"m_forma.Caption = "F_1"DoCmd.Save , "F_1" DoCmd.OpenForm "F_1", acDesignDoCmd.MaximizeWith m_forma .RecordSelectors = False .NavigationButtons = False .ScrollBars = NeitherEnd WithDebug.Print m_forma.Caption

6

Page 7: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

5. Datu izvades elementu un paskaidrojošā teksta elementu izveidošana (vizuālais attēlojums)

7

Page 8: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

5. Datu izvades elementu un paskaidrojošā teksta elementu izveidošana (programma)

Dim m_x As Integerm_x = 1900Dim m_elements_1 As ControlSet m_elements_1 = CreateControl("F_1", acLabel, acDetail, _"", "Numurs", 300, 300)m_elements_1.Name = "T_1"

Dim m_elements_2 As ControlSet m_elements_2 = CreateControl("F_1", acTextBox, acDetail, _"", "F_NUM", m_x, 300)m_elements_2.Name = "L_1"

Dim m_elements_3 As ControlSet m_elements_3 = CreateControl("F_1", acLabel, acDetail, _"", "Nosaukums", 300, 700)m_elements_3.Name = "T_2"Dim m_elements_4 As ControlSet m_elements_4 = CreateControl("F_1", acTextBox, acDetail, _"", "F_NOS", m_x, 700)m_elements_4.Name = "L_2"Dim m_elements_5 As ControlSet m_elements_5 = CreateControl("F_1", acLabel, acDetail, _"", "Telefons", 300, 1100)m_elements_5.Name = "T_3"Dim m_elements_6 As ControlSet m_elements_6 = CreateControl("F_1", acTextBox, acDetail, _"", "TEL", m_x, 1100)m_elements_6.Name = "L_3"Dim m_elements_7 As ControlSet m_elements_7 = CreateControl("F_1", acLabel, acDetail, _"", "Statūta kapitāls", 300, 1500)m_elements_7.Name = "T_4"Dim m_elements_8 As ControlSet m_elements_8 = CreateControl("F_1", acTextBox, acDetail, _"", "STAT_KAP", m_x, 1500)m_elements_8.Name = "L_4"

8

Page 9: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

Dim m_elements_9 As ControlSet m_elements_9 = CreateControl("F_1", acLabel, acDetail, _"", "Piezīmes", 300, 1900)m_elements_9.Name = "T_5"Dim m_elements_10 As ControlSet m_elements_10 = CreateControl("F_1", acTextBox, acDetail, _"", "PIEZ", m_x, 1900, 3000, 500)m_elements_10.Name = "L_6"

9

Page 10: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

6. Vadības taustiņu "Nākošais" un "Iepriekšējais" veidošana (vizuālais attēlojums)

10

Page 11: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

6. Vadības taustiņu "Nākošais" un "Iepriekšējais" veidošana (programma)

Dim taustins_Nakosais As ControlSet taustins_Nakosais = CreateControl("F_1", acCommandButton, _acDetail, "", "", 1500, 2500)taustins_Nakosais.Name = "Nak"With taustins_Nakosais .Caption = "Nākošais"End With

Dim taustins_Ieprieksejais As ControlSet taustins_Ieprieksejais = CreateControl("F_1", _cCommandButton, acDetail, "", "", 1500, 2900)taustins_Ieprieksejais.Name = "Iep"With taustins_Ieprieksejais .Caption = "Iepriekšējais"End With

7. Notikumu procedūru (Event procedures) veidošana formas notikumu procedūru modulī (vizuālais attēlojums)

11

Page 12: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

12

Page 13: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

7. Notikumu procedūru (Event procedures) veidošana formas notikumu procedūru modulī (programma)

Dim m_modulis As ModuleDim m_1 As LongSet m_modulis = m_forma.Module' Notikuma procedūras izveidošana taustiņam "Nākošais"m_1 = m_modulis.CreateEventProc("Click", taustins_Nakosais.Name)' Izpildāmā koda ierakstīšana notikumu procedūrām_modulis.InsertLines m_1 + 1, "DoCmd.GoToRecord , , acNext"ClickEventProc = True' Notikuma procedūras izveidošana taustiņam "Iepriekšējais"m_1 = m_modulis.CreateEventProc("Click", taustins_Ieprieksejais.Name)' Izpildāmā koda ierakstīšana notikumu procedūrām_modulis.InsertLines m_1 + 1, "DoCmd.GoToRecord , , acPrevious"ClickEventProc = True8. Līnijas iezīmēšana formas pamatdaļā un zemraksta daļā

13

Page 14: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

'Līnijas iezīmēšana formas pamatdaļā (Detail)Dim m_linija_1 As ControlSet m_linija_1 = CreateControl("F_1", acLine, acDetail, _"", "", 0, 3300, 12000, 0)m_linija_1.Name = "E_1"'Līnijas iezīmēšana formas zemraksta daļāDim m_linija_2 As ControlSet m_linija_2 = CreateControl("F_1", acLine, acFooter, _"", "", 0, 50, 12000, 0)m_linija_2.Name = "E_3"

14

Page 15: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

9. Firmu skaita noteikšana un izvade formas zemraksta daļā

Forms!F_1.Section(acHeader).Visible = FalseForms!F_1.Section(acFooter).Height = 1000Dim m_elements_11 As ControlSet m_elements_11 = CreateControl("F_1", acLabel, acFooter, _"", "Firmu skaits:", 300, 300)m_elements_11.Name = "T_8"Dim m_skaits As ControlSet m_skaits = CreateControl("F_1", acTextBox, acFooter, _"", "", 1900, 300)m_skaits.Name = "E_2"m_2 = "=Count(F_NUM)"m_skaits.ControlSource = m_2

15

Page 16: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

10. Formas saglabāšana un atvēršana darba režīmā (skatā)

DoCmd.Close acForm, "F_1", acSaveYesDoCmd.OpenForm "F_1", acNormalEnd Sub

16

Page 17: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

11. Apakšformas izveidošana galvenajai formai17

Page 18: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

11.1. Apakšformas karkasa veidošana

'Apakšformas veidošanaDim a_forma As FormSet a_forma = CreateForm(, "Sablons_A")'"Sablons_A" ir speciāli izveidota forma, lai norādītu'formas noformējumu (arī satāvdaļas:Header,Footer, ...)a_forma.RecordSource = "Darbinieki"a_forma.Caption = "A_F_1"DoCmd.Save , "A_F_1"DoCmd.OpenForm "A_F_1", acDesignDoCmd.MaximizeWith a_forma .RecordSelectors = False .NavigationButtons = False .ScrollBars = Neither .DefaultView = acDatasheetEnd With

18

Page 19: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

11.2. Apakšformas elementu izveidošana

'Apakšformas elementu izveidošanaDim m_elements_21 As ControlSet m_elements_21 = CreateControl("A_F_1", acLabel, acDetail, "", "Numurs", _300, 300)m_elements_21.Name = "T_1"Dim m_elements_22 As ControlSet m_elements_22 = CreateControl("A_F_1", acTextBox, acDetail, "", "D_NUM", _1500, 300)m_elements_22.Name = "L_1"Dim m_elements_23 As ControlSet m_elements_23 = CreateControl("A_F_1", acLabel, acDetail, "", "Uzvārds", _300, 700)m_elements_23.Name = "T_2"Dim m_elements_24 As ControlSet m_elements_24 = CreateControl("A_F_1", acTextBox, acDetail, "", "UZV", _1500, 700)m_elements_24.Name = "L_2"DoCmd.Close acForm, "A_F_1", acSaveYes

19

Page 20: DBVS MS Access iekšējās programmēšanas valodas  · Web viewVienkāršas formas veidošana ar MS Access iekšējo valodu Visual Basic for Application. 1. ... Notikumu procedūru

11.3. Apakšformas iekļaušana kā elementa galvenajā formā

'Apakšformas iekļaušana kā elementa galvenajā formāDoCmd.OpenForm "F_1", acDesignDim elem_forma As ControlSet elem_forma = CreateControl("F_1", acSubform, acDetail, "", _ "", 5000, 1000, 6000, 3000)'Apakšformas elementa avota (formas)un nosaukuma norādīšanaWith elem_forma.SourceObject = "A_F_1".Name = "A_P_1"End With'Ja saites starp tabulām norādītas Relationship logā, tad formas sasaistās automātiski. 'Citādi jāievada apakšformas (SubForm) īpašību LinkChieldFields un LinkMasterFields 'vērtības

'Līnijas iezīmēšana formas zemraksta daļāDim m_linija_2 As ControlSet m_linija_2 = CreateControl("F_1", acLine, acFooter, "", "", _0, 1000, 12000, 0)m_linija_2.Name = "E_3"

'NobeigumsDoCmd.Close acForm, "F_1", acSaveYesDoCmd.OpenForm "F_1", acNormalEnd Sub

20