Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсова.docx
Скачиваний:
12
Добавлен:
28.10.2018
Размер:
402 Кб
Скачать
☆

Висновки

Дана курсова робота присвячена проектуванню бази даних за допомогою СУБД Access 2007 та створенню програми в середовищі MS Word 2007 для роботи з даною базою. Для реалізації програми вибрано мову програмування VBA. Для створення запитів використовується мова SQL.

У першому розділі був проведений аналіз предметної області, тобто досліджена організація роботи центрального ринку. Визнані сутності та спроектована ER-модель. Для кожного відношення ER-моделі була проведена нормалізація. Також у цьому розділі описана реалізація бази даних в середовищі MS Access 2007 та розроблена структура програми.

У другому розділі був описаний процес створення програми та додаткових документів. Розглянуті графічно створені форми та ключові фрагменти коду. Також у цьому розділі були сформовані SQL-запити. Для створення захисту програми та цілісності введених даних був створений механізм парольного доступу з вибором режимів роботів. Також проведена перевірка введених даних на валідність.

Результатом тестувань програми стали розроблені в третьому розділі інструкції програміста, системного програміста, оператора та інструкції з технічного обслуговування.

Отже, результатом курсової роботи є база даних «Центральний ринок», програми для роботи з цією базою за допомогою SQL-запитів та додатковий документ.

Список використаних джерел

  1. Дейт К. Дж.. Введение в систему баз данных.– СПб.: БХВ-Петербург, 2005. – 1309 с.

  2. Мейер М. Теория реляционных баз данных. – М.: Мир, 1987 – 249с.

  3. Дунаев В.В. Бази данных. Язык SQL. – СПб.: БХВ-Петербург, 2006. – 288 с.

  4. Вікіпедія - http://uk.wikipedia.org/wiki/

  5. Мельниченко Е.В., Самоцветов К.В. SQL. – М: Мир, 1996 – 315с.

  6. Тихомиров А.Н., Прокди А.К. Microsoft Office. Все программы пакета. – СПб.: Наука и Техника, 2008. – 608 с.

  7. Сергеев А. Access 2007. Новые возможности. – СПб.: Питер, 2008. – 176 с.

  8. Демидова Л.А., Пылькин А.Н. Програмирование в среде VBA. – М.: Горячая линия – Телеком, 2004. – 175 с.

  9. Хорев В.Д. Самоучитель програмирования на VBA а MS Office. – K.: Юниор, 2001. – 320 с.

Додаток а Лістинг програми

UserForm1

Private Sub CommandButton1_Click()

emp

If OptionButton1.Value = True Then

str1 = TextBox1.Text

If (str1 = "1111") Then

TextBox1.Text = ""

Me.Hide

UserForm2.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

End If

If OptionButton2.Value = True Then

str1 = TextBox1.Text

If (str1 = "2222") Then

TextBox1.Text = ""

Me.Hide

UserForm2.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

End Sub

Private Sub CommandButton2_Click()

emp

If OptionButton1.Value = True Then

str1 = TextBox1.Text

If (str1 = "1111") Then

TextBox1.Text = ""

Me.Hide

UserForm3.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

If OptionButton2.Value = True Then

str1 = TextBox1.Text

If (str1 = "2222") Then

TextBox1.Text = ""

Me.Hide

UserForm3.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

End Sub

Private Sub CommandButton3_Click()

emp

If OptionButton1.Value = True Then

str1 = TextBox1.Text

If (str1 = "1111") Then

TextBox1.Text = ""

Me.Hide

UserForm4.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

If OptionButton2.Value = True Then

str1 = TextBox1.Text

If (str1 = "2222") Then

TextBox1.Text = ""

Me.Hide

UserForm4.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

End Sub

Private Sub CommandButton4_Click()

emp

If OptionButton1.Value = True Then

str1 = TextBox1.Text

If (str1 = "1111") Then

TextBox1.Text = ""

Me.Hide

UserForm5.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

If OptionButton2.Value = True Then

str1 = TextBox1.Text

If (str1 = "2222") Then

TextBox1.Text = ""

Me.Hide

UserForm5.Show

Else: MsgBox "Пароль не правильний!"

TextBox1.Text = ""

End If

TextBox1.Text = ""

End If

End Sub

Private Sub OptionButton1_Click()

CommandButton1.Enabled = True

CommandButton2.Enabled = True

End Sub

Private Sub OptionButton2_Click()

CommandButton1.Enabled = False

CommandButton2.Enabled = False

End Sub

Public Sub emp()

If OptionButton1.Value = False And OptionButton2.Value = False Then

MsgBox "Вибер³ть тип користувача"

End If

End Sub

UserForm2

Dim cn As ADODB.Connection

Dim rs As New ADODB.Recordset

Dim rs1 As New ADODB.Recordset

Private Sub CommandButton10_Click()

