تقييم الموضوع :
  • 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
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [مثال] مثال لنسخ وإستعادة قاعدة البيانات ( تحديث) نسخ تلقائي للقاعدة حسب اليوم والساعة جميل علي 81 48,094 10-02-24, 11:26 AM
آخر رد: محمد العموري
  مثال استيراد اى ملف اكسيل وتصدير البيانات الى ملف اكسيل new_programer 3 3,426 07-12-22, 12:19 PM
آخر رد: hoda299
  [VB.NET] مثال بسيط عن كيفية عمل برنامج المصحف كمثال موقع [ quran.ksu.edu.sa ] elgokr 12 8,934 14-10-22, 12:59 AM
آخر رد: spiky
  [مشروع] غير مكتمل (تقسيم و دمج الملفات البعيدة و القريبة) سعود 0 827 03-09-22, 12:05 PM
آخر رد: سعود
  مثال على عمل qr code و قرائة ال qr code من ملف صورة او من الشاشة mohamed haroon 6 6,487 02-09-22, 01:48 AM
آخر رد: Mahmoud41
  [مشروع] مشروع تقسيم ملف بعيد وتجميع الاجزاء بعد التحميل سعود 13 2,245 01-09-22, 10:39 PM
آخر رد: سعود
Heart [مشروع] [* محدث*] تقسيم ملف و تجميعه مرة اخرى. سعود 9 1,857 28-08-22, 11:18 AM
آخر رد: سعود
  مثال إضافة وأزالة البرنامج من قائمة بدء التشغيل سيد درويش 0 807 26-08-22, 12:14 PM
آخر رد: سيد درويش
  مثال لعرض الفورم بما يناسب دقة الشاشة سيد درويش 0 1,164 26-08-22, 11:58 AM
آخر رد: سيد درويش
  [مثال] كيفية تعبئة كمبوبوكس بدلالة تغير عنصر في كومبو آخر asmarsou 0 927 08-08-22, 10:54 PM
آخر رد: asmarsou

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


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