winform,水晶报表制作
1、安装最新的 SP:(SP 29 示例 – https://origin.softwaredownloads.sap.com/public/file/0020000001636412020)
2、新建CrystalReport.rpt报表
3、拖控件,新建参数字段,赋值
比如新建字段Sex,赋值: CrystalReport2 rp = new CrystalReport2(); rp.SetParameterValue("Sex", 值);//性别 crystalReportViewer1.ReportSource = rp;//绑定
4、报表条形二维码:
①、下载128字体;
②、添加公式字段名(可随意起,比如Code128);
③、右键字段名(Code128)——>编辑——>新建报表自定义函数(GetCode128B)——>语法改为Basic语法,然后调用函数(下面附有代码)——>赋值(注意将语法改为Crystal语法再赋值)
Function GetCode128B( inputData As string ) As String
Dim checksum as Number
Dim intPosition as Number
Dim ii as Number
Dim strSpChr as String
checksum = 104
for ii = 0 to Len(inputData)-1
intPosition = ii + 1
strSpChr = Mid(inputData, intPosition, 1)
if Asc(strSpChr) >= 32 then
checksum = checksum + (Asc(strSpChr) - 32) * intPosition
else
checksum = checksum + (Asc(strSpChr) + 64) * intPosition
end if
next
checksum = checksum mod 103
if checksum < 95 then
checksum = checksum + 32
else
checksum = checksum + 100
end if
GetCode128B ="ì" +inputData+chr(checksum) +"?"
End Function
赋值:选择自定义函数——>双击自定义函数——>赋值后——>将公式字段控件拖入报表中,点击拖入的控件右键设置对象格式——>字体选择Code 128即可。
报表中托的横杠运行后不显示:把打印时移动到节点的底部勾去掉即可。
详细资料部分需分为几组数据展示时,点击详细资料右键适应节即可。