If (TextBox1.Text = Empty) Or (TextBox2.Text = Empty) Or (TextBox3.Text = Empty) Or (TextBox4.Text = Empty) Or (TextBox5.Text = Empty) Or (TextBox7.Text = Empty) Or (TextBox8.Text = Empty) Then

MsgBox "Помилка!!! Вибер³ть запис, який потр³бно видалити"

rs.MoveFirst

Else

If rs.RecordCount >= 1 Then

If MsgBox("Ви д³йсно бажаºте видалити запис?", vbYesNo + vbQuestion) = vbYes Then

rs.Delete

If rs.RecordCount > 0 Then

CommandButton4_Click

Else

ShowEmptyRecord

End If

End If

End If

End If

rs.MoveFirst

ShowEmptyRecord

End Sub

Private Sub CommandButton11_Click()

CommandButton9.Enabled = False

CommandButton8.Enabled = False

CommandButton7.Enabled = False

CommandButton6.Enabled = False

CommandButton12.Enabled = False

CommandButton17.Enabled = False

ShowEmptyRecord1

rs1.MoveLast

rs1.AddNew

TextBox9.SetFocus

End Sub

Private Sub CommandButton12_Click()

If (TextBox9.Text = Empty) Or (TextBox10.Text = Empty) Or (TextBox11.Text = Empty) Or (TextBox12.Text = Empty) Or (TextBox13.Text = Empty) Or (TextBox16.Text = Empty) Then

MsgBox "Помилка!!! Вибер³ть запис, який потр³бно видалити"

rs1.MoveFirst

Else

If rs1.RecordCount >= 1 Then

If MsgBox("Ви д³йсно бажаºте видалити запис?", vbYesNo + vbQuestion) = vbYes Then

rs1.Delete

If rs1.RecordCount > 0 Then

CommandButton8_Click

Else

ShowEmptyRecord1

End If

End If

End If

End If

rs1.MoveFirst

ShowEmptyRecord1

End Sub

Private Sub CommandButton13_Click()

FillRecord1

End Sub

Private Sub CommandButton14_Click()

FillRecord

End Sub

Private Sub CommandButton15_Click()

CommandButton13_Click

End Sub

Private Sub CommandButton16_Click()

CommandButton14_Click

End Sub

Private Sub CommandButton17_Click()

rs.Close

rs1.Close

Set rs = Nothing

Set rs = Nothing

cn.Close

Set cn = Nothing

Me.Hide

UserForm1.Show

End Sub

Private Sub CommandButton4_Click() ' останн³й запис орендатор

If Not rs.EOF Then

rs.MoveNext

If Not rs.EOF Then

ShowRecord

Else

rs1.MoveLast

End If

End If

End Sub

Private Sub UserForm_Activate()

ComboBox1.AddItem ("Базар")

ComboBox1.AddItem ("Охорона")

ComboBox1.AddItem ("Îô³ñ")

ComboBox1.AddItem ("Лаборатор³я")

ComboBox1.AddItem ("Склад")

ComboBox2.AddItem ("Зав³дуючий")

ComboBox2.AddItem ("Прибиральник")

ComboBox2.AddItem ("Сторож")

ComboBox2.AddItem ("Вантажник")

ComboBox2.AddItem ("Лаборант")

ComboBox3.AddItem ("М'ясо-молочний")

ComboBox3.AddItem ("Шмотки")

ComboBox3.AddItem ("Òåõí³êà")

ComboBox3.AddItem ("²íøå")

ComboBox3.AddItem ("Буд.матер³али")

ComboBox3.AddItem ("Õ³ì³ÿ")

ComboBox4.AddItem ("Пусто")

ComboBox4.AddItem ("Прилавок")

ComboBox4.AddItem ("ʳîñê 1 ï")

ComboBox4.AddItem ("ʳîñê 2 ï")

ComboBox4.AddItem ("Áóä³âëÿ")

Set cn = New ADODB.Connection

cn.Provider = "Microsoft.Jet.OLEDB.4.0"

cn.ConnectionString = "D:\Central.mdb"

cn.Open

rs.CursorType = adOpenKeyset

rs1.CursorType = adOpenKeyset

rs.LockType = adLockOptimistic

rs1.LockType = adLockOptimistic

rs.Source = "SELECT Орендатор.orendat, Орендатор.dogov, Орендатор.torg_pat, М³сце.misce, М³сце.sector, М³сце.tovar, М³сце.electr, М³сце.voda, Склад.sklad, Склад.komir, Склад.dogov, М³сце.dogov, М³сце.orendat, Склад.orendat, М³сце.bydova FROM (Орендатор INNER JOIN М³сце ON Орендатор.orendat = М³сце.orendat) INNER JOIN Склад ON Орендатор.orendat = Склад.orendat"

