2012-08-28 8 views
6

मैं एक "डुप्लिकेट रिकॉर्ड" क्रिया बनाना चाहता हूं जो लागू होने पर, किसी भी TDataSet वंश में वर्तमान रिकॉर्ड डुप्लिकेट करता है। मैं कैसे पता लगा सकता हूं कि डेटासेट मास्टर/विस्तार संबंध का मास्टर डेटासेट है या नहीं? TClientDataSet के साथ यह आसान है, लेकिन मुझे TDataSet के सभी वंशजों के साथ उपयोग करने के लिए इस क्रिया की आवश्यकता है।डेल्फी में मास्टर/विस्तार संबंध में डेटासेट मास्टर क्या है, तो मैं कैसे पा सकता हूं?

उत्तर

10

आपको TDataSet पर कॉल करना चाहिए। GetDetailDataSets विधि। यदि सूची खाली नहीं है, तो यह डेटासेट सूची में डेटासेट के लिए मास्टर डेटासेट है। उदाहरण के लिए:

var 
    oDetails: TList; 
    lIsMaster: Boolean; 
... 
    oDetails := TList.Create; 
    try 
    myDataSet.GetDetailDataSets(oDetails); 
    lIsMaster := oDetails.Count > 0; 
    finally 
    oDetails.Free; 
    end; 
संबंधित मुद्दे