Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

 FOut=FSO.OpenTextFile(PathOut,ForWriting,true);

 //Печатаем заголовок отчета

 TopReport("Поиск записей");

 //Вводим фамилию для поиска

 LastName=WSHInputBox("Введите фамилию для поиска:","Записная книжка")

 //Ищем в XML-файле нужные записи и сохраняем их в массиве PersonArr

 RecordsToArray(LastName);

 //Выводим все найденные записи из массива PersonArr в выходной файл

 PrintAllFind(LastName);

 //Печатаем итоговую информацию

 BottomReport("Всего найдено: "+PersonArr.length);

 //Открываем выходной файл в Блокноте

 MakeOut;

}

//Запускаем основную функцию

Main;

</script>

</job>

<!-- *************** Удаление записи по фамилии *************** -->

<job id="DelRec">

<script language="VBScript" src="WSHInputBox.vbs"/>

<script language="JScript" src="usage.js"/>

<script language="JScript">

//Поиск фамилии в записной книжке и удаление всех

//реквизитов, относящихся к этой фамилии

function FindAndDelRecord(LastName) {

 var Root,sSelect,i,Parent,NodeList;

 //Создаем объект DOMDocument

 XMLDoc = WScript.CreateObject("Msxml.DOMDocument");

 //Загружаем XML-файл

 XMLDoc.load(PathBook);

 //Сохраняем в переменной Root ссылку на корневой элемент

 //документа

 Root=XMLDoc.documentElement;

 //Формируем строку для поиска фамилии

 sSelect="Person/LastName[text='"+LastName+"']";

 //Создаем коллекцию NodeList всех элементов LastName,

 //значение которых совпадает со значением переменной LastName

 NodeList=XMLDoc.documentElement.selectNodes(sSelect);

 if (NodeList.length==0) //Коллекция NodeList пуста

//Выводим диалоговое окно с сообщением

WshShell.Popup("Фамилия "+LastName+ " не найдена!", 0,

"Записная книжка",vbInformation+vbOkOnly);

 else { //Требуемая фамилия найдена

//Цикл по всем найденным элементам LastName

for (i=0;i<=NodeList.length-1;i++) {

//Определяем родительский элемент (Person) для найденного

//элемента LastName

Parent=NodeList.item(i).parentNode;

//Удаляем элемент Person вместе со всеми его дочерними элементами

Root.removeChild(Parent);

//Выводим диалоговое окно с сообщением

WshShell.Popup("Запись удалена!",0,

"Записная книжка",vbInformation+vbOkOnly);

}

//Сохраняем содержимое XML-файла на диске

XMLDoc.save(PathBook);

 }

}

//Основная запускная функция

function Main {

 var LastName,Res;

 //Создаем объект WshShell

 WshShell = WScript.CreateObject("WScript.Shell");

 //Определяем пути к файлам

 InitPath;

 LastName=WSHInputBox("Введите фамилию для удаления:","Записная книжка")

 //Запрос на удаление записи

 Res=WshShell.Popup("Удалить фамилию "+LastName+ " из \n"+PathBook+"?",0,

"Записная книжка",vbQuestion+vbYesNo);

 if (Res==vbYes) { //Нажата кнопка Да

//Ищем в книжке нужную фамилию и удаляем относящуюся к

//ней запись

FindAndDelRecord(LastName);

 }

}

//Запускаем основную функцию

Main;

</script>

</job>

<!-- *************** Добавление записи *************** -->

<job id="AddRec">

<script language="VBScript" src="WSHInputBox.vbs"/>

<script language="JScript" src="Usage.js"/>

<script language="JScript">

//Ввод значений полей объекта PersonRec

function MakePersonRec {

 //Создаем новый экземпляр PersonRec объекта Person

 PersonRec=new Person;

 //Вводим значения полей добавляемой записи с помощью диалогового

 //окна со строкой ввода

 PersonRec.LastName=WSHInputBox("Введите фамилию","Добавление записи");

 PersonRec.Name=WSHInputBox("Введите имя","Добавление записи");

Поделиться:
Популярные книги

Законы Рода. Том 7

Андрей Мельник
7. Граф Берестьев
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Законы Рода. Том 7

Мастер порталов

Лисина Александра
8. Гибрид
Фантастика:
боевая фантастика
попаданцы
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Мастер порталов

Кодекс Охотника. Книга XVI

Винокуров Юрий
16. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVI

Сфирот

Прокофьев Роман Юрьевич
8. Стеллар
Фантастика:
боевая фантастика
рпг
6.92
рейтинг книги
Сфирот

Архил...?

Кожевников Павел
1. Архил...?
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Архил...?

Размышления русского боксёра в токийской академии Тамагава, 3

Афанасьев Семён
3. Размышления русского боксёра в токийской академии
Фантастика:
альтернативная история
5.00
рейтинг книги
Размышления русского боксёра в токийской академии Тамагава, 3

Развод с драконом. Отвергнутая целительница

Шашкова Алена
Фантастика:
фэнтези
4.75
рейтинг книги
Развод с драконом. Отвергнутая целительница

Гнездо Седого Ворона

Свержин Владимир Игоревич
2. Трактир "Разбитые надежды"
Фантастика:
боевая фантастика
7.50
рейтинг книги
Гнездо Седого Ворона

Сильнейший Столп Империи. Книга 2

Ермоленков Алексей
2. Сильнейший Столп Империи
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Сильнейший Столп Империи. Книга 2

Геном хищника. Книга третья

Гарцевич Евгений Александрович
3. Я - Легенда!
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Геном хищника. Книга третья

Барон обходит правила

Ренгач Евгений
14. Закон сильного
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Барон обходит правила

Личный аптекарь императора. Том 6

Карелин Сергей Витальевич
6. Личный аптекарь императора
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Личный аптекарь императора. Том 6

Курсант: назад в СССР 2

Дамиров Рафаэль
2. Курсант
Фантастика:
попаданцы
альтернативная история
6.33
рейтинг книги
Курсант: назад в СССР 2

Анти-Ксенонская Инициатива

Вайс Александр
7. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
космоопера
5.00
рейтинг книги
Анти-Ксенонская Инициатива