rs1.Source = "SELECT * FROM Ïðàö³âíèê"

Set rs.ActiveConnection = cn

Set rs1.ActiveConnection = cn

rs.Open

rs1.Open

rs.MoveFirst

rs.MoveFirst

ShowRecord1

ShowRecord

End Sub

Private Sub CommandButton1_Click() ' додати запис орендатора

CommandButton1.Enabled = False

CommandButton2.Enabled = False

CommandButton3.Enabled = False

CommandButton4.Enabled = False

CommandButton5.Enabled = False

CommandButton10.Enabled = False

CommandButton17.Enabled = False

ShowEmptyRecord

rs.MoveLast

rs.AddNew

TextBox1.SetFocus

End Sub

Private Sub ShowRecord() 'орендатор показати

TextBox1.Text = rs.Fields(0).Value

TextBox2.Text = rs.Fields(1).Value

TextBox3.Text = rs.Fields(2).Value

TextBox4.Text = rs.Fields(3).Value

TextBox5.Text = rs.Fields(4).Value

ComboBox3.Text = rs.Fields(5).Value

CheckBox1.Value = rs.Fields(6).Value

CheckBox2.Value = rs.Fields(7).Value

TextBox7.Text = rs.Fields(8).Value

TextBox8.Text = rs.Fields(9).Value

ComboBox4.Text = rs.Fields(14).Value

End Sub

Private Sub ShowRecord1() ' прац³вник показати

TextBox9.Text = rs1.Fields(0).Value

TextBox10.Text = rs1.Fields(3).Value

TextBox11.Text = rs1.Fields(4).Value

TextBox16.Text = rs1.Fields(5).Value

TextBox12.Text = rs1.Fields(6).Value

TextBox13.Text = rs1.Fields(8).Value

ComboBox2.Text = rs1.Fields(14).Value

ComboBox1.Text = rs1.Fields(18).Value

End Sub

Private Sub CommandButton2_Click()

rs.MoveFirst

ShowRecord

End Sub

Private Sub CommandButton6_Click()

rs1.MoveFirst

ShowRecord1

End Sub

Private Sub CommandButton3_Click() 'попередн³й орендатор

If Not rs.BOF Then

rs.MovePrevious

If Not rs.BOF Then

ShowRecord

Else

rs.MoveFirst

End If

End If

End Sub

Private Sub CommandButton7_Click() 'попередн³й прац³вник

If Not rs1.BOF Then

rs1.MovePrevious

If Not rs1.BOF Then

ShowRecord1

Else

rs1.MoveFirst

End If

End If

End Sub

Private Sub CommandButton8_Click() ' наступний прац³вник

If Not rs1.EOF Then

rs1.MoveNext

If Not rs1.EOF Then

ShowRecord1

Else

rs1.MoveLast

End If

End If

End Sub

Private Sub CommandButton5_Click()

rs.MoveLast

ShowRecord

End Sub

Private Sub CommandButton9_Click()

rs1.MoveLast

ShowRecord1

End Sub

Public Sub ShowEmptyRecord()

TextBox1.Text = Empty

TextBox2.Text = Empty

TextBox3.Text = Empty

TextBox4.Text = Empty

TextBox5.Text = Empty

ComboBox3.Text = Empty

TextBox7.Text = Empty

TextBox8.Text = Empty

ComboBox4.Text = Empty

CheckBox1.Value = False

CheckBox2.Value = False

rs.MoveFirst

End Sub

Public Sub ShowEmptyRecord1()

TextBox9.Text = Empty

TextBox10.Text = Empty

TextBox11.Text = Empty

TextBox12.Text = Empty

TextBox13.Text = Empty

TextBox16.Text = Empty

ComboBox2.Text = Empty

ComboBox1.Text = Empty

rs1.MoveFirst

End Sub

Private Sub FillRecord()

If (TextBox1.Text = Empty) Or (TextBox2.Text = Empty) Or (TextBox3.Text = Empty) Or (TextBox4.Text = Empty) Or (TextBox5.Text = Empty) Or (TextBox7.Text = Empty) Or (TextBox8.Text = Empty) Then

MsgBox "Помилка!!! Вс³ поля мають бути заповнен³!"

Else

If (IsNumeric(TextBox1.Text) = False) And (IsNumeric(TextBox2.Text) = True) And (IsNumeric(TextBox3.Text) = True) And (IsNumeric(TextBox4.Text) = True) And (IsNumeric(TextBox5) = True) And (IsNumeric(TextBox7.Text) = True) And (IsNumeric(TextBox8.Text) = True) Then

rs.Fields(0).Value = TextBox1.Text

rs.Fields(1).Value = TextBox2.Text

rs.Fields(2).Value = TextBox3.Text

rs.Fields(3).Value = TextBox4.Text

rs.Fields(4).Value = TextBox5.Text

