コード例 #1
0
        /// <summary>
        /// Add new companies to an existing sub-campaign
        /// </summary>
        /// <param name="lstAcctIds"></param>
        /// <param name="SubCampaignId"></param>
        public static void AddCompaniesToSubCampaign(List<int> lstAcctIds, int SubCampaignId, string ListSource = "")
        {
            BrightPlatformEntities _efDbModel = new BrightPlatformEntities(UserSession.EntityConnection);
            int? _FinalListId = _efDbModel.final_lists.FirstOrDefault(i => i.sub_campaign_id == SubCampaignId).id;
            if (_FinalListId > 0)
            {
                foreach (int _AcctId in lstAcctIds)
                {
                    sub_campaign_account_lists _item = new sub_campaign_account_lists()
                    {
                        final_list_id = (int)_FinalListId,
                        account_id = _AcctId,
                        created_by = UserSession.CurrentUser.UserId,
                        created_on = DateTime.Now,
                        modified = false,
                        active = true,
                        priority = null,
                        locked = false,
                        locked_by = null,
                        locked_timestamp = null,
                        assigned_to = null,
                        list_source = ListSource,
                        modified_by = UserSession.CurrentUser.UserId,
                        modified_on = DateTime.Now
                    };

                    _efDbModel.sub_campaign_account_lists.AddObject(_item);
                }
                _efDbModel.SaveChanges();
            }
        }
