भाग # 1भाग # 2भाग # ३भाग # 4श्रृंखला के पिछले भाग में, हम अभिव्यक्ति के आधार पर LiveBinding वस्तुओं को बांधने के तंत्र के संचालन के सिद्धांतों के साथ और अधिक विस्तार से परिचित हुए। विज़ुअल लाइवबाइंडिंग सबसिस्टम की क्षमताओं के लिए धन्यवाद, डेवलपर इन अभिव्यक्तियों को मैन्युअल रूप से प्रोग्राम करने की आवश्यकता को समाप्त करता है। आज हम अपने एप्लिकेशन को विकसित करना जारी रखेंगे और फायरडाॅक और लाइवहाइंडिंग का उपयोग करके FireMonkey में डेटाबेस के साथ काम करने की नई तकनीकों से परिचित होंगे।
डेटा मॉड्यूल (DataModule) में हम
TFDTable घटक का उपयोग करके एक और डेटा सेट
बनाएंगे । इसे
tblIngredientes तालिका के साथ
संबद्ध करें। चलो इसे FDTIngredientes कहते हैं। पिछले डेटा सेट के साथ समानता से, फ़ील्ड की एक सूची बनाएं। ConnectToDB प्रक्रिया में परिवर्तन करें।
function TDM.ConnectToDB: Boolean; begin try FDConnection1.Connected := True;
आवेदन के तर्क के अनुसार, हमें यह सुनिश्चित करने की आवश्यकता है कि मुख्य रूप से व्यंजनों की सूची के माध्यम से चलते समय, सामग्री की सूची अपडेट की जाती है। प्रत्येक नुस्खा के लिए, सामग्री टैब पर सामग्री की अपनी सूची प्रदर्शित की जानी चाहिए। घटक संबंधों के स्तर पर
मास्टर-विवरण तंत्र का उपयोग करके ऐसी कार्यक्षमता को लागू करना सबसे आसान है।
सबसे पहले, आपको अधीनस्थ डेटा सेट (FDTIngredientes) के लिए
MasterSource गुण सेट करना होगा। संचार के लिए, हमें TDataSource घटक का उपयोग करना होगा। यह FDTRecipe घटक को "बाइंड" करता है, जो tblRecipe तालिका से डेटा आउटपुट के लिए जिम्मेदार है, और इसे dsRecipe कहते हैं।
FDTIngredientes घटक के MasterSource गुण सेट करें (ड्रॉप-डाउन सूची से dsRecipe चुनें)। संपत्ति संपादक का उपयोग करते हुए,
मास्टरफिल्ड संपत्ति का मूल्य निर्धारित करें - आईडी। और अंत में, हम IndexName संपत्ति के मूल्य का चयन करेंगे - सूचकांक की सूची से idxRecipe। डेटा इंडेक्स IdCB फ़ील्ड द्वारा tblIngredientes टेबल को अनुक्रमित करता है, जो रेसिपी टेबल से लिंक करने के लिए जिम्मेदार है।

वास्तव में, डेटा एक्सेस घटकों के स्तर पर, सब कुछ वीसीएल के समान ही काम करता है।
आवेदन के मुख्य रूप पर, "सामग्री" टैब पर जाएं और
लाइवबिन्डिंग डिजाइनर को कॉल करें। टैब पर
TGrid और
TBindNavigator रखें , और FDTIngredientes के लिए इन घटकों को "बाइंड करें", जैसा कि हमने पिछले भाग में "आरेख" या "आरेख लिंक" दृश्य आरेख पर किया था। अब, यदि आप एप्लिकेशन चलाते हैं, तो, संभवतः, इस स्तर पर सामग्री को प्रदर्शित करने का तर्क आपको अनजाने में प्रतीत होगा। दरअसल, ग्रिड उत्पादों के नाम और माप की इकाइयों को नहीं, बल्कि उनके कोड (Id) को प्रदर्शित करता है।
अब हमें नुस्खा में उत्पाद के नाम और माप की इकाइयों के मूल्यों को सही ढंग से प्रदर्शित करने की आवश्यकता है। इसके लिए हम तथाकथित का उपयोग करते हैं "
लुकअप " - फ़ील्ड्स ("देखने" फ़ील्ड)। FDTIngredientes घटक के फ़ील्ड की सूची को कॉल करें और एक नया फ़ील्ड बनाएं (संदर्भ मेनू में, नया फ़ील्ड चुनें ...)। फ़ील्ड संपादक में डेटा भरें जैसा कि चित्र में दिखाया गया है:

