Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
В.А. Соболевский Т-395 ПЗ.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.06 Mб
Скачать

Приложение а (обязательное) Текст программы

Imports Microsoft.Office.Interop.Excel

Imports System.Data

Imports System.Data.SqlClient

Imports Microsoft.Office.Interop

Public Class main

Dim line As Integer

Dim Ex As New Application

Dim xlApp As Microsoft.Office.Interop.Excel.Application

Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook

Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet

Dim misValue As Object = System.Reflection.Missing.Value

Dim BookEx As Workbook

Dim PageEx As Worksheet

Dim cn As New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\nlb.mdf;Integrated Security=True;Connect Timeout=3")

Dim cmd As New SqlCommand

Dim dr As SqlDataReader

Dim oExcel As Object

Dim oBook As Object

Dim oSheet As Object

Private Sub PoseshenieBindingNavigatorSaveItem_Click(sender As Object, e As EventArgs)

Me.Validate()

Me.PoseshenieBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

Me.PosetiteliTableAdapter.Fill(Me.NLBDataSet.posetiteli)

Me.ChitateliTableAdapter.Fill(Me.NLBDataSet.chitateli)

Me.PomeshenieTableAdapter.Fill(Me.NLBDataSet1.pomeshenie)

Me.PoseshenieTableAdapter.Fill(Me.NLBDataSet1.poseshenie)

Me.SotrydnikiTableAdapter.Fill(Me.NLBDataSet1.sotrydniki)

Me.PoseshenieTableAdapter.Fill(Me.NLBDataSet.poseshenie)

Label5.Text = PoseshenieDataGridView.RowCount.ToString()

Дата_посещенияDateTimePicker.Value = DateTime.Today()

For line = 0 To PoseshenieDataGridView.RowCount - 1 Step 1

Select Case PoseshenieDataGridView.Rows(line).Cells(1).Value.ToString

Case "Сотрудник"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.Beige

Case "Посетитель"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.BurlyWood

Case "Читатель"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.Plum

End Select

Next

End Sub

Private Sub ОтделToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ОтделToolStripMenuItem.Click

otdel.Show()

End Sub

Private Sub ДолжностиToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ДолжностиToolStripMenuItem.Click

doljnost.Show()

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

sotrydniki.Show()

End Sub

Private Sub ПомещенияToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ПомещенияToolStripMenuItem.Click

pomeshenie.Show()

End Sub

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click

Me.PoseshenieBindingSource.AddNew()

Дата_посещенияDateTimePicker.Value = DateTime.Today()

Время_посещенияTextBox.Text = Date.Now.ToString("H:mm")

Тип_посетителяComboBox.Enabled = True

ComboBox2.Enabled = True

ПосетительComboBox.Enabled = True

ПосетительComboBox1.Enabled = True

Место_посещенияComboBox.Enabled = True

End Sub

Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click

Me.Validate()

Me.PoseshenieBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

MessageBox.Show("Запись успешно добавлена!")

Label5.Text = PoseshenieDataGridView.RowCount.ToString()

Тип_посетителяComboBox.Enabled = False

ComboBox2.Enabled = False

ПосетительComboBox.Enabled = False

ПосетительComboBox1.Enabled = False

Место_посещенияComboBox.Enabled = False

For line = 0 To PoseshenieDataGridView.RowCount - 1 Step 1

Select Case PoseshenieDataGridView.Rows(line).Cells(1).Value.ToString

Case "Сотрудник"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.Beige

Case "Посетитель"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.BurlyWood

Case "Читатель"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.Plum

End Select

Next

End Sub

Private Sub ВыходToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ВыходToolStripMenuItem.Click

Me.Close()

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

chitateli.Show()

End Sub

Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged

Select Case (ComboBox1.Text)

Case "По фамилии посетителя"

PoseshenieBindingSource.Filter = "[Посетитель] Like'" + TextBox1.Text + "%'"

Case "По месту посещения"

PoseshenieBindingSource.Filter = "[Место_посещения] Like'" + TextBox1.Text + "%'"

Case "По времени посещения"

PoseshenieBindingSource.Filter = "[Время_посещения] Like'" + TextBox1.Text + "%'"

