تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] تفادي تكرار ادخال نفس العنصر في الداتاغريد فياو و تحديث خلية الكمية و السعر
#11
هذا التعديل :

كود :
If e.KeyCode = Keys.Enter Then
   If qte_vente.Text = "" Or qte_vente.Text = "0" Then
       MsgBox("أدخل الكمية المطلوبة")
   Else
       For i As Integer = 0 To DGVBill.Rows.Count - 1
           If DGVBill.Rows(i).Cells(1).Value = codebare_vente.Text Then
               DGVBill.Rows(i).Cells(5).Value = Val(DGVBill.Rows(i).Cells(5).Value + Val(qte_vente.Text))
               calcul()
               Exit Sub
           End If
       Next i

       Dim row As DataRow = dt.NewRow
       row(0) = gid()
       row(1) = codebare_vente.Text
       row(2) = designation_vente.Text
       row(3) = unite_vente.Text
       row(4) = pd_vente.Text
       row(5) = qte_vente.Text
       row(6) = ptotal_vente.Text
       dt.Rows.Add(row)
       DGVBill.DataSource = dt
       calcul()
   End If
End If
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
#12
Heart 
(01-08-22, 05:51 AM)بالفعل أخي Taha Okla هذا هو الكود المطلوب، لك مني جزيل الشكر ، إن احتجت للديزاين فلا تتردد في السؤال أبدا. كتب :
كود :
  If e.KeyCode = Keys.Enter Then

  If qte_vente.Text = "" Or qte_vente.Text = "0" Then

      MsgBox("أدخل الكمية المطلوبة")
  Else
      For i As Integer = 0 To DGVBill.Rows.Count - 1
          If DGVBill.Rows(i).Cells(1).Value = codebare_vente.Text Then
              DGVBill.Rows(i).Cells(5).Value = Val(DGVBill.Rows(i).Cells(5).Value + Val(qte_vente.Text))
              calcul()
              Exit Sub
          End If
      Next i

      Dim row As DataRow = dt.NewRow
      row(0) = gid()
      row(1) = codebare_vente.Text
      row(2) = designation_vente.Text
      row(3) = unite_vente.Text
      row(4) = pd_vente.Text
      row(5) = qte_vente.Text
      row(6) = ptotal_vente.Text
      dt.Rows.Add(row)
      DGVBill.DataSource = dt
      calcul()
  End If
End If
                     
تنويه: الكود الآن يقوم بادخال البيانات DT الى DGV  وفي حال وجد بأن العنصر موجود مسبقا ، يقوم بتعديل الكمية فقط و إضافة الكمية الجديدة الموجودة في خانة التاكست بوكس الخاص بالكمية ، في جميع الصفوف وليس في الصف الأول فقط كما حدث معي سالفا.



قال الله تعالى:" وقلت استغفروا ربكم إنه كان غفارا يرسل السماء عليكم مدرارا و يمددكم بأموال وبنين ويجعل لكم جنات ويجعل لكم أنهار"
"أستغفر الله العظيم و أتوب إليه عدد ما كان و عدد مايكون و عدد الحركات و السكون"
الرد }}}
#13
لم أعرف ما قصدك بالديزاين !!!

==
لكن بالنبسة لهذا الكود وأي كود تقوم بكتابته
عليك أن تحلله بشكل منطقي قبل كتابته - لتعرف أين الخطأ في حال وقع معك خطأ ما.

يعني تمشي مع الكود خطوة بخطوة وتتصور بأنك أنت من سيقوم بعرض النتيجة وليس الشاشة..

فما عملته على الكود هو اعادة تنسيق للكود ولم أقم بإضافة أي شيء على الكود سوى عبارة الخروج من الحدث وانهاءه في حال كان السجل قد سبق إدراجه ضمن الجدول..

جعلنا حلقة For تقوم بقراءة كل اسطر الجدول وتقارنها بالعنصر الجديد :
- إن وجد سطر ما يشابه العنصر الجديد عدل بياناته وقام بانهاء الحدث(متجاوزاً بذلك كود الاضافة الذي يلي حلقة For).
- وإن انتهى من مطابقة كل السجلات ولم يجد العنصر انهى عمل حلقة For نتيجة (قراءة كل ارقامها) وانتقل للكود الذي يلي الحلقة وهو حقل الاضافة فيضيف السجل الجديد.
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
#14
(01-08-22, 06:04 PM)Taha Okla كتب : لم أعرف ما قصدك بالديزاين !!!

==
لكن بالنبسة لهذا الكود وأي كود تقوم بكتابته
عليك أن تحلله بشكل منطقي قبل كتابته - لتعرف أين الخطأ في حال وقع معك خطأ ما.

يعني تمشي مع الكود خطوة بخطوة وتتصور بأنك أنت من سيقوم بعرض النتيجة وليس الشاشة..

فما عملته على الكود هو اعادة تنسيق للكود ولم أقم بإضافة أي شيء على الكود سوى عبارة الخروج من الحدث وانهاءه في حال كان السجل قد سبق إدراجه ضمن الجدول..

جعلنا حلقة For تقوم بقراءة كل اسطر الجدول وتقارنها بالعنصر الجديد :
- إن وجد سطر ما يشابه العنصر الجديد عدل بياناته وقام بانهاء الحدث(متجاوزاً بذلك كود الاضافة الذي يلي حلقة For).
- وإن انتهى من مطابقة كل السجلات ولم يجد العنصر انهى عمل حلقة For نتيجة (قراءة كل ارقامها) وانتقل للكود الذي يلي الحلقة وهو حقل الاضافة فيضيف السجل الجديد.

قصدي بالديزاين هو تصميم واجهات حديثة للبرامج ، بألوان متقاربة و سهلة للعين ، و بخصائص غير مألوفة في البرامج الأخرى، بـ مكتبات Dll أو بدونها، أنا لا أحب التقليد بل أحب الجديد الذي يميز العمل عن غيره من الأعمال الأخرى.



قال الله تعالى:" وقلت استغفروا ربكم إنه كان غفارا يرسل السماء عليكم مدرارا و يمددكم بأموال وبنين ويجعل لكم جنات ويجعل لكم أنهار"
"أستغفر الله العظيم و أتوب إليه عدد ما كان و عدد مايكون و عدد الحركات و السكون"
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#15
تعلمت من مايكروسوفت أن البرنامج كلما كان بسيطاً بالأدوات وسهل الوصول لأي غرض فيه كان أفضل -
فليس العبرة بالشكل وجمالية البرنامج بينما البرنامج
يجب أن يكون سريعاً وخفيفاً على الجهاز الذي سيعمل عليه حتى لو كان بسيط المنظر.

مثلاً : لاحظت أن برامج الحسابات للمقاهي والكفتيريات والجمعيات للشركات البرمجية (الذين يعتنون بالمظهر وجمالية البرنامج) يحتاج من الوقت لاظهار التقرير الشهري أكثر من ثلاث دقائق وأغلبها برامج مبرمجة بلغة الجافا(وهي أسرع من VB في البيانات النصية).
بينما توصلت برامجي لخمسة عشر ثانية لعرض التقرير السنوي (وأقل من ثانية للتقرير اليومي) هذا في اصدارات برامج (VB6.0) فما بالك بإصدارات الـ .Net 
من كامل البيانات وليس من مختصرها وملخصها..
===========================

وآخيراً لا أنسى أن أقدم لك شكري على أهتمامك ومبادرتك القيمة والتي تنم عن جمال خلقك وذوقك ..
..
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
تم الشكر بواسطة: technomedia , ابراهيم ايبو
#16
(01-08-22, 07:59 PM)Taha Okla كتب : تعلمت من مايكروسوفت أن البرنامج كلما كان بسيطاً بالأدوات وسهل الوصول لأي غرض فيه كان أفضل -
فليس العبرة بالشكل وجمالية البرنامج بينما البرنامج
يجب أن يكون سريعاً وخفيفاً على الجهاز الذي سيعمل عليه حتى لو كان بسيط المنظر.

مثلاً : لاحظت أن برامج الحسابات للمقاهي والكفتيريات والجمعيات للشركات البرمجية (الذين يعتنون بالمظهر وجمالية البرنامج) يحتاج من الوقت لاظهار التقرير الشهري أكثر من ثلاث دقائق وأغلبها برامج مبرمجة بلغة الجافا(وهي أسرع من VB في البيانات النصية).
بينما توصلت برامجي لخمسة عشر ثانية لعرض التقرير السنوي (وأقل من ثانية للتقرير اليومي) هذا في اصدارات برامج (VB6.0) فما بالك بإصدارات الـ .Net 
من كامل البيانات وليس من مختصرها وملخصها..
===========================

وآخيراً لا أنسى أن أقدم لك شكري على أهتمامك ومبادرتك القيمة والتي تنم عن جمال خلقك وذوقك ..
..

معك حق في ذلك ، لكني أحاول دائما أن لا أدع "الجمال" يؤثر على سير "الأعمال"

لدي ملاحظة بسيطة :

عندما يجد الكود بأن العنصر موجود مسبقا في DGV يقوم بتعديل الكمية
 
لكن كيف نستطيع أن نجعل الخلية رقم 6   وهي خاصة بالسعر الكلي في DGV    '' الكمية * سعر الوحدة" 

كيف نجعلها تتغير مع تغير الكمية في DGV في أي حدث يمكنني القيام بذلك؟ و هل على إضافة For i أخرى للسعر الكلي ؟



