private int saveUserReport(int reportID, int reportLayoutStyleID, string userReportName, bool isSummaryOnly, int userId, bool isCustom, string associationNumber, int formatTypeID, bool isTransient, bool isTurnOffPageBreak, bool includeTitlePage) { ReportProjectDBEntities entities = new ReportProjectDBEntities(); ReportLayoutStyle reportLayoutStyle = entities.ReportLayoutStyle.FirstOrDefault(rl => rl.ReportLayoutStyleID == reportLayoutStyleID); UserReport ur = new UserReport(); ur.ReportLayoutStyleID = reportLayoutStyle.ReportLayoutStyleID; ur.FormatTypeID = formatTypeID; ur.ReportID = reportID; ur.UserID = userId; ur.CreatedByUserID = userId; ur.CreatedDate = DateTime.Now; ur.ModifiedDate = DateTime.Now; ur.UserReportName = userReportName; ur.ModifiedByUserID = userId; ur.IsCustom = isCustom; ur.ClientNumber = associationNumber; ur.IsSummaryOnly = isSummaryOnly; ur.IsTransient = isTransient; ur.IsTurnOffPageBreak = isTurnOffPageBreak; ur.IncludeTitlePage = includeTitlePage; entities.AddToUserReport(ur); entities.SaveChanges(); return(ur.UserReportID); }
public void UpdateUserReport(int userReportID, int reportLayoutStyleID, int formatTypeID, string userReportName, bool isSummaryOnly, List <RptParameter> parameters, bool isTurnOffPageBreak, bool includeTitlePage) { bool reportLayoutStyleChanged = false; ReportProjectDBEntities entities = new ReportProjectDBEntities(); ReportLayoutStyle reportLayoutStyle = entities.ReportLayoutStyle.FirstOrDefault(rs => rs.ReportLayoutStyleID == reportLayoutStyleID); UserReport ur = entities.UserReport.First(r => r.UserReportID == userReportID); ur.ModifiedDate = DateTime.Now; ur.UserReportName = userReportName; ur.IsSummaryOnly = isSummaryOnly; ur.IsTurnOffPageBreak = isTurnOffPageBreak; ur.IncludeTitlePage = includeTitlePage; ur.IsCustom = reportLayoutStyle.IsCustom; if (ur.ReportLayoutStyleID != reportLayoutStyleID) { reportLayoutStyleChanged = true; } ur.ReportLayoutStyle = reportLayoutStyle; ur.FormatType = entities.FormatType.FirstOrDefault(f => f.FormatTypeID == formatTypeID); entities.SaveChanges(); var userReportParameters = from urp in entities.UserReportParameter .Include("UserReport") where urp.UserReport.UserReportID == userReportID select urp; foreach (var val in userReportParameters) { val.ParameterValue = parameters.First(v => v.UserReportParameterID == val.UserReportParameterID).DefaultValue; } if (!ur.IsCustom) { deleteUserReportSummarizeFields(userReportID); deleteUserReportFields(userReportID); } entities.SaveChanges(); ReportDomainService domainService = new ReportDomainService(); if (reportLayoutStyleChanged) { domainService.RelocateSchedulesForUserReport(ur.UserReportID); } else { domainService.SynchronizeSchedulesForUserReport(ur.UserReportID); } }