السلام وعليكم اخي السيد الجوهري
بلنسبة للطباعة بشي محدد عن طريق تشك بوكس كما موضح بلصورة ولكن
الفكرة هي كلآتي طبعا نقوم بانشاء جملة select عن الكود يعني هكذا من داتا ست
يعني الي في صورة محدد تشك بوكس تنين
الجملة بتكون كلآتي
select customer cod,first name From datatable
هكذا يكون ولكن للعلم في حالة حضرتك مدخل بتصميم اعمدة وصفوف يعني على شكل جدول يخفي
العمود اي المعلومات ولا يخفي الجدول اي العمود بكون فاضي أتمنى وصلتك الفكرة
طبعا راح ايكون في function بضيفو في الكود هي مثلا ان شاء الله راح يساعدك طبعا في تغييرات لازم ايكون
كود :
Private Function CreateSelectQueryAndParameters() As String
Dim reportDocument As ReportDocument
Dim paramFields As ParameterFields
Dim paramField As ParameterField
Dim paramDiscreteValue As ParameterDiscreteValue
reportDocument = New ReportDocument()
paramFields = New ParameterFields()
Dim query As String = "SELECT "
Dim columnNo As Integer = 0
If chbCode.Checked Then
columnNo += 1
query = query.Insert(query.Length, "Code as Column" & columnNo.ToString())
paramField = New ParameterField()
paramField.Name = "col" & columnNo.ToString()
paramDiscreteValue = New ParameterDiscreteValue()
paramDiscreteValue.Value = "Customer Code"
paramField.CurrentValues.Add(paramDiscreteValue)
paramFields.Add(paramField)
End If
If chbFirstName.Checked Then
columnNo += 1
If query.Contains("Column") Then
query = query.Insert(query.Length, ", ")
End If
query = query.Insert(query.Length, "FirstName as Column" & columnNo.ToString())
paramField = New ParameterField()
paramField.Name = "col" & columnNo.ToString()
paramDiscreteValue = New ParameterDiscreteValue()
paramDiscreteValue.Value = "First Name"
paramField.CurrentValues.Add(paramDiscreteValue)
paramFields.Add(paramField)
End If
If chbLastName.Checked Then
columnNo += 1
If query.Contains("Column") Then
query = query.Insert(query.Length, ", ")
End If
query = query.Insert(query.Length, "LastName as Column" & columnNo.ToString())
paramField = New ParameterField()
paramField.Name = "col" & columnNo.ToString()
paramDiscreteValue = New ParameterDiscreteValue()
paramDiscreteValue.Value = "Last Name"
paramField.CurrentValues.Add(paramDiscreteValue)
paramFields.Add(paramField)
End If
If chbAddress.Checked Then
columnNo += 1
If query.Contains("Column") Then
query = query.Insert(query.Length, ", ")
End If
query = query.Insert(query.Length, "Address as Column" & columnNo.ToString())
paramField = New ParameterField()
paramField.Name = "col" & columnNo.ToString()
paramDiscreteValue = New ParameterDiscreteValue()
paramDiscreteValue.Value = "Address"
paramField.CurrentValues.Add(paramDiscreteValue)
paramFields.Add(paramField)
End If
If chbPhone.Checked Then
columnNo += 1
If query.Contains("Column") Then
query = query.Insert(query.Length, ", ")
End If
query = query.Insert(query.Length, "Phone as Column" & columnNo.ToString())
paramField = New ParameterField()
paramField.Name = "col" & columnNo.ToString()
paramDiscreteValue = New ParameterDiscreteValue()
paramDiscreteValue.Value = "Phone"
paramField.CurrentValues.Add(paramDiscreteValue)
paramFields.Add(paramField)
End If
For i As Integer = columnNo To 5 - 1
columnNo += 1
paramField = New ParameterField()
paramField.Name = "col" & columnNo.ToString()
paramDiscreteValue = New ParameterDiscreteValue()
paramDiscreteValue.Value = ""
paramField.CurrentValues.Add(paramDiscreteValue)
paramFields.Add(paramField)
Next
crystalReportViewer1.ParameterFieldInfo = paramFields
query += " FROM Customer"
Return query
End Function
الصورة بلنسبة للمحتوى