rs.Fields(5).Value = ComboBox3.Text

rs.Fields(6).Value = CheckBox1.Value

rs.Fields(7).Value = CheckBox2.Value

rs.Fields(8).Value = TextBox7.Text

rs.Fields(9).Value = TextBox8.Text

rs.Fields(10).Value = TextBox2.Text

rs.Fields(11).Value = TextBox2.Text

rs.Fields(12).Value = TextBox1.Text

rs.Fields(13).Value = TextBox1.Text

rs.Fields(14).Value = ComboBox4.Text

rs.Update

CommandButton1.Enabled = True

CommandButton2.Enabled = True

CommandButton3.Enabled = True

CommandButton4.Enabled = True

CommandButton5.Enabled = True

CommandButton10.Enabled = True

CommandButton17.Enabled = True

MsgBox "Готово ²нформац³я внесена в базу даних"

Else: MsgBox "Помилка !!! Тип введених даниних не правильний"

End If

End If

End Sub

Private Sub FillRecord1()

If (TextBox9.Text = Empty) Or (TextBox10.Text = Empty) Or (TextBox11.Text = Empty) Or (TextBox12.Text = Empty) Or (TextBox13.Text = Empty) Or (TextBox16.Text = Empty) Then

MsgBox "Помилка!!! Вс³ поля мають бути заповнен³!"

Else

If (IsNumeric(TextBox9.Text) = False) And (IsNumeric(TextBox10.Text) = True) And (IsDate(TextBox12.Text) = True) And (IsNumeric(TextBox11.Text) = True) And (IsNumeric(TextBox16.Text) = False) Then

rs1.Fields(0).Value = TextBox9.Text

rs1.Fields(3).Value = TextBox10.Text

rs1.Fields(4).Value = TextBox11.Text

rs1.Fields(5).Value = TextBox16.Text

rs1.Fields(6).Value = TextBox12.Text

rs1.Fields(8).Value = TextBox13.Text

rs1.Fields(14).Value = ComboBox2.Text

rs1.Fields(18).Value = ComboBox1.Text

rs1.Update

MsgBox "Готово ²нформац³я внесена в базу даних"

CommandButton6.Enabled = True

CommandButton7.Enabled = True

CommandButton8.Enabled = True

CommandButton9.Enabled = True

CommandButton12.Enabled = True

CommandButton17.Enabled = True

Else

MsgBox "Помилка!!! Тип введених даних не правильний"

End If

End If

End Sub

UserForm3

Dim cn As ADODB.Connection

Dim rs As New ADODB.Recordset

Dim rs1 As New ADODB.Recordset

Dim rs2 As New ADODB.Recordset

Dim str$, str1$, str2$, str3$, docstr$

Dim rs3 As New ADODB.Recordset

Dim rs4 As New ADODB.Recordset

Dim WordApp As Word.Application ' экземпляр приложения

Dim DocWord As Word.Document ' экземпляр документа

Private Sub ComboBox1_Change()

rs.CursorType = adOpenKeyset

rs1.CursorType = adOpenKeyset

rs1.LockType = adLockOptimistic

rs.LockType = adLockOptimistic

str1 = ComboBox1.Text

'MsgBox str1

If (str1 = Empty) Then

MsgBox "Помилка! Вибер³ть потр³бний в³дд³л"

Else

str = "SELECT Ïðàö³âíèê.prizv, Ïðàö³âíèê.imia, ³ää³ë.zav_vid, ³ää³ë.nom_tel_vid FROM ³ää³ë INNER JOIN Ïðàö³âíèê ON ³ää³ë.viddil = Ïðàö³âíèê.viddil WHERE Ïðàö³âíèê.viddil = '" + str1 + " ' "

str2 = "SELECT inv_nom, naz_obl FROM Обладнання WHERE viddil = '" + str1 + "'"

rs.Source = str

rs1.Source = str2

Set rs.ActiveConnection = cn

Set rs1.ActiveConnection = cn

rs.Open

rs1.Open

rs.MoveFirst

TextBox1.Text = rs.Fields(2)

TextBox2.Text = rs.Fields(3)

ListBox1.Clear

Do While Not rs.EOF

ListBox1.AddItem (rs.Fields(0))

docstr = docstr + rs.Fields(0) + vbCrLf

'MsgBox docstr

rs.MoveNext

Loop

If rs1.EOF = True Then

MsgBox "Увага!!! ²нформац³я про обладнання в³дсутня!"

Else

rs1.MoveFirst

ListBox2.Clear

ListBox3.Clear

Do While Not rs1.EOF

ListBox2.AddItem (rs1.Fields(1))

ListBox3.AddItem (rs1.Fields(0))

rs1.MoveNext

Loop

End If

rs.Close

rs1.Close

End If

End Sub

Private Sub ComboBox2_Change()

Dim st$

