Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / формирование XML / 9 сообщений из 9, страница 1 из 1
24.11.2004, 11:14:46
    #32797463
Alexander K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
Народ, подскажите, пожалуйста, помогите новечку.
Каким образом я могу сформировать данную строку XML:

<?xml version="1.0" encoding="windows-1251" ?>
- <!-- Форма F555, ЭДО УК-ОДК -->
- <EDO_ODKF555 VERSION="01">
<RegNumberOut>137-2053F555</RegNumberOut>
<ReportOnDate>2004-11-11</ReportOnDate>

Вот часть кода VB, с помощью которого формирую свой XML

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
    Set xmlDoc = CreateObject("Microsoft.XMLDOM")   ' New DOMDocument

    xmlDoc.preserveWhiteSpace = True
    
    'Insert version
    Set comment = xmlDoc.createComment("Форма F555, ЭДО УК-ОДК")
    xmlDoc.appendChild comment
   
    Set pi = xmlDoc.createProcessingInstruction("xml", " version=""1.0"" encoding=""Windows-1251""")
    xmlDoc.insertBefore pi, xmlDoc.childNodes.Item( 0 )
    
    Set mainNode = xmlDoc.createNode(NODE_ELEMENT, "EDO_ODKF555", "")
    xmlDoc.appendChild mainNode

    Set xmlFields = xmlDoc.documentElement.appendChild(xmlDoc.createElement("RegNumberOut"))
    xmlFields.Text = "137-2053F555"

и вот что у меня получается:
<?xml version="1.0" encoding="Windows-1251" ?>
- <!-- Форма F555, ЭДО УК-ОДК -->
- <EDO_ODKF555>
<RegNumberOut>137-2053F555</RegNumberOut>

фактически мне надо добавить параметр VERSION="01" как это сделать?
...
Рейтинг: 0 / 0
24.11.2004, 11:26:26
    #32797497
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
да....

А вот это поменять?:)
Set mainNode = xmlDoc.createNode(NODE_ELEMENT, "EDO_ODKF555", "")
...
Рейтинг: 0 / 0
24.11.2004, 11:30:14
    #32797513
Alexander K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
весь вопрос в том, как его поменять. Если указать

Set mainNode = xmlDoc.createNode(NODE_ELEMENT, "EDO_ODKF555", "01")

то в итоге будет
- <EDO_ODKF555 xmlns="01">
<RegNumberOut xmlns="01">137-2053F555</RegNumberOut>

а мне надо вместо xmlns - VERSION и только в первой строке, а в дочерних - не указывать

Сори если пишу глупость, столкнулся с этим впервые, а сделать надо быстро :-(
...
Рейтинг: 0 / 0
24.11.2004, 11:41:17
    #32797539
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
Пишите вот так EDO_ODKF555 VERSION="01" - как строчку вместо EDO_ODKF555. Это же текст фактически.
...
Рейтинг: 0 / 0
24.11.2004, 11:46:46
    #32797554
Alexander K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
HummerПишите вот так EDO_ODKF555 VERSION="01" - как строчку вместо EDO_ODKF555. Это же текст фактически.

На это VB выдает ошибку

Run time error '-2147467259 (80004005)'
Это имя не должно седержать знак " ":
EDO_ODKF555--> <--VERSION="01"
...
Рейтинг: 0 / 0
24.11.2004, 14:11:46
    #32798006
Alexander K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
Ну что, больше предложений нет?
...
Рейтинг: 0 / 0
24.11.2004, 14:40:03
    #32798083
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
Учимся работать со строками: "EDO_ODKF555 Version = ""01"""
...
Рейтинг: 0 / 0
24.11.2004, 15:18:27
    #32798214
Alexander K
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
TO Hummer: Результат такой:

Run time error '-2147467259 (80004005)'
Это имя не должно седержать знак " ":
EDO_ODKF555--> <--VERSION="01"

Решил данную проблему:
просто надо добавить аттрибут :-)

Код: plaintext
1.
2.
3.
4.
    Set mainNode = xmlDoc.createNode(NODE_ELEMENT, "EDO_ODKF555", "")
    xmlDoc.appendChild mainNode

    Set attrib = xmlDoc.selectSingleNode("EDO_ODKF555")
    attrib.setAttribute "VERSION", "01"
...
Рейтинг: 0 / 0
24.11.2004, 16:05:13
    #32798373
Hummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
формирование XML
2 Alexander K
Был не прав - подзабыл уже XML структуру...
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / формирование XML / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]