通过在报表事件中修改页栏数属性可以做到只输出一栏的效果,在 ExportBegin 事件中将页栏数属性设为1,在 ExportEnd 事件中将页栏数恢复为原来的值。以下为WEB报表 js 示例代码:
function OnExportBegin(OptionObject)
{
if (pOptionObject.ExportType == 1) //gretXLS
{
Report.DetailGrid.PageColumnCount = 1; //导出前取消报表多栏输出
var opt = pOptionObject.AsE2XLSOption;
opt.SameAsPrint = false;
opt.ExportPageHeaderFooter = false;
opt.ExportPageBreak = false;
}
}
function OnExportEnd(OptionObject)
{
Report.DetailGrid.PageColumnCount = 2; //导出后恢复报表的多栏设置,数字2应该替换为实际的页栏数值
}
也可以写报表脚本实现,在报表主对象的“导出前脚本”属性写脚本代码:
if (Sender.ExportType == 1) //gretXLS
{
Report.DetailGrid.PageColumnCount = 1; //导出前取消报表多栏输出
var opt = Sender.AsE2XLSOption;
opt.SameAsPrint = false;
opt.ExportPageHeaderFooter = false;
opt.ExportPageBreak = false;
}
在报表主对象的“页开始脚本”属性写脚本代码,因为没有“导出后脚本”属性,所以在“页开始脚本”属性上写:
Report.DetailGrid.PageColumnCount = 2; //导出后恢复报表的多栏设置,数字2应该替换为实际的页栏数值