0
私は、それが接続されているCrystal Reportを反復してPDFにコピーし、の全体をのメールにクライアント。Crystalレポート内の特定のレコードに影響する
レポートの各IDに対して、IDでグループ化されたレコードのpdfを受信したい場合は、特定のIDの一部を省略します。レポートを小さなレポートに分割する方法や、最初に可能な場合はどこで開始するのかについてはわかりません。
私は、それが接続されているCrystal Reportを反復してPDFにコピーし、の全体をのメールにクライアント。Crystalレポート内の特定のレコードに影響する
レポートの各IDに対して、IDでグループ化されたレコードのpdfを受信したい場合は、特定のIDの一部を省略します。レポートを小さなレポートに分割する方法や、最初に可能な場合はどこで開始するのかについてはわかりません。
私は個々のユーザーのために各PDFファイルを作成しています。私はSendGrip APIを使用してメールを送信しています。
私はpage.Aspx内でこのコードを使用している - >ファイルaspx.cs。
//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 protected]" }, //
invoiceSubject,
invoiceBody,
invoicePath_email
);
}