示例#1
0
        private ExecutionMessage[] LoadRolesAndPrivileges(CRMUser user)
        {
            var Msgs = new ExecutionMessageCollection();

            try
            {
                DataSet Roles = null;
                new SecurityDataAdapter(_ConnectionString)
                .LoadRolesAndPrivileges(out Roles, user.UserID);

                // Load RoleNames
                user.RoleList = new System.Collections.ArrayList();
                foreach (DataRow row in Roles.Tables[0].Rows)
                {
                    user.RoleList.Add(row["RoleName"].ToString());
                }

                // Load Privilege Names
                user.PrivilegeList = new System.Collections.ArrayList();
                foreach (DataRow row in Roles.Tables[1].Rows)
                {
                    user.PrivilegeList.Add(row["PrivilegeName"].ToString());
                }
            }
            catch (Exception ex)
            {
                Msgs.Add(new ErrorMessage(ex.FormatMessage("LoadApplicationUsers")));
            }
            return(Msgs.ToArray());
        }
示例#2
0
        /// <summary>
        /// Converts the ExecutionMessageCollection into ExecMsg objects, then uses
        /// ExecMsgScope.RaiseMsg to raise the messages.
        /// </summary>
        /// <param name="msgs">List of EXS Messages.</param>
        protected IEnumerable <ExecMsg> LogEXSMessages(ExecutionMessageCollection msgs)
        {
            var Errors = ConvertEXSMessages(msgs);

            EXSLogger.Log(string.Join(Environment.NewLine, Errors.Select(E => E.ToString())),
                          "EXS ExecutionMessages",
                          Errors.Any(E => E.Severity >= ExecMsgSeverity.Problem) ? LogSeverity.Warning : LogSeverity.Verbose);
            return(Errors);
        }
示例#3
0
        /// <summary>
        /// Load the CRM users
        /// </summary>
        /// <param name="tableToFill">The data table to fill</param>
        /// <param name="applicationCode">The applicaton code to load by</param>
        public ExecutionMessage[] LoadApplicationUsers(out DataTable toFill, string applicationCode)
        {
            var Msgs = new ExecutionMessageCollection();

            toFill = null;
            try
            {
                new SecurityDataAdapter(this._ConnectionString)
                .LoadApplicationUsers(out toFill, applicationCode);
            }
            catch (Exception ex)
            {
                Msgs.Add(new ErrorMessage(ex.FormatMessage("LoadApplicationUsers")));
            }
            return(Msgs.ToArray());
        }
示例#4
0
        /// <summary>
        /// Convert errors into ExecMsg objects.
        /// </summary>
        /// <param name="msgs">List of EXS Messages.</param>
        private IEnumerable <ExecMsg> ConvertEXSMessages(ExecutionMessageCollection msgs)
        {
            var TR = new List <ExecMsg>();

            msgs.OfType <ExecutionMessage>().ToList()
            .ForEach((M) =>
            {
                if (M is ErrorMessage)
                {
                    TR.Add(new ExecMsg(ExecMsgSeverity.Error, SysMsgCode.ExecutionErrorMessageRaised, M.Text.Replace("PLEASE NOTE: ", "").Replace("[EXS Error] ", "")));
                }
                else
                {
                    TR.Add(new ExecMsg(ExecMsgSeverity.Warning, SysMsgCode.ExecutionWarningMessageRaised, M.Text.Replace("PLEASE NOTE: ", "")));
                }
            });
            return(TR);
        }
示例#5
0
        //public string FormatDataToXml(DataSet ds)
        //{
        //    string Xml = "";
        //    if ( ds.Tables.Count > 0 )
        //        if ( ds.Tables[0].Rows.Count > 0 )
        //            Xml = ds.GetXml();
        //    return Xml;
        //}
        #endregion

        #region RaiseEXSMessages
        /// <summary>
        /// Converts the ExecutionMessageCollection into ExecMsg objects, then uses
        /// ExecMsgScope.RaiseMsg to raise the messages.
        /// </summary>
        /// <param name="msgs">List of EXS Messages.</param>
        protected void RaiseEXSMessages(ExecutionMessageCollection msgs)
        {
            var Errors = LogEXSMessages(msgs);

            ExecMsgScope.RaiseMsg(Errors);
        }