我有两个存储客户约会信息的数据库:
AppointmentMaster 每个约会都有1条记录:
Customer Name ApptDate ApptID
------------------------------------------------
2554 Smith,Bob 20140301 100
2468 Jones, Grace 20140301 101
2795 Roberts, Sam 20140302 102
2408 Harris, Chuck 20140305 103
约会详细信息包含在约会时执行的每项操作的记录(有时没有,有时是几十次):
ApptID Operation OpDescription
------------------------------------------------
100 A10 Corrected the A10 unit.
100 IA Resolved issues with internal account.
100 C5 Brief consult with client.
101 A10C Replaced cage on A10 unit.
101 U1 Updated customer account.
103 C5 Brief consult with client.
我的客户需要一个每个约会包含1行的CSV文件。 CSV中的一个字段是在约会中执行的任何和所有操作代码的管道分隔列表。 CSV文件如下所示:
"2554", "Smith,Bob", "20140301", "A10|IA|C5|"
"2468", "Jones, Grace", "20140301", "A10C|U1|"
"2795", "Roberts, Sam", "20140302", ""
"2408", "Harris, Chuck", "20140305", "C5|"
我创建了一个正确显示字段的水晶报表,但是当我导出到CSV时,我看到的是这样的文件:
"2554", "Smith,Bob", "20140301", "C5|"
"2468", "Jones, Grace", "20140301", "U1|"
"2795", "Roberts, Sam", "20140302", ""
"2408", "Harris, Chuck", "20140305", "C5|"
即使所有操作都显示,也只会将最后一个操作导出为CSV。
如果我导出为PDF,Excel或Record Style,则该文件具有所有操作。不幸的是我需要一张CSV。我试图避免不得不做多个报告,如果可能的话,用脚本将它们拼接在一起;客户希望能够根据需要轻松运行和导出。
我创建了三个公式字段来初始化,更新和显示将操作连接在一起的共享变量。
我的报告按ApptID分组,如下所示:
群组标题#1 (已撤消)
{@InitializeOperations}:
WhilePrintingRecords;
shared StringVar Operations := "";
详情(已停止)
{@UpdateOperations}:
WhilePrintingRecords;
shared StringVar Operations := Operations + {AppointmentDetails.Operation} + "|";
组页脚#1
{AppointmentMaster.Customer}
{AppointmentMaster.Name}
{AppointmentMaster.ApptDate}
{@DisplayOperations}:
WhilePrintingRecords;
shared StringVar Operations;
我尝试在@DisplayOperations上使用evaluateAfter(@UpdateOperations)
代替WhilePrintingRecords
,甚至尝试从中删除任何Evalutation Time命令,但我仍然无法获得所需的效果在CSV文件中,尽管它在屏幕上看起来正确,并且我尝试导出它的其他方式。
感谢您提供的任何帮助。