/// <summary> /// Determines whether this instance [can be destination field] the specified field. /// </summary> /// <param name="field">The field.</param> /// <returns><c>true</c> if this instance [can be destination field] the specified field; otherwise, <c>false</c>.</returns> private static bool CanBeDestinationField(FieldEdit field) { if (field.IsDeleted || field.IsCalculated()) return false; return CanBeDestinationField(field.GetColumnType()); }
/// <summary> /// Determines whether this instance [can be destination field] the specified field. /// </summary> /// <param name="field">The field.</param> /// <returns><c>true</c> if this instance [can be destination field] the specified field; otherwise, <c>false</c>.</returns> private static bool CanBeDestinationField(FieldEdit field) { if (field.IsDeleted || field.IsCalculated()) return false; if (field.ColumnType == ColumnTypes.Reference || field.ColumnType == ColumnTypes.MultiReference) { var requiredStep = field.GetStep<CrossRefRequiredStepEdit>(); if (requiredStep == null || requiredStep.CrossRefProcessId == null) return false; } return CanBeDestinationField(field.ColumnType); }