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

كود :
Dim dis As Double = Val(TXT_DISCOUNT.Text)

       For i As Integer = 0 To DGV.Rows.Count - 1

           Dim def As Double = Val(DGV(2, DGV.Rows(i).Index).Value) - Val(DGV(8, DGV.Rows(i).Index).Value)

           If def <= 0 Or Val(DGV(2, DGV.Rows(i).Index).Value) <= Val(DGV(8, DGV.Rows(i).Index).Value) Then
               DGV(3, DGV.Rows(i).Index).Value = Val(DGV(2, DGV.Rows(i).Index).Value)
               DGV(7, DGV.Rows(i).Index).Value = Val(DGV(3, DGV.Rows(i).Index).Value) * Val(DGV(4, DGV.Rows(i).Index).Value)
               Continue For
           End If
           ' أذا كان الخصم أقل من اجمالى الصنف
           If dis < def * Val(DGV(4, DGV.Rows(i).Index).Value) Then
               DGV(3, DGV.Rows(i).Index).Value = Val(DGV(2, DGV.Rows(i).Index).Value) - (dis / Val(DGV(4, DGV.Rows(i).Index).Value))
               DGV(7, DGV.Rows(i).Index).Value = Val(DGV(3, DGV.Rows(i).Index).Value) * Val(DGV(4, DGV.Rows(i).Index).Value)
               DGV.Rows(i).DefaultCellStyle.BackColor = Color.Red
               dis = dis - (def * Val(DGV(4, DGV.Rows(i).Index).Value))
               Exit For
           End If

           If def < dis * Val(DGV(4, DGV.Rows(i).Index).Value) And Val(DGV(2, DGV.Rows(i).Index).Value) > Val(DGV(8, DGV.Rows(i).Index).Value) Then

               DGV(3, DGV.Rows(i).Index).Value = Val(DGV(2, DGV.Rows(i).Index).Value) - def
               DGV(7, DGV.Rows(i).Index).Value = Val(DGV(3, DGV.Rows(i).Index).Value) * Val(DGV(4, DGV.Rows(i).Index).Value)
               DGV.Rows(i).DefaultCellStyle.BackColor = Color.Yellow
           Else

               DGV(3, DGV.Rows(i).Index).Value = Val(DGV(2, DGV.Rows(i).Index).Value) - dis
               DGV(7, DGV.Rows(i).Index).Value = Val(DGV(3, DGV.Rows(i).Index).Value) * Val(DGV(4, DGV.Rows(i).Index).Value)
               DGV.Rows(i).DefaultCellStyle.BackColor = Color.Plum

           End If



           dis = dis - (def * Val(DGV(4, DGV.Rows(i).Index).Value))
           If dis <= 0 Then
               Exit For
           End If

       Next

       For i As Integer = 0 To DGV.Rows.Count - 1
           If Val(DGV(3, DGV.Rows(i).Index).Value) = Nothing Then
               DGV(3, DGV.Rows(i).Index).Value = DGV(2, DGV.Rows(i).Index).Value
               DGV(7, DGV.Rows(i).Index).Value = Val(DGV(3, DGV.Rows(i).Index).Value) * Val(DGV(4, DGV.Rows(i).Index).Value)
           End If
       Next

       '00000000000000000000000000000000000000000000000
       Dim s As Double
       For i As Integer = 0 To DGV.Rows.Count - 1

           s = s + Val(DGV(7, DGV.Rows(i).Index).Value)
           TextBox1.Text = s
       Next
مثال

قيمة الخصم :  44 جنيه

قبل الخصم





بعد الخصم




للاستفسار

https://goo.gl/Kbu4Mc
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مثال] مثال عن رسم دوائر بشكل جميل عبد الهادي بهاب 0 148 09-09-20, 01:49 AM
آخر رد: عبد الهادي بهاب
  مثال على عمل qr code و قرائة ال qr code من ملف صورة او من الشاشة mohamed haroon 4 2,410 08-09-20, 10:48 AM
آخر رد: Emad aldeen
  مثال بسيط للنقل المواد بين المخازن ارجو ان يعجبكم خالد كامل1 1 235 27-08-20, 10:35 PM
آخر رد: خالد كامل1
  [كود] مثال عن رسم خط مستقيم بين نقطتين عبد الهادي بهاب 7 507 07-08-20, 04:52 AM
آخر رد: عبد الهادي بهاب
  مثال استيراد اى ملف اكسيل وتصدير البيانات الى ملف اكسيل new_programer 2 1,017 05-08-20, 07:31 PM
آخر رد: عبد الهادي بهاب
  [Acces2007] مثال على شجرة محاسبية Mohamad Anan 2 575 30-07-20, 02:38 PM
آخر رد: المعترس
  مثال في عمل النسخة الاحتياطية مع ضغط الملف asemshahen5 0 238 26-07-20, 02:09 AM
آخر رد: asemshahen5
  مثال لحمايه ملفات البرنامج من النسخ alshandodi 3 632 17-07-20, 12:28 PM
آخر رد: ibra9009
  [مشروع] مثال للعمل مع الـBackgroundWorker سعود 10 1,746 09-07-20, 06:24 AM
آخر رد: سعود
  [VB.NET] تم تحديث الرابط - مثال برنامج اقتطاع الفيديو معاند الحظ 6 908 07-07-20, 01:45 AM
آخر رد: معاند الحظ

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم