public bool CreateReportPeriod(ReportPeriodListR item) { // Insert must not work if any article exists in this Budget. // return budrep.CreateReportPeriod(item); if (GetFinArticleCategory(item.BudgetID).Count() == 0) //If No BUDGET { return(budrep.CreateReportPeriod(item)); } else //IF BUDGET EXISTS { if (budrep.CreateReportPeriod(item)) //if success. { // IEnumerable <FinArticleCategoryR> fincats = GetFinArticleCategory(item.BudgetID); List <ReportPeriodR> ReportPeriods = new List <ReportPeriodR>(); foreach (FinArticleCategoryR fincat in fincats) { //insert article itself. ReportPeriodR repper = new ReportPeriodR(); repper.ReportPeriodID = item.ReportPeriodID; repper.FinArticleCatID = fincat.FinArticleCatID; repper.Amount = 0; ReportPeriods.Add(repper); } return(budrep.InsertArticleToReportPeriodR(ReportPeriods)); } return(false); } }