/// <summary>
        /// GetNewRefId
        /// </summary>
        /// <param name="projectId">projectId</param>
        /// <param name="companyId">companyId</param>
        /// <returns>RefID</returns>
        public int GetNewRefId(int projectId, int companyId)
        {
            int newRefId = 0;

            if (Table.Rows.Count == 0)
            {
                RevenueAddProjectRevenueGateway rr = new RevenueAddProjectRevenueGateway();
                rr.LoadAllByProjectId(projectId, companyId);

                foreach (RevenueAddTDS.ProjectRevenueRow row1 in (RevenueAddTDS.ProjectRevenueDataTable)rr.Table)
                {
                    if (newRefId < row1.RefID)
                    {
                        newRefId = row1.RefID;
                    }
                }
            }
            else
            {
                foreach (RevenueAddTDS.ProjectRevenueRow row2 in (RevenueAddTDS.ProjectRevenueDataTable)Table)
                {
                    if (newRefId < row2.RefID)
                    {
                        newRefId = row2.RefID;
                    }
                }

            }

            newRefId++;

            return newRefId;
        }
        // ////////////////////////////////////////////////////////////////////////
        // PRIVATE METHODS
        //
        /// <summary>
        /// Save all revenues to database (direct)
        /// </summary>
        /// <param name="companyId">companyId</param>        
        public void Save(int companyId)
        {
            RevenueAddTDS revenueChanges = (RevenueAddTDS)Data.GetChanges();

            if (revenueChanges.ProjectRevenue.Rows.Count > 0)
            {
                RevenueAddProjectRevenueGateway revenuesAddProjectRevenueGateway = new RevenueAddProjectRevenueGateway(revenueChanges);

                foreach (RevenueAddTDS.ProjectRevenueRow row in (RevenueAddTDS.ProjectRevenueDataTable)revenueChanges.ProjectRevenue)
                {
                    //Insert revenues
                    ProjectRevenue projectRevenue = new ProjectRevenue(null);
                    projectRevenue.InsertDirect(row.ProjectID, row.RefID, row.Date, row.Revenue, row.Comment, row.Deleted, row.COMPANY_ID);
                }
            }
        }
 // ////////////////////////////////////////////////////////////////////////
 // PUBLIC METHODS - DATASET
 //
 /// <summary>
 /// LoadAllByProjectId
 /// </summary>
 /// <param name="projectId">projectId</param>
 /// <param name="companyId">companyId</param>
 public void LoadAllByProjectId(int projectId, int companyId)
 {
     RevenueAddProjectRevenueGateway revenueAddProjectRevenueGateway = new RevenueAddProjectRevenueGateway(Data);
     revenueAddProjectRevenueGateway.LoadAllByProjectId(projectId, companyId);
 }