Pb d'expression d'une datacolumn dans une datatable

Signaler
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
-
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
-
Salut tout le monde,

j'ai une petite question...pour une WinApp c#

j'ai fait un dataset, dans lequel j'ai créé une datatable, dans laquelle je met des datacolumn (tout ca grace au windows propreties), ma colonne cost est égale à "unitprice * quantity", j'ai mis cette expression dans la définition "expression" de ma colonne cost.
J'affiche le tout dans un datagrid.
A l'execution le calcul devrait se faire automatiquement en fonction de ce que je saisis dans mon datagrid...

seulement voila....ca calcule pas....

ma colonne cost reste malheureusement a NULL...
y a-t-il une astuce pour que les expressions soit calculés ????

merci pour votre aide...

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."

4 réponses

Messages postés
56
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
14 novembre 2007

je suppose que les trois colonne cost, unitprice et quantity sont définis en typeof(int) si oui il faudrait un bon de code ...
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
voila la création du datatable et datacolumn :

this.dtCarItems = new System.Data.DataTable();
this.dcCustomerId2 = new System.Data.DataColumn();
this.dcProductId = new System.Data.DataColumn();
this.dcUnitPrice = new System.Data.DataColumn();
this.dcQuantity = new System.Data.DataColumn();
this.dcCost = new System.Data.DataColumn();

// 
// dtCarItems
// 
this.dtCarItems.Columns.AddRange(new System.Data.DataColumn[] {
  this.dcCustomerId2,
  this.dcProductId,
  this.dcUnitPrice,
  this.dcQuantity,
  this.dcCost});
this.dtCarItems.TableName = "CarItems";
// 
// dcCustomerId2
// 
this.dcCustomerId2.AllowDBNull = false;
this.dcCustomerId2.ColumnName = "CustomerId";
this.dcCustomerId2.MaxLength = 5;
// 
// dcProductId
// 
this.dcProductId.AllowDBNull = false;
this.dcProductId.ColumnName = "ProductId";
this.dcProductId.DataType = typeof(int);
// 
// dcUnitPrice
// 
this.dcUnitPrice.AllowDBNull = false;
this.dcUnitPrice.ColumnName = "UnitPrice";
this.dcUnitPrice.DataType = typeof(System.Decimal);
// 
// dcQuantity
// 
this.dcQuantity.AllowDBNull = false;
this.dcQuantity.ColumnName = "Quantity";
this.dcQuantity.DataType = typeof(int);
// 
// dcCost
// 
this.dcCost.ColumnName = "Cost";
this.dcCost.DataType = typeof(System.Decimal);
this.dcCost.Expression = "UnitPrice*Quantity";
this.dcCost.ReadOnly = true;

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
56
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
14 novembre 2007

j'ai intégrer ce code dans une form et ça marche.
Le problème viendrait peut-être d'autre chose.
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
damned....

la zone cost de ton dataset est bien calcule ????

j'ai tout integrer dans un datagrid...et la ca ne fonctionne pas....

:sad)

ben je vais chercher...

merci...

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."