2010-07-07 8 views
14

मैंने एक बार पढ़ा है, कि SharePoint में एक नया ContentType बनाते समय शीर्षक कॉलम का प्रदर्शन नाम बदलना बुद्धिमान नहीं है। हालांकि यह संभव है (यानी कॉलम स्थिर नाम अभी भी "शीर्षक" है लेकिन प्रदर्शन नाम "विवरण" है)।किसी सामग्री प्रकार में शीर्षक कॉलम का प्रदर्शन नाम बदलें, बुद्धिमान या नहीं?

तो मेरा सवाल यह है कि संभावित जटिलताओं क्या हैं? मैं इसे क्यों बदलता हूं, जब मैं एक नया ContentType बनाता हूं जिसे "विवरण" कॉलम की आवश्यकता होती है लेकिन कोई "शीर्षक" कॉलम नहीं होता है?

उत्तर

18

मैं मानता हूं कि आपको CAML XML के साथ ऐसा करने की आवश्यकता है। मैं सिर्फ यह कैसे करना है इसके वास्तविक विवरण पोस्ट करना चाहता था ताकि इस प्रश्न वाले अगले व्यक्ति को मेरे जैसे खोज जारी रखना पड़े। उत्तर के लिए Lambros's Blog पर धन्यवाद।

आपको वास्तव में तीन फ़ील्ड अपडेट करने की आवश्यकता है - शीर्षक फ़ील्ड और इसके आधार पर दो गणना फ़ील्ड और आपको पूर्वनिर्धारित SharePoint ID मानों का उपयोग करने की आवश्यकता है। नीचे देखें या ऊपर के लिंक:

आप निम्न को जोड़कर FieldRefs को जोड़ने की जरूरत है:

<FieldRef Name="LinkTitle" ID="{82642ec8-ef9b-478f-acf9-31f7d45fbc31}" DisplayName="Renamed" Sealed="TRUE"/> 
<FieldRef Name="LinkTitleNoMenu" ID="{bc91a437-52e7-49e1-8c4e-4698904b2b6d}" DisplayName="Renamed" Sealed="TRUE"/> 
<FieldRef Name="Title" ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" DisplayName="Renamed" Sealed="TRUE"/> 

आप निम्न को जोड़कर फील्ड्स को जोड़ने की जरूरत है:

<Field Name="LinkTitle" ID="{82642ec8-ef9b-478f-acf9-31f7d45fbc31}" DisplayName="Renamed" Sealed="TRUE" Type="Calculated"/> 
<Field Name="LinkTitleNoMenu" ID="{bc91a437-52e7-49e1-8c4e-4698904b2b6d}" DisplayName="Renamed" Sealed="TRUE" Type="Calculated"/> 
<Field Name="Title" ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" DisplayName="Renamed" Sealed="TRUE" Type="Text"/> 

कि यह करना चाहिए Lambros के लिए फिर से धन्यवाद।

+2

क्या यह फ़ील्ड का नाम उस विशेष सामग्री प्रकार के लिए करेगा जो इस फ़ील्ड को संदर्भित करता है या पूरी साइट के लिए? +1। –

2

मुझे किसी भी मुद्दे से अवगत नहीं है। मैंने इसे कई बार किया है और किसी भी समस्या का सामना नहीं किया है।

+1

रॉब के साथ सहमत हैं, मुझे कभी कोई समस्या नहीं हुई है - मैंने सामग्री प्रकारों में RemoveFieldRef निर्देश का भी उपयोग किया है जो आइटम को निकालने के लिए प्राप्त करता है। – Shaneo

+0

मैं सहमत हूं। FieldRef और RemoveFieldRef को किसी भी समस्या का कारण नहीं बनना चाहिए। मैंने सुना है, अगर आप फ़ील्डनाम स्वयं बदलते हैं, तो इससे समस्या हो सकती है, कि आप इसे वापस नहीं बदल सकते हैं क्योंकि पुराना नाम "आरक्षित" है, हो सकता है कि आप जो पढ़ते हैं? – Hinek

8

यदि आप समाधान में किसी सुविधा में xml-files के रूप में अपनी सामग्री प्रकार विकसित कर रहे हैं, तो शीर्षक कॉलम का प्रदर्शन नाम बदलने में कोई समस्या नहीं है।