End Select

End Sub

Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click

Me.PoseshenieTableAdapter.Fill(Me.NLBDataSet.poseshenie)

For line = 0 To PoseshenieDataGridView.RowCount - 1 Step 1

Select Case PoseshenieDataGridView.Rows(line).Cells(1).Value.ToString

Case "Сотрудник"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.Beige

Case "Посетитель"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.BurlyWood

Case "Читатель"

PoseshenieDataGridView.Rows(line).DefaultCellStyle.BackColor = Color.Plum

End Select

Next

End Sub

Private Sub Тип_посетителяComboBox_SelectedIndexChanged(sender As Object, e As EventArgs) Handles Тип_посетителяComboBox.SelectedIndexChanged

If Тип_посетителяComboBox.Text = "Сотрудник" Then

ПосетительComboBox.Visible = True

ПосетительComboBox1.Visible = False

ComboBox2.Visible = False

End If

If Тип_посетителяComboBox.Text = "Посетитель" Then

ПосетительComboBox.Visible = False

ПосетительComboBox1.Visible = False

ComboBox2.Visible = True

End If

If Тип_посетителяComboBox.Text = "Читатель" Then

ПосетительComboBox.Visible = False

ПосетительComboBox1.Visible = True

ComboBox2.Visible = False

End If

End Sub

Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged

End Sub

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

Me.PoseshenieBindingSource.RemoveCurrent()

Me.Validate()

Me.PoseshenieBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

posetiteli.Show()

End Sub

Private Sub Button12_Click(sender As Object, e As EventArgs) Handles Button12.Click

PoseshenieBindingSource.Filter = "[тип_посетителя] LIKE'" + ComboBox3.Text + "%'"

Label5.Text = PoseshenieDataGridView.RowCount.ToString()

End Sub

Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click

Dim i As Integer

Dim j As Integer

xlApp = New Microsoft.Office.Interop.Excel.Application

xlApp.Visible = True

xlWorkBook = xlApp.Workbooks.Add(misValue)

xlWorkSheet = xlWorkBook.Sheets("Лист1")

xlWorkSheet.Range("A1:E1").Font.Bold = True

xlWorkSheet.Columns("A:A").ColumnWidth = 10

xlWorkSheet.Columns("B:B").ColumnWidth = 15

xlWorkSheet.Columns("C:C").ColumnWidth = 15

xlWorkSheet.Columns("D:D").ColumnWidth = 15

xlWorkSheet.Columns("E:E").ColumnWidth = 20

For i = 0 To PoseshenieDataGridView.RowCount - 1

For j = 0 To PoseshenieDataGridView.ColumnCount - 1

For k As Integer = 1 To PoseshenieDataGridView.Columns.Count

xlWorkSheet.Cells(1, k) = PoseshenieDataGridView.Columns(k - 1).HeaderText

If j = 7 Then

xlWorkSheet.Cells(i + 2, j + 1) = PoseshenieDataGridView(j, i).Value.ToString()

Else : xlWorkSheet.Cells(i + 2, j + 1) = PoseshenieDataGridView(j, i).Value

End If

Next

Next

Next

End Sub

End Class

Imports Microsoft.Office.Interop.Excel

Imports System.Data

Imports System.Data.SqlClient

Imports Microsoft.Office.Interop

Public Class chitateli

Dim Ex As New Application

Dim xlApp As Microsoft.Office.Interop.Excel.Application

Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook

Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet

Dim misValue As Object = System.Reflection.Missing.Value

Dim BookEx As Workbook

Dim PageEx As Worksheet

Dim cn As New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\nlb.mdf;Integrated Security=True;Connect Timeout=3")

Dim cmd As New SqlCommand

Dim dr As SqlDataReader

Dim oExcel As Object

Dim oBook As Object

Dim oSheet As Object

Private Sub chitateli_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.chitateli". При необходимости она может быть перемещена или удалена.

Me.ChitateliTableAdapter.Fill(Me.NLBDataSet.chitateli)

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs)

Me.Validate()

Me.ChitateliBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

IO.File.WriteAllBytes(Ex.Application.StartupPath & "\exp1.xlsx", My.Resources.exp1)

'Открыть новую книгу Excel

