أسلوب مفيد جداً عند تعريف غرض TDataSet برمجياً، والرغبة في إضافة حقول محسوبة برمجياً مع القدرة على الوصول إلى الحقول الأساسية لمجموعة المعطيات دون إضافتها يدوياً.
type TRevealedDataSet = class(TDataSet); begin ... // ********************************** TRevealedDataSet(MyDataSet).CreateFields; // ********************************** // أضف الحقول المحسوبة هنا إن أردت MyDataSet.Open; ... end;
ملاحظة:
التحويل بهدف الوصول إلى المنهج المحمي CreateFields للصنف TDataSet
لأن الصنف عندما يكون معرفاً في وحدة (ولو مشتقاً من صنف من وحدة أخرى) تكون الوحدة كلها صديقة له (أي تستطيع الوصول إلى بياناته ومناهجه المحمية)