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); }
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); }
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); }
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); }
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); }
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); }