コード例 #2
0
        /** /
        private void GetFindFilterString(string pFilterText)
        {
            m_CampaignListFindFilter = string.Empty;
            if (string.IsNullOrEmpty(pFilterText))
                return;

            List<string> _FilterString = new List<string>();
            for (int i = 0; i < gvCampaignList.VisibleColumns.Count; i++) {
                if (CampaignListMode == eCampaignListMode.CompaniesOnly) {
                    if (gvCampaignList.VisibleColumns[i].FieldName.Equals("id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_status") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("locked") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("locked_by") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("locked_timestamp") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("final_list_id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_latitude") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_longitude") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_address"))
                        continue;

                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Employees_Total_1") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Employees_Total_2") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Employees_Total_3") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Turnover_1") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Turnover_2") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Turnover_3") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Export_1") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Export_2") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Export_3") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Result_1") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Result_2") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Result_3") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Sales_Aborad_1") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Sales_Aborad_2") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Sales_Aborad_3") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Created") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Modified") ||
                        //gvCampaignList.VisibleColumns[i].FieldName.Equals("Company_Validated"))
                }
                else if (CampaignListMode == eCampaignListMode.CompaniesAndContacts) {
                    if (gvCampaignList.VisibleColumns[i].FieldName.Equals("id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_status") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("locked") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("locked_by") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("locked_timestamp") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("final_list_id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_latitude") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_longitude") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_latitude") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_longitude") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_address") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("contact_id") ||
                        gvCampaignList.VisibleColumns[i].FieldName.Equals("account_address"))
                        continue;
                }

                _FilterString.Add(string.Format("Contains(Lower({0}),'{1}')",
                    gvCampaignList.VisibleColumns[i].FieldName,
                    pFilterText.ToLowerInvariant()
                ));
            }

            if (_FilterString.Count > 0)
                m_CampaignListFindFilter = string.Join(" Or ", _FilterString.ToArray());
        }
        private void GetCheckedFilters()
        {
            m_CampaignListCheckedFilter = string.Empty;
            List<string> _FilterString = new List<string>();
            if (cbxFilterMeLastUser.Checked)
                _FilterString.Add(string.Format("Contains(Lower([Company_Last_User]),Lower('{0}'))",
                    UserSession.CurrentUser.UserFullName
                ));

            if (cbxShowOnlyNonFinished.Checked)
                _FilterString.Add("[Company_Status] != 'Finished'");

            if (_FilterString.Count > 0)
                m_CampaignListCheckedFilter = string.Join(" And ", _FilterString.ToArray());
        }
        private void GetSpecificColumnFilters()
        {
            m_CampaignListSpecificColumnFilter = string.Empty;
            if (string.IsNullOrEmpty(m_OperatorArgs.Value.ToString()))
                return;

            try {
                DevExpress.Data.Filtering.GroupOperator _Operators = (DevExpress.Data.Filtering.GroupOperator)m_OperatorArgs.Value;
                for (int i = 0; i < _Operators.Operands.Count; i++) {
                    string _Operator = _Operators.Operands[i].ToString();
                    if (_Operator.Contains("=") ||
                        _Operator.Contains(">") ||
                        _Operator.Contains(">=") ||
                        _Operator.Contains("<") ||
                        _Operator.Contains("<=") ||
                        _Operator.Contains("<>") ||
                        _Operator.Contains("Between") ||
                        _Operator.Contains("Is Null") ||
                        _Operator.Contains("Is Not Null")) {
                            string _operand_value = ((DevExpress.Data.Filtering.BinaryOperator)(_Operators.Operands[i])).RightOperand.ToString();
                            //if (ValidationUtility.IsCurrency(_Operators.Operands[i].ToString()))
                            if (ValidationUtility.IsCurrency(_operand_value.Replace("'", "")))
                                continue;
                    }

                    string _value = _Operators.Operands[i].ToString().Replace("'", "&quot;");
                    _Operators.Operands[i] = _value.Replace("[", "Lower(").Replace("]", ")");
                }
                m_CampaignListSpecificColumnFilter = _Operators.ToString().Replace("'L", "L").Replace(";'", ";");
                m_CampaignListSpecificColumnFilter = m_CampaignListSpecificColumnFilter.Replace("'", "").Replace("&quot;", "'");
            }
            catch {
                string _Val = m_OperatorArgs.Value.ToString();
                if (_Val.Contains("=") ||
                    _Val.Contains(">") ||
                    _Val.Contains(">=") ||
                    _Val.Contains("<") ||
                    _Val.Contains("<=") ||
                    _Val.Contains("<>") ||
                    _Val.Contains("Between") ||
                    _Val.Contains("Is Null") ||
                    _Val.Contains("Is Not Null")) {
                    string _operand_value = ((DevExpress.Data.Filtering.BinaryOperator)(m_OperatorArgs.Value)).RightOperand.ToString();
                    if (!ValidationUtility.IsCurrency(_operand_value.Replace("'", ""))) {
                        string _temp = _Val.Replace("'", "&quot;");
                        _Val = _temp.Replace("[", "Lower(").Replace("]", ")");
                    }
                    else
                        m_CampaignListSpecificColumnFilter = _Val;
                }
                else {
                    DevExpress.Data.Filtering.CriteriaOperatorCollection _operators = ((DevExpress.Data.Filtering.FunctionOperator)(((DevExpress.Data.Filtering.CriteriaOperator)(m_OperatorArgs.Value)))).Operands;
                    string _operand_value = _operators[1].ToString();
                    if (!ValidationUtility.IsCurrency(_operand_value.Replace("'", ""))) {
                        string _temp = _Val.Replace("'", "&quot;");
                        _Val = _temp.Replace("[", "Lower(").Replace("]", ")");
                    }
                    m_CampaignListSpecificColumnFilter = _Val; //.Replace("[", "Lower(").Replace("]", ")");
                }

                m_CampaignListSpecificColumnFilter = _Val.Replace("'", "").Replace("&quot;", "'");
            }

            //if (string.IsNullOrEmpty(gvCampaignList.FilterPanelText)) {
            //    m_CampaignListSpecificColumnFilter = string.Empty;
            //    return;
            //}

            //string[] _ColumnFilter = Regex.Split(gvCampaignList.FilterPanelText, " And ");
            //for (int i = 0; i < _ColumnFilter.Count(); i++) {
            //    if (_ColumnFilter[i].Contains(">") ||
            //        _ColumnFilter[i].Contains(">=") ||
            //        _ColumnFilter[i].Contains("<") ||
            //        _ColumnFilter[i].Contains("<=") ||
            //        _ColumnFilter[i].Contains("Between") ||
            //        _ColumnFilter[i].Contains("Is Null") ||
            //        _ColumnFilter[i].Contains("Is Not Null") ||
            //        _ColumnFilter[i].Contains("In"))
            //            continue;
            //}

            //m_CampaignListSpecificColumnFilter = string.Join(" A ", _ColumnFilter.ToArray());

            //if (!string.IsNullOrEmpty(m_CampaignListSpecificColumnFilter))
            //    m_CampaignListSpecificColumnFilter = m_CampaignListSpecificColumnFilter.Replace("[", "Lower(").Replace("]", ")");
        }
        /**/
        private void WorkOnSelectedAccount()
        {
            if (gvCampaignList.RowCount < 1)
                return;

            try {
                this.ReleaseCurrentCompanyLock();
                bool islocked = m_CurrentCampaignListAccount.locked;
                int? lockedBy = m_CurrentCampaignListAccount.locked_by;

                bool _State = islocked && lockedBy != UserSession.CurrentUser.UserId ? false : true;
                btnWorkOnCompany.Enabled = _State;
                btnRemoveCompany.Enabled = _State;
                if ((islocked && lockedBy == UserSession.CurrentUser.UserId) || !islocked) {
                    using (BrightPlatformEntities _efDbContext = new BrightPlatformEntities(UserSession.EntityConnection)) {
                        m_CurrentCampaignListAccount.locked = true;
                        m_CurrentCampaignListAccount.locked_by = UserSession.CurrentUser.UserId;
                        m_CurrentCampaignListAccount.locked_timestamp =_efDbContext.FIUpdateUserLock(
                            m_FinalListId,
                            m_AccountId,
                            m_CurrentCampaignListAccount.locked,
                            m_CurrentCampaignListAccount.locked_by
                        ).FirstOrDefault();
                    }

                    gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked", m_CurrentCampaignListAccount.locked);
                    gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked_by", m_CurrentCampaignListAccount.locked_by);
                    gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "Locked_By_User", UserSession.CurrentUser.UserFullName);
                    gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked_timestamp", m_CurrentCampaignListAccount.locked_timestamp);
                    this.LoadCampaignBooking(ObjectEventSender.btnWorkOnCompany_Click);
                }
                else {
                    gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked", true);
                    NotificationDialog.Warning("Bright Sales", "The selected company is currently edited by another user. Please try again later.");
                    m_CurrentCampaignListAccount = null;
                }
            }
            catch (Exception e) {
                m_EventBus.Notify(new FrmSalesConsultantEvents.Tracer() {
                    ErrorMessage = e.Message
                });
            }
        }
