影响水晶报告中的特定记录
本文关键字:记录 水晶 报告 影响 | 更新日期: 2023-09-27 18:18:00
我有一个函数,当激活时,遍历它所附加的Crystal Report,将其复制到pdf,然后将整个发送给客户端一次每个标识字段。
他们想要收到一个pdf的记录分组的ID,对于报告中的每个ID,省略一些特定的ID。但是,我不知道如何将报告分解成更小的报告,甚至不知道如果可能的话,从哪里开始。
我正在为个人用户创建每个Pdf,并保存到我的谷歌驱动程序,也使用SendGrip Api发送电子邮件。
-
我已经使用了这个代码内页。
//0. Here i am getting list users as an Object: OpsManagementController OM = new OpsManagementController(); //1. Getting Users List: var result = OM.UsersGetforInvoice(); //2. Creating folder for Invoices: string folderName = @"D:'Google Drive'MonthlyInvoices"; string fileName = ("Invoices_" + DateTime.Now.ToString("yyyy-MM-dd").ToString()); string pathString = System.IO.Path.Combine(folderName, fileName); System.IO.Directory.CreateDirectory(pathString); string folderNameEmail = @"D:'Google Drive'MonthlyInvoices'Email"; string fileNameEmail = ("Invoices_" + DateTime.Now.ToString("yyyy-MM-dd").ToString()); string pathStringEmail = System.IO.Path.Combine(folderNameEmail, fileNameEmail); System.IO.Directory.CreateDirectory(pathStringEmail); //3. Generating invoices by user name: for (int i = 0; i < result.UserDetail.Count; i++) { var userId = result.UserDetail[i].UserID; var userEmail = result.UserDetail[i].Email; var userName = result.UserDetail[i].FullName; userName = userName.Replace(@"C'O", "CO"); userName = userName.Replace(@"C/O", "CO"); // Directories for reports: var invoicePath = "D:/Google Drive/MonthlyInvoices/" + fileName + "/" + userId + " " + userName + ".pdf"; var invoicePath_email = "D:/Google Drive/MonthlyInvoices/Email/" + fileNameEmail + "/" + userId + " " + userName + ".pdf"; report2.SetParameterValue("UserID", result.UserDetail[i].UserID); report2.ExportToDisk(ExportFormatType.PortableDocFormat, invoicePath); // using sendgrip Api : EmailUtils.SendEmail_Att( new string[] { userEmail }, //TO : userEmail new string[] { "email@gmail.com" }, // invoiceSubject, invoiceBody, invoicePath_email ); }