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


الملفات المرفقة
.rar   WindowsApp1.rar (الحجم : 387.15 ك ب / التحميلات : 12)
الرد
تم الشكر بواسطة:
#12
(13-01-21, 07:53 PM)moosa_alabri كتب : تفضل واعتذر مرة اخرى

مشكور اخي الكريم لم تحل المشكلة بعد ولم يعمل
شاكر لك متابعتك
ننتظر بقية الاعضاء لعلنا نجد الحل
تحياتي لك
الرد
تم الشكر بواسطة:
#13
السلام عليكم ورحمة الله وبركاته
اخي الكريم يبدو انك لم توفق بتوصيف السؤال 
سافترض انني حصلت على محموع عمود معين في الدلتاغرايد ووضعت النتيجة في تكست بوكس الان لو اعتبرت ان القيمة هي المبلع المستحق وقام الزبون بدفع مبلغ سأكتبه في مربع نص أخر وبمجرد الانتقال الى مربع الباقي يتم طرح المبلغين من بعض وتظهر النتيجة في مربع الباقي 
- هل هي عملية تسديد قسط زبالتالي سيتم طرح القسط من المجموع وبالعادة يكون ثابت بناء على تحديد القسط مسبقا
- هل هي عملية شراء وبالتالي المبلع الطدفوع اصغر من المبلغ الاجمالي ويظهر المتبقي في مربع الباقي لدفعه الى الزبون
الامر يحتاج الى ايضاح اكثر يتتم الاجابة بشكل صحيح
اعمل الخير واجرك لاتنتظره فالله خير من اليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد
تم الشكر بواسطة: essawq , عبد العزيز البسكري
#14
(13-01-21, 09:50 PM)ابراهيم ايبو كتب : السلام عليكم ورحمة الله وبركاته
اخي الكريم يبدو انك لم توفق بتوصيف السؤال 
سافترض انني حصلت على محموع عمود معين في الدلتاغرايد ووضعت النتيجة في تكست بوكس الان لو اعتبرت ان القيمة هي المبلع المستحق وقام الزبون بدفع مبلغ سأكتبه في مربع نص أخر وبمجرد الانتقال الى مربع الباقي يتم طرح المبلغين من بعض وتظهر النتيجة في مربع الباقي 
- هل هي عملية تسديد قسط زبالتالي سيتم طرح القسط من المجموع وبالعادة يكون ثابت بناء على تحديد القسط مسبقا
- هل هي عملية شراء وبالتالي المبلع الطدفوع اصغر من المبلغ الاجمالي ويظهر المتبقي في مربع الباقي لدفعه الى الزبون
الامر يحتاج الى ايضاح اكثر يتتم الاجابة بشكل صحيح

مشكور اخي ابراهيم على هذا المرور العطر

اخي هذا البرنامج برنامج شخصي لي فقط ولاموري الشخصية
والبرنامج شغال مئة بالمئة ولا يوجد اية مشاكل بة والحمد لله
لكن عندي خلينا نحكي اقساط تدفع كل شهر ويتم عرض البيانات والقسط ويتم جمع العمود الخاص بالقسط علما لا يوجد غيرة
ويظهر الناتج في تكست بوكس  يعمل مئة بالمئة ولا يوجد اية مشاكل .
# احببت ان اضع تكست بوكس على الفورم واردت انة عندما يتم تحميل الفورم يتم خصم المبلغ المدفوع من المبلغ الاجمالي ويظهر المبلغ المتبقي ويتجاوب مع لو حذفت او عدلت او ضفت ولم اوفق بالطريقة طبعا بدون ادخال مبلغ في تكست بوكس يكون الرقم ثابت بمعادلة معينة
اكيد في طريقة لعمل ذلك
وارفقت المشروع + القاعدة  ماذا يوجد اكثر من ذلك نوضيح
كل الحب والاحتراك لك اخي ابراهيم
الرد
تم الشكر بواسطة:
#15
السلام عليكم 
اخي essawq
الامر بإذن الله بسيط قم بتعريف متغير رقمي واعطه قيمة ثابتة واستخدم هذه القيمة في عملية الطرح ... 
ايضا هنا هذه القيمة هل هي ثابتة دائما حتى لو تغير مبلغ القسط ؟ ام انها متغيرة ويجب اخذ قيمتها من القسط المحدد
ولكن ماذا لو اردت ادخال قيمة بدلا عنها ؟
هنا يجب عمل الاتي
اولا يجب عدم وضع القيمة الثابتة في مربع النص وبذلك تتم العملية اتو ماتيكيا مع المتغير بناء على ان مربع نص القيمة فارغا 
اما ان وضعنا قيمة فهنا تلغى عملية الطرح مع المتغير وتصبح القيمة في مربع النص هي التي ستدخل في عملية الحساب
لا أعرف ان كنت قد استطعت ايصال الفكرة في الحل 
اعمل الخير واجرك لاتنتظره فالله خير من اليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد
تم الشكر بواسطة: essawq , عبد العزيز البسكري
#16
مشكورين اخواني  تم الحل