コード例 #3
0
        public bool CanWorkCompany()
        {
            if (gvCampaignList.RowCount < 1)
                return false;

            this.GetCurrentCampaignListAccount();
            this.ReleaseCurrentCompanyLock();
            //this.GetCurrentCampaignListAccount();
            if (m_CurrentCampaignListAccount == null)
                return false;

            bool islocked = m_CurrentCampaignListAccount.locked;
            int? lockedBy = m_CurrentCampaignListAccount.locked_by;
            if ((islocked && lockedBy == UserSession.CurrentUser.UserId) || !islocked)
            {
                var BPContext = new BrightPlatformEntities(UserSession.EntityConnection);
                m_CurrentCampaignListAccount.locked = true;
                m_CurrentCampaignListAccount.locked_by = UserSession.CurrentUser.UserId;
                m_CurrentCampaignListAccount.locked_timestamp =
                    BPContext.FIUpdateUserLock(
                                m_CurrentCampaignListAccount.final_list_id,
                                m_CurrentCampaignListAccount.account_id,
                                m_CurrentCampaignListAccount.locked,
                                m_CurrentCampaignListAccount.locked_by).FirstOrDefault();
                gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked", m_CurrentCampaignListAccount.locked);
                gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked_by", m_CurrentCampaignListAccount.locked_by);
                gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked_user", UserSession.CurrentUser.UserFullName);
                gvCampaignList.SetRowCellValue(gvCampaignList.FocusedRowHandle, "locked_timestamp", m_CurrentCampaignListAccount.locked_timestamp);
                return true;
            }
            else
            {
                NotificationDialog.Warning("Bright Sales", "The selected company is currently edited by another user. Please try again later.");
                m_CurrentCampaignListAccount = null;
                return false;
            }
        }
コード例 #4
0
        private void GetCurrentCampaignListAccount()
        {
            m_CurrentCampaignListAccount = null;
            this.GetSelectedCampaignListRowCommonlyUsedFields();
            using (BrightPlatformEntities _efDbModel = new BrightPlatformEntities(UserSession.EntityConnection)) {
                m_CurrentCampaignListAccount = _efDbModel.sub_campaign_account_lists.FirstOrDefault(p =>
                    p.account_id == m_AccountId &&
                    p.final_list_id == m_FinalListId &&
                    p.active == true
                );

                if (m_CurrentCampaignListAccount != null)
                    _efDbModel.Detach(m_CurrentCampaignListAccount);
            }
        }