st = ComboBox2.Text

rs3.CursorType = adOpenKeyset

rs3.LockType = adLockOptimistic

rs3.Source = "SELECT Ïðàö³âíèê.viddil, Ïðàö³âíèê.nom_pas, Ïðàö³âíèê.ser_pas, Ïðàö³âíèê.nom_tel1, Ïðàö³âíèê.mis_proj, Ïðàö³âíèê.posada, Ïðàö³âíèê.data_nar FROM Ïðàö³âíèê WHERE prizv = '" + st + "'"

Set rs3.ActiveConnection = cn

rs3.Open

TextBox3.Text = rs3.Fields(0)

TextBox4.Text = rs3.Fields(2) + " " + CStr(rs3.Fields(1))

TextBox5.Text = rs3.Fields(3)

TextBox6.Text = rs3.Fields(4)

TextBox7.Text = rs3.Fields(5)

TextBox8.Text = rs3.Fields(6)

rs3.Close

End Sub

Private Sub ComboBox3_Change()

Dim st3$, st4$

rs4.CursorType = adOpenKeyset

rs4.LockType = adLockOptimistic

st3 = ComboBox3.Text

st4 = "SELECT Орендатор.dogov, Орендатор.torg_pat, М³сце.misce, М³сце.sector, М³сце.bydova, М³сце.tovar, М³сце.electr, М³сце.voda, Склад.sklad, Склад.komir FROM (Орендатор INNER JOIN Склад ON Орендатор.orendat = Склад.orendat) INNER JOIN М³сце ON Орендатор.orendat = М³сце.orendat WHERE Орендатор.orendat = '" + st3 + "'"

rs4.Source = st4

Set rs4.ActiveConnection = cn

rs4.Open

'rs4.MoveFirst

TextBox9.Text = rs4.Fields(0)

TextBox10.Text = rs4.Fields(1)

TextBox11.Text = rs4.Fields(2)

TextBox12.Text = rs4.Fields(3)

TextBox13.Text = rs4.Fields(4)

TextBox14.Text = rs4.Fields(5)

TextBox15.Text = rs4.Fields(8)

TextBox16.Text = rs4.Fields(9)

If rs4.Fields(6) = True Then

Label25.Caption = "Електриф³коване - ТАК "

Else: Label25.Caption = "Електриф³коване - Н² "

End If

If rs4.Fields(7) = True Then

Label26.Caption = "Водопостачання - ТАК "

Else: Label26.Caption = "Водопостачання - Н² "

End If

rs4.Close

End Sub

Private Sub CommandButton1_Click()

Dim str1$, str2$, i%

If ComboBox1.Text = "" Then

MsgBox "Для зм³сту порт³бно вибрати в³дд³л"

Else

str1 = "²нформац³я про в³дд³л '" + ComboBox1.Text + "'" + vbCrLf + "Зав³дуючий - " + TextBox1.Text + vbCrLf + "Прац³вники в³дд³лу - " + vbCrLf

str1 = str1 + docstr

Set WordApp = New Word.Application

WordApp.Visible = True

Set DocWord = WordApp.Documents.Add

DocWord.Activate

DocWord.Paragraphs(1).Alignment = wdAlignParagraphLeft

DocWord.Range(Start:=0, End:=0).InsertAfter str1

End If

End Sub

Private Sub CommandButton2_Click()

rs.CursorType = adOpenKeyset

rs1.CursorType = adOpenKeyset

rs1.LockType = adLockOptimistic

rs.LockType = adLockOptimistic

str1 = ComboBox1.Text

'MsgBox str1

If (str1 = Empty) Then

MsgBox "Помилка! Вибер³ть потр³бний в³дд³л"

Else

str = "SELECT Ïðàö³âíèê.prizv, Ïðàö³âíèê.imia, ³ää³ë.zav_vid, ³ää³ë.nom_tel_vid FROM ³ää³ë INNER JOIN Ïðàö³âíèê ON ³ää³ë.viddil = Ïðàö³âíèê.viddil WHERE Ïðàö³âíèê.viddil = '" + str1 + " ' "

str2 = "SELECT inv_nom, naz_obl FROM Обладнання WHERE viddil = '" + str1 + "'"

rs.Source = str

rs1.Source = str2

Set rs.ActiveConnection = cn

Set rs1.ActiveConnection = cn

rs.Open

rs1.Open

rs.MoveFirst

TextBox1.Text = rs.Fields(2)

TextBox2.Text = rs.Fields(3)

ListBox1.Clear

Do While Not rs.EOF

ListBox1.AddItem (rs.Fields(0) + " " + rs.Fields(1))

rs.MoveNext

Loop

If rs1.EOF = True Then

MsgBox "Увага!!! ²нформац³я про обладнання в³дсутня!"

Else

rs1.MoveFirst

ListBox2.Clear

