Domanda

Sto usando un modello Microsoft per l'aggiunta di formazione e corsi per le persone a registrarsi per. Tutto sta funzionando benissimo, ma voglio aggiungere un campo alla Elenco dei corsi. Voglio aggiungere un campo per indicare che tipo di personale questo corso è per, ad esempio, HR, Salute e Sicurezza, Amministrazione, ecc.

Così ho cercato in tutto per risposte a questa, la documentazione su SharePoint è scioccante, e ho fatto il seguente:

  • Impostazioni> Crea Colonna sulla pagina dei corsi.
  • inserito tutti i dati necessari
  • Il DispForm, EditForm e NewForm (aspx) @fStaffType, Staff Type; aggiunto alla sezione DataFields. (Staff Type è il nome del field`)
  • In DispForm aggiunta una nuova riga per visualizzare i dati:

    <tr>
        <td width="190px" valign="top" class="ms-formlabel">
           <H3 class="ms-standardheader">
               <nobr>Staff Type</nobr>
           </H3>
        </td>
       <td width="400px" valign="top" class="ms-formbody">
           <xsl:value-of select="@fStaffType"/>
        </td>
    </tr>
    
  • L'EditForm e NewForm aggiunta una nuova riga per modificare / inserire i dati:

    <tr>
        <td width="190px" valign="top" class="ms-formlabel">
       <H3 class="ms-standardheader">
           <nobr>Staff Type</nobr>
       </H3>
        </td>
        <td width="400px" valign="top" class="ms-formbody">
            <SharePoint:FormField runat="server" id="ff12{$Pos}" ControlMode="New" FieldName="fStaffType" __designer:bind="{ddwrt:DataBind('i',concat('ff12',$Pos),'Value','ValueChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@fStaffType')}"/>
            <SharePoint:FieldDescription runat="server" id="ff12description{$Pos}" FieldName="fStaffType" ControlMode="New"/>
        </td>
    </tr>
    

L'EditForm e NewForm ottengo l'errore:

Errore di rendering di controllo - ff12description_1

un'eccezione non gestita si è verificato. Il riferimento non impostato a istanza di un oggetto.

Se io commento la descrizione mostrerà il primo td (Nome campo), ma il secondo td è solo vuoto.

Qualsiasi aiuto sarebbe molto apprezzato!

EDIT: Un problema correlato, non so se devo creare una nuova domanda o no. Ma Marc D Anderson ha risposto qui sotto e sono stato in grado di aggiungere e visualizzare un nuovo campo. Tuttavia, posso aggiungere un nuovo corso alla perfezione, ma se modificare uno, e modificare il campo Tipo personale, un nuovo corso verrà creato il giorno e l'ora corrente. Ma se gli altri campi vengono modificati si modifica in modo corretto.

Tutte le idee?

È stato utile?

Soluzione

Molti dei "Fabulous 40" modelli stato personalizzato forme. (Probabilmente discutere la parte favolosa del nome, a questo punto.)

Sembra che si sta facendo circa le cose giuste nelle forme, ma è un po 'difficile dire dove sta andando a sud su di voi.

Quando hai creato la nuova colonna, hai dato un nome di "fStaffType"? In caso contrario, questo è il problema. Se si chiamò "Personale Type", quindi il nome interno (o StaticName) per la colonna è "Staff_x0020_Type". (Lo spazio nel nome verrà codificato.) EDIT: È possibile trovare lo StaticName per una colonna andando in Impostazioni elenco e la modifica di quella colonna. Lo StaticName sarà alla fine dell'URL come parametro stringa di query. A seconda di quali personaggi si è utilizzato, può bedouble codificato, come Staff% 5Fx0020% 5FType.

Non c'è bisogno di aggiungere la colonna DisplayName e StaticName alla sezione DiataFields - non serve in realtà uno scopo evidente, francamente. Avrete solo bisogno di fare in modo che il nome della colonna in SharePoint: FormField e SharePoint:. FieldDescription corrisponde al StaticName per il nome della colonna che hai aggiunto

La finale "_1" nell'errore è parte del nome unico che SharePoint dà ogni istanza di quella colonna nella pagina (si potrebbe essere permettendo modifiche a più oggetti nella stessa forma) aggiungendo il valore del $ Pos variabile.

Altri suggerimenti

appare come FF12 è già definita da qualche altra parte nella pagina ed è probabilmente ri-scrittura con _1 alla fine.

  1. Puoi solo provare trascinare il campo dall'origine dati e lasciare che la figura del progettista fuori i nomi dei campi?

o

  1. Si può provare ad aggiungere "Modifica modulo personalizzato" in un'altra pagina e poi copiare il FieldDescription?

I può non hanno letto o avuto buona conoscenza delle vostre esigenze. Perché non implementare Content Type? Si potrebbe avere funzionalità per i vostri campi personalizzati (alias colonne) e l'attributo impostato come diplay sul modulo di modifica = true, spettacolo a vista = TRUE (ecc.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top