public Import(string dataDirectory, Interfaces.IDatabase database)
 {
     Database = database;
     DataDirectory = dataDirectory;
     DocumentsToModify = new List<CompanyDocumentListModel>();
     bdb = new FuncClasses.FastXML(DataDirectory);
     bdb.Connect();
     Database.RegisterStorageableItem(new Models.CompanySettings());
 }
 public async Task<bool> ImportEverything()
 {
     var previousCompany = Database.CurrentCompany;
     try
     {
         await ImportCompanies();
         foreach (var company in bdb.GetAllCompanys())
         {
             bdb.LastCompany = company.CompanyName;
             bdb = new FuncClasses.FastXML(DataDirectory);
             bdb.Connect();
             await ImportArticle();
             await ImportCustomers();
             await ImportDocuments();
         }
         await Database.ChangeCompany(previousCompany);
         return await Task<bool>.Run(() => { return true; });
     }
     catch(Exception e)
     {
         Biller.UI.ViewModel.MainWindowViewModel.GetCurrentMainWindowViewModel().NotificationManager.ShowNotification("Fehler beim Importieren", "Der Importvorgang konnte nicht abgeschlossen werden. Möglicherweise wurden einige Daten trotzdem importiert.");
     }
     return await Task<bool>.Run(() => { return false; });
 }