ListBox3.Clear

Do While Not rs1.EOF

ListBox2.AddItem (rs1.Fields(1))

ListBox3.AddItem (rs1.Fields(0))

rs1.MoveNext

Loop

End If

rs.Close

rs1.Close

End If

End Sub

Private Sub CommandButton3_Click()

Dim st$

st = ComboBox2.Text

rs3.CursorType = adOpenKeyset

rs3.LockType = adLockOptimistic

rs3.Source = "SELECT Ïðàö³âíèê.viddil, Ïðàö³âíèê.nom_pas, Ïðàö³âíèê.ser_pas, Ïðàö³âíèê.nom_tel1, Ïðàö³âíèê.mis_proj, Ïðàö³âíèê.posada, Ïðàö³âíèê.data_nar FROM Ïðàö³âíèê WHERE prizv = '" + st + "'"

Set rs3.ActiveConnection = cn

rs3.Open

TextBox3.Text = rs3.Fields(0)

TextBox4.Text = rs3.Fields(2) + " " + CStr(rs3.Fields(1))

TextBox5.Text = rs3.Fields(3)

TextBox6.Text = rs3.Fields(4)

TextBox7.Text = rs3.Fields(5)

TextBox8.Text = rs3.Fields(6)

rs3.Close

End Sub

Private Sub CommandButton4_Click()

Dim str1$

If ComboBox2.Text = "" Then

MsgBox "Для формування зв³ту потр³бно вибрати прац³вника"

Else

str1 = Label8.Caption + vbCrLf + Label9.Caption + ComboBox2.Text + vbCrLf + Label10.Caption + TextBox3.Text + vbCrLf + Label11.Caption + TextBox4.Text + vbCrLf + Label15.Caption + TextBox5.Text + vbCrLf + Label12.Caption + TextBox6.Text + vbCrLf + Label13.Caption + TextBox7.Text + vbCrLf + Label16.Caption + TextBox8.Text + vbCrLf

Set WordApp = New Word.Application

WordApp.Visible = True

Set DocWord = WordApp.Documents.Add

DocWord.Activate

DocWord.Paragraphs(1).Alignment = wdAlignParagraphLeft

DocWord.Range(Start:=0, End:=0).InsertAfter str1

End If

End Sub

Private Sub CommandButton5_Click()

Dim str1$

If ComboBox3.Text = "" Then

MsgBox "Для формування зв³ту потр³бно вибрати орендатора"

Else

str1 = "²нформац³я про орендатора"

str1 = str1 + ComboBox3.Text + vbCrLf + Label8.Caption + TextBox9.Text + vbCrLf + Label19.Caption + TextBox10.Text + vbCrLf + Label20.Caption + TextBox11.Text + vbCrLf + Label24.Caption + TextBox14.Text + vbCrLf + Label21.Caption + TextBox12.Text + vbCrLf + Label22.Caption + TextBox13.Text + vbCrLf + Label24.Caption + TextBox14.Text + vbCrLf + Label25.Caption + vbCrLf + Label26.Caption + vbCrLf + Label27.Caption + TextBox15.Text + vbCrLf + Label28.Caption + TextBox16.Text + vbCrLf

Set WordApp = New Word.Application

WordApp.Visible = True

Set DocWord = WordApp.Documents.Add

DocWord.Activate

DocWord.Range(Start:=0, End:=0).InsertAfter str1

End If

End Sub

Private Sub CommandButton6_Click()

Me.Hide

UserForm1.Show

End Sub

Private Sub UserForm_Activate()

ComboBox1.AddItem ("Базар")

ComboBox1.AddItem ("Охорона")

ComboBox1.AddItem ("Îô³ñ")

ComboBox1.AddItem ("Лаборатор³я")

ComboBox1.AddItem ("Склад")

Set cn = New ADODB.Connection

cn.Provider = "Microsoft.Jet.OLEDB.4.0"

cn.ConnectionString = "D:\Central.mdb"

cn.Open

ComboBox2.Clear

rs2.CursorType = adOpenKeyset

rs2.LockType = adLockOptimistic

rs2.Source = "SELECT * FROM Ïðàö³âíèê"

Set rs2.ActiveConnection = cn

rs2.Open

rs2.MoveFirst

Do While Not rs2.EOF

ComboBox2.AddItem (rs2.Fields(0))

rs2.MoveNext

Loop

rs2.Close

rs2.CursorType = adOpenKeyset

rs2.LockType = adLockOptimistic

rs2.Source = "SELECT * FROM Орендатор"

Set rs2.ActiveConnection = cn

rs2.Open

ComboBox3.Clear

Do While Not rs2.EOF

ComboBox3.AddItem (rs2.Fields(0))

rs2.MoveNext

Loop

rs2.Close

End Sub

Private Sub UserForm_Deactivate()

Me.Hide

