экспорт из Xml

  • Автор темы NicyGonzalez
  • Дата начала
N

NicyGonzalez

Совсем запуталась в dxl и xml. Есть файл в формате xml, мне его надо засунуть в Лотус. Пробовала через dxlImporter но результат нулевой, помогите пжалуйста! :)
 
R

Ronchik

Для: NicyGonzalez
а код как пробовали мона??
 
D

D!m@n

Еще можно использовать NotesDOMParser. Смотря что Вы с этми данными собираетесь потом делать.
 
N

NicyGonzalez

Для: NicyGonzalez
а код как пробовали мона??
Код из хелпа пробовала (пример к NotesDXLImporter) который должен содержимое xml файла положить в новую БД.

Еще можно использовать NotesDOMParser. Смотря что Вы с этми данными собираетесь потом делать.
Дело в том, что мне надо кучу данных из xml файлов засунуть в бд лотус, а другие данные из бд лотуса засунуть в xml. Это нужно для интеграции данных из лотуса и другой системы.
 
R

Ronchik

<!--QuoteBegin-NicyGonzalez+11:09:2007, 09:27 -->
<span class="vbquote">(NicyGonzalez @ 11:09:2007, 09:27 )</span><!--QuoteEBegin-->содержимое xml файла
[snapback]77764" rel="nofollow" target="_blank[/snapback]​
[/quote]
попоробуйте вставить не в саму базу а в документ в поле типа RichText
 
N

NicyGonzalez

Вот тут файлик с примером того что надо импортировать в лотус.
Это документ, в полях которого содержатся какие-то данные. Как бы их так лучше положить в лотус, чтобы потом можно было данные из полей xml файла положить в поля лотусового докумета. Во как :)

файл не отправляется (((
 
D

D!m@n

Вот тут файлик с примером того что надо импортировать в лотус.
Это документ, в полях которого содержатся какие-то данные. Как бы их так лучше положить в лотус, чтобы потом можно было данные из полей xml файла положить в поля лотусового докумета. Во как :)

файл не отправляется (((
Можно и просто цитату из файла привести... Первые строчек 20...
p.s. Что говорит NotesDXLImporter.Log? Это же самое главное ;)
 
N

NicyGonzalez

<?xml version="1.0" encoding="utf-8" ?>
- <ns1:mt_R3_1C_Message xmlns:ns1="http://com.pl/xi/moek">
- <Header>
<MessageNo>20070903-093619-489</MessageNo>
<LogFile>mtR31C_20070903-093619-489_NSI.csv</LogFile>
</Header>
- <Data>
- <Спр.Номенклатура DT="20070903094448" FT="NSI">
<ID>000000000070006481</ID>
<ПометкаУдаления>Ложь</ПометкаУдаления>
<Наименование>М-100-ДИ-1161-11-МП1-t10-050-1МПа-25-42</Наименование>
<Родитель>100101000</Родитель>
<НаименованиеПолное>Датчик давления Метран-100-ДИ-1161-11-МП1-t10-050-1МПа-25-42-М20-С с ГП</НаименованиеПолное>
<БазоваяЕдиницаИзмерения>PCE</БазоваяЕдиницаИзмерения>
<Услуга>Ложь</Услуга>
<ЕдиницаХраненияОстатков>000000000070006481PCE</ЕдиницаХраненияОстатков>
<ЕдиницаДляОтчетов>000000000070006481PCE</ЕдиницаДляОтчетов>
<ВестиУчетПоСериям>100101000</ВестиУчетПоСериям>
<СтавкаНДС>18</СтавкаНДС>
<Комментарий>20070831;KOLESNIKOVA;20070831;KOLESNIKOVA</Комментарий>
- </Data>

Ну вот как-то так. А когда запускаю на этот файл агент NotesDXLImporter говорит что этот агент должен выполняся в окне представления, хотя оттуда я его и запускаю
 
O

Omh

Это дело нужно зачитать через NotesDOMParser.
NotesDXLImporter тут не при чём.
 
D

D!m@n

<!--QuoteBegin-NicyGonzalez+11:09:2007, 11:49 -->
<span class="vbquote">(NicyGonzalez @ 11:09:2007, 11:49 )</span><!--QuoteEBegin-->Ну вот как-то так. А когда запускаю на этот файл агент NotesDXLImporter говорит что этот агент должен выполняся в окне представления, хотя оттуда я его и запускаю
[snapback]77789" rel="nofollow" target="_blank[/snapback]​
[/quote]Так ошибка только в этом? :)
Поставьте в свойствах агента Target - All documents in database...
 
D

D!m@n

NotesDOMParser просто в txt переводит а оттуда еще в бд надо засунуть
NotesDOMParser переводит оригинальную xml-ку в DOM (Document Object Model)-структуру.
А с ней уже Вы вольны делать, что захотите.

NotesDXLImporter'ом тоже можно, но xml-ка должна быть соответствующая.
 
N

NicyGonzalez

Так ошибка только в этом? :)
Поставьте в свойствах агента Target - All documents in database...
Нееееее, у меня же xml не в представлении лежит, а сам по себе, в папочке, агент лезет в папочку и ...

Вот такой агентик:
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim dbCopy As NotesDatabase
Set db = session.CurrentDatabase
filename$ = "import"

REM Open dxl file named after current database
Dim stream As NotesStream
Set stream = session.CreateStream
If Not stream.Open("c:\dxl\" & filename$ & ".xml") Then
Messagebox "Cannot open " & filename$,, "Error"
Exit Sub
End If
If stream.Bytes = 0 Then
Messagebox "File did not exist or was empty",, filename$
Exit Sub
End If

REM Create new database named current database + "Copy"
Set dbCopy = New NotesDatabase("", "")
Call dbCopy.Create("", filename$ & "Copy", True)

REM Import DXL into new database
Dim importer As NotesDXLImporter
Set importer = session.CreateDXLImporter(stream, dbCopy)
importer.ReplaceDBProperties = True
importer.ReplicaRequiredForReplaceOrUpdate = False
importer.ACLImportOption = DXLIMPORTOPTION_REPLACE_ELSE_IGNORE
importer.DesignImportOption = DXLIMPORTOPTION_CREATE
Call importer.Process
End Sub

Попробовала через NotesDOMParser, но что-то мне не нравится этот txt-шник (если честно, то я не представляю как из него теперь данные высосать в другие поля).

из такой вот хрени:
Attribute xmlns:ns1:
Text node:

Element node: Header has 0 Attributes
Text node:


Element node: MessageNo has 0 Attributes
Text node: 20070903-093619-489
MessageNo
Text node:

Element node: LogFile has 0 Attributes
Text node: mtR31C_20070903-093619-489_NSI.csv
LogFile
Text node:

Header
Text node:

Element node: Data has 0 Attributes
Text node:

Element node: Спр.Номенклатура has 2 Attributes
Attribute DT: 20070903094448
Attribute FT: NSI
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!