उत्पाद का नाम खाद्य पदार्थों की तालिका से उत्पाद का नाम प्रदर्शित करेगा, जिसकी आईडी FDTIngredientes तालिका में IdF फ़ील्ड के मूल्य के अनुरूप होगी।
फ़ील्ड प्रकार के मूल्य पर ध्यान दें।
उसी तरह, यूनिट टेबल (इकाइयों) से डेटा प्रदर्शित करने के लिए
लुकअप बनाएं।

अब, हमें सबसे पहले, ग्रिड घटक में फ़ील्ड्स के लुकअप मूल्यों को सही ढंग से प्रदर्शित करने की आवश्यकता है, और एक डेटा इनपुट तंत्र भी बनाएं।
चलो मुख्य रूप में वापस जाते हैं और उस पर दो TComboBox घटक रखते हैं (चलो उन्हें cbProd और cbUnit कहते हैं) और एक TEdit, जैसा कि चित्र में दिखाया गया है।
LiveBindings डिज़ाइनर में, हम इन घटकों के गुणों को डेटा स्रोतों के साथ
जोड़ते हैं, जैसा कि चित्र में दिखाया गया है:
TComboBox घटक को डेटा स्रोत से जोड़ने के नियम काफी सरल हैं।
Item.Text एक फ़ील्ड
से संबंधित है जिसका मान ड्रॉप-डाउन सूची में दिखाई देता है।
Item.LookupData एक ऐसे क्षेत्र
से संबंधित है जिसका मूल्य संपादन योग्य डेटासेट में प्रतिस्थापित है। तदनुसार, चयनितवैल्यू संपादन योग्य डेटासेट के संपादन योग्य क्षेत्र के साथ जुड़ा हुआ है।
अब ग्रिड को कॉन्फ़िगर करें। BindingsList1 घटक पर डबल-क्लिक करके (घटक का नाम स्वचालित रूप से असाइन किया गया था, आप इसे बदल सकते हैं), लिंक संपादक खोलें और
TLinkGridToDataSourceBindSourceDB घटक का चयन करें। ऑब्जेक्ट इंस्पेक्टर में, कॉलम संपत्ति संपादक को कॉल करें। आइए सभी फ़ील्ड बनाएं (सभी फ़ील्ड जोड़ें बटन) और उनमें से प्रत्येक के लिए प्रदर्शन शीर्षक और दृश्यता (दृश्यमान गुण) सेट करें, उसी तरह जैसे हमने पिछले भाग में किया था।
एप्लिकेशन लॉन्च करें। जब आप "सामग्री" टैब पर व्यंजनों की सूची के माध्यम से आगे बढ़ते हैं, तो उत्पादों की सूची अपडेट की जाती है, जो इंगित करता है कि
मास्टर-विवरण लिंक सही तरीके से काम कर रहा है। हम ड्रॉप-डाउन सूची (कॉम्बोबॉक्स) का उपयोग करके नुस्खा में उत्पाद के नाम और माप की इकाई का मूल्य निर्धारित कर सकते हैं। चयनित मान ग्रिड में सही ढंग से प्रदर्शित होते हैं।

अगले भाग में, हम नए कार्यान्वित कार्यक्षमता को मोबाइल प्लेटफ़ॉर्म पर स्थानांतरित करेंगे।
शुक्रवार तक!