Insert a dataset to Crystal Reports (Shows only the first row in dataset)


I want insert an array to crysstal reports, or a dataset.. but the array or dataset
i will "make mySelf".. not directly from a database.. how do i do that..

so how do i create the array or dataset and insert it to Crystal reports.
I want the same effect that a dataset has, that was created from a database
and then inserted to CR.

1. Get data from my database.
2. calculate the values i want to insert to CR from the dataset
3. Create a new dataset or an array.
4. Insert the new dataset or array to CR

i have this code for now.. the dataset seems to work... i have tested to pass the dataset
to a datagrid and it woks.. i have made an xsd file

my problem is that Crystal reports only shows the first row of my dataset..

this is the code i use for creating a datset

Private Function CreateCustomDataSet() As DataSet
        ' create a dataset object
        Dim oDataSet As DataSet
        oDataSet = New DataSet
        ' create a data table object
        Dim oDataTable As DataTable
        oDataTable = New DataTable("T2")
        ' we need a type object to specify the column
        ' data type
        Dim oType As Type
        Dim oDataColumn As DataColumn
        ' create a type object for required datatype
        oType = System.Type.GetType("System.String")
        ' create a new column in the table structure
        oDataColumn = New DataColumn("PersonKey", oType)
        ' add the column in the table object
        ' add one more column
        oType = System.Type.GetType("System.String")
        oDataColumn = New DataColumn("PersonName", oType)
        ' onemore column
        oType = System.Type.GetType("System.String")
        oDataColumn = New DataColumn("Address", oType)
        ' one more column
        oType = System.Type.GetType("System.Int16")
        oDataColumn = New DataColumn("Age", oType)
        ' now add the completly prepared table to the dataset
        ' now we are ready to fill the dataset with data
        Dim oDataRow As DataRow
        ' get a new datarow from the table object
        ' the dataset knows what fields to create as we are asking
        ' the exact table about that row
        oDataRow = oDataSet.Tables("T2").NewRow
        ' fill required data
        With oDataRow
            .Item("PersonKey") = "AB12"
            .Item("PersonName") = "Ramesh"
            .Item("Address") = "Delhi"
            .Item("Age") = 34
            ' now add the row in the datatable
        End With
        ' can add as many rows as you can
        oDataRow = oDataSet.Tables("T2").NewRow
        With oDataRow
            .Item("PersonKey") = "AB13"
            .Item("PersonName") = "Seema"
            .Item("Address") = "Bareli"
            .Item("Age") = 25
        End With
        ' now we can use this dataset anywhere a DataSet is expected
        Return oDataSet
    End Function

this code for inserting the data into CR

 Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Dim Ds As DataSet
        Ds = New DataSet
        Ds = CreateCustomDataSet()

        Dim rpt As New cr
        CrystalReportViewer1.ReportSource = rpt
        DataGrid1.DataSource = Ds.Tables(0)

    End Sub

But only the first row will show in CR..

i have design the report as i want  by dragging and dropping these fields. i got from xsd, but when i drop the filed
in CR on the filed will show.. not the name in the section above.. i don't know if that has anyting with my problem.
but someting is from..

here is the xml code for the xsd file..

<?xml version="1.0" encoding="utf-8" ?>
<xs:schema id="Dataset1" targetNamespace="" elementFormDefault="qualified"
      attributeFormDefault="qualified" xmlns="" xmlns:mstns=""
      xmlns:xs="" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
      <xs:element name="Dataset1" msdata:IsDataSet="true">
                  <xs:choice maxOccurs="unbounded">
                        <xs:element name="T2">
            <xs:element name="PersonKey" msdata:AutoIncrement="true" type="xs:string" minOccurs="0" />
                  <xs:element name="PersonName" type="xs:string" minOccurs="0" />
                  <xs:element name="Address" type="xs:string" minOccurs="0" />
                        <xs:element name="Age" type="xs:integer" minOccurs="0" />
            <xs:key name="Dataset1Key1" msdata:PrimaryKey="true">
                  <xs:selector xpath=".//mstns:T2" />
                  <xs:field xpath="mstns:PersonKey" />
Who is Participating?

Improve company productivity with a Business Account.Sign Up

Daniellus83Connect With a Mentor Commented:
Why don't you send just the datatable?

NissePPPAuthor Commented:
hmm but don't i need to send the dataset.. becuse i use xsd files for CR
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

NissePPPAuthor Commented:
hmm i solved the problem.. i need to use "Expert wizard" when creating a report.. not use a bland report as i did before..

then i will work...

 hmm i want my ponits back :).

. how do i do that.. :)
NissePPPAuthor Commented:
post something.. so i can give you the points
NissePPPAuthor Commented:
fixed.. :)

thx m8.. very nice work... ;)
np love doing this sh*t
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.