تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] ارجو الافادة
#1
Wink 
السلام عليكم ورحمة الله تعالي اخواتي واخوتى 
ارجو منكم المساعدة 
لقد قمت بتصميم برنامج للاقساط وعندي مشكلة في شاشة دفع اكثر من قسط 
بعد كتابة ذلك الكود لا يتم التعديل في داخل قاعدة البيانات
 'التعديل على جدول الاقساط
    Public Sub Update_InstallmentSchedule_InDirect(colName As String, colNametxt As String)
        ' check if this ColumnName is already exist in database
     
        Dim DT As New DataTable
        Dim da As New SqlDataAdapter
        DT.Clear()
        da = New SqlDataAdapter("Select * FROM InstallmentSchedule where " & colName & " = " & colNametxt & "", con)
    
        da.Fill(DT)
  
        For t As Integer = 0 To dgv.Rows.Count - 1




            Dim pos As Integer = DT.Rows.Count - 1

            DT.Rows(pos).Item("Dated") = Today
            DT.Rows(pos).Item("Staus") = dgv(5, t).Value
            DT.Rows(pos).Item("UserNaem") = mainScreen.Label5.Text

            Dim Save As New SqlCommandBuilder(da)
            da.Update(DT)
            DT.AcceptChanges()

        Next



وذلك الكود من خلف  (Button)  للمرور على جميع البيانات وحفظها

 For T As Integer = 0 To dgv.Rows.Count - 1

                If dgv(1, T).Value = True Then
                    Update_InstallmentSchedule_InDirect("ID", dgv(0, T).Value)
                End If
            Next
ارجو منكم المساعدة لاننى في امس الحاجة للرد منكم 
والسلام عليكم ورحمة الله تعالي
الرد
تم الشكر بواسطة:
#2
وعليكم السلام...
ممكن توضح؟؟
أولاً: هل انت بتحفظ بيانات الأقساط في أداة DataGridView ثم ترسلها إلى الجدول دفعة واحدة؟؟

-أو: ممكن توضحلي بتحفظ أقساط إزاي وانت بتستخدم الكود دا لاه!!
-المعلومات فقط لتنفيذ المطلوب والإفادة.
 الذي يدعي ان لغته هي افضل لغة برمجة، فاعلم انه مستخدم وليس مبرمج.
الرد
تم الشكر بواسطة: عبد العزيز البسكري
#3
السلام عليكم ورحمة الله تعالى
بالنسبة لاضافة الاقساط فهي تضاف من شاشة اخرى اوتوماتك من خلال نفسها بالكود الاتي 
 Public Sub Updatedgv1()


        dgv1.Rows.Clear()
        Dim i As Integer

        Dim d As Date = DateInstallment.Value.ToString("yyyy/MM/dd")   'تاريخ الاستحقاق
        Dim m As Date = DateInstallment.Value.ToString("yyyy/MM/dd")   'تاريخ البحث

        For i = 1 To NumberOfInstallments.Text
            dgv1.Rows.Add()
            Dim LAST As Integer = dgv1.Rows.Count - 1
            dgv1(0, LAST).Value = i
            dgv1(1, LAST).Value = CustomerNumber.SelectedValue  'رقم العميل
            dgv1(2, LAST).Value = CustomerNumber.Text           'اسم العميل
            dgv1(3, LAST).Value = d.AddMonths(i)                ' تاريخ الدفع
            dgv1(4, LAST).Value = InstallmentPrice.Text         'قيمة القسط
            dgv1(5, LAST).Value = 0                             'حالة الدفع
            dgv1(6, LAST).Value = d.AddMonths(i)                ' تاريخ الاستحقاق 
            dgv1(7, LAST).Value = ID.Text                ' تاريخ البحث


        Next
    End Sub

ذلك لاضافة الاقساط 
وذلك للحفظ  فىجدوال الاقساط 
Public Sub Save_Buydetails()

        Dim dt As New DataTable
        Dim da As New SqlDataAdapter
        dt.Clear()
        da = New SqlDataAdapter("select * from  InstallmentSchedule ", con)
        da.Fill(dt)
        For r As Integer = 0 To dgv1.Rows.Count - 1
            dt.Rows.Add()

            Dim last As Integer = dt.Rows.Count - 1
            dt.Rows(last).Item("CustomerNuber") = dgv1(1, r).Value          ' رقم العميل 

            dt.Rows(last).Item("CustomerName") = dgv1(2, r).Value           ' اسم العميل 
            dt.Rows(last).Item("Dated") = dgv1(6, r).Value                  ' تاريخ الدفع 
            dt.Rows(last).Item("paidInSTALLMENT") = dgv1(4, r).Value     ' قيمة القسط 
            dt.Rows(last).Item("Staus") = dgv1(5, r).Value                  ' حالة الدفع
            dt.Rows(last).Item("DateKKKK") = dgv1(6, r).Value               'تاريخ الاستحقاق 
            dt.Rows(last).Item("ItemsID") = dgv1(7, r).Value ' تاريخ البحث بالشهر

            dt.Rows(last).Item("Delaypenalty") = 0
            dt.Rows(last).Item("UserNaem") = 2 'mainScreen.Label5.Text
            Dim save As New SqlCommandBuilder(da)
            da.Update(dt)
            dt.AcceptChanges()
        Next
        'MessageBox.Show("تم حفظ بنجاح في جدول التفصيل ")
    End Sub
الكود من خلف (Button)
 Save_Buydetails()

اما بالنسبة للكود المرفق من قبل للتحصيل او التعديل على اكثر من سطر من داخل الجريد فيو مرفق الكود مره اخري 

    Public Sub Update_InstallmentSchedule_InDirect(colName As String, colNametxt As String)

        ' check if this ColumnName is already exist in database
     
        Dim DT As New DataTable
        Dim da As New SqlDataAdapter
        DT.Clear()
        da = New SqlDataAdapter("Select * FROM InstallmentSchedule where " & colName & " = " & colNametxt & "", con)
    
        da.Fill(DT)
  
        For t As Integer = 0 To dgv.Rows.Count - 1




            Dim pos As Integer = DT.Rows.Count - 1

            DT.Rows(pos).Item("Dated") = Today
            DT.Rows(pos).Item("Staus") = dgv(5, t).Value
            DT.Rows(pos).Item("UserNaem") = mainScreen.Label5.Text

            Dim Save As New SqlCommandBuilder(da)
            da.Update(DT)
            DT.AcceptChanges()

        Next



    End Sub

[b]الكود من خلف (Button)[/b]
[b]      If dgv.RowCount > 0 Then
[/b]
            For T As Integer = 0 To dgv.Rows.Count - 1



                If dgv(1, T).Value = True Then

                    Update_InstallmentSchedule_InDirect("ID", dgv(0, T).Value)

                End If
[b]            Next[/b]

هل انت بتحفظ بيانات الأقساط في أداة DataGridView ثم ترسلها إلى الجدول دفعة واحدة؟؟

نعم بيتم استدعاء بيانات الاقساط التى لم تحصل على اده DataGridView  ثم يتم عمل Check من داخل الجرد فيو يتم الدوارا على جميع البيانات التي تحتوي على مبلغ القسط ويتم التعديل عليها
الرد
تم الشكر بواسطة:
#4
هل من اجابة جديدة من السادة الكرام
الرد
تم الشكر بواسطة:



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


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