コード例 #5
0
            private void GetReportPageBaseData()
            {
                m_IsEmpty = false;
                if (this.gridView1.DataRowCount == null || this.gridView1.DataRowCount < 1) {
                    BrightVision.Common.UI.NotificationDialog.Information("Reports", "No data to preview.");
                    m_IsEmpty = true;
                    return;
                }

                using (BrightPlatformEntities _efDbModel = new BrightPlatformEntities(m_DatabaseConnection) { CommandTimeout = 0 }) {
                    m_eftConfigData = _efDbModel.view_configuration.FirstOrDefault(i => i.id == m_ViewConfigId);
                    m_eftSubCampaign = _efDbModel.subcampaigns.FirstOrDefault(i => i.id == m_eftConfigData.subcampaign_id);
                    m_eftCampaign = _efDbModel.campaigns.FirstOrDefault(i => i.id == m_eftSubCampaign.campaign_id);
                    m_eftCustomer = _efDbModel.customers.FirstOrDefault(i => i.id == m_eftCampaign.customer_id);
                    _efDbModel.Detach(m_eftConfigData);
                    _efDbModel.Detach(m_eftSubCampaign);
                    _efDbModel.Detach(m_eftCampaign);
                    _efDbModel.Detach(m_eftCustomer);
                    _efDbModel.FIUpdateContactTitles();

                    /**
                     * if send email, get data for sub_campaign_account_list and final_list.
                     */
                    if (m_CallingEnvironment == eCallingEnvironment.BrightSales_SendEmail && m_AccountId > 0) {
                        m_eftFinalList = _efDbModel.final_lists.FirstOrDefault(i => i.sub_campaign_id == m_eftSubCampaign.id);
                        if (m_eftFinalList != null) {
                            _efDbModel.Detach(m_eftFinalList);
                            m_eftSubCampaignAccountList = _efDbModel.sub_campaign_account_lists.FirstOrDefault(i =>
                                i.final_list_id == m_eftFinalList.id &&
                                i.account_id == m_AccountId
                            );
                                _efDbModel.Detach(m_eftSubCampaignAccountList);
                        }
                    }
                }

                if (m_eftConfigData == null || m_eftConfigData.report_layout_config == null) {
                    WaitDialog.Close();
                    if (m_IsWebPortalCall)
                        throw new Exception("No layout available for the selected view.");

                    BrightVision.Common.UI.NotificationDialog.Information("Reports", "No layout available for this view.");
                    return;
                }

                if (string.IsNullOrEmpty(m_eftConfigData.report_data_config)) {
                    WaitDialog.Close();
                    if (m_IsWebPortalCall)
                        throw new Exception("No parameter layout has been set for this report.");

                    BrightVision.Common.UI.NotificationDialog.Information("Reports", "No parameter layout has been set for this report.");
                    return;
                }

                m_ReportPageTemplateProperty = SerializeUtility.DeserializeFromXml<TemplateProperty>(m_eftConfigData.report_data_config);
                m_ReportPageDataSet = this.GetReportDataSet(m_ReportPageTemplateProperty);

                /**
                 * if has sort info, then apply.
                 */
                #region Sorting Logic
                if (!string.IsNullOrEmpty(m_GridSortInfo)) {
                    string sortExpression = this.GetSortExpression(gridView1);
                    if (!string.IsNullOrEmpty(sortExpression)) {
                        string[] _SortInfoCollection = sortExpression.Split(';');

                        ReportDataSet _rdsTemporary = (ReportDataSet)m_ReportPageDataSet.Clone();
                        DataSet _dsSortedData = new DataSet();
                        Dictionary<string, List<string>> _TableSortRules = new Dictionary<string, List<string>>();

                        /**
                         * group all sort rules by table.
                         */
                        foreach (string _SortInfo in _SortInfoCollection) {
                            string[] _item = _SortInfo.Split('|');
                            string _FieldNameInfo = this.GetTableFieldName(_item[0].ToString());
                            if (!string.IsNullOrEmpty(_FieldNameInfo)) {
                                string[] _val = _FieldNameInfo.Split('|');
                                string _TableName = _val[0];
                                string _FieldName = _val[1];

                                /**
                                 * create new table sort rule.
                                 * else, update existing table sort rule.
                                 *
                                 * format:
                                 * <column_name1>|<sort_rule1>;<column_name2>|<sort_rule2>; and so on ...
                                 *
                                 * this would later be processed by splitting the sort rules by semicolon(;),
                                 * then split by bar(|).
                                 */
                                string _ColumnName = m_ReportPageDataSet.Tables[_TableName].Columns[_FieldName].ColumnName;
                                string _SortOrder = _item[1].ToString();
                                if (!_TableSortRules.ContainsKey(_TableName))
                                    _TableSortRules.Add(_TableName, new List<string>());

                                _TableSortRules[_TableName].Add(string.Format("{0} {1}", _ColumnName, _SortOrder));
                            }
                        }

                        /**
                         * set the sorting rules from KeyValuePair<string, List<string>> from _TableSortRules
                         * string = table name
                         * List<string> = sort rules
                         */
                        foreach (KeyValuePair<string, List<string>> _pair in _TableSortRules) {
                            DataTable _dtToSort = m_ReportPageDataSet.Tables[_pair.Key];
                            _dtToSort.DefaultView.Sort = string.Join(",", _TableSortRules[_pair.Key].ToArray());
                            _dsSortedData.Tables.Add(_dtToSort.DefaultView.ToTable());
                        }

                        /**
                         * copy all tables to the temporary report data set.
                         * then overwrite the original report data set with the
                         * temporary report dataset, since it contains the sorted
                         * tables that the report needs.
                         *
                         * order of the tables, according to relationship:
                         * 1. account
                         * 2. accountdynamic
                         * 3. accountstatic
                         * 4. contact
                         * 5. contactdynamic
                         * 6. contactstatic
                         * 7. clientinfo
                         * 8. customers
                         */
                        if (_dsSortedData.Tables["account"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["account"].Rows, "account");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["account"].Rows, "account");

                        if (_dsSortedData.Tables["accountdynamic"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["accountdynamic"].Rows, "accountdynamic");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["accountdynamic"].Rows, "accountdynamic");

                        if (_dsSortedData.Tables["accountstatic"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["accountstatic"].Rows, "accountstatic");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["accountstatic"].Rows, "accountstatic");

                        if (_dsSortedData.Tables["contact"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["contact"].Rows, "contact");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["contact"].Rows, "contact");

                        if (_dsSortedData.Tables["contactdynamic"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["contactdynamic"].Rows, "contactdynamic");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["contactdynamic"].Rows, "contactdynamic");

                        if (_dsSortedData.Tables["contactstatic"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["contactstatic"].Rows, "contactstatic");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["contactstatic"].Rows, "contactstatic");

                        if (_dsSortedData.Tables["clientinfo"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["clientinfo"].Rows, "clientinfo");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["clientinfo"].Rows, "clientinfo");

                        if (_dsSortedData.Tables["customers"] != null)
                            this.CopyTableRows(ref _rdsTemporary, _dsSortedData.Tables["customers"].Rows, "customers");
                        else
                            this.CopyTableRows(ref _rdsTemporary, m_ReportPageDataSet.Tables["customers"].Rows, "customers");

                        m_ReportPageDataSet = null;
                        m_ReportPageDataSet = _rdsTemporary;
                    }
                }
                #endregion
            }
