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


الملفات المرفقة
.rar   WindowsApp1.rar (الحجم : 387.15 ك ب / التحميلات : 32)
الرد }}}
تم الشكر بواسطة:
#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


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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة فى جمع عمود فى داتا جريد فيو احمد خطاب 3 152 06-03-24, 07:49 PM
آخر رد: احمد خطاب
  حذف الاسطر الفارغه من الداتا جريد فيو اليوم السابع 3 2,357 03-03-24, 12:57 AM
آخر رد: مصمم هاوي
  كيفية جمع أرقام عمود فى الداتا جريد فيو بناءاً على بيانات معينة heem1986 5 223 25-02-24, 11:26 PM
آخر رد: heem1986
  كيفية تنفيذ امر عند التعليم على checkbox بالداتا جريد فيو heem1986 2 158 21-02-24, 01:37 AM
آخر رد: heem1986
  [VB.NET] مشكلة التاريخ في الداتا قريد فيو مبرمج صغير 1 6 399 24-01-24, 10:12 PM
آخر رد: annagui
  اريد مساعدة في العملية الحسابية melad2002 3 406 29-12-23, 09:10 PM
آخر رد: melad2002
  هل الداتا قراد فيو تسمح بتعدد الاسطر داخل الخلية عند جلب بيانات نصية طويله من قاعدة ب khalidalwdi 3 460 10-11-23, 11:08 AM
آخر رد: khalidalwdi
  ممكن كود ترقيم تلقائي في الداتا غريد فيو المبرمج البسيط 16 10,577 08-11-23, 01:44 AM
آخر رد: الحزين اليماني
  انتقال المؤشر بين الخلايا في نفس الصف في الداتا جريد فيو fares_mohammed 2 462 03-11-23, 09:57 PM
آخر رد: fares_mohammed
  يوجد مشكلة عند تحميل البيانات فى كمبوبوكس داخل داتا جريد new_programer 2 473 17-10-23, 06:51 PM
آخر رد: new_programer

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


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