[C#][DataSet]Trier un dataset
Bonjour,
voila j'explique mon problème, je parcours un dataset qui est dans un datagrid, si l'utilisateur coche une case d'une des lignes du dataset je genere une facutre avec toutes les lignes selectionnés.
jusque la tout va bien, seulement voila lors de la generation je parcours donc mon premier dataset, si la case est cocher j'injecte chaque ligne dans un autre dataset (ds_A_Facturer)
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
foreach(DataRow row in ds.TS_VENTE.Rows)
{
if(Convert.ToBoolean(row["A_FACTURER"]))
{
DataRow newRow = ds_A_Facturer.TS_VENTE.NewRow();
newRow["DVNUM"] = row["DVNUM"];
newRow["FCNUM"] = row["FCNUM"];
//............
ds_A_Facturer.TS_VENTE.Rows.Add(newRow);
}
} |
Ensuite je parcours ce dataset et je genere mes lignes de détails que je rajoute dans mon dataset de facture qui me permet de faire l'update
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
foreach(DataRow row_detail in ds_A_Facturer.TS_VENTE.Rows)
{
ds_Facture.T_DETFACT.Rows.Clear();
DataRow newRowDetail = ds_Facture.T_DETFACT.NewRow();
newRowDetail["DFCNUM"] = Guid.NewGuid();
newRowDetail["FCNUM"] = _FCNUM;
_ARTNUM = (Guid)row_detail["ARTNUM"];
newRowDetail["ARTNUM"] = _ARTNUM;
newRowDetail["DFCQTE"] = row_detail["DVQTE"];
newRowDetail["DFCLIB"] = row_detail["DVLIB"];
newRowDetail["DFCREL"] = 0;
newRowDetail["DFCPU"] = row_detail["DVPRXA"];
//............
ds_Facture.T_DETFACT.Rows.Add(newRowDetail);
build.DataAdapter.Update(ds_Facture.T_DETFACT);
} |
En résumé j'aimerais pouvoir trier mes inserts en fonction de mon libelle
afin que sur ma facture j'ai mes libellés (DVLIB) qui se suivent....
et donc sur mon deuxieme foreach parcourir mon ds_a_facturer dans l'ordre de mon libelle...et pas au petit bonheur la chance comme c'est le cas actuellement...