oExcel = CreateObject("Excel.Application")

oBook = oExcel.Workbooks.Open(Ex.Application.StartupPath & "\exp1.xlsx")

'Добавить данные в ячейки первого листа новой книги

oSheet = oBook.Worksheets(1)

oSheet.Range("E4").Value = Now.ToString("dd.MM.yyyy")

oSheet.Range("E8").Value = ChitateliDataGridView.CurrentRow.Cells(0).Value

oSheet.Range("E9").Value = ChitateliDataGridView.CurrentRow.Cells(1).Value

oSheet.Range("E10").Value = ChitateliDataGridView.CurrentRow.Cells(2).Value

oSheet.Range("E11").Value = ChitateliDataGridView.CurrentRow.Cells(3).Value

oSheet.Range("E12").Value = ChitateliDataGridView.CurrentRow.Cells(4).Value

oSheet.Range("E13").Value = ChitateliDataGridView.CurrentRow.Cells(5).Value

oSheet.Range("E14").Value = ChitateliDataGridView.CurrentRow.Cells(6).Value

oSheet.Range("E15").Value = ChitateliDataGridView.CurrentRow.Cells(7).Value

oSheet.Range("E16").Value = ChitateliDataGridView.CurrentRow.Cells(8).Value

oSheet.Range("E17").Value = ChitateliDataGridView.CurrentRow.Cells(9).Value

oBook.SaveAs(Ex.Application.StartupPath & ChitateliDataGridView.CurrentRow.Cells(0).Value & ".xlsx")

oExcel.Quit()

Process.Start(Ex.Application.StartupPath & ChitateliDataGridView.CurrentRow.Cells(0).Value & ".xlsx")

End Sub

Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click

Me.Validate()

Me.ChitateliBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click

Дата_регистрацииDateTimePicker.Value = DateTime.Today()

Me.ChitateliBindingSource.AddNew()1

End Sub

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

Me.ChitateliBindingSource.RemoveCurrent()

Me.Validate()

Me.ChitateliBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Public Class doljnost

Private Sub doljnost_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.doljnosti". При необходимости она может быть перемещена или удалена.

Me.DoljnostiTableAdapter.Fill(Me.NLBDataSet.doljnosti)

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Me.Validate()

Me.DoljnostiBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

Me.DoljnostiBindingSource.AddNew()

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Me.DoljnostiBindingSource.RemoveCurrent()

End Sub

End Classotdel

Private Sub otdel_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.otdel". При необходимости она может быть перемещена или удалена.

Me.OtdelTableAdapter.Fill(Me.NLBDataSet.otdel)

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Me.Validate()

Me.OtdelBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Me.OtdelBindingSource.AddNew()

End Sub

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click

Me.OtdelBindingSource.RemoveCurrent()

End Sub

End Class

Public Class pomeshenie

Private Sub pomeshenie_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.pomeshenie". При необходимости она может быть перемещена или удалена.

Me.PomeshenieTableAdapter.Fill(Me.NLBDataSet.pomeshenie)

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Me.Validate()

Me.PomeshenieBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Me.PomeshenieBindingSource.AddNew()

End Sub

End Class

Imports Microsoft.Office.Interop.Excel

Imports System.Data

Imports System.Data.SqlClient

Imports Microsoft.Office.Interop

Public Class sotrydniki

Dim Ex As New Application

Dim xlApp As Microsoft.Office.Interop.Excel.Application

Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook

Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet

Dim misValue As Object = System.Reflection.Missing.Value

Dim BookEx As Workbook

Dim PageEx As Worksheet

Dim cn As New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\nlb.mdf;Integrated Security=True;Connect Timeout=3")

Dim cmd As New SqlCommand

Dim dr As SqlDataReader

Dim oExcel As Object

Dim oBook As Object

Dim oSheet As Object

Private Sub sotrydniki_Load(sender As Object, e As EventArgs) Handles MyBase.Load

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.otdel". При необходимости она может быть перемещена или удалена.

Me.OtdelTableAdapter.Fill(Me.NLBDataSet.otdel)

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.doljnosti". При необходимости она может быть перемещена или удалена.

