private static DataTable read(MSCIBarra_EquityIndex.package_D15D p, ISet <string> excludedTickers = null)
        {
            DataTable DT = new DataTable("MSCI_D15D");

            string columnsDef = "DATE;ISIN;SEDOL;CODE_RIC;CODE_BLOOM;NOM;PAYS;DEVISE;SECTEUR;SOUSSECTEUR;COURS Ouverture;COURS Cloture;FLOTTANT;ACTIF_NET;ACTIF_NET_USD;PERF_PRICE;PERF_PRICE_USD;PERF_GROSS;PERF_GROSS_USD;PERF_NET;PERF_NET_USD;FACTEUR_AJUSTEMENT_PRIX";

            foreach (string c in columnsDef.Split(';'))
            {
                DT.Columns.Add(c);
            }

            //Console.WriteLine("ALL:  Nb of Securities: {0}", p.dataset_D15D.Count);
            foreach (MSCIBarra_EquityIndex.package_D15DEntry e in p.dataset_D15D)
            {
                if ((excludedTickers == null) || !excludedTickers.Contains(e.bb_ticker))
                {
                    DT.Rows.Add(String.Format("{0:dd/MM/yyyy}", e.calc_date), e.isin, e.sedol, e.RIC, e.bb_ticker,
                                e.security_name, e.ISO_country_symbol, e.price_ISO_currency_symbol, e.sector, e.sub_industry, e.price, e.price, e.closing_number_of_shares, e.initial_mkt_cap_loc_next_day,
                                e.initial_mkt_cap_usd_next_day,
                                e.price_return_loc, e.price_return_usd,
                                e.gross_return_loc, e.gross_return_usd,
                                e.net_return_intl_loc, e.net_return_intl_usd,
                                e.price_adjustment_factor);
                }
            }
            return(DT);
        }
        public DataSet Extract_ZIPFile_MSCI_Indexes_Daily_Security()
        {
            var x = new
            {
                indexType   = this.MSCI_Settings.indexType_DM,
                xmlPath     = this.MSCI_Settings.rootPath,
                xsdClass    = typeof(MSCIBarra_EquityIndex.package_D15D),
                xmlDataFile = this.MSCI_Settings.PREFIX_DATE + "CORE_DM_ALL_SECURITY_MAIN_DAILY_D.xml",
                zipDataFile = this.MSCI_Settings.USED_DATE + "core_dm_daily_d.zip"
            };

            MSCIBarra_EquityIndex.package_D15D p = (MSCIBarra_EquityIndex.package_D15D) this.GetPackageClassInZIP(x.xmlPath, x.xsdClass, x.zipDataFile, x.xmlDataFile);
            DataSet DS = new DataSet();

            DS.Tables.Add(read(p, this.excluded_security_ticker));

            return(DS);
        }