当前位置:网站首页>C # realizes crystal report binding data and printing 3-qr code barcode

C # realizes crystal report binding data and printing 3-qr code barcode

2022-07-05 17:17:00 coder i++

C# Realize crystal report binding data and printing 3- QR code bar code

Display barcode in crystal report / QR code
1、 Convert numbers or characters into barcode or QR code
2、 Display the barcode or QR code in the report

Operation of QR code dll
zxing.net
Reference resources :https://blog.csdn.net/xiaoyong_net/article/details/51242190

Insert a picture
Reference resources :https://www.cnblogs.com/babyt/archive/2009/05/26/1490368.html

It is mainly about how to read local pictures and display them in the report .
If it is CR XI And above , You can use a simpler method , Reference resources : Another simple scheme for dynamic loading of crystal report pictures
The method of this paper is : How to dynamically load pictures in crystal reports ( Image file version and database version ) Image file version in .
This article applies to VS2003 And VS2005 Crystal report with its own version , Of course, the same applies to CR XI And above , Just a little annoying .
This article USES the VS2005 And the crystal report with its own version .

ad locum , I'll refine the proposition again :
There is already a complete report , Now the report needs to load a local disk image as logo. Statements in Logo Automatically change with the change of local pictures . Generally, we insert a pictureobject To insert disk pictures , But after inserting , The picture becomes a report , Cannot achieve the purpose of change .
1、 First of all, we have a complete crystal report application for a single table
2、 In order to connect our local pictures , stay dataset Create a new table in mylogo. Put two fields inside , Field type is System.Byte[] or System.SByte[]
Be careful , There are only System.Bytet and System.SByte, To enter by yourself .
This mylogo It's an intermediary , We read the local pictures into this table , Crystal report read the picture from this table .
3、 Add a sub report to the existing report , This is the data source mylogo Drag the two fields onto the sub report .
4、 The code looks like this

// Set data source information 
         DataSet1 ds1 = new DataSet1();
         OleDbDataAdapter da = new OleDbDataAdapter();
         String connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath ("~/app_data/test.mdb")+";";
         OleDbConnection cn = new OleDbConnection(connstr);
         // Get recordset , Be careful , The record set finally obtained needs to be consistent with xsd It's the same structure !
         da = new OleDbDataAdapter("SELECT EmployeeId1 as EmployeeId,EmployeeName1 as EmployeeName From Employee1", cn);
         da.Fill(ds1, "Employee");

         // Write the local image to the data set first 
         // Read the picture to stream, And converted to byte[]
         // picture 1
         FileStream fs1 = new FileStream(@"c:\1.bmp", FileMode.Open, FileAccess.Read);
         BinaryReader br1 = new BinaryReader(fs1);
         byte[] bt1 = br1.ReadBytes((int)fs1.Length);
         // picture 2
         FileStream fs2 = new FileStream(@"c:\a2.jpg", FileMode.Open, FileAccess.Read);
         BinaryReader br2 = new BinaryReader(fs2);
         byte[] bt2 = br2.ReadBytes((int)fs2.Length);

         fs1.Close();
         fs2.Close();
         // Write to ds1 in ( only 1 That's ok )
         ds1.myLogo.AddmyLogoRow(bt1, bt2);

         // The above is the data part , It has nothing to do with the report 
         //-----------------------------------------------------------
         // The following is the report 
         // Use the report object to load the report 

         string reportPath = Server.MapPath("~/app_data/crystalreport1.rpt");
         myReport.Load(reportPath);
         // Bind data set , Be careful , A report uses a data set .
         myReport.SetDataSource(ds1);
         CrystalReportViewer1.ReportSource = myReport;
原网站

版权声明
本文为[coder i++]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/186/202207051640340840.html