//First Time Import
 public static void ImportXbrlData(XbrlFiles xbrlFiles)
 {
     IEnumerable<XbrlInstance> allFiles = xbrlFiles.AllFiles.Where(f => !f.Amendment);
     ImportTickerCIK(xbrlFiles.TickerCIK);
     ImportFilesInformation(allFiles);
     ImportLineItems(allFiles);
 }
        static void Main(string[] args)
        {
            XbrlFiles xbrl = new XbrlFiles(
            "BABY;"+
            "BAMM;"+
            "BANF;"+
            "BANFP;"+
            "BANR;"+
            "BANX;"+
            "BBBY;"+
            "BBCN;"+
            "BBEP;"+
            "BBEPP;"+
            "BBNK;"+
            "BBOX;"+
            "BBRG;"+
            "BBRY;"+
            "BBSI;"+
            "BCOM;"+
            "BCOR;"+
            "BCOV;"+
            "BCPC;"+
            "BCRX;"+
            "BDBD;"+
            "BDE;"+
            "BDGE;"+
            "BEAT;"+
            "BEAV;"+
            "BEBE;"+
            "BECN;"+
            "BELFA;"+
            "BELFB;"+
            "BFIN;"+
            "BGCP"
            ,
                "10-K", 10);

            XbrlDataImport.ImportXbrlData(xbrl);

            //data.ParseFiles();
            Console.WriteLine("Done!");
            Console.ReadKey();
        }
        public IEnumerable<Dictionary<string, object>> GetXbrlData(string ticker, string fileType, int numPeriod, string dataSets)
        {
            string dataPath = Path.GetDirectoryName(ExcelUtil.XllPath) + "\\Data\\";
            XbrlFiles files = new XbrlFiles(ticker, fileType, numPeriod, dataPath);

            var result = files.AllFiles.Select(
                file =>
                {
                    var data = new Dictionary<string, object>();
                    data["StartDate"] = file.DurationDataStartDate;
                    data["EndDate"] = file.DocumentPeriodEndDate;
                    data["FileType"] = file.DocumentType;
                    foreach (var fact in file.AllFacts.Where(f => dataSets.Contains(f.ItemName)))
                        data[fact.ItemName] = fact.Value;
                    return data;
                }
            );

            return result;
        }