MsgBox "Форма деактивована"

UserForm1.Show

End Sub

UserForm4

Dim cn As ADODB.Connection

Dim rs As New ADODB.Recordset

Dim WordApp As Word.Application

Dim WordApp1 As Word.Application

Dim DocWord As Word.Document

Dim DocWord1 As Word.Document

Dim Path$

Dim k%

Private Sub CommandButton1_Click()

k = 1

Set WordApp = New Word.Application

WordApp.Visible = True

WordApp.Caption = "Нарахування зарплати"

Set DocWord = WordApp.Documents.Add

DocWord.Activate

DocWord.Paragraphs(1).Alignment = wdAlignParagraphRight

DocWord.Range(0, 0).InsertAfter "Нарахування зарплати" + vbCrLf + vbCrLf + vbCrLf + ""

DocWord.Range(0, 20).Bold = True ' вид³лений фрагмент робить жирним - не робить

'DocWord.Paragraphs.Last.Range.InsertAfter "Конец."

rs.CursorType = adOpenKeyset

rs.LockType = adLockOptimistic

rs.Source = "SELECT Ïðàö³âíèê.prizv, Ïðàö³âíèê.viddil, Ïðàö³âíèê.stavka, Ïðàö³âíèê.staj FROM Ïðàö³âíèê"

Set rs.ActiveConnection = cn

rs.Open

rs.MoveFirst

Do While Not rs.EOF

k = k + 1

rs.MoveNext

Loop

rs.MoveFirst

Dim tbl As Table

Dim field$

Set Range1 = DocWord.Range(22, 22)

Set Table = DocWord.Tables.Add(Range1, k, 3)

Set tbl = DocWord.Tables(1)

tbl.Rows(1).HeadingFormat = True 'створюº заголовок таблиц³ - не робить

DocWord.Tables(1).Borders.Enable = True 'створюº розм³тку таблиц³

DocWord.Tables(1).AutoFormat (wdTableFormatList1)

DocWord.Tables(1).Cell(1, 1).Range = "Ï.².Ï"

DocWord.Tables(1).Cell(1, 2).Range = "³ää³ë"

DocWord.Tables(1).Cell(1, 3).Range = "Ñóìà ãðí."

Dim i%, j%

j = 1

For i = 2 To tbl.Rows.Count - 1

field = rs.Fields(0).Value

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

j = 2

For i = 2 To tbl.Rows.Count - 1

field = rs.Fields(1).Value

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

j = 3

For i = 2 To tbl.Rows.Count - 1

field = CStr(CInt(rs.Fields(2).Value) * CInt(rs.Fields(3).Value))

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

DocWord.Tables(1).Cell(i + 1, j).AutoSum

DocWord.Tables(1).Cell(i + 1, 1).Range = "ВСЬОГО ГРН."

DocWord.Tables(1).Columns(1).Width = 250

DocWord.Tables(1).Columns(2).Width = 100

DocWord.Tables(1).Columns(3).Width = 80

rs.Close

End Sub

Private Sub CommandButton2_Click()

k = 1

Set WordApp = New Word.Application

WordApp.Visible = True

WordApp.Caption = "Нарахування плати для орендатор³в"

Set DocWord = WordApp.Documents.Add

DocWord.Activate

DocWord.Paragraphs(1).Alignment = wdAlignParagraphRight

DocWord.Range(0, 0).InsertAfter "Нарахування плати для орендатор³в" + vbCrLf + vbCrLf + vbCrLf + ""

DocWord.Range(0, 37).Bold = True ' вид³лений фрагмент робить жирним - не робить

'DocWord.Paragraphs.Last.Range.InsertAfter "Конец."

rs.CursorType = adOpenKeyset

rs.LockType = adLockOptimistic

rs.Source = "SELECT Орендатор.orendat, Орендатор.nom_pas, Орендатор.dogov, М³сце.plata, М³сце.electr, М³сце.voda, Склад.plata, [Орендоване обладнання].plata FROM ((Орендатор INNER JOIN [Орендоване обладнання] ON Орендатор.orendat = [Орендоване обладнання].orendat) INNER JOIN Склад ON Орендатор.orendat = Склад.orendat) INNER JOIN М³сце ON Орендатор.orendat = М³сце.orendat"

Set rs.ActiveConnection = cn

rs.Open

rs.MoveFirst

Do While Not rs.EOF

k = k + 1

rs.MoveNext

Loop

rs.MoveFirst

Dim tbl As Table

Dim field$

Set Range1 = DocWord.Range(36, 36)

Set Table = DocWord.Tables.Add(Range1, k, 4)

Set tbl = DocWord.Tables(1)

tbl.Rows(1).HeadingFormat = True 'створюº заголовок таблиц³ - не робить

DocWord.Tables(1).Borders.Enable = True 'створюº розм³тку таблиц³

