منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : مساعده فى تعديل الكود لو سمحتوا
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
كود :
Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)
          Me.ReportViewer1.RefreshReport()
          Dim Text_String As Integer = (folder.txtnamper.Text - 1)
          Me.DataTable1BindingSource.Filter = "(ID=" & Text_String & ")"
          Me.Width = ReportViewer1.Width
          Me.ReportViewer1.RefreshReport()
جربت Integer و string بس بتظهر نفس الخطا
جرب هذا التعديل
كود :
     Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)

     Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 1
      If lst.Count > 0 Then
         Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
         Me.ReportViewer1.RefreshReport()
     End If
(24-10-17, 02:34 AM)zaer كتب : [ -> ]جرب هذا التعديل
كود :
     Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)

     Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 1
      If lst.Count > 0 Then
         Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
         Me.ReportViewer1.RefreshReport()
     End If
مشكله غريبه جداا فى فواتير المبيعات فى زرار الطباعه بيشتغل تمام بنفس الكود بس لما بفتح الفواتير بشكل تانى من مكان تانى التقرير بيطلع فاضى
كود :
  Private Sub Form22_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       If folder.ast = "add" Then
           Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)
           Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 1
           If lst.Count > 0 Then
               Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
               Me.ReportViewer1.RefreshReport()
           End If
       Else
           Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)
           Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 0
           If lst.Count > 0 Then
               Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
               Me.ReportViewer1.RefreshReport()
           End If
       End If
   End Sub

حتى لو من غير if
الجعل المتغير ast في الفورم Form22 وخليه عام Public وقبل ما تستدعي الفورم Form22 ضع قيمة في المتغير مثل "add"
كود :
Form22.ast = "add"
Form22.Show()

وهذا التعديل للفورم Form22
كود :
 Public ast As String=""

 Private Sub Form22_Load(sender As Object, e As EventArgs) Handles MyBase.Load
      load()
  End Sub

 Private Sub load()
      Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)
      If ast = "add" Then
          Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 1
          If lst.Count > 0 Then
              Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
              Me.ReportViewer1.RefreshReport()
          End If
      Else
          Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 0
          If lst.Count > 0 Then
              Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
              Me.ReportViewer1.RefreshReport()
          End If
      End If
  End Sub

اذا استمرت المشكلة ضع المشروع عشان نعرف ما هي المشكلة
(24-10-17, 07:40 AM)zaer كتب : [ -> ]الجعل المتغير ast في الفورم Form22 وخليه عام Public وقبل ما تستدعي الفورم Form22 ضع قيمة في المتغير مثل "add"
كود :
Form22.ast = "add"
Form22.Show()

وهذا التعديل للفورم Form22
كود :
 Public ast As String=""

 Private Sub Form22_Load(sender As Object, e As EventArgs) Handles MyBase.Load
      load()
  End Sub

 Private Sub load()
      Me.DataTable1TableAdapter.Fill(Me.dbvDataSet.DataTable1)
      If ast = "add" Then
          Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 1
          If lst.Count > 0 Then
              Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
              Me.ReportViewer1.RefreshReport()
          End If
      Else
          Dim lst = From x In Me.dbvDataSet.DataTable1 Where x.ID = Val(folder.txtnamper.Text) - 0
          If lst.Count > 0 Then
              Me.ReportViewer1.LocalReport.DataSources(0).Value = lst.CopyToDataTable
              Me.ReportViewer1.RefreshReport()
          End If
      End If
  End Sub

اتخنقت وغيرت فى المشورع نفسه وتغلب على المشكله بس مش عارف ادمج التقريرين عن طريق supreport دورت على اليوتيوب و جوجل وعلى المنتدى نفسه ومش عارف وكمان فى بشمهندس بعت ليا مشروع ودامج التقريرين بس مش عارف ازاى كل محاول تطلع رسالة 
"data retrieval failed for the subreport"