समस्या तब होती है जब उपयोगकर्ता UI के माध्यम से ऐसा करने का प्रयास करते हैं।

  1. वे साइट सेटिंग में जाना/सामग्री प्रकार
  2. ओपन सामग्री प्रकार और शीर्षक स्तंभ क्लिक करता है
  3. बदलें कुछ अच्छा

उस मामले वे क्या बदल रहे हैं है में करने के लिए नाम शीर्षक साइट कॉलम का प्रदर्शन नाम। और एक बार जब वे पता चला कि उसने सभी सूचियों में शीर्षक कॉलम बदल दिया है, तो वे इसे वापस बदलने की कोशिश करते हैं, लेकिन यह चालाक SharePoint UI bacause द्वारा रोका गया है शीर्षक एक आरक्षित नाम है।

+1

आह ठीक है, अब मैं समझता हूं। मैं विजुअल स्टूडियो में एक्सएमएल के रूप में अपनी सामग्री प्रकार बनाना चाहता हूं, इसलिए मैं बचा हूं। धन्यवाद। – Turrau

5

मेरे पास "संभावित जटिलताओं क्या हैं" के आपके प्रश्न के साथ पहले हाथ का अनुभव है, इसलिए मैं आपको एक विशिष्ट उदाहरण देता हूं कि मैं अभी भाग गया जिसके कारण मुझे आज सुबह बहुत दर्द हो रहा है।

आप साइट कॉलम नाम को अनजाने में बदलते हैं (सोचते हैं कि आप केवल एक विशिष्ट सूची को प्रभावित कर रहे हैं), लेकिन बाद में पता चला कि आपने मूल आइटम साइट कॉलम बदल दिया है, और निफ्टी बॉक्स को चेक किया है जो सभी विरासत सामग्री पर लागू होने के लिए कहा जाता है प्रकार के। (मुझे लगता है कि इस के लिए बैल-व्हीपिंग ... यूघ)।

तो आपकी सभी सूचियां प्रभावित हुईं, निश्चित रूप से। लेकिन प्रतीक्षा करें, यहां और अधिक दर्द होना है। "उपयोगकर्ता सूचना सूची" के रूप में संदर्भित आंतरिक शेयरपॉइंट लोगों की सूची भी प्रभावित होती है, और आप इसे मूल "नाम" कॉलम शीर्षक में वापस नहीं बदल सकते हैं। जब आप वास्तव में माइक्रोसॉफ्ट एक्सेस के माध्यम से शेयरपॉइंट सूचियों से कनेक्ट करने का प्रयास करते हैं, तो यह वास्तव में नाखुश होगा, जो उपयोगकर्ता जानकारी सूची को विशेष रूप से नामित कॉलम की तलाश करने के लिए हार्ड-कोड किया गया है, "नाम"।इसलिए, यह इन लिंक्ड सूचियों को एमएस एक्सेस के माध्यम से बेकार बना देता है।

अब मैं इसे किसी अन्य दृष्टिकोण के माध्यम से वापस बदलने का एक तरीका खोज रहा हूं, क्योंकि यूआई आपको कॉलम को नामकरण से "नाम" नाम देने से रोकता है।

तो, अपने प्रश्न का उत्तर देने के लिए: ऐसा मत करो!

+0

जैसा कि आपने लिखा है, आपने मूल सामग्री प्रकार के शीर्षक साइट कॉलम का प्रदर्शन नाम बदल दिया है (मुझे लगता है कि यह साइट संग्रह के रूट वेब पर आइटम सामग्री प्रकार था)। बेशक इसका आपके साइट संग्रह पर परिणाम हैं। लेकिन किसी सामग्री प्रकार (फ़ील्डलिंक की डिस्प्लेनाम संपत्ति) के शीर्षक कॉलम का डिस्प्ले नाम बदलना जिसमें उसके द्वारा विरासत में दर्जनों अन्य सामग्री प्रकार नहीं हैं (उदाहरण के लिए एक सामग्री प्रकार एक सूची से बंधे हैं) आमतौर पर काफी आम है। आप PowerShell से $ web.SiteUserInfoList के माध्यम से छिपी हुई उपयोगकर्ता सूची का आकलन कर सकते हैं और कोड को वापस कोड से बदल सकते हैं। – pholpar

संबंधित मुद्दे