DocWord.Tables(1).AutoFormat (wdTableFormatList1)

DocWord.Tables(1).Cell(1, 1).Range = "Ï.².Ï"

DocWord.Tables(1).Cell(1, 2).Range = "Номер паспорта"

DocWord.Tables(1).Cell(1, 3).Range = "Торговий патент"

DocWord.Tables(1).Cell(1, 4).Range = "Нараховано"

Dim i%, j%

j = 1

For i = 2 To tbl.Rows.Count - 1

field = rs.Fields(0).Value

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

j = 2

For i = 2 To tbl.Rows.Count - 1

field = rs.Fields(1).Value

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

j = 3

For i = 2 To tbl.Rows.Count - 1

field = rs.Fields(2).Value

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

j = 4

For i = 2 To tbl.Rows.Count - 1

field = CStr(CInt(rs.Fields(3).Value) + CInt(rs.Fields(6).Value) + CInt(rs.Fields(6).Value))

If rs.Fields(4) = True Then

field = CStr(CInt(field) + 50)

End If

If rs.Fields(5) = True Then

field = CStr(CInt(field) + 85)

End If

rs.MoveNext

tbl.Cell(i, j).Range.Text = field

Next i

rs.MoveFirst

DocWord.Tables(1).Cell(i + 1, j).AutoSum

DocWord.Tables(1).Cell(i + 1, 1).Range = "ВСЬОГО ГРН."

DocWord.Tables(1).Columns(1).Width = 150

DocWord.Tables(1).Columns(2).Width = 90

DocWord.Tables(1).Columns(3).Width = 90

DocWord.Tables(1).Columns(4).Width = 90

rs.Close

End Sub

Private Sub CommandButton4_Click()

Dim str$, str1$

str = ListBox1.Text

If ListBox1.Text = "" Then

MsgBox "Для створення договору потр³бно вибрати орендатора"

Else

Set WordApp1 = New Word.Application

WordApp1.Visible = True

'Set DocWord1 = WordApp1.Documents.Add

Path = FileSystem.CurDir()

'Set DocWord1 = WordApp1.Documents.Open("D:\Догов³р.docm")

Set DocWord1 = WordApp1.Documents.Open(Path + "\Догов³р.docm")

rs.CursorType = adOpenKeyset

rs.LockType = adLockOptimistic

rs.Source = "SELECT Орендатор.orendat, Орендатор.dogov, М³сце.tovar, М³сце.misce, М³сце.sector, Склад.komir, Склад.sklad FROM (Орендатор INNER JOIN Склад ON Орендатор.orendat = Склад.orendat) INNER JOIN М³сце ON Орендатор.orendat = М³сце.orendat WHERE Орендатор.orendat = '" + str + "'"

Set rs.ActiveConnection = cn

rs.Open

rs.MoveFirst

'str1 = rs.Fields(1)

'MsgBox str1

'DocWord1.Unprotect

DocWord1.FormFields("ТекстовеПоле11").Result = rs.Fields(1)

DocWord1.FormFields("ТекстовеПоле1").Result = rs.Fields(0)

DocWord1.FormFields("ТекстовеПоле5").Result = rs.Fields(2)

DocWord1.FormFields("ТекстовеПоле6").Result = rs.Fields(3)

DocWord1.FormFields("ТекстовеПоле7").Result = rs.Fields(4)

DocWord1.FormFields("ТекстовеПоле8").Result = rs.Fields(5)

DocWord1.FormFields("ТекстовеПоле9").Result = rs.Fields(6)

DocWord1.FormFields("ТекстовеПоле10").Result = rs.Fields(0)

DocWord1.Protect (wdAllowOnlyRevisions)

'DocWord1.Activate

rs.Close

End If

End Sub

Private Sub CommandButton5_Click()

Me.Hide

UserForm1.Show

End Sub

Private Sub UserForm_Activate()

Set cn = New ADODB.Connection

cn.Provider = "Microsoft.Jet.OLEDB.4.0"

cn.ConnectionString = "D:\Central.mdb"

cn.Open

rs.CursorType = adOpenKeyset

rs.LockType = adLockOptimistic

rs.Source = "SELECT Орендатор.orendat, Орендатор.dogov, М³сце.tovar, М³сце.misce, М³сце.sector, Склад.komir, Склад.sklad FROM (Орендатор INNER JOIN Склад ON Орендатор.orendat = Склад.orendat) INNER JOIN М³сце ON Орендатор.orendat = М³сце.orendat"

Set rs.ActiveConnection = cn

rs.Open

rs.MoveFirst

Do While Not rs.EOF

ListBox1.AddItem (rs.Fields(0))

rs.MoveNext

Loop

rs.Close

End Sub

UserForm5

Private Sub CommandButton1_Click()

Me.Hide

UserForm1.Show

End

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]