/// <summary> /// /// </summary> /// <param name="web"></param> /// <param name="group"></param> /// <param name="description"></param> /// <param name="name"></param> /// <param name="displayName"></param> /// <param name="maxLength"></param> public static void CreateTextColumn(this SPWeb web, string group, string description, string name, string displayName, int maxLength = 255) { try { if (!web.Fields.ContainsField(name)) { string fieldName = web.Fields.Add(name, SPFieldType.Text, false); SPFieldText field = (SPFieldText)web.Fields.GetField(name); field.Group = group; field.MaxLength = maxLength; field.StaticName = name; field.Title = displayName; field.NoCrawl = false; field.Description = description; field.Update(); } } catch (Exception ex) { SPDiagnosticsService.Local.WriteTrace(0, new SPDiagnosticsCategory("CORE:HELPERS", TraceSeverity.Unexpected, EventSeverity.Error), TraceSeverity.Unexpected, String.Format("Exception happened in Helpers:CreateTextColumn. MESSAGE: {0}. EXCEPTION TRACE: {1} ", ex.Message, ex.StackTrace), ex.StackTrace); } }
private void EnsureTextFieldExists(SPList extendedList, string fieldName, bool showInEdit) { if (!extendedList.Fields.ContainsField(fieldName)) { extendedList.Fields.Add(fieldName, SPFieldType.Text, false); SPFieldText textField = extendedList.Fields[fieldName] as SPFieldText; textField.Hidden = false; //!showInEdit; textField.ShowInEditForm = showInEdit; textField.Update(); extendedList.Update(); } }
//Create Site Columns public void CreateSiteColumns() { using (SPWeb oSPWeb = oSPSite.RootWeb) { try { //if (!oSPWeb.Fields.ContainsField("Codigo")) //{ //Codigo de Documento string codigoField = oSPWeb.Fields.Add("Codigo", SPFieldType.Text, false); SPFieldText Codigo = (SPFieldText)oSPWeb.Fields.GetFieldByInternalName(codigoField); Codigo.Group = groupColumn; Codigo.Update(); //} //if (!oSPWeb.Fields.ContainsField("Referencia")) //{ string referenciaField = oSPWeb.Fields.Add("Referencia", SPFieldType.Text, false); SPFieldText Referencia = (SPFieldText)oSPWeb.Fields.GetFieldByInternalName(referenciaField); Referencia.Group = groupColumn; Referencia.Update(); //} //if (!oSPWeb.Fields.ContainsField("Comentario")) { string comentarioField = oSPWeb.Fields.Add("Comentario", SPFieldType.Text, false); SPFieldText Comentario = (SPFieldText)oSPWeb.Fields.GetFieldByInternalName(comentarioField); Comentario.Group = groupColumn; Comentario.Update(); //} //if (!oSPWeb.Fields.ContainsField("Remitente")) //{ string remitenteField = oSPWeb.Fields.Add("Remitente", SPFieldType.Text, false); SPFieldText Remitente = (SPFieldText)oSPWeb.Fields.GetFieldByInternalName(remitenteField); Remitente.Group = groupColumn; Remitente.Update(); //} //if (!oSPWeb.Fields.ContainsField("Factura")) { string facturaField = oSPWeb.Fields.Add("Factura", SPFieldType.Number, false); SPFieldNumber Factura = (SPFieldNumber)oSPWeb.Fields.GetFieldByInternalName(facturaField); Factura.Group = groupColumn; Factura.Update(); //} //if (!oSPWeb.Fields.ContainsField("Fecha Receopcion")) { string fechaRecepcionField = oSPWeb.Fields.Add("Fecha Recepcion", SPFieldType.DateTime, true); SPFieldDateTime FechaRecepcion = (SPFieldDateTime)oSPWeb.Fields.GetFieldByInternalName(fechaRecepcionField); FechaRecepcion.Group = groupColumn; FechaRecepcion.Update(); //} //Method 3 using Field schema //if (!oSPWeb.Fields.ContainsField("Nota")) //{ string notaField = oSPWeb.Fields.Add("Nota", SPFieldType.Note, false); SPFieldMultiLineText Nota = (SPFieldMultiLineText)oSPWeb.Fields.GetFieldByInternalName(notaField); Nota.Group = groupColumn; Nota.Update(); //} //if (!oSPWeb.Fields.ContainsField("Gerencias")) //{ // Lookup Column SPList gerenciasList = oSPWeb.Lists.TryGetList("Gerencias"); string GerenciaField = oSPWeb.Fields.AddLookup("Gerencia", gerenciasList.ID, true); SPFieldLookup gerenciaLookup = (SPFieldLookup)oSPWeb.Fields.GetFieldByInternalName(GerenciaField); gerenciaLookup.Group = groupColumn; gerenciaLookup.LookupField = "Title"; gerenciaLookup.Update(); //} SPList listas = oSPWeb.Lists.TryGetList("Listas"); //if (!oSPWeb.Fields.ContainsField("Nivel Prioridad")) //{ string nivelPrioridadField = oSPWeb.Fields.AddLookup("Nivel Prioridad", listas.ID, true); SPFieldLookup nivelPrioridadLookup = (SPFieldLookup)oSPWeb.Fields.GetFieldByInternalName(nivelPrioridadField); nivelPrioridadLookup.Group = groupColumn; nivelPrioridadLookup.LookupField = "Title"; nivelPrioridadLookup.Update(); //} //if (!oSPWeb.Fields.ContainsField("Clasificacion")) //{ string clasificacionField = oSPWeb.Fields.AddLookup("Clasificacion", listas.ID, true); SPFieldLookup clasificacionLookup = (SPFieldLookup)oSPWeb.Fields.GetFieldByInternalName(clasificacionField); clasificacionLookup.Group = groupColumn; clasificacionLookup.LookupField = "Title"; clasificacionLookup.Update(); //} //if (!oSPWeb.Fields.ContainsField("Estado")) //{ string estadoField = oSPWeb.Fields.AddLookup("Estado", listas.ID, false); SPFieldLookup estadoLookup = (SPFieldLookup)oSPWeb.Fields.GetFieldByInternalName(estadoField); estadoLookup.Group = groupColumn; estadoLookup.LookupField = "Title"; estadoLookup.Update(); //} } catch (Exception) { throw; } } }