【发布时间】:2017-05-30 15:45:42
【问题描述】:
我有一个 XML 文件,我必须将其转换为 CSV 文件,然后附加到 Work-Object 中?
我已经尝试过编写一个活动并使用 pxConvertResultsToCSV 活动,然后尝试使用链接对象方法附加文件,但所有结果都将排成一行。
【问题讨论】:
标签: pega
我有一个 XML 文件,我必须将其转换为 CSV 文件,然后附加到 Work-Object 中?
我已经尝试过编写一个活动并使用 pxConvertResultsToCSV 活动,然后尝试使用链接对象方法附加文件,但所有结果都将排成一行。
【问题讨论】:
标签: pega
需要遵循的几个步骤...
1) 使用活动方法Apply-Parse-XML 解析XML。
您将在PageList 中获取 XML 数据。
2) 现在创建 Rule-Obj-Html 规则。在代码部分中创建表
<table border="1">
<pega:forEach name="YourPageListPage.PageList"> // --> the pagelist in which got the info from xml.
<tr>
<TD>
<pega:reference name="$THIS.COLUMN1"/> // --> property name
</TD>
<TD>
<pega:reference name="$THIS.COLUMN2"/> // --> property name 2
</TD>
</tr>
</pega:forEach>
</table>
3) 现在使用Property-Set-HTML 在某个参数变量中获取您的 html 规则流(例如 param.pyFileData)
同时创建一个局部变量为 strFileData。
使用Java 步骤解码流。并使用此代码。
String atr = (String)tools.getParameterPage().getParameterValue("pyFileData");
byte[] byteArray=(byte[])atr.getBytes();
//encode the byte array into Base64.
strFileData = Base64Util.encodeToString(byteArray); // strFileData is local variable mentioned in activity.
4) 现在创建一个类Data-WorkAttach-File 的页面并在该页面上设置以下属性。
.pxRefObjectKey --> pzinskey of work object
.pxAttachKey --> any key, maybe current date time
.pyAttachStream --> your stream which you got from 3rd step (local.strFileData )
.pyNote --> any note
.pxAttachName --> "filename.csv"
我想我已经知道了。。
使用Obj-Save保存此页面
5) 使用Link-Objects 将附件页面附加到工作对象。
就是这样。
【讨论】: