خارطة الموقع برنامج مبيعات ونقاط البيع وجرد المستودعات ومحاسبة الرئيسية من نحن اتصل بنا English
يازسيس لهندسة البرمجيات
Skip Navigation Links
خوارزميات وانظمة التشفيرExpand خوارزميات وانظمة التشفير
|
نظام إدارة المبيعات
|
نظام إدارة العيادات
|
تعليم & شروحاتExpand تعليم & شروحات
 
طريقة التعامل مع اكثر من اداة DropDownList داخل اداة DetailsView عند الإضافة
بواسطة احمد عادل موسى
2014-11-10

بسم الله الرحمن الرحيم

لقد طلب الكثير من الأعضاء طريقة إضافة سجل جديد من خلال اداة DetailsView مع مراعاة استخدام اكثر من اداة DropDownList بداخلها عند الإضافة وربط كل اداة مع جدول مستقل، ولتبسيط الفكرة استندت لمثال بسيط جداً من احد اعضاء الموقع "السيد انور" لتطبيق فكرة المشروع كما يلي:

لنفترض ان لديك مشروع لبيع أجهزة الخلوي للعملاء حيث يتيح لك المشروع إضافة اسم العميل واسم الهاتف ونوعه او موديل الهاتف، فمن الصعب ان تطبع البيانات بشكل متكرر عند كل عملية إضافة لذا لابدّ من استخدام ادوات DropDownList في الصفحة خصوصأ لحقل "نوع الهاتف" وحقل "الإصدار او الموديل" فلكل نوع هاتف هناك إصدارات او موديلات يجب ان يتم فرزها داخل اداة DropDownList إعتماداً على نوع الهاتف. ولكن المشكلة هنا ان هناك العديد من أنواع الهواتف لذا لابدّ من وجود اداة DropDownList اخرى لتحديد نوع الهاتف، كما في الصورة التالية:

من وجهة نظري الشخصية لا انصح بإستخدام اداة DetailsView عند إضافة سجل في حال استخدامك لأدوات DropDownList لأنك ستواجه الكثير من المشاكل وتحتاج الى أكواد ASP.NET وأكود VB او C# طويلة جداً وان تعتمد على Application Object معقد، لكن بناءً على طلبكم اجتهدت لبناء هذا المثال استجابة لكم.

فكرة المثال بسيطة جداً لكن تطبيقها ضمن اداة DetailsView معقدة نوعاً ما ... وهي:

يوجد لدينا صفحة لبيع اجهزة الهاتف تتيح للمستخدم إضافة (اسم العميل + نوع الهاتف + الموديل او إصدار الهاتف) إن امر الإضافة سهل وبسيط لكن إذا كان من خلال ادوات TextBox لكن نريد فرض القيود والشروط التالية في المشروع وهي:

  1. اسم المشتري يتم إضافته من خلال اداة TextBox 
  2. نوع الهاتف يتم عرض انواع الهواتف من خلال جدول مستقل داخل اداة DropDownList
  3. الإصدار او الموديل يتم فرز الموديلات الخاصة بالهاتف داخل اداة DropDownList أخرى للهاتف الذي حددناه من خلال الأداة الأولى وهي DropDownList

فالمشكلة في آلية او طريقة فرز الإصدارات او الموديلات الخاصة بالهاتف المحدد من اداة نوع الهاتف كما في الصورة التالية:

المشكلة هنا ليست بربط اداوات DropDowList مع الجداول بل في العوامل التي ستعتمد عليها لفرز التصنيفات التي تتبع للهاتف المحدد داخل اداة DropDownList لذا ستضطر لأستخدام Application Opject كإستخدام Session مثلاً لتخزين القيم بداخله وستضطر لإستخدام أكواد تقنية ASP.NET وأكواد VB او C# معاً بالتحليل التالي لقاعدة البيانات وما تحتويه من جداول:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

اما في حقل نوع الهاتف قم بإضافة اداة DropDownList وقم بربطها مع جدول الهواتف من خلال المعالج كما يلي:

ايضاً في حقل الإصدارات قم بسحب اداة DropDownList بداخل InsertTemplate وقم بربطها مع جدول الإصدارات ولكن حدد لجملة الفرز Select من خلال المعالج واستخدم Session  وليكن بأسم PhoneID وذلك كيّ نعتمد عليه في عملية الفرز للإصدارات كما يلي:

 

ولكن كيف سيتم تعبئة قيمة  Session("PhoneID")  بقيمة او رقم الهاتف؟

بالعودة على اداة DropDownList الخاصة في انواع الهواتف سنستخدم كود VB في حدث DropDownList_Phones_SelectedIndexChanged بحيث يتم تعبئة   Session("PhoneID")  بقيمة رقم الهاتف وبناءً على هذه القيمة يتم فرز فقط الإصدارات التي يتبع لها الهاتف كما في الكود التالي:

وبالعودة الى اكواد ASP.NET لا بد من إجراء التعديلات عليها كيّ يتم اعتماد محتوياتها بدلاً من ادوات TextBox التي قمنا بحذفها كما في الصورة التالية:

لاحظ مدى تعقيد تطبيق الفكرة ومن وجهة نظري لا انصح بتطبيق هذه الفكرة للمشاريع الكبيرة وانصح بأستعمال اكواد VB او C# فقط ومن خلال أدوات مستقلة داخل الصفحة لسهولة التعامل معها والوصول إليها برمجياً على عكس استخدام اداة DetailsView، ولكن اتمنى ان تكون الفكرة قد وصلتكم وهذه أكواد المشروع:

كود ASP.NET للصفحة كاملة:

وهذا كود VB للصفحة

 

ملاحظة: لقد اضفت في الصفحة اداة GridView لعرض المدخلات وقمت بربطها مع جدول المشتريات ويمكنكم تحميل المشروع من خلال الرابط التالي:

كلمة مرور فك ضغط الملف هي عنوان الموقع www.yazsys.com

تحميل

 

 

 
 
إعلان ... لأصحاب المتجار فقط - برنامج تنفيذي وليس سورس كود
تحميل برنامج مبيعات وجرد المستودعات

 
 
الصفحة الرئيسية
خوارزميات التشفير English
خوارزميات التشفير العربية
تصميم مشاريع التخرج
تصميم المواقع الإلكترونية
تصميم وإنتاج البرمجيات
مشاريع برمجة متنوعة مفتوحة المصدر
دورة برمجة وتصميم مواقع الكترونية
مواضيع ودروس تعليمية
مواضيع ومقالات عامة
إذاعة القرآن الكريم
اتصل بنا
نبذة عن هذا الموقع
خارطة الموقع
نظام إدارة المبيعات
نظام إدارة العيادات