Beispiel #1
0
        public WorkflowStep(Server.Application application, String stepName, String stepDescription)
        {
            Name = stepName;

            Description = stepDescription;

            if (application != null)
            {
                CreateAccountInfo = new Data.AuthorityAccountStamp(application.Session);

                userDisplayName = application.Session.UserDisplayName;
            }

            return;
        }
        } // MapDataFields (System.Data.DataRow currentRow)

        public override Boolean Save()
        {
            Boolean success = false;

            StringBuilder sqlStatement = new StringBuilder();

            Boolean usingTransaction = true;


            try {
                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }

                modifiedAccountInfo = new Data.AuthorityAccountStamp(application.Session);


                if (application.EnvironmentDatabase.OpenTransactions == 0)
                {
                    usingTransaction = true;

                    base.application.EnvironmentDatabase.BeginTransaction();
                }

                // DETERMINE IF THERE ARE ANY OVERLAPPING SEGMENTS

                List <EntityContactInformation> overlappingContactInformationes = application.EntityContactInformationsGetByEntityTypeOverlap(entityId, contactType, contactSequence, effectiveDate, terminationDate, Id);

                if (overlappingContactInformationes.Count > 1)
                {
                    application.TraceWriteLineError(application.TraceSwitchGeneral, "[EntityContactInformation.Save] " + "Entity Id: " + entityId.ToString() + ", Contact Information Type: " + contactType.ToString() + ", Effective Date: " + effectiveDate.ToString("MM/dd/yyyy") + ", Termination Date: " + terminationDate.ToString("MM/dd/yyyy"));

                    throw new ApplicationException("Unable to save due to multiple overlapping contact information.");
                }

                if (overlappingContactInformationes.Count == 1)
                {
                    // TERMINATE OVERLAPPAING SEGMENTS IF POSSIBLE, TERMINATION DATE IS EFFECTIVE DATE -1

                    success = overlappingContactInformationes[0].Terminate(effectiveDate.AddDays(-1));

                    if (!success)
                    {
                        application.TraceWriteLineError(application.TraceSwitchGeneral, "[EntityContactInformation.Save] " + "Entity Id: " + entityId.ToString() + ", Contact Information Type: " + contactType.ToString() + ", Effective Date: " + effectiveDate.ToString("MM/dd/yyyy") + ", Termination Date: " + terminationDate.ToString("MM/dd/yyyy"));

                        throw new ApplicationException("Permission Denied. Unable to terminate previous overlapping contact information.");
                    }
                }


                // ATTEMPT TO SAVE NEW OR UPDATE EXISTING ENTITY ADDRESS

                ModifiedAccountInfo = new Mercury.Server.Data.AuthorityAccountStamp(application);


                System.Data.SqlClient.SqlCommand sqlCommand = application.EnvironmentDatabase.CreateSqlCommand("dal.EntityContactInformation_InsertUpdate");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;


                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@entityContactInformationId", System.Data.SqlDbType.BigInt));

                sqlCommand.Parameters["@entityContactInformationId"].Value = Id;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@entityId", System.Data.SqlDbType.BigInt));

                sqlCommand.Parameters["@entityId"].Value = entityId;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@contactType", System.Data.SqlDbType.Int));

                sqlCommand.Parameters["@contactType"].Value = contactType;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@contactSequence", System.Data.SqlDbType.Int));

                sqlCommand.Parameters["@contactSequence"].Value = contactSequence;


                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@contactNumber", System.Data.SqlDbType.VarChar, Server.Data.DataTypeConstants.ContactNumber));

                sqlCommand.Parameters["@contactNumber"].Value = number;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@contactExtension", System.Data.SqlDbType.VarChar, Server.Data.DataTypeConstants.ContactExtension));

                sqlCommand.Parameters["@contactExtension"].Value = numberExtension;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@contactEmail", System.Data.SqlDbType.VarChar, Server.Data.DataTypeConstants.ContactEmail));

                sqlCommand.Parameters["@contactEmail"].Value = email;


                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@effectiveDate", System.Data.SqlDbType.DateTime));

                sqlCommand.Parameters["@effectiveDate"].Value = effectiveDate;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@terminationDate", System.Data.SqlDbType.DateTime));

                sqlCommand.Parameters["@terminationDate"].Value = terminationDate;


                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@modifiedAuthorityName", System.Data.SqlDbType.VarChar, 60));

                sqlCommand.Parameters["@modifiedAuthorityName"].Value = modifiedAccountInfo.SecurityAuthorityName;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@modifiedAccountId", System.Data.SqlDbType.VarChar, 60));

                sqlCommand.Parameters["@modifiedAccountId"].Value = modifiedAccountInfo.UserAccountId;

                sqlCommand.Parameters.Add(new System.Data.SqlClient.SqlParameter("@modifiedAccountName", System.Data.SqlDbType.VarChar, 60));

                sqlCommand.Parameters["@modifiedAccountName"].Value = modifiedAccountInfo.UserAccountName;


                if (sqlCommand.ExecuteNonQuery() != 1)
                {
                    if (application.EnvironmentDatabase.LastException == null)
                    {
                        throw new ApplicationException("Permission Denied. Unable to Save Contact Information.");
                    }

                    base.application.SetLastException(base.application.EnvironmentDatabase.LastException);

                    throw base.application.EnvironmentDatabase.LastException;
                }

                SetIdentity();

                success = true;

                if (usingTransaction)
                {
                    base.application.EnvironmentDatabase.CommitTransaction();
                }
            }

            catch (Exception applicationException) {
                success = false;

                if (usingTransaction)
                {
                    base.application.EnvironmentDatabase.RollbackTransaction();
                }

                base.application.SetLastException(applicationException);
            }

            return(success);
        }
        public override Boolean Save()
        {
            Boolean success = false;

            StringBuilder sqlStatement = new StringBuilder();


            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.ReportingServerManage))
                {
                    throw new ApplicationException("PermissionDenied");
                }

                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }


                modifiedAccountInfo = new Data.AuthorityAccountStamp(application.Session);


                application.EnvironmentDatabase.BeginTransaction();

                sqlStatement = new StringBuilder();

                sqlStatement.Append("EXEC dbo.ReportingServer_InsertUpdate ");


                sqlStatement.Append(Id.ToString() + ", ");

                sqlStatement.Append("'" + NameSql + "', ");

                sqlStatement.Append("'" + DescriptionSql + "', ");


                sqlStatement.Append("'" + assemblyPath.Replace("'", "''") + "', ");

                sqlStatement.Append("'" + assemblyName.Replace("'", "''") + "', ");

                sqlStatement.Append("'" + assemblyClassName.Replace("'", "''") + "', ");


                // TODO: SAVE CONFIGURATION XML


                sqlStatement.Append("'" + WebServiceHostConfigurationSql + "', ");

                sqlStatement.Append("'" + ExtendedPropertiesSql + "', ");


                sqlStatement.Append(Convert.ToInt32(Enabled).ToString() + ", ");

                sqlStatement.Append(Convert.ToInt32(Visible).ToString() + ", ");


                sqlStatement.Append(modifiedAccountInfo.AccountInfoSql);


                success = application.EnvironmentDatabase.ExecuteSqlStatement(sqlStatement.ToString(), 0);

                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }


                SetIdentity();


                success = true;

                application.EnvironmentDatabase.CommitTransaction();
            }

            catch (Exception applicationException) {
                success = false;

                application.EnvironmentDatabase.RollbackTransaction();

                application.SetLastException(applicationException);
            }

            return(success);
        }