コード例 #6
0
        /// <summary>
        /// Save updated subcampaign account lists
        /// </summary>
        public static void SaveFinalCallListAccounts(List<CTFinalCallListAccount> Items, int SubCampaignId)
        {
            bool _HasUpdates = false;
            sub_campaign_account_lists ItemToupdate = new sub_campaign_account_lists();
            BrightPlatformEntities objDbModel = new BrightPlatformEntities(UserSession.EntityConnection);
            foreach (CTFinalCallListAccount item in Items) {
                ItemToupdate = null;
                ItemToupdate = objDbModel.sub_campaign_account_lists.FirstOrDefault(i => i.id == item.id);
                if (ItemToupdate == null)
                    continue;

                ItemToupdate.active = item.active.Equals("Yes")? true: false;
                ItemToupdate.modified = item.modified.Equals("Yes") ? true : false;
                ItemToupdate.priority = item.priority;
                ItemToupdate.assigned_to = item.assigned_to;
                ItemToupdate.modified = true;
                ItemToupdate.modified_on = DateTime.Now;
                ItemToupdate.modified_by = UserSession.CurrentUser.UserId;
                objDbModel.sub_campaign_account_lists.ApplyCurrentValues(ItemToupdate);
                _HasUpdates = true;
            }

            if (_HasUpdates) {
                var item = objDbModel.final_lists.FirstOrDefault(i => i.sub_campaign_id == SubCampaignId);
                if (item != null) {
                    item.modified_by = UserSession.CurrentUser.UserId;
                    item.modified_on = DateTime.Now;
                }

                objDbModel.SaveChanges();
            }
        }