Barcode和QR code在SSRS报表中很常见,下面分别介绍如何添加他们。
二维码QRcode
在SSRS的临时表中创建一个字段存储二维码,类型扩展 Bitmap
在相关类中添加如下代码,举例说明: xyzTableBuffer.QRCode =QRHelper::QRCode(“123456789”)public static container QRCode(Str _QRContents) { // QRContents is a formatted string provided as input to this function. // For example _QRContents= ?name='Customer name'&rr='RFCno'&tt='totalInvoiceAmount'; System.Drawing.Bitmap bm = null; try { var qrCodeEncoder = new Encoder(); bm = qrCodeEncoder.Encode(_QRContents); } catch (Exception::CLRError) { error(CLRInterop::getLastException().ToString()); } using (var stream = new System.IO.MemoryStream()) { bm.Save(stream, System.Drawing.Imaging.ImageFormat::Bmp); bm.Dispose(); return Binary::constructFromMemoryStream(stream).getContainer(); } }
在报表设计中添加图片,参数如下:
条码Barcode
在SSRS的临时表中创建一个字段存储二维码,类型扩展 BarCodeString
举例说明: xyzTableBuffer.BarCodeField= this.getBarcode(“123456789”)
在报表设计中使用字体 >BC C128 Narrow
public str getBarcode(str _barCodeText) { BarcodeCode128 barcode; barcode = Barcode::construct(BarcodeType::Code128); barcode.string(true, _barCodeText); barcode.encode(); return barcode.barcodeStr(); }