Beispiel #4
0
        public override Boolean Save()
        {
            Boolean success = false;

            StringBuilder sqlStatement = new StringBuilder();


            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.WorkflowManage))
                {
                    throw new ApplicationException("Permission Denied");
                }

                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }


                modifiedAccountInfo = new Data.AuthorityAccountStamp(application.Session);


                application.EnvironmentDatabase.BeginTransaction();

                sqlStatement = new StringBuilder();

                sqlStatement.Append("EXEC dbo.Workflow_InsertUpdate ");


                sqlStatement.Append(Id.ToString() + ", ");

                sqlStatement.Append("'" + NameSql + "', ");

                sqlStatement.Append("'" + DescriptionSql + "', ");

                sqlStatement.Append(((Int32)framework).ToString() + ", ");

                sqlStatement.Append(((Int32)entityType).ToString() + ", ");

                sqlStatement.Append("'" + actionVerb.Replace("'", "''") + "', ");

                sqlStatement.Append("'" + assemblyPath.Replace("'", "''") + "', ");

                sqlStatement.Append("'" + assemblyName.Replace("'", "''") + "', ");

                sqlStatement.Append("'" + assemblyClassName.Replace("'", "''") + "', ");


                if (workflowParameters == null)
                {
                    workflowParameters = new Dictionary <string, Mercury.Server.Core.Action.ActionParameter> ();
                }

                Core.Action.Action action = new Mercury.Server.Core.Action.Action(application);

                action.ActionParameters = workflowParameters;

                sqlStatement.Append("'" + action.ActionParametersXmlSqlParsedString + "', ");

                sqlStatement.Append("'" + ExtendedPropertiesSql + "', ");


                sqlStatement.Append(Convert.ToInt32(Enabled).ToString() + ", ");

                sqlStatement.Append(Convert.ToInt32(Visible).ToString() + ", ");


                sqlStatement.Append(modifiedAccountInfo.AccountInfoSql);


                success = application.EnvironmentDatabase.ExecuteSqlStatement(sqlStatement.ToString(), 0);

                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }

                SetIdentity();

                if (success)
                {
                    success &= application.EnvironmentDatabase.ExecuteSqlStatement("DELETE FROM WorkflowPermission WHERE WorkflowId = " + Id.ToString(), 0);

                    if (permissions == null)
                    {
                        permissions = new List <WorkflowPermission> ();
                    }

                    foreach (WorkflowPermission currentPermission in permissions)
                    {
                        currentPermission.WorkflowId = Id;

                        currentPermission.ModifiedAccountInfo = modifiedAccountInfo;

                        currentPermission.Application = application;

                        success &= currentPermission.Save();

                        if (!success)
                        {
                            throw new ApplicationException("Unable to save Workflow Permission");
                        }
                    }
                }

                success = true;

                application.EnvironmentDatabase.CommitTransaction();
            }

            catch (Exception applicationException) {
                success = false;

                application.EnvironmentDatabase.RollbackTransaction();

                application.SetLastException(applicationException);
            }

            return(success);
        }
        public override Boolean Save()
        {
            Boolean success = false;

            String childIds = String.Empty;


            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.DataExplorerManage))
                {
                    throw new ApplicationException("PermissionDenied");
                }


                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }


                ModifiedAccountInfo = new Data.AuthorityAccountStamp(application);

                application.EnvironmentDatabase.BeginTransaction();


                System.Data.IDbCommand sqlCommand = application.EnvironmentDatabase.CreateCommand("DataExplorer_InsertUpdate");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@dataExplorerId", Id);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@dataExplorerName", Name, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@dataExplorerDescription", Description, Server.Data.DataTypeConstants.Description);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@isPublic", IsPublic);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@isReadOnly", IsReadOnly);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@ownerSecurityAuthorityId", OwnerSecurityAuthorityId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@ownerUserAccountId", OwnerUserAccountId, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@ownerUserAccountName", OwnerUserAccountName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@ownerUserDisplayName", OwnerUserDisplayName, Server.Data.DataTypeConstants.Name);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@enabled", Enabled);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@visible", Visible);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@extendedProperties", ExtendedPropertiesXml);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityName", ModifiedAccountInfo.SecurityAuthorityName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountId", ModifiedAccountInfo.UserAccountId, Server.Data.DataTypeConstants.UserAccountId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountName", ModifiedAccountInfo.UserAccountName, Server.Data.DataTypeConstants.Name);


                success = (sqlCommand.ExecuteNonQuery() > 0);


                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }

                SetIdentity();

                success = application.EnvironmentDatabase.ExecuteSqlStatement("DELETE FROM DataExplorerNode WHERE DataExplorerId = " + Id.ToString());

                success = RootNode.Save();

                if (!success)
                {
                    throw new ApplicationException("Unable to save Nodes.");
                }

                application.EnvironmentDatabase.CommitTransaction();

                success = true;
            }

            catch (Exception applicationException) {
                success = false;

                application.EnvironmentDatabase.RollbackTransaction();

                application.SetLastException(applicationException);
            }

            return(success);
        }
        public override Boolean Save()
        {
            Boolean success = false;

            StringBuilder sqlStatement = new StringBuilder();

            String childIds = String.Empty;


            if (!application.HasEnvironmentPermission(Server.EnterprisePermissions.EnvironmentTypeManage))
            {
                throw new ApplicationException("Permission Denied.");
            }


            modifiedAccountInfo = new Data.AuthorityAccountStamp(application.Session);

            try {
                application.EnvironmentDatabase.BeginTransaction();

                sqlStatement = new StringBuilder();

                sqlStatement.Append("EXEC dbo.EnvironmentType_InsertUpdate ");

                sqlStatement.Append(Id.ToString() + ", ");

                sqlStatement.Append("'" + NameSql + "', ");

                sqlStatement.Append("'" + DescriptionSql + "', ");


                sqlStatement.Append(Convert.ToInt32(Enabled).ToString() + ", ");

                sqlStatement.Append(Convert.ToInt32(Visible).ToString() + ", ");


                sqlStatement.Append(modifiedAccountInfo.AccountInfoSql);


                success = application.EnvironmentDatabase.ExecuteSqlStatement(sqlStatement.ToString(), 0);

                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }


                if (id == 0)   // RESET DOCUMENT ID CRITERIA

                {
                    Object identity = application.EnvironmentDatabase.ExecuteScalar("SELECT @@IDENTITY").ToString();

                    if (!Int64.TryParse((String)identity, out id))
                    {
                        throw new ApplicationException("Unable to retreive unique id.");
                    }
                }

                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }


                success = true;

                application.EnvironmentDatabase.CommitTransaction();
            }

            catch (Exception applicationException) {
                success = false;

                application.EnvironmentDatabase.RollbackTransaction();

                application.SetLastException(applicationException);
            }

            return(success);
        }
        public override Boolean Save()
        {
            Boolean success = false;

            String childIds = String.Empty;


            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.CareMeasureManage))
                {
                    throw new ApplicationException("PermissionDenied");
                }

                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }


                ModifiedAccountInfo = new Data.AuthorityAccountStamp(application);

                application.EnvironmentDatabase.BeginTransaction();


                careMeasureDomainId = application.CoreObjectGetIdByName("CareMeasureDomain", careMeasureDomainName);

                if (careMeasureDomainId == 0)
                {
                    CareMeasureDomain careMeasureDomain = new CareMeasureDomain(application);

                    careMeasureDomain.Name = careMeasureDomainName;

                    careMeasureDomain.Description = careMeasureDomainName;

                    careMeasureDomain.Enabled = true;

                    careMeasureDomain.Visible = true;

                    careMeasureDomain.Save();

                    careMeasureDomainId = careMeasureDomain.Id;
                }

                careMeasureClassId = application.CareMeasureClassGetIdByName(careMeasureDomainId, careMeasureClassName);

                if (careMeasureClassId == 0)
                {
                    CareMeasureClass careMeasureClass = new CareMeasureClass(application);

                    careMeasureClass.Name = careMeasureClassName;

                    careMeasureClass.Description = careMeasureClassName;

                    careMeasureClass.CareMeasureDomainId = careMeasureDomainId;

                    careMeasureClass.Enabled = true;

                    careMeasureClass.Visible = true;

                    careMeasureClass.Save();

                    careMeasureClassId = careMeasureClass.Id;
                }



                System.Data.IDbCommand sqlCommand = application.EnvironmentDatabase.CreateCommand("CareMeasure_InsertUpdate");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureId", Id);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureName", Name, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureDescription", Description, Server.Data.DataTypeConstants.Description);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureClassId", careMeasureClassId);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@enabled", Enabled);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@visible", Visible);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityName", ModifiedAccountInfo.SecurityAuthorityName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountId", ModifiedAccountInfo.UserAccountId, Server.Data.DataTypeConstants.UserAccountId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountName", ModifiedAccountInfo.UserAccountName, Server.Data.DataTypeConstants.Name);


                success = (sqlCommand.ExecuteNonQuery() > 0);


                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }

                SetIdentity();


                foreach (CareMeasureComponent currentComponent in components)
                {
                    if (currentComponent.Id != 0)
                    {
                        childIds += currentComponent.Id.ToString() + ", ";
                    }
                }

                if (!String.IsNullOrWhiteSpace(childIds))    // DELETE ALL REMOVED CHILD IDS FROM DATABASE

                {
                    childIds += "0";

                    String deleteStatement = "DELETE FROM dbo.CareMeasureComponent WHERE CareMeasureId = " + Id.ToString() + " AND CareMeasureComponentId NOT IN (" + childIds + ")";

                    success = application.EnvironmentDatabase.ExecuteSqlStatement(deleteStatement);

                    if (!success)
                    {
                        throw new ApplicationException("Unable to propertly delete child Components from database.");
                    }
                }

                foreach (CareMeasureComponent currentComponent in components)
                {
                    currentComponent.Application = application;

                    currentComponent.CareMeasureId = id;

                    success = currentComponent.Save();

                    if (!success)
                    {
                        throw new ApplicationException("Unable to save Measure Component.");
                    }
                }


                application.EnvironmentDatabase.CommitTransaction();

                success = true;
            }

            catch (Exception applicationException) {
                success = false;

                application.EnvironmentDatabase.RollbackTransaction();

                application.SetLastException(applicationException);
            }

            return(success);
        }