Me.DoljnostiTableAdapter.Fill(Me.NLBDataSet.doljnosti)

'TODO: данная строка кода позволяет загрузить данные в таблицу "NLBDataSet.sotrydniki". При необходимости она может быть перемещена или удалена.

Me.SotrydnikiTableAdapter.Fill(Me.NLBDataSet.sotrydniki)

Label2.Text = SotrydnikiDataGridView.RowCount.ToString()

End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

Me.Validate()

Me.SotrydnikiBindingSource.EndEdit()

Me.TableAdapterManager.UpdateAll(Me.NLBDataSet)

End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

Дата_регистрацииDateTimePicker.Value = DateTime.Today()

Me.SotrydnikiBindingSource.AddNew()

End Sub

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click

Dim i As Integer

Dim j As Integer

xlApp = New Microsoft.Office.Interop.Excel.Application

xlApp.Visible = True

xlWorkBook = xlApp.Workbooks.Add(misValue)

xlWorkSheet = xlWorkBook.Sheets("Лист1")

xlWorkSheet.Range("A1:E1").Font.Bold = True

xlWorkSheet.Columns("A:A").ColumnWidth = 10

xlWorkSheet.Columns("B:B").ColumnWidth = 15

xlWorkSheet.Columns("C:C").ColumnWidth = 15

xlWorkSheet.Columns("D:D").ColumnWidth = 15

xlWorkSheet.Columns("E:E").ColumnWidth = 20

xlWorkSheet.Columns("F:F").ColumnWidth = 30

xlWorkSheet.Columns("G:G").ColumnWidth = 20

xlWorkSheet.Columns("H:H").ColumnWidth = 25

xlWorkSheet.Columns("I:I").ColumnWidth = 25

xlWorkSheet.Columns("J:J").ColumnWidth = 25

xlWorkSheet.Columns("K:K").ColumnWidth = 25

For i = 0 To SotrydnikiDataGridView.RowCount - 1

For j = 0 To SotrydnikiDataGridView.ColumnCount - 1

For k As Integer = 1 To SotrydnikiDataGridView.Columns.Count

xlWorkSheet.Cells(1, k) = SotrydnikiDataGridView.Columns(k - 1).HeaderText

If j = 7 Then

xlWorkSheet.Cells(i + 2, j + 1) = SotrydnikiDataGridView(j, i).Value.ToString()

Else : xlWorkSheet.Cells(i + 2, j + 1) = SotrydnikiDataGridView(j, i).Value

End If

Next

Next

Next

xlWorkBook.SaveAs(Ex.Application.StartupPath & SotrydnikiDataGridView.CurrentRow.Cells(0).Value & ".xlsx")

ReleaseObject(xlApp)

ReleaseObject(xlWorkBook)

ReleaseObject(xlWorkSheet)

End Sub

Private Sub ReleaseObject(ByVal obj As Object)

'процедура выгрузки объектов из памяти

Try

System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)

obj = Nothing

Catch ex As Exception

obj = Nothing

Finally

GC.Collect()

End Try

End Sub

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

Me.SotrydnikiBindingSource.RemoveCurrent()

End Sub

Private Sub ФамилияTextBox_KeyPress(sender As Object, e As KeyPressEventArgs) Handles ФамилияTextBox.KeyPress

If Not [Char].IsDigit(e.KeyChar) Then

Return

Else

e.Handled = True

End If

End Sub

Private Sub ИмяTextBox_KeyPress(sender As Object, e As KeyPressEventArgs) Handles ИмяTextBox.KeyPress

If Not [Char].IsDigit(e.KeyChar) Then

Return

Else

e.Handled = True

End If

End Sub

Private Sub ОтчествоTextBox_KeyPress(sender As Object, e As KeyPressEventArgs) Handles ОтчествоTextBox.KeyPress

If Not [Char].IsDigit(e.KeyChar) Then

Return

Else

e.Handled = True

End If

End Sub

Private Sub MaskedTextBox2_KeyPress(sender As Object, e As KeyPressEventArgs) Handles MaskedTextBox2.KeyPress

If Not IsNumeric(e.KeyChar) AndAlso Asc(e.KeyChar) <> 8 Then e.Handled = True

End Sub

End Class

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