ограму;
в) необхідно самостійно скачувати сертифікати податкових органів та впізнавати їх e-mail;
г) існує ймовірність помилкової настройки;
д) ризик неправильної відправки звітів і, як наслідок, великі штрафи.
Для усунення цих недоліків у дипломному проекті розроблена інша методика установки програм електронної звітності з адаптацією до особливостей оператора зв'язку. Її використання забезпечить:
а) установку програми в потрібну директорію;
б) простоту установки програми;
в) при першому запуску програми вона буде повністю дієздатна;
г) правильну настройку бази даних;
д) ніякого ризику для клієнта.
. 3 Методика настройки
Для того, щоб спростити рутинну роботу з введення інформації про організацію я вирішив розробити програму для автоматичного формування бази даних програми НВІС ++ з електронних документів формату Microsoft Word, які знаходяться в нашій фірмі (підписний лист клієнта і інші). Для цього були проаналізовані всі файли в базі даних, визначено місце розташування конкретної інформації в них.
З боку клієнта в електронному вигляді заповнюється підписний лист (малюнок 2.13)
Малюнок 2.13 - Підписний лист
Після реєстрації на сервері оператора зв'язку, СДО видає картку налаштування (рисунок 2.2).
Ми формуємо документ Microsoft Word з настройками всіх інспекцій (малюнок 2.14).
Малюнок 2.14 - файл настройки інспекцій
При аналізі базі даних були визначені файли, в які потрібно внести дані з наших файлів.
Для того, що б перенести всі дані з файлів формату doc у файли формату dic, була використана процедура парсинга. При парсінгу вихідний текст перетвориться в структуру даних, зазвичай - в дерево, яке відображає синтаксичну структуру вхідної послідовності і добре підходить для подальшої обробки.
Для того, що б використовувати розроблену програму для налагодження обираються три файли (малюнок 2.15):
· файл настройки;
· підписний лист;
· картка настройки.
Малюнок 2.15 - Парсер
Парсинг документа Microsoft Word здійснюється засобами C # і .NET Framework.
Для початку треба додати в проект простір імен COM-моделі Microsoft.Office, для цього вибираємо в меню Project - Add reference ... і вибираємо з вкладки COM Microsoft Office 14.0 Object Library (малюнок 2.16).
Малюнок 2.16 - COM Microsoft Office 14.0
Тепер у нас є простір імен Microsoft.Office.Interop.Word, і наступний код відкриває Word-документ і копіює весь вміст без форматування в поле richTextBox1 в проекті.
private void button1_Click (object sender, EventArgs e)
{
//Створення примірника об'єкта Word.Application.Office.Interop.Word.Application wordApp=Microsoft.Office.Interop.Word.Application ();
//Завдання параметрів відкриття файла.Visible=false; filename=textBox1.Text;// Шлях до файлуconfirmConversions=true; readOnly=false; addToRecentFiles=true; passwordDocument=Type.Missing; passwordTemplate=Type.Missing; revert=false; writePasswordDocument=Type.Missing; writePasswordTemplate=Type.Missing; format=Type.Missing; encoding=Type.Missing; oVisible=Type.Missing; openConflictDocument=Type.Missing; openAndRepair=Type.Missing; documentDirection=Type.Missing; noEncodingDialog=false; xmlTransform=Type.Missing;
//Створення об'єкта Word.Document.Office.Interop.Word.Document wordDocument=wordApp.Documents.Open (ref filename, confirmConversions, ref readOnly, ref addToRecentFiles, passwordDocument, ref passwordTemplate, ref revert, writePasswordDocument, ref writePasswordTemplate, format, ref encoding, ref oVisible, openAndRepair, ref documentDirection, ref noEncodingDialog, ref xmlTransform);
//Копіюємо вміст документа в буферstart=Type.Missing; end=Type.Missing; .Office.Interop.Word.Range wordrange=wordDocument.Range (ref start, ref end) ;. Select ( ) ;. Copy (); unit; extend;=Microsoft.Office.Interop.Word.WdUnits.wdStory;=Microsoft.Office.Interop.Word.WdMovementType.wdMove; .Selection.EndKey (ref unit, ref extend) ;. Text=wordrange.Text.ToString ();
}
Для пошуку тієї чи іншої інформації за шаблоном будемо використовувати регулярні вирази - потужний, гнучкий і ефективний мето...