قال الله تعالى:" وقلت استغفروا ربكم إنه كان غفارا يرسل السماء عليكم مدرارا و يمددكم بأموال وبنين ويجعل لكم جنات ويجعل لكم أنهار"
"أستغفر الله العظيم و أتوب إليه عدد ما كان و عدد مايكون و عدد الحركات و السكون"
الرد }}}
تم الشكر بواسطة: Taha Okla , ابراهيم ايبو , ابراهيم ايبو
#17
عندما يجد الكود بأن العنصر موجود مسبقا في DGV يقوم بتعديل الكمية
 
لكن كيف نستطيع أن نجعل الخلية رقم 6   وهي خاصة بالسعر الكلي في DGV    '' الكمية * سعر الوحدة" 

كيف نجعلها تتغير مع تغير الكمية في DGV في أي حدث يمكنني القيام بذلك؟ و هل على إضافة For i أخرى للسعر الكلي ؟



قال الله تعالى:" وقلت استغفروا ربكم إنه كان غفارا يرسل السماء عليكم مدرارا و يمددكم بأموال وبنين ويجعل لكم جنات ويجعل لكم أنهار"
"أستغفر الله العظيم و أتوب إليه عدد ما كان و عدد مايكون و عدد الحركات و السكون"
الرد }}}
تم الشكر بواسطة:
#18
(04-08-22, 01:15 PM)technomedia كتب : عندما يجد الكود بأن العنصر موجود مسبقا في DGV يقوم بتعديل الكمية
 
لكن كيف نستطيع أن نجعل الخلية رقم 6   وهي خاصة بالسعر الكلي في DGV    '' الكمية * سعر الوحدة" 

كيف نجعلها تتغير مع تغير الكمية في DGV في أي حدث يمكنني القيام بذلك؟ و هل على إضافة For i أخرى للسعر الكلي ؟

في نفس الكود بعد سطر تعديل الكمية - تقوم بقراءة الكمية الجديدة من الخلية رقم (5) وتضربها بسعر الوحدة في الخلية الذي فيها سعر الوحدة.
قال صلى الله عليه وسلم: 
«كلمتان خفيفتان على اللسان 
ثقيلتان في الميزان،حبيبتان إلى الرحمن: 
سبحان الله وبحمده، سبحان الله العظيم».
الرد }}}
#19
يوجد حدثان تكتب بهما الكود ...ظنيتك حملت المثال لاني اضفتها.
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
#20
(04-08-22, 03:01 PM)سعود كتب : يوجد حدثان تكتب بهما الكود ...ظنيتك حملت المثال لاني اضفتها.

عفوا أخي سعود لم أنتبه كنت قد حملت المثال الأول فقط ولم أنتبه للتصحيح في المثال الثاني لكني حملته الآن
كل الشكر و التقدير لك وكل من ساهم برد في هذا المنتدى.



قال الله تعالى:" وقلت استغفروا ربكم إنه كان غفارا يرسل السماء عليكم مدرارا و يمددكم بأموال وبنين ويجعل لكم جنات ويجعل لكم أنهار"
"أستغفر الله العظيم و أتوب إليه عدد ما كان و عدد مايكون و عدد الحركات و السكون"
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مساعدة في تحديث سيد أحمد 2 565 18-05-25, 03:11 AM
آخر رد: مصمم هاوي
  سبب تكرار رسالة التنبيه مصمم هاوي 4 435 03-05-25, 02:05 PM
آخر رد: مصمم هاوي
  تعديل كود تحديث البيانات مصمم هاوي 1 790 26-04-25, 06:07 PM
آخر رد: مصمم هاوي
  مساعدة في كود عدم تكرار استدعاء نفس السؤال من المصفوفة fireswored1 5 555 10-02-25, 05:11 PM
آخر رد: fireswored1
  ادخال درجات الطلاب لقاعدة بيانات اكسس .. مساعدة Tajaldeen 9 2,754 07-02-25, 07:59 PM
آخر رد: الورد2
  [VB.NET] كود ادخال المنظومه في اسبات محمد ملك 4 408 16-01-25, 10:31 PM
آخر رد: محمد ملك
  [VB.NET] طلب كود vba اكسل يقوم بنسخ خلية من قائمة ثم لصقها في خلية اخرى Faisal_kg 0 374 25-10-24, 09:13 PM
آخر رد: Faisal_kg
  هل يوجد كود لعدم تكرار نفس البيانات ببعض الحقول F.H.M 19 915 15-09-24, 06:14 AM
آخر رد: F.H.M
  [سؤال] تنفيذ عدة أوامر مختلفة في خلية DGV عند الضغط بعدة أزرار Mohamd Mercy To TheWorlds 0 274 10-09-24, 08:26 AM
آخر رد: Mohamd Mercy To TheWorlds
  تكرار الصفوف في الكريستل ريبورت makky 2 2,468 26-08-24, 01:20 PM
آخر رد: تركي الحلواني

التنقل السريع :


يقوم بقرائة الموضوع: