锐浪报表随手记

发布时间 2023-05-02 15:57:18作者: 不买南孚电池

//用代码设置参数的数据:
Report.ParameterByName("Parameter1").AsString = "...";
Report.ParameterByName("Parameter1").AsBoolean = true;
Report.ParameterByName("Parameter1").AsDateTime = ...;
Report.ParameterByName("Parameter1").AsFloat = 9.78;
Report.ParameterByName("Parameter1").AsInteger = 95;

//用代码设置部件框的数据:
Report.ControlByName("StaticBox1").AsStaticBox.Text = "...";
Report.ControlByName("MemoBox1").AsMemoBox.Text = "...";
Report.ControlByName("PictureBox1").AsPictureBox.LoadFromFile("%参数为图像文件的文件路径或URL%");
Report.ControlByName("Barcode1").AsBarcode.Text = "...";
Report.ControlByName("FreeGrid1").AsFreeGrid.CellAt(1,2).Text = "YourText";

//用代码设置字段的值:
Report.DetailGrid.Recordset.Edit(); //准备修改当前记录的值
//或者: Report.DetailGrid.Recordset.Append(); //增加新记录,通常在 FetchRecord 事件中调用
Report.FieldByName("Field1").AsString = "..."; //字符串要设置字段长度
Report.FieldByName("Field2").AsBoolean = true;
Report.FieldByName("Field3").AsDateTime = ...;
Report.FieldByName("Field4").AsFloat = 9.78;
Report.FieldByName("Field5").AsInteger = 95;
Report.DetailGrid.Recordset.Post();

//总记录数
Report.DetailGrid.Recordset.RecordCount
注:内容行脚本有坑,首行修改数据时要判断Report.DetailGrid.Recordset.RecordCount != i i=0为全局变量i++

//设置打印相关参数:
Report.Printer.PrinterName = ...;

Report.PrintAsDesignPaper = false; //如果需要报表生成的打印页面与当前打印机的页面设置保持一致,必须将此属性设置为false
Report.Printer.SheetPaperSize = 8; //指定版面的实际输出为A3纸张 ,如果打印页面是按A4产生的,就会按放大的方式输出在A3纸上
Report.Printer.PaperSize = ...;
Report.Printer.PaperName = ...;
Report.Printer.PaperWidth = ...;
Report.Printer.PaperLength = ...;
Report.Printer.PaperOrientation = ...;

Report.Printer.LeftMargin = ...;
Report.Printer.RightMargin = ...;
Report.Printer.TopMargin = ...;
Report.Printer.BottomMargin = ...;

Report.Printer.Copies = ...;
Report.Printer.Collate = ...;
Report.Printer.Duplex = ...;

//报表主对象的初始化脚本实现根据报表参数动态确定列的可见性(0/1)
Report.ColumnByName("Column1").Visible = 1;

//分栏设置
Report.DetailGrid.PageColumnCount=1;

//导出文件名测试(导出前脚本)
Sender.AbortShowOptionDlg=1; //关闭选项框直接导出
Sender.FileName="...";

//设置分组尾重复打印(分组前脚本)
Sender.Footer.RepeatOnPage=0

//报表系统参数
//计算机的当前日期时间
Report.SystemVarValue(1)
//总页数
Report.SystemVarValue(2)
//当前页号
Report.SystemVarValue(3)
//明细记录的当前记录号,从1开始计数
Report.SystemVarValue(4)
//明细网格的当前行号,从1开始计数
Report.SystemVarValue(8)
//明细记录的记录数
Report.SystemVarValue(19)
//分组序号,某个分组的序号,与分组项个数关联,序号从1开始
Report.SystemVarValue(20)
//分组数,某个分组产生的分组项个数(全程变量,全程统一值)
Report.SystemVarValue(21)
//分组项行号,在一个分组内重启序号,序号从1开始
Report.SystemVarValue(22)
//分组项行数,某个分组项包含的明细记录(行)数
Report.SystemVarValue(23)
//分组项页号
Report.SystemVarValue(24)
//分组项页数
Report.SystemVarValue(25)

//分组项行数(如指定分组1)
Report.SystemVarValue2(23,1)

//隐藏报表节点
Report.DetailGrid.ColumnContent.Visible=0


//字体尺寸设置
Report.ControlByName("MemoBox1").Font.Point = 6.5;