Beispiel #8
0
        public override Boolean Save()
        {
            Boolean success = false;

            Boolean useTransactions = (application.EnvironmentDatabase.OpenTransactions == 0);

            System.Data.IDbCommand sqlCommand;

            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.CareMeasureScaleManage))
                {
                    throw new ApplicationException("Permission Denied.");
                }

                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }

                modifiedAccountInfo = new Data.AuthorityAccountStamp(application.Session);


                if (useTransactions)
                {
                    application.EnvironmentDatabase.BeginTransaction();
                }

                sqlCommand = application.EnvironmentDatabase.CreateCommand("CareMeasureScale_InsertUpdate");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureScaleId", Id);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureScaleName", Name, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureScaleDescription", Description, Server.Data.DataTypeConstants.Description);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@scaleLabel1", ScaleLabel1, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@scaleLabel2", ScaleLabel2, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@scaleLabel3", ScaleLabel3, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@scaleLabel4", ScaleLabel4, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@scaleLabel5", ScaleLabel5, Server.Data.DataTypeConstants.Name);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@extendedProperties", ExtendedPropertiesXml);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@enabled", Enabled);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@visible", Visible);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityName", modifiedAccountInfo.SecurityAuthorityName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountId", modifiedAccountInfo.UserAccountId, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountName", modifiedAccountInfo.UserAccountName, Server.Data.DataTypeConstants.Name);


                success = (sqlCommand.ExecuteNonQuery() > 0);

                if (!success)
                {
                    throw application.EnvironmentDatabase.LastException;
                }

                SetIdentity();

                success = true;

                if (useTransactions)
                {
                    application.EnvironmentDatabase.CommitTransaction();
                }
            }

            catch (Exception applicationException) {
                success = false;

                application.SetLastException(applicationException);

                if (useTransactions)
                {
                    application.EnvironmentDatabase.RollbackTransaction();
                }
            }


            return(success);
        }
