|
ПРОЕКТЫ ДАННОЙ КАТЕГОРИИ SQL - процедура нахождения путей в графе Сгенерировать базу регионов/городов United Kingdom Партирование КИС на другую СУБД. Все проекты данной категории - 6 TOP 10 ФРИЛАНСЕРОВ Разработка баз данных
|
Импорт данных из XML-файла в БД AccessРазработка баз данных, Разработка прикладного ПО
Техническое задание
По импорту данных из XML-файла в БД Access. Импорт осуществляется запуском скрипта или с применением XSLT-преобразования (на выбор), по файлам расположенным в определенной директории. Запуск осуществляется вручную. Функции импорта должны быть реализованы в среде Ассеss (рекомендация) или на любом иной языке, в случае реализации на любой версии VB следует обеспечить передачу исходных текстов. Импорт осуществляется в существующую БД, структура таблиц не подлежит изменению. Структура БД. Состав и типы полей приведены в приложении . см прикрепленный файл. Имена полей БД соответствуют элементам структуры в xml файле. 2. Описание структуры XML-файла. I. Назначение и способы обработки файла CONS*.USR. Для облегчения сбора информации о комплектах систем, установленных у пользователей (а теперь, и для сведений об актуальности обновления ИБ, входящих в состав этих систем), семейство USR файлов включает в себя USR файл комплекта. Название данного файла - CONS#K_DDDDD_N.USR где K - код «основной»(см. сноску <*>) системы (одна или две цифры), DDDDD - номер дистрибутива «основной» системы, N - номер компьютера данного дистрибутива. Рассмотрим применение нового файла CONS*.USR, отражающего состояние всего комплекта. При запуске утилиты UInf3000.EXE в директории, содержащей файлы CONS*.USR, собранные от пользователей, они расшифровываются в файлы CONS*.XML. Далее данные файлы XML импортируются средствами СУБД, на котором написана база пользователей конкретного РИЦ. II. Рассмотри формат CONS*.XML файла на следующем примере: Пусть у пользователя установлен комплект из 3-х систем, КонсультантБухгалтер: ВерсияПроф, МоскваПроф, ДеловыеБумаги. Новые элементы для удобства чтения выделены розовым шрифтом. XML комментарии вида <!-- … -->, помогающие понять пример, в реальном XML файле отсутствуют. <user_info> <!-- версия формата USR файла --> <format_version>2</format_version> <!-- номер РИЦ --> <ric>133</ric> <!-- версия технологического модуля (*.RES файла) сномером сборки--> <res_version>3000.03.35.5556</res_version> <!-- аппаратно-программная конфигурация --> <tech_info> <!-- версия операционной системы --> <OS> <Name>Windows XP Service Pack 1</Name> <Version Major="5" Minor="1" /> <Build>2600</Build> <PlatformID>2</PlatformID> </OS> <!—свободное место на диске с ИБ комплекта в мегабайтах--> <DiskFreeSpace>1124</DiskFreeSpace> <!—максимум одновременных доступов (OD) пользователей--> <!—и число уникальных доступов (UD) к комплекту --> <!—Способ доступа через терминал-сервер --> <Users OD="1" UD="26" TS="0" /> </tech_info> <!—В секции files приводятся данные о дате и времени создания файлов --> <!--Для USR файла дополнительно указан способ его формирования <**>--> <files> <USR_FILE date="01.08.2007" time="13.14" kind="R" /> <INFO.COD date="11.06.2007" time="07.12" /> <CONSULT.TOR date="11.06.2007" time="23.11" /> </files> <!-- информация о составе систем, составляющих комплект --> <!-- пример тега системы: BUH_5, где BUH - название СИСТЕМЫ бухгалтер --> <!--, 5 - код системы БухгалтерПроф (у усеченного Бухгалтера код другой) --> <!-- net_count - число сетевых пользователей: 0 1 50 --> <!-- userType: NCT (ИЦ РИЦ) USR (обычный пользователь) SPC (спецвыпусук) --> <!-- KKK (серия К) RRR (серия Р) VIP (VIP выпуск) VVV (серия В) --> <!-- NEK (некоммерческий выпуск) --> <!-- technolType: технологический признак, зарезервированный на будущее --> <package> <PAP_6 distr="64333" comp="1" ric="133" netCount="1" userType="USR" technolType="" /> <MLAW_19 distr="21343" comp="4" ric="133" netCount="0" userType="USR" technolType="" /> <BUH_5 distr="61333" comp="1" ric="133" netCount="0" userType="USR" technolType="" /> </package> <!-- информация о состоянии ИБ, входящих в состав систем комплекта --> <ib> <PAP nDistr= nComp="1"… - Данные по ИБ PAP системы ДБ </PAP> <MLAW nDistr=… Данные по ИБ MLAW системы МоскваПроф </MLAW> <DOCS nDistr=… - Данные по ИБ DOCS системы КБ </DOCS> <QSA nDistr=… - Данные по ИБ QSA системы КБ </QSA> <KRS nDistr=… - Данные по ИБ KRS системы КБ </KRS> <PBI nDistr=… - Данные по ИБ PBI системы КБ </PBI> <PPN nDistr=… - Данные по ИБ PPN системы КБ </PPN> </ib> </user_info> III. Рассмотрим формат данных по каждому ИБ внутри секции <ib> CONS*.USR. Он сделан более логичным (то, что ранее дублировалось в "побазовых" USR, перенесено в секцию <files>), и расширен до 10 пополнений. Рассмотрим его подробно на примере ИБ MLAW: <MLAW nDistr="21343" nComp="4" directory="MLAW" name="Москва Проф" nCat="35016" nTexts="35016" n3="35016" n4="35016" n5="35016" n6="0" compliance="=HOST"> <updates> <u1 date="28.09.2007" time="19.09" sysdate="28.09.2007" docs="35016" kind="P" /> <u2 date="16.07.2007" time="21.59" sysdate="16.07.2007" docs="34906" kind="" /> ... // здесь данные ещё по 8-ми пополнениям в порядке убывания даты/времени, в виде тегов <u3>…<u10> </updates> </MLAW> Где: nDistr - Номер дистрибутива; nComp - Номер компьютера; directory - Имя директории с ИБ; name - Название ИБ nCat - Количество каталогов; nTexts - Количество документов с текстом; n3 - Количество документов в 3-й части; n4 - Количество документов в 4-й части; n5 - Количество документов в 5-й части; n6 - Количество документов в 6-й части; compliance - Признак соответствия ИБ пользователя ИБ РИЦ (=HOST, #HOST, ?HOST); updates – секция из 10 обновлений u1…u10 (u1 – последнее обновление, u2 – предпоследнее, и т.д.). Для каждого обновления пишется по 5 значений: date - Дата обновления; time - Время обновления; sysdate - системная дата при обновлении <***>. docs - число документов в ИБ (каталоге) на момент обновления kind – способ обновления. P – пополнением, R – заменой (авторегистрацией) ИБ IV. Особенности импорта данных из CONS*.USR в БД пользователей РИЦ. Отметим, что перевод данных в формат XML позволяет более удобно обрабатывать данные и вводить по мере необходимости новые поля. Для импорта в базу данных пользователей РИЦ можно объединить несколько CONS*.XML файлов, полученных от разных пользователей, в один. Для этого следует добавить в начало файла следующую строку, содержащую информацию о кодировке и обрамить все данные корневым тегом: <?xml version="1.0" encoding="windows-1251"?> <route> <user_info> … </user_info> … <user_info> … </user_info> </route> Полученный XML можно обрабатывать стандартными XML парсерами, для последующего импорта в базу данных пользователей РИЦ. В последней редакции CONS*.USR содержит много данных, которые РИЦ могут применять для повышения эффективности своей работы. Поскольку данных достаточно много, и они разнородные, при импорте имеет смысл разбить их по назначению и направить в разные таблицы, данные их которых анализировать при выполнении различных задач, возникающих в РИЦ. Например: • Данные из шапки файла и секции <tech_info> - в таблицу общей информации о пользователях (помимо информации технологического плана (например, не старая ли версия Консультанта) содержится полезная информация об интенсивности использования комплекта). • Данные из секции <files> - в таблицу информации об актуальности системных файлов КонсультантПлюс (информация технологического плана, нет ли сбоев по критическим файлам). • Данные из секции <package> - в таблицу покомплектного учета установленных у пользователей систем (крайне полезная маркетинговая информация для принятия решений – какие ИБ каким пользователям имеет смысл предложить приобрести дополнительно и т.п.). • Данные из секции <ib> - в таблицу для контроля работы инженеров по сопровождению по актуализации ИБ у пользователей. Разные таблицы имеет смысл связать между собой уникальным ключом, в качестве которого удобно взять условный номер комплекта (то, что стоит после # в названии файла CONS*.USR). Здесь приведены самые общие рекомендации. Поскольку XML формат позволяет гибко адаптировать данные к особенностям конкретной БД по пользователям, любой РИЦ может структурировать информацию так, как ему удобно. 3. Алгоритм обработки файлов. 1. Все usr файлы располагаются в одном каталоге, по мере поступления новых файлов прежние замещаются. 2. Раз в месяц производится импорт файлов расположенных в каталоге в БД, 3. перед началом импорта считать в массив список файлов в каталоге (цель- организовать цикл) 4. внутри цикла считать содержимое элемента массива из элемента массива CONS#K_DDDDD_N.USR вырезать значение DDDDD и сравнить его с содержимым поля Nrec_userinfo таблицы userinfo если такая запись в БД существует заменить ее новыми данными из XML файла согласно значениям тэгов, последовательно заменяя одноименные поля БД значениями одноименных тэгов. 5. если значения нет, произвести добавление записи в БД заполнив подчиненные таблицы значениями одноименных тэгов. Приложение 2. Перечень кодов систем: 50 КонсультантПлюс: Эксперт-приложение 1 КонсультантПлюс: Версия Проф 2 КонсультантПлюс: Российское законодательство 19 КонсультантПлюс: Москва Проф 3 КонсультантПлюс: Московский выпуск 4 КонсультантБухгалтер: Вопросы-ответы 77 КонсультантБухгалтер: Вопросы-ответы (усеченный) 5 КонсультантБухгалтер: Версия Проф 40 КонсультантБухгалтер (усеченный) 17 КонсультантФинансист 78 КонсультантФинансист (усеченный) 6 Деловые бумаги 8 КонсультантСудебнаяПрактика: Решения высших судов 7 КонсультантПлюс: Региональный выпуск 13 КонсультантПлюс: Региональный выпуск Базовый 26 ИсходящаяКорреспонденция: Директор 42 ИсходящаяКорреспонденция: Менеджер 12 Средства ведения БД 14 КонсультантПлюс: Московская область 15 КонсультантПлюс: Налоги и бухучет 25 КонсультантПлюс: Санкт-Петербургский выпуск 54 КонсультантПлюс: Регионы 16 КонсультантПлюс: Сводное региональное законодательство 18 КонсультантМедицинаФармацевтика Россия Москва 20 КонсультантМедицинаФармацевтика Россия 21 КонсультантПлюс: Международное право 27 КонсультантПлюс: Законопроекты 29 КонсультантАрбитраж: ФАС Волго-Вятского округа 30 КонсультантАрбитраж: ФАС Восточно-Сибирского округа 31 КонсультантАрбитраж: ФАС Дальневосточного округа 32 КонсультантАрбитраж: ФАС Западно-Сибирского округа 24 КонсультантАрбитраж: ФАС Московского округа 33 КонсультантАрбитраж: ФАС Поволжского округа 34 КонсультантАрбитраж: ФАС Северо-Западного округа 35 КонсультантАрбитраж: ФАС Северо-Кавказского округа 36 КонсультантАрбитраж: ФАС Уральского округа 37 КонсультантАрбитраж: ФАС Центрального округа 43 КонсультантПлюс: Комментарии законодательства 39 КонсультантБухгалтер: Корреспонденция счетов 41 КонсультантПлюс: Документы СССР 44 КонсультантПлюс: Строительство 49 КонсультантАрбитраж: ФАС всех округов 67 КонсультантАрбитраж: Налоговые споры 51 КонсультантСудебнаяПрактика: Суды Москвы и области 52 КонсультантАрбитраж: Санкт-Петербург 53 КонсультантСудебнаяПрактика: Региональный выпуск 69 КонсультантСудебнаяПрактика: Суды Свердловской области 75 КонсультантСудебнаяПрактика: Подборки судебных решений 80 КонсультантАрбитраж: 2 апелляционный суд 74 КонсультантАрбитраж: 13 апелляционный суд 76 КонсультантАрбитраж: 17 апелляционный суд 81 КонсультантАрбитраж: 19 апелляционный суд [Приложения]
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||