والحل انني اضفت حقل جديد في قاعدة البيانات هذا الحقل لكي اول صف وضعت فية القيمة العددية التي اريد الطرح منها وباقي الصفوف اصفار

وعدلت على كود الاضافة والتعديل

وعدلت دالة الجمع 

كود :
Private Sub SumDgv()
       Dim x, y, z As Integer
       For i As Integer = 0 To DgvGoled.RowCount - 1
           x += DgvGoled.Rows(i).Cells(2).Value
           y += DgvGoled.Rows(i).Cells(5).Value
       Next
       TexTotal2.Text = x.ToString
       TextBox1.Text = y.ToString
       z = y - x
       TexTotal1.Text = z.ToString
   End Sub

وهذا كود الفورم كامل

كود :
Public Class Frm_Goled
   Dim myconn As New DBconn
   Private Sub AutoNumber()
       myconn.tblGroup.Clear()
       myconn.tblGroup = myconn.readData("Select * from Goled", "")
       Dim coluname() As String = {"الرقم", "رقم المرجع", "المبلغ المدفوع", "تاريخ الوصل", "ملاحظات", "الباقي"}
       myconn.formatgrd(coluname, DgvGoled)
       myconn.cur = CType(Me.BindingContext(myconn.tblGroup), CurrencyManager)
       myconn.showposition(lbl:=LbAdd)
       myconn.NewRecAutoNumber("ID", "Goled", txtID, Me)
       TexCompany.Clear()
       DtbDate.Text = DateTime.Now.ToShortDateString()
       'SummDgvGoled()
       SumDgv()
       TxtNotes.Clear()
       TxtHouer.Clear()
       btnAdd.Enabled = True
       BtnNew.Enabled = True
       btnDelete.Enabled = False
       btnSave.Enabled = False
       DgvGoled_Config()
   End Sub
   Private Sub DgvGoled_Config()
       With DgvGoled
           .Columns(0).FillWeight = 50
           .Columns(0).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(0).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(1).FillWeight = 60
           .Columns(1).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(1).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(2).FillWeight = 80
           .Columns(2).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(2).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(3).FillWeight = 80
           .Columns(3).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(3).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(3).DefaultCellStyle.Format = "yyyy/MM/dd"
           .Columns(4).FillWeight = 170
           .Columns(4).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(4).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(5).FillWeight = 170
           .Columns(5).DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(5).HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter
           .Columns(5).Visible = False
       End With
   End Sub
   Private row As Integer
   Private Sub Showe()
       Try
           myconn.tbl.Clear()
           myconn.tbl = myconn.readData("select * from Goled", "")
           If myconn.tbl.Rows.Count <= 0 Then
               MessageBox.Show("لا يوجد بيانات فى هذه الشاشه")
           Else
               Try
                   txtID.Text = myconn.tbl.Rows(row)(0).ToString()
                   TexCompany.Text = myconn.tbl.Rows(row)(1).ToString()
                   TxtHouer.Text = myconn.tbl.Rows(row)(2).ToString()
                   DtbDate.Value = myconn.tbl.Rows(row)(3).ToString()
                   TxtNotes.Text = myconn.tbl.Rows(row)(4).ToString()
                   TxtSafy.Text = myconn.tbl.Rows(row)(5).ToString()
                   'TxtSafy.Text = False
               Catch ex As Exception
                   MessageBox.Show(ex.Message)
               End Try
           End If
           btnAdd.Enabled = False
           BtnNew.Enabled = True
           btnDelete.Enabled = True
           btnSave.Enabled = True
       Catch ex As Exception
           MessageBox.Show(ex.Message)
       End Try
   End Sub
   'Private Sub SummDgvGoled()
   '    Dim summ As Integer = 0
   '    For i As Integer = 0 To DgvGoled.RowCount - 1
   '        summ += DgvGoled.Rows(i).Cells(2).Value
   '    Next
   '    TexTotal2.Text = Format(summ, "00.00")
   '    TexTotal2.ForeColor = Color.Red
   'End Sub
   Private Sub SumDgv()
       Dim x, y, z As Integer
       For i As Integer = 0 To DgvGoled.RowCount - 1
           x += DgvGoled.Rows(i).Cells(2).Value
           y += DgvGoled.Rows(i).Cells(5).Value
       Next
       TexTotal2.Text = x.ToString
       TextBox1.Text = y.ToString
       z = y - x
       TexTotal1.Text = z.ToString
   End Sub
   Private Sub Frm_Goled_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       AutoNumber()
   End Sub
   Private Sub BtnNew_Click(sender As Object, e As EventArgs) Handles BtnNew.Click
       AutoNumber()
   End Sub
   Private Sub btnFirst_Click(sender As Object, e As EventArgs) Handles btnFirst.Click
       Showe()
       myconn.cur.Position = 0
       Dim pos As Integer = Me.DgvGoled.CurrentRow.Index
       txtID.Text = DgvGoled.Rows(pos).Cells(0).Value
       TexCompany.Text = DgvGoled.Rows(pos).Cells(1).Value
       TxtHouer.Text = DgvGoled.Rows(pos).Cells(2).Value
       DtbDate.Value = DgvGoled.Rows(pos).Cells(3).Value
       TxtNotes.Text = DgvGoled.Rows(pos).Cells(4).Value
       TxtSafy.Text = DgvGoled.Rows(pos).Cells(5).Value
       myconn.showposition(lbl:=LbAdd)
   End Sub
   Private Sub btnPrev_Click(sender As Object, e As EventArgs) Handles btnPrev.Click
       Showe()
       myconn.cur.Position -= 1
       Dim pos As Integer = Me.DgvGoled.CurrentRow.Index
       txtID.Text = DgvGoled.Rows(pos).Cells(0).Value
       TexCompany.Text = DgvGoled.Rows(pos).Cells(1).Value
       TxtHouer.Text = DgvGoled.Rows(pos).Cells(2).Value
       DtbDate.Value = DgvGoled.Rows(pos).Cells(3).Value
       TxtNotes.Text = DgvGoled.Rows(pos).Cells(4).Value
       TxtSafy.Text = DgvGoled.Rows(pos).Cells(5).Value
       myconn.showposition(lbl:=LbAdd)
   End Sub
   Private Sub btnNext_Click(sender As Object, e As EventArgs) Handles btnNext.Click
       Showe()
       myconn.cur.Position += 1
       Dim pos As Integer = Me.DgvGoled.CurrentRow.Index
       txtID.Text = DgvGoled.Rows(pos).Cells(0).Value
       TexCompany.Text = DgvGoled.Rows(pos).Cells(1).Value
       TxtHouer.Text = DgvGoled.Rows(pos).Cells(2).Value
       DtbDate.Value = DgvGoled.Rows(pos).Cells(3).Value
       TxtNotes.Text = DgvGoled.Rows(pos).Cells(4).Value
       TxtSafy.Text = DgvGoled.Rows(pos).Cells(5).Value
       myconn.showposition(lbl:=LbAdd)
   End Sub
   Private Sub btnLast_Click(sender As Object, e As EventArgs) Handles btnLast.Click
       Showe()
       myconn.cur.Position = myconn.cur.Count - 1
       Dim pos As Integer = Me.DgvGoled.CurrentRow.Index
       txtID.Text = DgvGoled.Rows(pos).Cells(0).Value
       TexCompany.Text = DgvGoled.Rows(pos).Cells(1).Value
       TxtHouer.Text = DgvGoled.Rows(pos).Cells(2).Value
       DtbDate.Value = DgvGoled.Rows(pos).Cells(3).Value
       TxtNotes.Text = DgvGoled.Rows(pos).Cells(4).Value
       TxtSafy.Text = DgvGoled.Rows(pos).Cells(5).Value
       myconn.showposition(lbl:=LbAdd)
   End Sub
   Private Sub DgvGoled_CellClick(sender As Object, e As DataGridViewCellEventArgs) Handles DgvGoled.CellClick
       Dim pos As Integer = Me.DgvGoled.CurrentRow.Index
       txtID.Text = DgvGoled.Rows(pos).Cells(0).Value
       TexCompany.Text = DgvGoled.Rows(pos).Cells(1).Value
       TxtHouer.Text = DgvGoled.Rows(pos).Cells(2).Value
       DtbDate.Value = DgvGoled.Rows(pos).Cells(3).Value
       TxtNotes.Text = DgvGoled.Rows(pos).Cells(4).Value
       TxtSafy.Text = DgvGoled.Rows(pos).Cells(5).Value
       myconn.showposition(lbl:=LbAdd)
       btnAdd.Enabled = False
       BtnNew.Enabled = True
   End Sub
   Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
       If TexCompany.Text = "" Then MessageBox.Show(" يجب تعبئة كافة الحقول قبل الحفظ", "تنبية", MessageBoxButtons.OK, MessageBoxIcon.Warning) : TexCompany.Focus() : Exit Sub
       If TxtHouer.Text = "" Then MessageBox.Show(" يجب تعبئة كافة الحقول قبل الحفظ", "تنبية", MessageBoxButtons.OK, MessageBoxIcon.Warning) : TxtHouer.Focus() : Exit Sub
       Dim d As String = DtbDate.Value.ToString("yyyy/MM/dd")
       myconn.exceuteData("insert into Goled Values (" & txtID.Text & " ,N'" + TexCompany.Text & "' ,N'" + TxtHouer.Text & "', N'" & d & "', N'" + TxtNotes.Text & "',N'" + TxtSafy.Text & "'  )", "تم الادخال بنجاح")
       AutoNumber()
   End Sub
   Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
       If TexCompany.Text = "" Then MessageBox.Show(" يجب تعبئة كافة الحقول قبل الحفظ", "تنبية", MessageBoxButtons.OK, MessageBoxIcon.Warning) : TexCompany.Focus() : Exit Sub
       If TxtHouer.Text = "" Then MessageBox.Show(" يجب تعبئة كافة الحقول قبل الحفظ", "تنبية", MessageBoxButtons.OK, MessageBoxIcon.Warning) : TxtHouer.Focus() : Exit Sub
       myconn.exceuteData("update Goled set Number_Goled= '" & TexCompany.Text & "', Mony_Goled= '" & TxtHouer.Text & "', Date_Goled= '" & DtbDate.Text & "', Note_Goled= '" & TxtNotes.Text & "',Safy_Goled= '" & TxtSafy.Text & "' where ID=" + txtID.Text + " ", "تم التعديل بنجاح")
       AutoNumber()
   End Sub
   Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles btnDelete.Click
       If MessageBox.Show("هل انتا متاكد من مسح البيانات", "تاكيد", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) = DialogResult.Yes Then
           myconn.tblSearch = myconn.readData("delete from Goled where ID=" + txtID.Text + "", "تم مسح البيانات بنجاح")
           AutoNumber()
       End If
   End Sub
   Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
       Close()
   End Sub
   Private Sub TexCompany_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TexCompany.KeyPress
       Select Case e.KeyChar
           Case "0"c To "9"c, Chr(Keys.Back)
           Case "."
               'لن نفعل أي شيء.. هذا معناه قبول كتابة هذا الحرف
           Case Else
               Beep()
               e.Handled = True
       End Select
   End Sub
   Private Sub TxtHouer_KeyPress(sender As Object, e As KeyPressEventArgs) Handles TxtHouer.KeyPress
       Select Case e.KeyChar
           Case "0"c To "9"c, Chr(Keys.Back)
           Case "."
               'لن نفعل أي شيء.. هذا معناه قبول كتابة هذا الحرف
           Case Else
               Beep()
               e.Handled = True
       End Select
   End Sub
