Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОтчетВолков.doc
Скачиваний:
9
Добавлен:
13.05.2015
Размер:
196.1 Кб
Скачать
  1. Ознакомление с технологией ado.Net

ADO.NET — это набор классов, предоставляющих службы доступа к данным программисту, работающему на платформе .NET Framework.ADO.NET имеет богатый набор компонентов для создания распределенных приложений, совместно использующих данные. Это неотъемлемая часть платформы .NET Framework, которая предоставляет доступ к реляционным данным, XML-данным и данным приложений. ADO.NET удовлетворяет различные потребности разработчиков, включая создание клиентских приложений баз данных, а также бизнес-объектов среднего уровня, используемых приложениями, средствами, языками и веб-обозревателями[5].

Программное обеспечение ADO.NET для подсоединения и взаимодействия с физической базой данных называется провайдером данных ADO.NET. Провайдер данных (data provider) — это управляемый код .NET, который эквивалентен провайдеру OLEDB или драйверу ODBC. Провайдер данных состоит из нескольких объектов, которые реализуют необходимую функциональность в соответствии с определениями своих классов и интерфейсов.

  1. Разработка модуля ведущего мониторинг параметров пк

Для разработки модуля, ведущего мониторинг параметров ПК было выбран язык C# из-за его возможностей работы с WMI, а для хранения данных средство ADO.NET и базу данных SQL-Server.

Структура базы данных изображена на рисунке 1 в приложении 1. Интерфейс модуля представлен на рисунке 2 приложения 1.

Модуль по средствам WMI опрашивает об именах имеющихся жестких дисков удаленные и локальный компьютеры. Результат опроса заносятся в базу данных и выводятся в выделенные для этого области окна модуля.

Для тестового запуска использовался компьютер без подключения к локальной сети. После опроса модуль выдал в своем окне информацию об имени компьютера и именах жестких дисков, находящиеся на компьютере. Как видно из рисунка 2 в приложении 1, на компьютере находятся два жестких диска, что соответствует реальности. Для отладки опроса по локальной сети необходимы дальнейшие тесты с компьютером подключенным к локальной сети и имеющий в ней права администратора. Листинг модуля в приложении 2.

ЗАКЛЮЧЕНИЕ

В ходе учебно-исследовательской работы было выполнено:

  • анализ существующих автоматизированных систем учета основных средств предприятия;

  • анализ существующих систем мониторинга парка ПК предприятия (с учетом локальной сети);

  • разработано описание систем мониторинга с целями, задачами и функциями;

  • изучение основ программирования на C#;

  • ознакомление с технологией ADO.NET;

  • разработан модуль ведущий мониторинг ряда параметров ПК.