Beispiel #9
0
        public override Boolean Save()
        {
            Boolean success = false;

            StringBuilder sqlStatement = new StringBuilder();



            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.ProblemStatementManage))
                {
                    throw new ApplicationException("PermissionDenied");
                }

                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }


                ModifiedAccountInfo = new Data.AuthorityAccountStamp(application);

                application.EnvironmentDatabase.BeginTransaction();


                problemDomainId = application.CoreObjectGetIdByName("ProblemDomain", problemDomainName);

                if (problemDomainId == 0)
                {
                    ProblemDomain problemDomain = new ProblemDomain(application);

                    problemDomain.Name = problemDomainName;

                    problemDomain.Description = problemDomainName;

                    problemDomain.Enabled = true;

                    problemDomain.Visible = true;

                    problemDomain.Save();

                    problemDomainId = problemDomain.Id;
                }

                problemClassId = application.ProblemClassGetIdByName(problemDomainId, problemClassName);

                if (problemClassId == 0)
                {
                    ProblemClass problemClass = new ProblemClass(application);

                    problemClass.Name = problemClassName;

                    problemClass.Description = problemClassName;

                    problemClass.ProblemDomainId = problemDomainId;

                    problemClass.Enabled = true;

                    problemClass.Visible = true;

                    problemClass.Save();

                    problemClassId = problemClass.Id;
                }



                System.Data.IDbCommand sqlCommand = application.EnvironmentDatabase.CreateCommand("ProblemStatement_InsertUpdate");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@problemStatementId", Id);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@problemStatementName", Name, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@problemStatementDescription", Description, Server.Data.DataTypeConstants.Description);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@problemDomainId", problemDomainId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@problemClassId", problemClassId);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@definingCharacteristics", definingCharacteristics, Server.Data.DataTypeConstants.Description);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@relatedFactors", relatedFactors, Server.Data.DataTypeConstants.Description);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@defaultCarePlanId", defaultCarePlanId);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@enabled", Enabled);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@visible", Visible);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityName", modifiedAccountInfo.SecurityAuthorityName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountId", modifiedAccountInfo.UserAccountId, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountName", modifiedAccountInfo.UserAccountName, Server.Data.DataTypeConstants.Name);


                success = (sqlCommand.ExecuteNonQuery() > 0);

                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }

                SetIdentity();

                application.EnvironmentDatabase.CommitTransaction();

                success = true;
            }

            catch (Exception applicationException) {
                success = false;

                application.EnvironmentDatabase.RollbackTransaction();

                application.SetLastException(applicationException);
            }

            return(success);
        }
