2014-02-17 1 views
2

Я новичок в openge, и я пытаюсь экспортировать изначально таблицу в файл xml. Моя конечная цель - экспортировать три таблицы в xml-файл.OpenEdge 102a экспортировать таблицу в xml-файл

Я пытался экспортировать в простой разделитель и работает. Я попытался

  • Для TXT

    OUTPUT TO c:\temp\file.txt. 
         FOR EACH cGrSIRVATNBR: 
         EXPORT DELIMITER ";" cGrSIRVATNBR. 
         END. 
        OUTPUT CLOSE. 
    
  • Для XML

    cGrSIRVATNBR:WRITE-XML("FILE","c:\temp\tt.xml", TRUE). 
    

Для XML-я вещь поддерживается только 102b. Вот почему я принимаю ошибку (Unable to understand after -- cGrSIRVATNBR:) при использовании WRITE-XML.

Буду признателен за любую помощь.

+0

Действительно ли cGrSIRVATNBR является именем таблицы? Или это переменная, содержащая имя таблицы? Если это имя таблицы, это один из самых странных я когда-либо видел. Если это имя таблицы и нет ошибок в примере EXPORT, это может означать, что в таблице нет данных. –

+0

@TomBascom ttGrSIRVATNBR - настоящее имя. Действительно странно, но имеет смысл в моей бизнес-логике :). У меня есть данные для экспорта. Я также изменил свой код на имя таблицы, но такое же дерьмо в другой день. –

+0

Фрагмент EXPORT должен работать нормально, если код выше - это то, что вы на самом деле выполняете, и в таблице с этим именем есть данные. FWIW Я обычно включаю имена файлов в кавычки, и я бы использовал NO-LOCK для FOR EACH - но синтаксически это не имело бы значения. –

ответ

3

Это прекрасно работает для меня:

define temp-table ttCust no-undo like customer. 

for each customer no-lock where custNum = 1: 
    create ttCust. 
    buffer-copy customer to ttCust. 
end. 

temp-table ttCust:write-xml("file", "cust.xml", true). 

Вы не можете напрямую писать таблицы БД в XML. Сначала нужно скопировать записи, которые вы хотите в временную таблицу.

+0

У меня ошибка с сервера «Вы не можете определить TEMP-TABLE внутри внутренней процедуры». Вы используете версию 102a в этом заявлении? –

+0

Наконец я создам свой xml через код и экспортирую в файл. Thx много для вашего времени. –

+0

В образце, который я предоставил, нет внутренней процедуры. –

 Смежные вопросы

  • Нет связанных вопросов^_^