В ходе анализа существующих автоматизированных систем учета основных средств предприятия было выявлено, что больше всего для предприятия подходят «1С:Бухгалтерия» или «ИНФО-Бухгалтер» в зависимости от специфики предприятия. Анализ существующих систем мониторинга парка ПК предприятия дал представление об актуальных на сегодняшний день системах, их достоинствах, недостатках и функциональных возможностях. В процессе разработки описания системы мониторинга были сформированы предварительные цели, задачи и функции, которые система должно иметь. Так же в ходе разработки модуля ведущего мониторинг ряда параметров ПК были изучены основы программирования на языке C#, возможности ADO.NET для подключения базы данных SQL-Server к программному проекту.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

  1. Светлана Мартынычева «СРАВНИТЕЛЬНАЯ ХАРАКТЕРИСТИКА ПРОГРАММ АВТОМАТИЗАЦИИ БУХГАЛТЕРСКОГО УЧЕТА» УДК 681.3-657 М-29

  2. Рязанцева Н.А., Рязанцев Д.Н. 1С:Предприятие. Комплексная конфигурация. Секреты работы.- СПб.:БХВ-Петербург, 2009,С.-624

  3. Ежемесячный журнал «Системный администратор» №6(103) июнь 2011 издательство ООО «Синдикат 13».

  4. C# и платформа .NET., Э. Троелсен. – СПб.; Издательство «Питера Пресс», 2007.

  5. Электронная библиотека MSDN [Электронный ресурс]. URL: http://msdn.microsoft.com

  6. Microsoft SQL Server 2008: A Beginner`s Guide., Дю Петкович. – СПб.: Издательство «БХВ-Петербург».

  7. Евсеева О.Н., Шамшев А.Б. Работа с базами данных на языке C#. Технология АDO.NET: Учебное пособие.

  8. Хохлов А. Е. «Автоматизированные системы бухгалтерского учета: Конспект лекций» Изд-во Пенз. гос. ун-та, 2002. – 108с

Приложение 1 «Таблицы и рисунки»

Название программы

Достоинства

Недостатки

1С:Бухгалтерия

большие функциональные возможности

сложность освоение

невысокая цена

невозможность работы с графикой

отсутствие бесплатной демонстративной версии

ИНФО-бухгалтер

простота в освоении

трудность адаптации программы к особенностям предприятия

высокий уровень технической поддержки

низкая цена (дешевле, чем 1С:Бухгалтерия)

нетребовательна к ресурсам компьютера

Парус-бухгалтерия

способность адаптироваться к особенностям предприятия

высокая цена

БЭСТ

может функционировать как в локальном, так и в сетевом варианте

высокая цена

сопровождение компанией-разработчик в процессе эксплуатации

пользователю запрещено изменять настройки программы

Таблица 1. Перечень достоинств и недостатков.

Рис. 1 Структура базы данных

Рис. 2 Интерфейс модуля.

Приложение 2. «Листинг модуля ведущего мониторинг параметров ПК»

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.IO;

using System.Windows.Forms;

using System.Management;

using Microsoft.Win32;

using System.Runtime.InteropServices;

namespace УМОС

{

public partial class Form1 : Form

{

private List<string> GetDeviceArray(string ComputerName, string FromWIN32Class, string ClassItemAdd)

{

List<string> result = new List<string>();

ConnectionOptions options =

new ConnectionOptions();

ManagementScope scope = new ManagementScope("\\\\" + ComputerName + "\\root\\cimv2", options);

ObjectQuery query = new ObjectQuery("SELECT * FROM " + FromWIN32Class);

ManagementObjectSearcher searcher =

new ManagementObjectSearcher(scope, query);

try

{

foreach (ManagementObject obj in searcher.Get())

{

result.Add(obj[ClassItemAdd].ToString().Trim());

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

return result;

}

private List<string> GetComputerArray()

{

List<string> res = new List<string>();

for (int i = 6; i < 7; i++)

{

ConnectionOptions options =

new ConnectionOptions();

ManagementScope scope = new ManagementScope("\\\\192.168.0.10" + i.ToString() + "\\root\\cimv2", options);

try

{

scope.Connect();

ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_OperatingSystem");

ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);

ManagementObjectCollection queryCollection = searcher.Get();

foreach (ManagementObject m in queryCollection)

{

res.Add(m["csname"].ToString());

}

}

catch (Exception ex) { res.Add("Ошибка доступа!"); }

}

return res;

}

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

List<string> comp = GetComputerArray();

//dbDataSetTableAdapters.HardDickTableAdapter hIns =

//new УМОС.dbDataSetTableAdapters.HardDickTableAdapter();

dbDataSetTableAdapters.MainTableAdapter dbIns = new УМОС.dbDataSetTableAdapters.MainTableAdapter();

try

{

for (int i = 0; i < comp.Count; i++)

{

if (comp[i] != "Ошибка доступа!")

{

List<string> res = GetDeviceArray(comp[i], "Win32_DiskDrive", "Name");

for (int j = 0; j < res.Count; j++)

mainBindingSource.Add(dbIns.InsertQuery(comp[i],res[j]));

//hardDickBindingSource.Add(hIns.InsertQuery(res[j], comp[i]));

}

else MessageBox.Show("Ошибка доступа!");

}

}

catch (Exception ex) { MessageBox.Show(ex.Message); }

}

private void Form1_Load(object sender, EventArgs e)

{

try

{

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

this.mainTableAdapter.Fill(this.dbDataSet.Main);

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

this.hardDisckTableAdapter.Fill(this.dbDataSet.HardDisck);

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

this.computerTableAdapter.Fill(this.dbDataSet.Computer);

}

catch (System.Data.SqlClient.SqlException ex) { MessageBox.Show(ex.Message); }