private void RelatedFieldsVerify(ActivityConfig.ActivityFieldRow afr, List <string> objAliasesLoaded) { //if objectalias or defaultobject is not in alias list if (!objAliasesLoaded.Contains(afr.ObjectAlias)) { AddValidationRecord(afr, ValidationType.Error, "Object alias has not yet been loaded"); } if (!afr.IsDefaultObjectNameNull() && !objAliasesLoaded.Contains(afr.DefaultObjectName)) { AddValidationRecord(afr, ValidationType.Error, "Default object has not yet been referenced in an object alias"); } //If related field is a drop down type it must have a value for lookup if (afr.IsLookUpNull() && (afr.FieldType == "C" | afr.FieldType == "MC")) { AddValidationRecord(afr, ValidationType.Error, "Related Field is a drop down control, but no Lookup value has been provided."); } //JLL:2013-07-08 //Can provide default value only for (DefaultValue) or (DefaultObjectName and DefaultFieldName) if (!afr.IsDefaultValueNull() && (!afr.IsDefaultObjectNameNull() || !afr.IsDefaultFieldNameNull())) { AddValidationRecord(afr, ValidationType.Warning, "You have provided default values for both the Default Value column, as well as Default Object Name and/or Default Field Name."); } //JLL:2013-07-08 //Must provide value for DefaultFieldName if DefaultObjectName is populated //except when adding a new record if (!afr.IsDefaultObjectNameNull() && afr.IsDefaultFieldNameNull() && afr.TaskType != "N") { AddValidationRecord(afr, ValidationType.Error, "When providing a value for Default Object Name, you must also provide a value for Default Field Name."); } //JLL:2013-07-08 //Must provide value for DefaultObjectName if DefaultFieldName is populated //except when adding a new record if (!afr.IsDefaultFieldNameNull() && afr.IsDefaultObjectNameNull() && afr.TaskType != "N" && afr.TaskType != "T") { AddValidationRecord(afr, ValidationType.Error, "When providing a value for Default Field Name, you must also provide a value for Default Object Name."); } //JLL:2013-07-08 //If Queried Record, must provide (DefaultValue) or (DefaultObjectName and DefaultFieldName) if ((afr.TaskType.ToUpper() == "Q" | afr.TaskType.ToUpper() == "S" | afr.TaskType.ToUpper() == "M" | afr.TaskType.ToUpper() == "L" | afr.TaskType.ToUpper() == "U" | afr.TaskType.ToUpper() == "C") && afr.IsDefaultValueNull() && afr.IsDefaultObjectNameNull()) { AddValidationRecord(afr, ValidationType.Error, "Queried, Select or Load Record does not provide for a default value."); } //JLL:2013-07-08 //If related field not visible, and no defaults provided //Still valid since we do this to load data for templates. if (!afr.Visible && afr.TaskType.ToUpper() == "F" && afr.IsDefaultValueNull() && afr.IsDefaultObjectNameNull()) { AddValidationRecord(afr, ValidationType.Warning, "Non-visible field does not provide for a default value."); } }
protected override void BeforeChange(DataColumn dc, DataRow dr) { ActivityConfig.ActivityFieldRow acr = (ActivityConfig.ActivityFieldRow)dr; switch (dc.ColumnName) { case "Visible": //if (!acr.Visible & acr.IsDefaultValueNull()) // throw new AtriumException("You must have a default value if the field is hidden."); break; } }
private void AddValidationRecord(ActivityConfig.ActivityFieldRow afr, ValidationType ErrorType, string validationText) { acMng.DB.WFValidation.AddWFValidationRow((int)ErrorType, afr.ACSeriesRow.StepCode, validationText, afr.ACSeriesRow.ACSeriesId, afr.ObjectAlias, afr.FieldName); acMng.DB.WFValidation.AcceptChanges(); switch (ErrorType) { case ValidationType.Error: errorCount++; break; case ValidationType.Message: messageCount++; break; case ValidationType.Warning: warningCount++; break; } }
protected override void AfterChange(DataColumn dc, DataRow dr) { ActivityConfig.ActivityFieldRow acr = (ActivityConfig.ActivityFieldRow)dr; switch (dc.ColumnName) { case "TaskType": if (acr.TaskType == "T") { acr.ObjectName = "Specify Step Code in Default Value"; acr.ObjectAlias = "N/A"; } break; case "ObjectAlias": if (acr.TaskType == "F") // update ObjectName when setting ObjectAlias on RelatedField (tasktype F) row { ActivityConfig.ActivityFieldRow[] afrs = (ActivityConfig.ActivityFieldRow[])myA.DB.ActivityField.Select("AcSeriesId=" + acr.ACSeriesId + " and TaskType<>'F' and ObjectAlias='" + acr.ObjectAlias + "'"); if (afrs.Length > 0) { acr.ObjectName = afrs[0].ObjectName; } } break; case "ObjectName": //set ObjectAlias to ObjectName when ObjectAlias is null if (acr.IsObjectAliasNull()) { acr.ObjectAlias = acr.ObjectName; } if (acr.ObjectName == "Document") { acr.ObjectAlias = "Document0"; } break; } }
protected override void AfterAdd(DataRow dr) { ActivityConfig.ActivityFieldRow acr = (ActivityConfig.ActivityFieldRow)dr; acr.ActivityFieldID = myA.AtMng.PKIDGet("ActivityField", 1); //if (acr.ACSeriesRow != null) // acr.ActivityCodeID = acr.ACSeriesRow.ActivityCodeID; if (acr.ACSeriesRow != null) { acr.Seq = System.Convert.ToInt16(acr.ACSeriesRow.GetActivityFieldRows().Length * 10); } else { acr.Seq = 0; } acr.Step = 0; acr.Instance = 0; acr.TaskType = "F"; acr.Required = true; acr.Visible = true; acr.ReadOnly = false; }
public static void ImportRow(System.Data.DataRow trgDR, System.Data.DataRow srcDR) { foreach (System.Data.DataColumn dc in trgDR.Table.Columns) { bool ok = true; if (trgDR.RowState != System.Data.DataRowState.Added) { if (trgDR.Table.TableName.ToUpper() == "APPSETTING")//never update appsettings { ok = false; } string tf = trgDR.Table.TableName + dc.ColumnName; switch (tf.ToUpper()) { case "TEMPLATEFLAGFOREXPORT": case "TEMPLATEEXPORTEDDATE": ok = false; break; case "TEMPLATEIMPORTEDDATE": trgDR[dc.ColumnName] = DateTime.Now; ok = false; break; case "SERIESCONTAINERFILEID": ok = false; break; case "ACTIVITYFIELDDEFAULTVALUE": ActivityConfig.ActivityFieldRow afr = (ActivityConfig.ActivityFieldRow)srcDR; switch (afr.ObjectName.ToUpper() + afr.FieldName.ToUpper()) { case "FILECONTACTCONTACTID": if (!afr.IsDefaultValueNull()) { ok = false; } break; case "DOCTRANSFERSHAREFOLDER": case "ISSUEPRIMARYISSUEID": ok = false; break; case "RECIPIENTADDRESS": if (!afr.IsDefaultValueNull() && afr.DefaultValue.Contains("@")) { ok = false; } break; } break; } } if (!dc.ReadOnly && ok) { trgDR[dc.ColumnName] = srcDR[dc.ColumnName]; } } }