Класс SPFieldCalculated
Представляет вычисляемое поле в список.
Иерархия наследования
System.Object
Microsoft.SharePoint.SPField
Microsoft.SharePoint.SPFieldCalculated
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
Public Class SPFieldCalculated _
Inherits SPField
'Применение
Dim instance As SPFieldCalculated
public class SPFieldCalculated : SPField
Замечания
Если задать свойства класса SPFieldCalculated , необходимо вызвать метод Update для изменения вступили в силу в базе данных.
Свойство Formula используется для реализации формулы в вычисляемых полях. Calculated Field Formulasсведения о различных видов формулы, которые можно использовать, см.
Примечание
Windows SharePoint Services 3.0 не поддерживает наследование от этого класса.
Примеры
В следующем примере создается вычисляемое поле в список и добавляет его в представление. Вычисляемое поле отображается «Да», если значение MyColumn2 больше MyColumn1.
Dim webSite As SPWeb = SPContext.Current.Site.AllWebs("MyWebSite")
Try
Dim list As SPList = webSite.Lists("MyList")
Dim fields As SPFieldCollection = list.Fields
Dim newFieldName As String = fields.Add("MyNewColumn", SPFieldType.Calculated, False)
Dim newField As SPFieldCalculated = CType(fields(newFieldName), SPFieldCalculated)
newField.Formula = "=[MyColumn1]<[MyColumn2]"
newField.Update()
Dim view As SPView = list.Views("MyView")
Dim viewFields As SPViewFieldCollection = view.ViewFields
viewFields.Add(newFieldName)
view.Update()
Finally
webSite.Dispose()
End Try
using (SPWeb oWebsite = SPContext.Current.Site.AllWebs["Website_Name"])
{
SPList oList = oWebsite.Lists["MyList"];
SPFieldCollection collFields = oList.Fields;
string strNewFieldName = collFields.Add("MyNewColumn",
SPFieldType.Calculated, false);
SPFieldCalculated strNewField =
(SPFieldCalculated)collFields[strNewFieldName];
strNewField.Formula = "=[Column1]<[Column2]";
strNewField.Update();
SPView oView = oList.Views["MyView"];
SPViewFieldCollection collViewFields = oView.ViewFields;
collViewFields.Add(strNewFieldName);
oView.Update();
}
Примечание
Некоторые объекты реализуют интерфейс IDisposable и следует избегать сохранения этих объектов в памяти, после они больше не нужны. Disposing Objectsсведения о рекомендованные методы программирования, см.
Потокобезопасность
Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.