Beispiel #10
0
        public override Boolean Save()
        {
            Boolean success = false;

            StringBuilder sqlStatement = new StringBuilder();



            try {
                if (!application.HasEnvironmentPermission(Server.EnvironmentPermissions.CareMeasureManage))
                {
                    throw new ApplicationException("PermissionDenied");
                }

                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        throw new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]);
                    }
                }


                ModifiedAccountInfo = new Data.AuthorityAccountStamp(application);


                System.Data.IDbCommand sqlCommand = application.EnvironmentDatabase.CreateCommand("CareMeasureComponent_InsertUpdate");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureComponentId", Id);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureComponentName", Name, Server.Data.DataTypeConstants.Description99);  // EXTENDED NAME

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureComponentDescription", Description, Server.Data.DataTypeConstants.Description);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureId", careMeasureId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@careMeasureScaleId", careMeasureScaleId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@tag", tag, Server.Data.DataTypeConstants.UniqueId);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@enabled", Enabled);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@visible", Visible);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityName", ModifiedAccountInfo.SecurityAuthorityName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountId", ModifiedAccountInfo.UserAccountId, Server.Data.DataTypeConstants.UserAccountId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountName", ModifiedAccountInfo.UserAccountName, Server.Data.DataTypeConstants.Name);


                success = (sqlCommand.ExecuteNonQuery() > 0);


                if (!success)
                {
                    application.SetLastException(application.EnvironmentDatabase.LastException);

                    throw application.EnvironmentDatabase.LastException;
                }

                SetIdentity();

                success = true;
            }

            catch (Exception applicationException) {
                success = false;

                application.SetLastException(applicationException);
            }

            return(success);
        }
