आप एक सबफॉर्म बनाने के लिए एक टेबल का उपयोग कर सकते हैं - एक फॉर्म के भीतर एक फॉर्म। सबफ़ॉर्म में डेटा होता है जो मुख्य रूप में डेटा के लिए प्रासंगिक होता है।
एक सबफॉर्म एक रूप है जो किसी अन्य रूप के अंदर नेस्टेड है। इसमें आमतौर पर वह डेटा होता है जो उस रिकॉर्ड से जुड़ा होता है जो वर्तमान में मुख्य रूप में खुला होता है।
उदाहरण के लिए, आपके पास एक ऐसा फॉर्म हो सकता है जो एक ऑर्डर प्रदर्शित करता है, और एक सबफॉर्म जो ऑर्डर के भीतर प्रत्येक आइटम को प्रदर्शित करता है।
या, आपके पास एक ऐसा फॉर्म हो सकता है जो एक देश को प्रदर्शित करता है, एक सबफॉर्म के साथ जो उस देश के प्रत्येक शहर को प्रदर्शित करता है।
तालिका से फ़ॉर्म और सबफ़ॉर्म बनाने के लिए चरण-दर-चरण मार्गदर्शिका नीचे दी गई है।
-
नया फ़ॉर्म बनाएं
बाएँ नेविगेशन फलक में, अपने प्रपत्र/सबफ़ॉर्म को आधार बनाने के लिए तालिका का चयन करें और फ़ॉर्म चुनें रिबन से ( बनाएं . पर टैब)।
इसे काम करने के लिए, चयनित तालिका को एक-से-अनेक संबंध का "एक" भाग होना चाहिए।
अधिक जानकारी के लिए नीचे देखें।
-
फॉर्म और सबफॉर्म
प्रपत्र और उसका सबफ़ॉर्म तुरंत लेआउट दृश्य में बनाया और प्रदर्शित किया जाता है।
सबफॉर्म डेटाशीट व्यू में मुख्य फॉर्म के अन्य क्षेत्रों के तहत दिखाई देता है।
सबफॉर्म पर करीब से नज़र डालें
आइए देखें कि विभिन्न दृश्यों में सबफ़ॉर्म कैसे दिखाई देता है, साथ ही यह कैसे अपना डेटा प्राप्त करता है।
-
फ़ॉर्म दृश्य
फॉर्म व्यू पर स्विच करें (एक्सेस के नीचे दाईं ओर फॉर्म व्यू आइकन पर क्लिक करके)।
अगला रिकॉर्ड . पर क्लिक करके मुख्य फ़ॉर्म में नेविगेट करें प्रपत्र के नीचे आइकन।
जैसे ही आप रिकॉर्ड्स में नेविगेट करते हैं, सबफॉर्म की सामग्री केवल उन्हीं रिकॉर्ड्स में अपडेट होगी जो पैरेंट फॉर्म से जुड़े हैं।
-
डिज़ाइन दृश्य
डिज़ाइन व्यू पर स्विच करें (एक्सेस के नीचे दाईं ओर डिज़ाइन व्यू आइकन पर क्लिक करके)।
सबफ़ॉर्म एक बॉक्स के रूप में प्रकट होता है, जिसका डेटा स्रोत प्रदर्शित होता है। इस उदाहरण में, डेटा स्रोत Table.Albums है (यानी एल्बम टेबल)।
आप सबफ़ॉर्म को कस्टमाइज़ करने के लिए डिज़ाइन व्यू का उपयोग कर सकते हैं। उदाहरण के लिए, आप संपत्ति पत्रक खोल सकते हैं (संपत्ति पत्रक . पर क्लिक करके डिज़ाइन . में रिबन का टैब) और आवश्यकतानुसार विभिन्न गुणों को समायोजित करें।
-
सबफॉर्म का स्रोत
डेटा . पर क्लिक करना प्रॉपर्टी शीट का टैब सबफ़ॉर्म के स्रोत के साथ-साथ उस फ़ील्ड को भी दिखाएगा जो सबफ़ॉर्म को पैरेंट फ़ॉर्म से जोड़ता है।
स्रोत वस्तु संपत्ति निर्धारित करती है कि नियंत्रण में कौन सी वस्तु प्रदर्शित की जाती है।
चाइल्ड फील्ड्स को लिंक करें संपत्ति निर्दिष्ट करती है कि सबफ़ॉर्म में कौन सा फ़ील्ड या फ़ील्ड सबफ़ॉर्म को पैरेंट फ़ॉर्म से लिंक करता है।
लिंक मास्टर फ़ील्ड प्रॉपर्टी निर्दिष्ट करती है कि पैरेंट फॉर्म पर कौन सा फ़ील्ड या फ़ील्ड पैरेंट फॉर्म को सबफॉर्म से लिंक करता है।
यह कैसे काम करता है
इस तरह एक सबफॉर्म बनाना केवल तभी काम करता है जब वह टेबल किसी रिश्ते का हिस्सा हो। एक्सेस देखता है कि कोई संबंध है, इसलिए यह स्वचालित रूप से सबफ़ॉर्म बनाने में मदद करता है।
अधिक विशेष रूप से, तालिका को एक-से-अनेक संबंध का "एक" भाग होना चाहिए।
यदि आप "कई" तालिका से कोई प्रपत्र बनाते हैं, तो आपको कोई सबफ़ॉर्म नहीं मिलेगा। प्रपत्र चयनित तालिका के आधार पर एक सरल रूप होगा।
यदि आप किसी तालिका से कोई प्रपत्र बनाते हैं जो संबंध का हिस्सा नहीं है, तो उप-फ़ॉर्म की कोई आवश्यकता नहीं है (क्योंकि किसी अन्य तालिका में कोई संबंधित डेटा नहीं है)।
एक सबफ़ॉर्म को कभी-कभी एक-से-अनेक रूप के रूप में संदर्भित किया जाता है, क्योंकि यह एक-से-अनेक संबंध के "अनेक" भाग को प्रदर्शित करेगा (पैरेंट फ़ॉर्म के साथ "एक" भाग प्रदर्शित करता है)।
सबफॉर्म को अक्सर सबडेटाशीट के रूप में भी जाना जाता है।
एक फॉर्म/सबफॉर्म संयोजन को कभी-कभी एक पदानुक्रमित रूप, एक मास्टर/विवरण फॉर्म, या माता-पिता/चाइल्ड फॉर्म के रूप में जाना जाता है।
सबफॉर्म बनाम... सबफॉर्म
यदि आप सबफ़ॉर्म विज़ार्ड का उपयोग करके एक सबफ़ॉर्म बनाते हैं, तो संभवतः आपके पास दो प्रपत्र होंगे; मुख्य रूप, और सबफॉर्म। दोनों प्रपत्र फ़ॉर्म . के अंतर्गत सहेजे जाएंगे नेविगेशन फलक में नोड.
जब आप किसी तालिका से सबफ़ॉर्म बनाते हैं (जैसे कि ऊपर दिए गए उदाहरण में), तो आपको अतिरिक्त फ़ॉर्म नहीं मिलेगा। ऐसा इसलिए है क्योंकि सबफ़ॉर्म/सबरेपोर्ट नियंत्रण तालिका से सीधे डेटा प्रदर्शित कर रहा है।
तो तकनीकी रूप से, यह तर्क दिया जा सकता है कि क्या यह वास्तव में एक सबफॉर्म है, या सिर्फ एक सबडेटाशीट है। किसी भी तरह से, यह उपयोगकर्ता के लिए समान परिणाम प्रदर्शित करता है।
यदि आप तालिका से सभी फ़ील्ड प्रदर्शित नहीं करना चाहते हैं, तो आप स्रोत ऑब्जेक्ट के रूप में एक क्वेरी का उपयोग कर सकते हैं, या सबफ़ॉर्म विज़ार्ड का उपयोग करके एक सबफ़ॉर्म बना सकते हैं।
सबफॉर्म की जरूरत नहीं है?
जैसा कि उल्लेख किया गया है, एक्सेस तब मददगार बनने की कोशिश कर रहा है जब यह आपके लिए स्वचालित रूप से सबफॉर्म बनाता है।
हालांकि, अगर आपको सबफॉर्म की जरूरत नहीं है, तो आप इसे आसानी से हटा सकते हैं। बस लेआउट व्यू या डिज़ाइन व्यू पर स्विच करें, सबफॉर्म पर राइट-क्लिक करें, फिर डिलीट चुनें। प्रासंगिक मेनू से।
मौजूदा फ़ॉर्म में सबफ़ॉर्म जोड़ें
यदि आपके पास पहले से कोई प्रपत्र है जिसमें आप एक सबफ़ॉर्म जोड़ना चाहते हैं, तो आप आगे बढ़ सकते हैं और एक सबफ़ॉर्म नियंत्रण जोड़कर मौजूदा प्रपत्र में एक सबफ़ॉर्म जोड़ सकते हैं।