私はOpenEdge 10.2Aを使用しています。進行中のテンポラリテーブルにXMLファイルを読み込む-12gl
私のXMLファイルは一つだけTABLE_NAME記録を持っており、それが多くの分野がありますが、単純化されたバージョンである:それを読むためには
<Table_Name>
<Field_Name_1>Value_1</Field_Name_1>
<Field_Name_2>Value_2</Field_Name_2>
</Table_Name>
、私はコードを使用します。
DEFINE TEMP-TABLE Table_Name NO-UNDO
FIELD Field_Name_1 AS CHAR
FIELD Field_Name_2 AS CHAR
.
TEMP-TABLE Table_Name:READ-XML("File","C:\myFile.xml","empty",?,?,?,?).
DEF VAR i AS INT NO-UNDO.
FOR EACH Table_Name:
i=i + 1.
END.
DISP i.
結果として、(ゼロ)が表示されます。つまり、ファイル内のXMLレコードは読み取られません。
次のように私は私のXMLファイルを変更した場合:XMLファイルは、他のプログラムによって生成され、フォーマットが固定されているので
<My_XML_Records>
<Table_Name>
<Field_Name_1>Value_1</Field_Name_1>
<Field_Name_2>Value_2</Field_Name_2>
</Table_Name>
</My_XML_Records>
を同じコードが(1)
を表示し、そこにありますXMLファイルを正しく読み取るためのコードを作成する方法は? https://knowledgebase.progress.com/articles/Article/How-to-read-an-XML-in-a-temp-table-using-READ-XML
回避策:
これは既知のバグのようです
あなたはどのバージョンですか? 0レコードを取得するコードは私のために働きます。他に何か間違っているかもしれませんか? – Jensd
私たちのバージョンはOpenEdge 10.2Aビルド1185です。手続きエディタを使ってプロシージャを実行し、コードを変更せずにMy_XML_Recordsタグを追加すると、望ましい出力が得られます。どのバージョンを使用していますか? – aza
11.7非常に新しい... ...固定されている可能性があります – Jensd