हम एक विकसित किया था एक नया किराया का समर्थन करने के लिए एकाधिक दृश्यों के साथ एक InfoPath प्रपत्र / ऑन-बोर्डिंग की प्रक्रिया. जब एक नया व्यक्ति कंपनी काम देता, आईटी विभाग और अन्य समूहों कार्रवाई करने की आवश्यकता (सेट अप पेरोल, उपयुक्त अनुप्रयोगों के लिए पहुँच सक्षम करें, एक डेस्क का पता लगाएँ, आदि). हम फार्म लेकिन फार्म का एक अलग दृश्य पर प्रत्येक उन कार्यों के लिए उपयोग.
इस कंपनी पर, आईटी की समझ रखने वाले व्यापार की प्रक्रिया में शामिल लोगों का सबसे रहे हैं, इसलिए जब वे प्रपत्र तक पहुँच, एक "मेनू अपने डिफ़ॉल्ट दृश्य है" कि उन्हें उनके विशिष्ट फ़ंक्शन को सीधे बटन के साथ देखें. हालांकि, हम नई किराया प्रत्यक्ष प्रबंधक के लिए चीजों को आसान बनाने की जरूरत. यह व्यक्ति आईटी के किसी भी संबंधित सामग्री देखने नहीं होना चाहिए. वास्तव में, वह फार्म का सिर्फ एक दृश्य देख होना चाहिए और नहीं भी अन्य विचारों को देखने के लिए एक विकल्प है.
हमारे मामले में, सीधे प्रबंधक की खाता सीधे शिष्टाचार के फार्म करने के लिए बंधे है कि एक संपर्क चयनकर्ता (जो मैं हमेशा एक "लोग पिकर कॉल करने के लिए चाहता हूँ" किसी कारण के लिए).
चरण निम्नानुसार हैं:
1. डिज़ाइन मोड में, उपकरण पर जाएँ-> प्रपत्र विकल्प-> खोलें और सहेजें.
2. "नियमों" का चयन करें.
3. जिनकी क्रिया "स्विच करें देखने के लिए है एक नया नियम बनाएँ" और जिनकी हालत leverages उपयोगकर्ता नाम() समारोह.
उपयोगकर्ता नाम() "सरल रिटर्न" डोमेन के बिना उपयोगकर्ता नाम. अगर मैं SharePoint में "domainpagalvin" क्रेडेंशियल्स के साथ लॉग ऑन करें, उपयोगकर्ता नाम() रिटर्न "pagalvin".
संपर्क चयनकर्ता तीन बिट्स की एक संपर्क के लिए जानकारी प्रदान करता है. 'Accountid बदलते" भाग इस परिदृश्य के लिए सबसे अधिक उपयोगी है. यह भी एक छोटा सा करता है कि केवल एक ही चीज़ की चुनौती है कि संपर्क चयनकर्ता (मेरे वातावरण में वैसे भी) डोमेन और उपयोगकर्ता ID रिटर्न, में "domainpagalvin" के रूप में. यह हमें accountid के बाद से बदलते एक सीधे आगे समानता हालत करने से रोकता है ("domainpagalvin") कभी नहीं उपयोगकर्ता नाम समान होगा() ("pagalvin").
हम इस के चारों ओर का उपयोग करके प्राप्त कर सकते हैं "होता है" ऑपरेटर: Accountid बदलते उपयोगकर्ता नाम होता है().
हम इसे आगे और प्री-pend एक हार्ड कोडित डोमेन उपयोगकर्ता नाम के सामने ले जा सकते हैं() हमारे समानता चेक पाने के लिए और पर एक झूठी सकारात्मक के जोखिम को समाप्त करने के लिए समारोह होता है ऑपरेटर.
हम वास्तव में की तरह स्वचालित रूप से अन्य उपयोगकर्ताओं को अपने विज्ञापन सुरक्षा समूह सदस्यता पर आधारित के लिए दृश्य स्विच करने के लिए होता है. उदाहरण के लिए, जब "यह विश्लेषिकी का सदस्य" समूह प्रपत्र accesses, स्वचालित रूप से आईटी विश्लेषिकी दृश्य पर स्विच करें. हम इसे लागू करने के लिए समय नहीं है, लेकिन मेरे पहले सोचा था कि एक वेब सेवा है कि एक विधि "IsMemberOfActiveDirectorySecurityGroup" की तरह होता है बनाने के लिए है, यह उपयोगकर्ता नाम पारित() और वापस true या false देते. किसी को किसी भी अन्य है, अधिक चतुर विचार? वहाँ किसी भी SharePoint कार्य हम InfoPath उस दृढ़ संकल्प करने के लिए से लाभ उठाने कर सकते है?
</अंत>
कई धन्यवाद श्री. पॉल
Pingback: Infopath स्विच उपयोगकर्ता पर आधारित दृश्य « Sladescross का ब्लॉग