1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
|
/// <summary>
/// Construit la dataTable des valeurs.
/// </summary>
public void genererDataTableValeur()
{
DataRow workRow;
Dictionary<string, string> dicNut;
IObjetNumeriqueBase nut;
// Création des colonnes.
dataValeur = new DataTable("Valeurs");
dataValeur.Columns.Add("Libelle1");
dataValeur.Columns.Add("Libelle2");
dataValeur.Columns.Add("Libelle3");
dataValeur.Columns.Add("Libelle4");
dataValeur.Columns.Add("Libelle5");
dataValeur.Columns.Add("Libelle6");
dicNutri = new Dictionary<string, string>();
foreach (IObjet oN in Objet.Liste)
{
dataValeur.Columns.Add(oN.LibelleTitre);
if (!(oN is objetBooleen))
{
if (oN is objetNumeriqueBase)
{
nut = (ObjetNumeriqueBase)oN;
dicNut.Add(oN.LibelleTitre, nut.FormatAffichage);
}
dataValeur.Columns[oN.LibelleTitre].DataType = System.Type.GetType("System.Double");
}
}
// Remplissage des lignes.
foreach (Objet2 oA in this.ListeO)
{
workRow = dataValeur.NewRow();
workRow["var1"] = oA.var1;
workRow["var2"] = oA.var2;
workRow["var3"] = oA.Sousvar3 != null ? oA.Sousvar3.var3.var1 : String.Empty;
workRow["sous-var3"] = oA.Sousvar3 != null ? oA.Sousvar3.var1 : String.Empty;
workRow["var4"] = oA.TypeMatiereNut.ToString();
// Test du type
if (oA is objetReference)
{
workRow["var5"] = "true";
objetReference al;
al = (ObjetReference)oA;
foreach (ObjetCumul oN in al.ListeObjetCumuls)
{
try
{
workRow[oN.ObjetReference.var1Court] = ((double)oN.Valeur).ToString(dicNutri[oN.ObjetReference.var1Court]);
Debug.WriteLine(((double)oN.Valeur).ToString(dicNutri[oN.ObjetReference.var1Court]));
}
catch
{
workRow[oN.ObjetReference.var1Court] = oN.Valeur;
}
}
}
else
{
workRow["melange aliment"] = "false";
foreach (ObjetNonCumul oN in oA.ListeObjetNonCumul)
{
try
{
double b;
b = Double.Parse("0");
double a = Double.Parse(oN.Valeur.ToString());
workRow[oN.Nut.var1Court] = a.ToString(dicNutri[oN.Nut.var1Court]);
Debug.WriteLine(a.ToString(dicNutri[oN.Nut.var1Court]));
}
catch
{
workRow[oN.Nut.var1Court] = oN.Valeur;
}
}
}
dataValeur.Rows.Add(workRow);
}
} |
Partager