End Class


اشكركم جميعا وبارك الله فيكم
الرد
تم الشكر بواسطة: عبد العزيز البسكري


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ما سبب هذا الخطأ وكيف يتم الحل؟ أبو عبدالله الحلواني 6 183 منذ 1 ساعه مضت
آخر رد: ZaerAllail
  [VB.NET] استفسار :- بخصوص نقل الداتا من DataGridView عن طريق CheckBoxColumn dubai.eig 4 1,047 19-01-21, 02:41 AM
آخر رد: mr_hso
  تعبئه الداتا قريد باكثر من مليون سجل من قاعده البيانات Owz 3 142 18-01-21, 12:16 PM
آخر رد: Owz
  قمت بعمل مثال لإستخراج النصوص من الصورة واجهتني مشكلة اللغة العربية ماهو الحل mohamedgadain61 1 114 17-01-21, 07:54 AM
آخر رد: ابراهيم ايبو
  [سؤال] مساعدة في انشاء combobox في الداتا جريد fawazm15019797 0 71 16-01-21, 07:17 PM
آخر رد: fawazm15019797
  مساعدة في اضافة زر داخل خلية في الداتا جريد فيو MustafaShaker 3 140 15-01-21, 04:26 PM
آخر رد: moosa_alabri
  تعبئة الداتا جريد باكثر من استعلام Owz 0 108 14-01-21, 11:51 AM
آخر رد: Owz
  جمع جزء من عمود في الداتا جريد فيو abdelrahem 0 110 28-12-20, 12:20 PM
آخر رد: abdelrahem
  فرز الداتا قريد على حسب اللون Owz 0 107 28-12-20, 10:59 AM
آخر رد: Owz
  فلترة الخلايا الملونه في DGV الداتا قريد Owz 3 307 24-12-20, 01:17 AM
آخر رد: asemshahen5

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


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