He escrito un esquema de una lista en la que sólo hay que añadir una columna para el valor predeterminado de la lista personalizada que es un campo de número de llamada meses. El campo se muestra en la vista predeterminada y es, de hecho, creado en la lista. La lista es auto habilitadas con los valores que prepararse adecuadamente. El problema es que el campo no aparece en la pantalla/editar/páginas nuevas. Se puede establecer a través de la vista hoja de datos. No entiendo por qué no se muestra cuando lo específicamente establecido en el esquema.

Gustaría mucho disfrutar a cualquier sugerencia.

<?xml version="1.0" encoding="utf-8"?>
<List xmlns:ows="Microsoft SharePoint" 
      Title="ReviewPeriods" 
      FolderCreation="FALSE" 
      Direction="$Resources:Direction;" 
      Url="Lists/ReviewPeriods" 
      EnableContentTypes="TRUE" 
      BaseType="0">
 <MetaData>
  <ContentTypes>
   <ContentTypeRef ID="0x01">
        <Folder TargetName="Item" />
      </ContentTypeRef>
  </ContentTypes>
  <Fields>
   <Field ID="{B99EB797-4057-4a75-90BF-B40D0F89A9D9}"
             Type="Number"
             Decimals="0"
             Min="0"
             Max="100"
             Percentage="FALSE"
             Name="Months" 
             Required="TRUE"
             Group="SEED"
             DisplayName="Months"
             StaticName="Months"
             ShowInDisplayForm="TRUE"
             ShowInEditForm="TRUE"
             ShowInNewForm="TRUE">
   </Field>
  </Fields>
  <Views>   
   <View BaseViewID="0" 
            Type="HTML"
            WebPartZoneID="Main" 
            DisplayName="Default View" 
            DefaultView="TRUE" 
            SetupPath="pages\viewpage.aspx" 
            ImageUrl="/_layouts/images/generic.png" 
            Url="AllItems.aspx">

… Cosas Ocultas …

<ViewFields>
          <FieldRef Name="LinkTitle"></FieldRef>
          <FieldRef Name="Months"></FieldRef>
    </ViewFields>
    <Query>
     <OrderBy>
      <FieldRef Name="Title">
      </FieldRef>
     </OrderBy>
    </Query>
   </View>
  </Views>
  <Forms>
   <Form Type="DisplayForm" Url="DispForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
   <Form Type="EditForm" Url="EditForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
   <Form Type="NewForm" Url="NewForm.aspx" SetupPath="pages\form.aspx" WebPartZoneID="Main" />
  </Forms>
 </MetaData>
</List>
InformationsquelleAutor Dan Revell | 2009-12-01

3 Comentarios

  1. 4

    El problema es que usted agregue el campo a la lista, pero al mismo tiempo, permitir a los tipos de contenido y especificar que el único tipo de contenido a utilizar es el Elemento (0x01) que no incluya el campo. Así que vas a agregar/editar Elementos y, a continuación, usted no consigue el campo.

    Hay dos soluciones:

    1. No permitir que los tipos de contenido (y, a continuación,
      también se retire todo el
      <ContentTypes> sección)
    2. Crear un nuevo tipo de contenido, incluyendo
      el campo y agregar el tipo de contenido
      en lugar de Elemento
    • Ya he ido a por la segunda solución de la lista aunque estoy interesado en la primera. Es realmente posible que francamente desactivar los tipos de contenido en una lista, o es sólo llegar escondido.
    • Si usted acaba de salir de la EnableContentTypes attribure y el <ContentTypes> la sección, a continuación, aparecerá una lista donde el agregado de los campos para agregar/editar del Elemento
  2. 1

    Que he encontrado la solución a mi problema. El campo no aparecer en la lista de los Nuevos/Visualizar/Editar formas, porque esas páginas se basan en el tipo de contenido. En este caso el Elemento tipo de contenido que me base en mi lista.

    Generalmente puedo crear mi propio tipo de contenido, pero he estado tratando de encontrar una manera rápida de crear una lista sin necesidad de definir un nuevo tipo de contenido. Así que lo que hemos hecho es definir el campo directamente dentro del esquema de lista en lugar de referencia existentes en el campo que en el tipo de contenido. Se parece un poco tonto para definir un tipo de contenido sólo para un único uso de la lista de búsqueda con sólo un campo adicional.

    Si alguien puede sugerir una forma de obtener los campos a mostrar en la Nueva/Visualizar/Editar formularios sin tener que crear un nuevo tipo de contenido, a continuación, voy a hacer feliz a ellos la aceptaron responder en su lugar.

  3. 1

    Como que no me estaba haciendo la misma cosa (la Creación de Contenido de Tipo para cada uno de la Lista que yo quería crear)
    Hasta que me golpeó el código de abajo. Si miramos el código de abajo, me han quitado el <ContentTypes> de la etiqueta y de la fuerza agregó el Campo de Título y el extra de campo Descripción del campo.

    <Fields>
      <Field ID="{9830F5FC-99E0-4052-9CC0-50CBEDE80002}" Type="Text" Name="Title" DisplayName="Type Name" Required="TRUE" MaxLength="255" Version="1" RowOrdinal="0">
        <Default/>
      </Field>      
      <Field Type="Note" DisplayName="Description" Required="FALSE" NumLines="6" RichText="TRUE" RichTextMode="Compatible" Sortable="FALSE" 
             ID="{63C25492-BA98-4096-A6D7-F85885E0A425}" Name="Description"
              RowOrdinal="0"/>
    </Fields>

    ……Oculto

    <MetaData>

    Por Respuesta era la Correcta +1

Dejar respuesta

Please enter your comment!
Please enter your name here