Beispiel #11
0
        public Enumerations.MemberCaseActionOutcome SaveUpdate(Boolean ignoreAssignedTo = false)
        {
            Enumerations.MemberCaseActionOutcome outcome = Enumerations.MemberCaseActionOutcome.UnknownError;


            // DO NOT USE TRANSACTIONS, SERIALIZABLE TRANSACTION SUPPORTED THROUGH STORED PROCEDURE

            DateTime lastModifiedDate = modifiedAccountInfo.ActionDate;


            try {
                Dictionary <String, String> validationResponse = Validate();

                if (validationResponse.Count != 0)
                {
                    foreach (String validationKey in validationResponse.Keys)
                    {
                        application.SetLastExceptionQuite(new ApplicationException("Invalid [" + validationKey + "]: " + validationResponse[validationKey]));

                        return(Enumerations.MemberCaseActionOutcome.ValidationError);
                    }
                }

                modifiedAccountInfo = new Data.AuthorityAccountStamp(application.Session);


                // ATTEMPT TO SAVE NEW OR UPDATE EXISTING ENTITY ADDRESS

                System.Data.IDbCommand sqlCommand = application.EnvironmentDatabase.CreateCommand("dbo.MemberCaseCarePlanGoal_Update");

                sqlCommand.CommandType = System.Data.CommandType.StoredProcedure;


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@memberCaseCarePlanGoalId", Id);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@status", ((Int32)Status));

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@memberCaseCarePlanGoalName", Name, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@memberCaseCarePlanGoalDescription", Description, Server.Data.DataTypeConstants.Description);



                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@ignoreAssignedTo", ignoreAssignedTo);


                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityId", application.Session.SecurityAuthorityId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAuthorityName", ModifiedAccountInfo.SecurityAuthorityName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountId", ModifiedAccountInfo.UserAccountId, Server.Data.DataTypeConstants.UserAccountId);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedAccountName", ModifiedAccountInfo.UserAccountName, Server.Data.DataTypeConstants.Name);

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@lastModifiedDate", lastModifiedDate);


                // RETURNED MODIFIED DATE

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@modifiedDate", ((DateTime?)null));

                ((System.Data.IDbDataParameter)sqlCommand.Parameters["@modifiedDate"]).Direction = System.Data.ParameterDirection.Output;


                // RETURN VALUE

                application.EnvironmentDatabase.AppendCommandParameter(sqlCommand, "@RETURN", ((Int32)0));

                ((System.Data.IDbDataParameter)sqlCommand.Parameters["@RETURN"]).Direction = System.Data.ParameterDirection.ReturnValue;


                sqlCommand.ExecuteNonQuery();

                outcome = (Enumerations.MemberCaseActionOutcome)(Convert.ToInt32(((System.Data.IDbDataParameter)sqlCommand.Parameters["@RETURN"]).Value));

                // TODO: SET APPLICATION EXCEPTION

                // SetApplicationException (outcome);

                if (outcome == Enumerations.MemberCaseActionOutcome.Success)
                {
                    // UPDATE MODIFIED DATE FROM STORED PROCEDURE RESULTS

                    modifiedAccountInfo.ActionDate = Convert.ToDateTime(((System.Data.IDbDataParameter)sqlCommand.Parameters["@modifiedDate"]).Value);
                }


                // DO NOT SET ID, THIS IS AN UPDATE ONLY PROCEDURE
            }

            catch (Exception applicationException) {
                outcome = Enumerations.MemberCaseActionOutcome.UnknownError;

                base.application.SetLastException(applicationException);
            }

            return(outcome);
        }