मैं एक MS Access 2002 फॉर्म में एक फ़ील्ड कैसे जोड़ सकता हूं जो किसी अन्य तालिका से संबंधित है?


1

मेरे पास एक एमएस एक्सेस 2002 फॉर्म है जो मूल रूप से एक टेबल नामक रिकॉर्ड में हेरफेर करने के लिए टेक्स्ट बॉक्स प्रदान करता है Materials। मेरे पास एक और टेबल भी है MaterialCostingजिसमें एक कॉलम है MaterialIDजो इसे Materialsटेबल से जोड़ता है जिसमें एक कॉलम भी है MaterialID। मैं जो करने की कोशिश कर रहा हूं वह इस रूप में एक पाठ बॉक्स जोड़ना है जो MaterialCostingनाम के एक क्षेत्र को पढ़ता है और लिखता है outerCarton

यहाँ मेरे असफल प्रयास हैं:

  1. प्रपत्र पर राइट क्लिक करें, गुण चुनें , और डेटा-> रिकॉर्ड स्रोत में , एक SQL क्वेरी दर्ज करें जो दो तालिकाओं ( SELECT * FROM Materials AS M INNER JOIN MaterialCosting AS C ON C.MaterialID = M.MaterialID) में मिलती है । फिर outerCartonटेक्स्ट बॉक्स के नियंत्रण स्रोत में आवश्यक कॉलम ( ) का नाम रखें ।
  2. पाठ बॉक्स के नियंत्रण स्रोत में , रखोDLookup("[outerCarton]", "[MaterialCosting]", "MaterialCosting.MaterialID = Materials.MaterialID")

इन दोनों का एक ही परिणाम था: पाठ बॉक्स इसमें समाप्त हो जाएगा #Name?और कुछ भी नहीं करेगा।

मै इसे काम मे कैसे ले सकता हूँ?

अपडेट करें

प्रपत्र के गुण फॉर्म के गुण नियंत्रण के गुण हैं यहां छवि विवरण दर्ज करें


आपने कहा "एक टेक्स्ट बॉक्स जोड़ें जो एक कॉलम को पढ़ता और लिखता है" , लेकिन आप नियंत्रण स्रोत बॉक्स में एक लुकअप का उपयोग कर रहे हैं। क्या आप सिर्फ एक खाली टेक्स्ट बॉक्स जोड़ रहे हैं जो डेटा में दर्ज किया जाएगा? या क्या आप डेटा से चयन करने के लिए कॉम्बो-बॉक्स जोड़ने का प्रयास कर रहे हैं?
चार्लीआरबी

@CharlieRB मैं एक टेक्स्ट बॉक्स जोड़ने की कोशिश कर रहा हूँ, जो एक विशिष्ट क्षेत्र प्रदर्शित करेगा (और मुझे संपादित करने की अनुमति देगा) MaterialCosting
शॉन

क्या होता है जब आप केवल outerCartonरिकॉर्ड स्रोत के रूप में उपयोग करते हैं ? यदि टेबल पहले से ही आपके कहे अनुसार लिंक की गई है, तो आपको टेक्स्ट बॉक्स में क्वेरी डाले बिना इसका उपयोग करने में सक्षम होना चाहिए।
चार्लीआरबी 19

आपने # 1 में किस SQL ​​क्वेरी का उपयोग किया?
चार्लीआरबी 20

@CharlieRB बस outerCartonरिकॉर्ड स्रोत के रूप में उपयोग कर रहा है जो मैं # 1 में करता हूं। मैंने इसे एसक्यूएल का उपयोग करने के लिए संपादित किया, साथ ही इसके लिए भी। इसका परिणाम उस क्षेत्र #Name?में होता है।
शॉन

जवाबों:


1

#Name?आप जो देख रहे थे , मैं उसे फिर से बना पा रहा था । यह कैसे डेटा कहा जाता है में यह सिर्फ एक एसक्यूएल बयान मुद्दा प्रतीत होता है।

इसे ठीक करने के लिए, मुझे निम्नलिखित कार्य करने थे;

  1. FORM रिकॉर्ड स्रोत के लिए इस SQL ​​को रखें; SELECT Materials.*, MaterialCosting.* FROM Materials INNER JOIN MaterialCosting ON Materials.MaterialID = MaterialCosting.MaterialID;
  2. अब आपको outerCartonपाठ क्षेत्र के रिकॉर्ड स्रोत के लिए ड्रॉप डाउन से चयन करने में सक्षम होना चाहिए ।
  3. प्रपत्र को देखने के लिए स्विच करें और देखें कि क्या आप रिकॉर्ड का चयन कर सकते हैं और मान बदल सकते हैं।

मुझे पता है कि कैसे काम करता है।


मुझे यह फर्क नहीं दिखता कि आप क्या कर रहे हैं और मैं क्या कर रहा हूँ। मैं पहले से ही सब कुछ (*) का चयन कर रहा था। वैसे भी, मैंने आपके संस्करण की कोशिश की और इससे कोई फर्क नहीं पड़ा। मैं वास्तव outerCartonमें ड्रॉप डाउन से चयन करने में सक्षम हूं जब मैं एक आंतरिक जॉइन का उपयोग करता हूं, लेकिन मुझे अभी भी मिलता है #Name?#Name?वैसे भी क्या मतलब है?
शॉन

#Name?इंगित करता है कि नियंत्रण स्रोत के लिए उपयोग किया गया नाम मान्य नहीं है। यह कई चीजों के कारण हो सकता है। इसके बारे में अधिक जानकारी के लिए यहां एक लिंक दिया गया है।
चार्लीआरबी

संयोग से, क्या दोनों तालिकाओं में एक फ़ील्ड नाम है outerCarton?
चार्लीआरबी 19

नहीं, केवल MaterialCosting में वह क्षेत्र है। मैं उस लिंक को देखूंगा और अपने नियोक्ता से पूछूंगा कि क्या मैं स्क्रीनशॉट पोस्ट कर सकता हूं और फिर मैं आपके पास वापस आऊंगा।
शॉन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.