Exception with DataTable

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Newbie

    Exception with DataTable

    Im getting an exception:

    System.FormatEx ception: Input string was not in a correct format. at
    System.Number.P arseInt32(Strin g s, NumberStyles style, NumberFormatInf o info)
    at System.String.S ystem.IConverti ble.ToInt32(IFo rmatProvider provider) at
    System.Convert. ToInt32(Object value) at
    System.Data.Com mon.Int32Storag e.Set(Int32 record, Object value) at
    System.Data.Dat aColumn.set_Ite m(Int32 record, Object value)Couldn't store
    <BILLABLE TRAVEL EXPENSES> in consultantCateg ory Column. Expected type is
    Int32.

    Code:
    dataTable = new DataTable("rate sTable");
    dataColumn = new DataColumn();
    dataColumn.Colu mnName = "task";
    dataColumn.Data Type = System.Type.Get Type("System.In t32");
    dataColumn.Auto Increment = true;
    dataColumn.Capt ion = "Task";
    dataColumn.Read Only = true;
    dataColumn.Uniq ue = true;
    dataTable.Colum ns.Add(dataColu mn);

    DataColumn dataColumn2;
    dataColumn2 = new DataColumn();
    dataColumn2.Dat aType = System.Type.Get Type("System.St ring");
    dataColumn2.Col umnName = "consultantCate gory";
    dataColumn2.Aut oIncrement = true;
    dataColumn2.Cap tion = "Consultant Category";
    dataColumn2.Rea dOnly = true;
    dataColumn2.Uni que = true;
    dataTable.Colum ns.Add(dataColu mn2);

    DataColumn dataColumn3;
    dataColumn3 = new DataColumn();
    dataColumn3.Col umnName = "rate";
    dataColumn3.Dat aType = System.Type.Get Type("System.Cu rrency");
    dataColumn3.Aut oIncrement = true;
    dataColumn3.Cap tion = "Rate";
    dataColumn3.Rea dOnly = true;
    dataColumn3.Uni que = false;
    dataTable.Colum ns.Add(dataColu mn3);

    DataColumn dataColumn4;
    dataColumn4 = new DataColumn();
    dataColumn4.Col umnName = "hours";
    dataColumn4.Dat aType = System.Type.Get Type("System.In t32");
    dataColumn4.Aut oIncrement = true;
    dataColumn4.Cap tion = "Hours";
    dataColumn4.Rea dOnly = true;
    dataColumn4.Uni que = false;
    dataTable.Colum ns.Add(dataColu mn4);

    DataColumn dataColumn5;
    dataColumn5 = new DataColumn();
    dataColumn5.Col umnName = "subTotal";
    dataColumn5.Dat aType = System.Type.Get Type("System.In t32");
    dataColumn5.Aut oIncrement = true;
    dataColumn5.Cap tion = "Sub-Total";
    dataColumn5.Rea dOnly = true;
    dataColumn5.Uni que = false;
    dataTable.Colum ns.Add(dataColu mn5);

    dataRow = dataTable.NewRo w();
    dataRow["task"] = 1;
    dataRow["consultantCate gory"] = "BILLABLE TRAVEL EXPENSES";
    dataRow["hours"] = 0;
    dataRow["rate"] = 0;
    dataRow["subTotal"] = 0;
    dataTable.Rows. Add(dataRow);
    dataRow = dataTable.NewRo w();
    dataRow["task"] = 2;
    dataRow["consultantCate gory"] = "UNBILLABLE TRAVEL EXPENSES";
    dataRow["hours"] = 0;
    dataRow["rate"] = 0;
    dataRow["subTotal"] = 0;
    dataTable.Rows. Add(dataRow);
    dataRow = dataTable.NewRo w();
    dataRow["task"] = 3;
    rowNo = 3;
    dataRow["consultantCate gory"] = "BILLABLE FREIGHT";
    dataRow["hours"] = 0;
    dataRow["rate"] = 0;
    dataRow["subTotal"] = 0;
    dataTable.Rows. Add(dataRow);

    Thanks in advance.
  • Brendan Grant

    #2
    RE: Exception with DataTable

    Two quick things... from the looks of it, the exception and trace you posted
    was the inner exception... the outer one was and ArgumentExcepti on that was
    caused by dataColumn2.Aut oIncrement being set to true, a string after all is
    not exactly incrementable, so that should be false, and with it that way it
    should work (or at least did on my end).

    Brendan

    "Newbie" wrote:
    [color=blue]
    > Im getting an exception:
    >
    > System.FormatEx ception: Input string was not in a correct format. at
    > System.Number.P arseInt32(Strin g s, NumberStyles style, NumberFormatInf o info)
    > at System.String.S ystem.IConverti ble.ToInt32(IFo rmatProvider provider) at
    > System.Convert. ToInt32(Object value) at
    > System.Data.Com mon.Int32Storag e.Set(Int32 record, Object value) at
    > System.Data.Dat aColumn.set_Ite m(Int32 record, Object value)Couldn't store
    > <BILLABLE TRAVEL EXPENSES> in consultantCateg ory Column. Expected type is
    > Int32.
    >
    > Code:
    > dataTable = new DataTable("rate sTable");
    > dataColumn = new DataColumn();
    > dataColumn.Colu mnName = "task";
    > dataColumn.Data Type = System.Type.Get Type("System.In t32");
    > dataColumn.Auto Increment = true;
    > dataColumn.Capt ion = "Task";
    > dataColumn.Read Only = true;
    > dataColumn.Uniq ue = true;
    > dataTable.Colum ns.Add(dataColu mn);
    >
    > DataColumn dataColumn2;
    > dataColumn2 = new DataColumn();
    > dataColumn2.Dat aType = System.Type.Get Type("System.St ring");
    > dataColumn2.Col umnName = "consultantCate gory";
    > dataColumn2.Aut oIncrement = true;
    > dataColumn2.Cap tion = "Consultant Category";
    > dataColumn2.Rea dOnly = true;
    > dataColumn2.Uni que = true;
    > dataTable.Colum ns.Add(dataColu mn2);
    >
    > DataColumn dataColumn3;
    > dataColumn3 = new DataColumn();
    > dataColumn3.Col umnName = "rate";
    > dataColumn3.Dat aType = System.Type.Get Type("System.Cu rrency");
    > dataColumn3.Aut oIncrement = true;
    > dataColumn3.Cap tion = "Rate";
    > dataColumn3.Rea dOnly = true;
    > dataColumn3.Uni que = false;
    > dataTable.Colum ns.Add(dataColu mn3);
    >
    > DataColumn dataColumn4;
    > dataColumn4 = new DataColumn();
    > dataColumn4.Col umnName = "hours";
    > dataColumn4.Dat aType = System.Type.Get Type("System.In t32");
    > dataColumn4.Aut oIncrement = true;
    > dataColumn4.Cap tion = "Hours";
    > dataColumn4.Rea dOnly = true;
    > dataColumn4.Uni que = false;
    > dataTable.Colum ns.Add(dataColu mn4);
    >
    > DataColumn dataColumn5;
    > dataColumn5 = new DataColumn();
    > dataColumn5.Col umnName = "subTotal";
    > dataColumn5.Dat aType = System.Type.Get Type("System.In t32");
    > dataColumn5.Aut oIncrement = true;
    > dataColumn5.Cap tion = "Sub-Total";
    > dataColumn5.Rea dOnly = true;
    > dataColumn5.Uni que = false;
    > dataTable.Colum ns.Add(dataColu mn5);
    >
    > dataRow = dataTable.NewRo w();
    > dataRow["task"] = 1;
    > dataRow["consultantCate gory"] = "BILLABLE TRAVEL EXPENSES";
    > dataRow["hours"] = 0;
    > dataRow["rate"] = 0;
    > dataRow["subTotal"] = 0;
    > dataTable.Rows. Add(dataRow);
    > dataRow = dataTable.NewRo w();
    > dataRow["task"] = 2;
    > dataRow["consultantCate gory"] = "UNBILLABLE TRAVEL EXPENSES";
    > dataRow["hours"] = 0;
    > dataRow["rate"] = 0;
    > dataRow["subTotal"] = 0;
    > dataTable.Rows. Add(dataRow);
    > dataRow = dataTable.NewRo w();
    > dataRow["task"] = 3;
    > rowNo = 3;
    > dataRow["consultantCate gory"] = "BILLABLE FREIGHT";
    > dataRow["hours"] = 0;
    > dataRow["rate"] = 0;
    > dataRow["subTotal"] = 0;
    > dataTable.Rows. Add(dataRow);
    >
    > Thanks in advance.[/color]

    Comment

    • Newbie

      #3
      RE: Exception with DataTable

      thanks a lot, problem fixed by setting the autoincrement to false;

      "Brendan Grant" wrote:
      [color=blue]
      > Two quick things... from the looks of it, the exception and trace you posted
      > was the inner exception... the outer one was and ArgumentExcepti on that was
      > caused by dataColumn2.Aut oIncrement being set to true, a string after all is
      > not exactly incrementable, so that should be false, and with it that way it
      > should work (or at least did on my end).
      >
      > Brendan
      >
      > "Newbie" wrote:
      >[color=green]
      > > Im getting an exception:
      > >
      > > System.FormatEx ception: Input string was not in a correct format. at
      > > System.Number.P arseInt32(Strin g s, NumberStyles style, NumberFormatInf o info)
      > > at System.String.S ystem.IConverti ble.ToInt32(IFo rmatProvider provider) at
      > > System.Convert. ToInt32(Object value) at
      > > System.Data.Com mon.Int32Storag e.Set(Int32 record, Object value) at
      > > System.Data.Dat aColumn.set_Ite m(Int32 record, Object value)Couldn't store
      > > <BILLABLE TRAVEL EXPENSES> in consultantCateg ory Column. Expected type is
      > > Int32.
      > >
      > > Code:
      > > dataTable = new DataTable("rate sTable");
      > > dataColumn = new DataColumn();
      > > dataColumn.Colu mnName = "task";
      > > dataColumn.Data Type = System.Type.Get Type("System.In t32");
      > > dataColumn.Auto Increment = true;
      > > dataColumn.Capt ion = "Task";
      > > dataColumn.Read Only = true;
      > > dataColumn.Uniq ue = true;
      > > dataTable.Colum ns.Add(dataColu mn);
      > >
      > > DataColumn dataColumn2;
      > > dataColumn2 = new DataColumn();
      > > dataColumn2.Dat aType = System.Type.Get Type("System.St ring");
      > > dataColumn2.Col umnName = "consultantCate gory";
      > > dataColumn2.Aut oIncrement = true;
      > > dataColumn2.Cap tion = "Consultant Category";
      > > dataColumn2.Rea dOnly = true;
      > > dataColumn2.Uni que = true;
      > > dataTable.Colum ns.Add(dataColu mn2);
      > >
      > > DataColumn dataColumn3;
      > > dataColumn3 = new DataColumn();
      > > dataColumn3.Col umnName = "rate";
      > > dataColumn3.Dat aType = System.Type.Get Type("System.Cu rrency");
      > > dataColumn3.Aut oIncrement = true;
      > > dataColumn3.Cap tion = "Rate";
      > > dataColumn3.Rea dOnly = true;
      > > dataColumn3.Uni que = false;
      > > dataTable.Colum ns.Add(dataColu mn3);
      > >
      > > DataColumn dataColumn4;
      > > dataColumn4 = new DataColumn();
      > > dataColumn4.Col umnName = "hours";
      > > dataColumn4.Dat aType = System.Type.Get Type("System.In t32");
      > > dataColumn4.Aut oIncrement = true;
      > > dataColumn4.Cap tion = "Hours";
      > > dataColumn4.Rea dOnly = true;
      > > dataColumn4.Uni que = false;
      > > dataTable.Colum ns.Add(dataColu mn4);
      > >
      > > DataColumn dataColumn5;
      > > dataColumn5 = new DataColumn();
      > > dataColumn5.Col umnName = "subTotal";
      > > dataColumn5.Dat aType = System.Type.Get Type("System.In t32");
      > > dataColumn5.Aut oIncrement = true;
      > > dataColumn5.Cap tion = "Sub-Total";
      > > dataColumn5.Rea dOnly = true;
      > > dataColumn5.Uni que = false;
      > > dataTable.Colum ns.Add(dataColu mn5);
      > >
      > > dataRow = dataTable.NewRo w();
      > > dataRow["task"] = 1;
      > > dataRow["consultantCate gory"] = "BILLABLE TRAVEL EXPENSES";
      > > dataRow["hours"] = 0;
      > > dataRow["rate"] = 0;
      > > dataRow["subTotal"] = 0;
      > > dataTable.Rows. Add(dataRow);
      > > dataRow = dataTable.NewRo w();
      > > dataRow["task"] = 2;
      > > dataRow["consultantCate gory"] = "UNBILLABLE TRAVEL EXPENSES";
      > > dataRow["hours"] = 0;
      > > dataRow["rate"] = 0;
      > > dataRow["subTotal"] = 0;
      > > dataTable.Rows. Add(dataRow);
      > > dataRow = dataTable.NewRo w();
      > > dataRow["task"] = 3;
      > > rowNo = 3;
      > > dataRow["consultantCate gory"] = "BILLABLE FREIGHT";
      > > dataRow["hours"] = 0;
      > > dataRow["rate"] = 0;
      > > dataRow["subTotal"] = 0;
      > > dataTable.Rows. Add(dataRow);
      > >
      > > Thanks in advance.[/color][/color]

      Comment

      Working...