コード例 #1
0
        Int64 ICRMCommunicationDataAccess.Add(CRMCommunicationEntity cRMCommunicationEntity, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Add(cRMCommunicationEntity, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = AddTran(cRMCommunicationEntity, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #2
0
        Int64 ICRMCommunicationDataAccess.Delete(CRMCommunicationEntity cRMCommunicationEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Delete(cRMCommunicationEntity, filterExpression, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = DeleteTran(cRMCommunicationEntity, filterExpression, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #3
0
        private Int64 Update(CRMCommunicationEntity cRMCommunicationEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.CRMCommunication_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);

                Database.AddInParameter(cmd, "@CommunicationID", DbType.Int64, cRMCommunicationEntity.CommunicationID);
                Database.AddInParameter(cmd, "@ProcessCategoryID", DbType.Int64, cRMCommunicationEntity.ProcessCategoryID);
                Database.AddInParameter(cmd, "@ReferenceID", DbType.Int64, cRMCommunicationEntity.ReferenceID);
                Database.AddInParameter(cmd, "@CommuicationDiscussionTypeID", DbType.Int64, cRMCommunicationEntity.CommuicationDiscussionTypeID);
                Database.AddInParameter(cmd, "@DiscussionDate", DbType.DateTime, cRMCommunicationEntity.DiscussionDate);
                Database.AddInParameter(cmd, "@CommunicateByEmployeeID", DbType.Int64, cRMCommunicationEntity.CommunicateByEmployeeID);
                Database.AddInParameter(cmd, "@Topics", DbType.String, cRMCommunicationEntity.Topics);
                Database.AddInParameter(cmd, "@Note", DbType.String, cRMCommunicationEntity.Note);
                Database.AddInParameter(cmd, "@IsFollowUpNeeded", DbType.Boolean, cRMCommunicationEntity.IsFollowUpNeeded);
                Database.AddInParameter(cmd, "@IsIWillCall", DbType.Boolean, cRMCommunicationEntity.IsIWillCall);
                Database.AddInParameter(cmd, "@IsField1", DbType.Boolean, cRMCommunicationEntity.IsField1);
                Database.AddInParameter(cmd, "@NextAction", DbType.String, cRMCommunicationEntity.NextAction);
                Database.AddInParameter(cmd, "@NextCommunicationDate", DbType.DateTime, cRMCommunicationEntity.NextCommunicationDate);
                Database.AddInParameter(cmd, "@CommunicationStatusID", DbType.Int64, cRMCommunicationEntity.CommunicationStatusID);
                Database.AddInParameter(cmd, "@CreatedByEmployeeID", DbType.Int64, cRMCommunicationEntity.CreatedByEmployeeID);
                Database.AddInParameter(cmd, "@IP", DbType.String, cRMCommunicationEntity.IP);
                Database.AddInParameter(cmd, "@CreateDate", DbType.DateTime, cRMCommunicationEntity.CreateDate);

                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("CRMCommunicationEntity already exists. Please specify another CRMCommunicationEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("CRMCommunicationEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("CRMCommunicationEntity already exists. Please specify another CRMCommunicationEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
コード例 #4
0
        private void SaveCRMCommunicationEntity()
        {
            if (IsValid)
            {
                try
                {
                    CRMCommunicationEntity cRMCommunicationEntity = BuildCRMCommunicationEntity();

                    Int64 result = -1;

                    if (cRMCommunicationEntity.IsNew)
                    {
                        result = FCCCRMCommunication.GetFacadeCreate().Add(cRMCommunicationEntity, DatabaseOperationType.Add, TransactionRequired.No);
                    }
                    else
                    {
                        String filterExpression = SqlExpressionBuilder.PrepareFilterExpression(CRMCommunicationEntity.FLD_NAME_CommunicationID, cRMCommunicationEntity.CommunicationID.ToString(), SQLMatchType.Equal);
                        result = FCCCRMCommunication.GetFacadeCreate().Update(cRMCommunicationEntity, filterExpression, DatabaseOperationType.Update, TransactionRequired.No);
                    }

                    if (result > 0)
                    {
                        _CommunicationID        = 0;
                        _CRMCommunicationEntity = new CRMCommunicationEntity();
                        PrepareInitialView();
                        BindCRMCommunicationList();

                        if (cRMCommunicationEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Communication Information has been added successfully.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Communication Information has been updated successfully.", false);
                        }
                    }
                    else
                    {
                        if (cRMCommunicationEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to add Communication Information.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to update Communication Information.", false);
                        }
                    }
                }
                catch (Exception ex)
                {
                    MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                }
            }
        }
コード例 #5
0
        protected void lvCRMCommunication_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            Int64 CommunicationID;

            Int64.TryParse(e.CommandArgument.ToString(), out CommunicationID);

            if (CommunicationID > 0)
            {
                if (string.Equals(e.CommandName, "EditItem"))
                {
                    _CommunicationID = CommunicationID;

                    PrepareEditView();

                    cpeEditor.Collapsed   = false;
                    cpeEditor.ClientState = "false";
                }
                else if (string.Equals(e.CommandName, "DeleteItem"))
                {
                    try
                    {
                        Int64 result = -1;

                        String fe = SqlExpressionBuilder.PrepareFilterExpression(CRMCommunicationEntity.FLD_NAME_CommunicationID, CommunicationID.ToString(), SQLMatchType.Equal);

                        CRMCommunicationEntity cRMCommunicationEntity = new CRMCommunicationEntity();


                        result = FCCCRMCommunication.GetFacadeCreate().Delete(cRMCommunicationEntity, fe, DatabaseOperationType.Delete, TransactionRequired.No);

                        if (result == 0)
                        {
                            _CommunicationID        = 0;
                            _CRMCommunicationEntity = new CRMCommunicationEntity();
                            PrepareInitialView();
                            BindCRMCommunicationList();

                            MiscUtil.ShowMessage(lblMessage, "Communication has been successfully deleted.", true);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to delete Communication.", true);
                        }
                    }
                    catch (Exception ex)
                    {
                        MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                    }
                }
            }
        }
コード例 #6
0
        private Int64 DeleteTran(CRMCommunicationEntity cRMCommunicationEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.CRMCommunication_SET";

            Database db = DatabaseFactory.CreateDatabase();


            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);


                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode >= 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
コード例 #7
0
        private void PrepareEditView()
        {
            CRMCommunicationEntity cRMCommunicationEntity = CurrentCRMCommunicationEntity;


            if (!cRMCommunicationEntity.IsNew)
            {
                if (ddlCommuicationDiscussionTypeID.Items.Count > 0 && cRMCommunicationEntity.CommuicationDiscussionTypeID != null)
                {
                    ddlCommuicationDiscussionTypeID.SelectedValue = cRMCommunicationEntity.CommuicationDiscussionTypeID.ToString();
                }

                if (ddlProcessCategoryID.Items.Count > 0 && cRMCommunicationEntity.ProcessCategoryID != null)
                {
                    ddlProcessCategoryID.SelectedValue = cRMCommunicationEntity.ProcessCategoryID.ToString();
                }

                BindReferenceByProcessCategory();

                if (ddlReferenceID.Items.Count > 0 && cRMCommunicationEntity.ReferenceID != null)
                {
                    ddlReferenceID.SelectedValue = cRMCommunicationEntity.ReferenceID.ToString();
                }

                txtDiscussionDate.Text = cRMCommunicationEntity.DiscussionDate.ToStringDefault();
                if (ddlCommunicateByEmployeeID.Items.Count > 0 && cRMCommunicationEntity.CommunicateByEmployeeID != null)
                {
                    ddlCommunicateByEmployeeID.SelectedValue = cRMCommunicationEntity.CommunicateByEmployeeID.ToString();
                }

                txtTopics.Text = cRMCommunicationEntity.Topics.ToString();
                txtNote.Text   = cRMCommunicationEntity.Note.ToString();
                chkIsFollowUpNeeded.Checked   = cRMCommunicationEntity.IsFollowUpNeeded;
                chkIsIWillCall.Checked        = cRMCommunicationEntity.IsIWillCall;
                chkIsField1.Checked           = cRMCommunicationEntity.IsField1;
                txtNextAction.Text            = cRMCommunicationEntity.NextAction.ToString();
                txtNextCommunicationDate.Text = cRMCommunicationEntity.NextCommunicationDate.ToStringDefault();
                if (ddlCommunicationStatusID.Items.Count > 0 && cRMCommunicationEntity.CommunicationStatusID != null)
                {
                    ddlCommunicationStatusID.SelectedValue = cRMCommunicationEntity.CommunicationStatusID.ToString();
                }

                btnSubmit.Text    = "Update";
                btnAddNew.Visible = true;
            }
        }
コード例 #8
0
        private Int64 Delete(CRMCommunicationEntity cRMCommunicationEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.CRMCommunication_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);


                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("CRMCommunicationEntity already exists. Please specify another CRMCommunicationEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("CRMCommunicationEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("CRMCommunicationEntity already exists. Please specify another CRMCommunicationEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
コード例 #9
0
 Int64 ICRMCommunicationFacade.Delete(CRMCommunicationEntity cRMCommunicationEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreateCRMCommunicationDataAccess().Delete(cRMCommunicationEntity, filterExpression, option, reqTran));
 }
コード例 #10
0
 Int64 ICRMCommunicationFacade.Add(CRMCommunicationEntity cRMCommunicationEntity, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreateCRMCommunicationDataAccess().Add(cRMCommunicationEntity, option, reqTran));
 }
コード例 #11
0
        private Int64 UpdateTran(CRMCommunicationEntity cRMCommunicationEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.CRMCommunication_SET";

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option, db);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);

                db.AddInParameter(cmd, "@CommunicationID", DbType.Int64, cRMCommunicationEntity.CommunicationID);
                db.AddInParameter(cmd, "@ProcessCategoryID", DbType.Int64, cRMCommunicationEntity.ProcessCategoryID);
                db.AddInParameter(cmd, "@ReferenceID", DbType.Int64, cRMCommunicationEntity.ReferenceID);
                db.AddInParameter(cmd, "@CommuicationDiscussionTypeID", DbType.Int64, cRMCommunicationEntity.CommuicationDiscussionTypeID);
                db.AddInParameter(cmd, "@DiscussionDate", DbType.DateTime, cRMCommunicationEntity.DiscussionDate);
                db.AddInParameter(cmd, "@CommunicateByEmployeeID", DbType.Int64, cRMCommunicationEntity.CommunicateByEmployeeID);
                db.AddInParameter(cmd, "@Topics", DbType.String, cRMCommunicationEntity.Topics);
                db.AddInParameter(cmd, "@Note", DbType.String, cRMCommunicationEntity.Note);
                db.AddInParameter(cmd, "@IsFollowUpNeeded", DbType.Boolean, cRMCommunicationEntity.IsFollowUpNeeded);
                db.AddInParameter(cmd, "@IsIWillCall", DbType.Boolean, cRMCommunicationEntity.IsIWillCall);
                db.AddInParameter(cmd, "@IsField1", DbType.Boolean, cRMCommunicationEntity.IsField1);
                db.AddInParameter(cmd, "@NextAction", DbType.String, cRMCommunicationEntity.NextAction);
                db.AddInParameter(cmd, "@NextCommunicationDate", DbType.DateTime, cRMCommunicationEntity.NextCommunicationDate);
                db.AddInParameter(cmd, "@CommunicationStatusID", DbType.Int64, cRMCommunicationEntity.CommunicationStatusID);
                db.AddInParameter(cmd, "@CreatedByEmployeeID", DbType.Int64, cRMCommunicationEntity.CreatedByEmployeeID);
                db.AddInParameter(cmd, "@IP", DbType.String, cRMCommunicationEntity.IP);
                db.AddInParameter(cmd, "@CreateDate", DbType.DateTime, cRMCommunicationEntity.CreateDate);

                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode > 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
コード例 #12
0
 protected void btnAddNew_Click(object sender, EventArgs e)
 {
     _CommunicationID        = 0;
     _CRMCommunicationEntity = new CRMCommunicationEntity();
     PrepareInitialView();
 }
コード例 #13
0
        private CRMCommunicationEntity BuildCRMCommunicationEntity()
        {
            CRMCommunicationEntity cRMCommunicationEntity = CurrentCRMCommunicationEntity;

            if (ddlCommuicationDiscussionTypeID.Items.Count > 0)
            {
                if (ddlCommuicationDiscussionTypeID.SelectedValue == "0")
                {
                }
                else
                {
                    cRMCommunicationEntity.CommuicationDiscussionTypeID = Int64.Parse(ddlCommuicationDiscussionTypeID.SelectedValue);
                }
            }

            if (txtDiscussionDate.Text.Trim().IsNotNullOrEmpty())
            {
                cRMCommunicationEntity.DiscussionDate = MiscUtil.ParseToDateTime(txtDiscussionDate.Text);
            }

            if (ddlCommunicateByEmployeeID.Items.Count > 0)
            {
                if (ddlCommunicateByEmployeeID.SelectedValue == "0")
                {
                }
                else
                {
                    cRMCommunicationEntity.CommunicateByEmployeeID = Int64.Parse(ddlCommunicateByEmployeeID.SelectedValue);
                }
            }

            if (ddlProcessCategoryID.Items.Count > 0)
            {
                if (ddlProcessCategoryID.SelectedValue == "0")
                {
                }
                else
                {
                    cRMCommunicationEntity.ProcessCategoryID = Int64.Parse(ddlProcessCategoryID.SelectedValue);
                }
            }

            if (ddlReferenceID.Items.Count > 0)
            {
                if (ddlReferenceID.SelectedValue == "0")
                {
                }
                else
                {
                    cRMCommunicationEntity.ReferenceID = Int64.Parse(ddlReferenceID.SelectedValue);
                }
            }

            cRMCommunicationEntity.Topics           = txtTopics.Text.Trim();
            cRMCommunicationEntity.Note             = txtNote.Text.Trim();
            cRMCommunicationEntity.IsFollowUpNeeded = chkIsFollowUpNeeded.Checked;

            cRMCommunicationEntity.IsIWillCall = chkIsIWillCall.Checked;

            cRMCommunicationEntity.IsField1 = chkIsField1.Checked;

            cRMCommunicationEntity.NextAction = txtNextAction.Text.Trim();
            if (txtNextCommunicationDate.Text.Trim().IsNotNullOrEmpty())
            {
                cRMCommunicationEntity.NextCommunicationDate = MiscUtil.ParseToDateTime(txtNextCommunicationDate.Text);
            }
            else
            {
                cRMCommunicationEntity.NextCommunicationDate = null;
            }

            if (ddlCommunicationStatusID.Items.Count > 0)
            {
                if (ddlCommunicationStatusID.SelectedValue == "0")
                {
                }
                else
                {
                    cRMCommunicationEntity.CommunicationStatusID = Int64.Parse(ddlCommunicationStatusID.SelectedValue);
                }
            }

            Int64 currentEmployeeID = MiscUtil.GetCurrentEmployeeByMemberID(CurrentMember);

            if (currentEmployeeID > 0)
            {
                cRMCommunicationEntity.CreatedByEmployeeID = currentEmployeeID;
            }

            cRMCommunicationEntity.IP         = MiscUtil.GetLocalIP();
            cRMCommunicationEntity.CreateDate = System.DateTime.Now;

            return(cRMCommunicationEntity);
        }