示例#1
0
        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.");
            }
        }
示例#2
0
 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;
     }
 }
示例#3
0
        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;
            }
        }
示例#4
0
        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;
            }
        }
示例#5
0
        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;
        }
示例#6
0
        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];
                }
            }
        }