public DataView GetScansList(string urzadzenie, string lokalizacja, string rodzajDokumentu, string zrodloDokumentu) { DataView dvSkany = null; SkanyDataset dsSkany = (new ScansDAO()).GetAvailableScansList(Configuration.DocumentsDirectory, Configuration.PhysicalTemporaryDirectory); if (dsSkany != null) { List <SkanyDataset.SkanyRow> ids = new List <SkanyDataset.SkanyRow>(); foreach (SkanyDataset.SkanyRow row in dsSkany.Skany.Rows) { if (urzadzenie.Replace("*", "") != "" && row.urzadzenie != urzadzenie) { ids.Add(row); } if (lokalizacja.Replace("*", "") != "" && row.lokalizacja != lokalizacja) { ids.Add(row); } if (rodzajDokumentu.Replace("*", "") != "" && row.rodzaj != rodzajDokumentu) { ids.Add(row); } if (zrodloDokumentu.Replace("*", "") != "" && row.zrodlo != zrodloDokumentu) { ids.Add(row); } } List <SkanyDataset.SkanyRow> distinct = new List <SkanyDataset.SkanyRow>(); foreach (var guid in ids) { if (!distinct.Contains(guid)) { distinct.Add(guid); } } foreach (var row in distinct) { dsSkany.Skany.RemoveSkanyRow(row); } dvSkany = new DataView(dsSkany.Skany); dvSkany.Sort = "dataPobrania desc"; } return(dvSkany); }
public SkanyDataset GetUnassignedScansDataSet(string documentsDirectory) { SkanyTableAdapter taSkany = new SkanyTableAdapter(); taSkany.Connection = (SqlConnection)DatabaseFactory.CreateDatabase().CreateConnection(); SkanyDataset dsSkany = new SkanyDataset(); taSkany.Fill(dsSkany.Skany, documentsDirectory); return(dsSkany); //SqlDatabase db = DatabaseFactory.CreateDatabase() as SqlDatabase; //if (db == null) throw new Exception("Do poprawnego dzia³ania wymagany jest SQL Server 2005!"); //DbCommand cmd = db.GetStoredProcCommand("Rejestry.pobierzNieprzypisaneSkanyDataset"); //ScansDataset dsScans = (ScansDataset)db.ExecuteDataSet(cmd); //return dsScans; }
public SkanyDataset GetAvailableScansList(string documentsDirectory, string physicalWorkingDirectory) { SkanyDataset dsScans = (new RegistryDAO()).GetUnassignedScansDataSet(documentsDirectory); //foreach (SkanyDataset.SkanyRow row in dsScans.Skany.Rows) //{ // row.katalogPlikuDokumentu = documentsDirectory; // row.nazwaPlikuDokumentu = row.guid.ToString(); //} //dsScans.Skany.AcceptChanges(); // skany nieprzypisane string[] files = Directory.GetFiles(physicalWorkingDirectory, "*.xml", SearchOption.TopDirectoryOnly); foreach (string fileName in files) { try { XmlDocument doc = new XmlDocument(); doc.Load(fileName); string dataPobrania = doc.SelectSingleNode("/dokument/dataPobrania").InnerText; string nazwaPliku = doc.SelectSingleNode("/dokument/nazwaPlikuDokumentu").InnerText; string katalogPliku = doc.SelectSingleNode("/dokument/katalogPlikuDokumentu").InnerText; string nazwaSkanu = doc.SelectSingleNode("/dokument/nazwaPlikuSkanu").InnerText; string liczbaStron = doc.SelectSingleNode("/dokument/liczbaStron").InnerText; string miniatura = doc.SelectSingleNode("/dokument/miniatura").InnerText; string pierwszaStrona = doc.SelectSingleNode("/dokument/pierwszaStrona").InnerText; string lokalizacja = doc.SelectSingleNode("/dokument/pochodzenie/lokalizacja").InnerText; string urzadzenie = doc.SelectSingleNode("/dokument/pochodzenie/urzadzenie").InnerText; string rodzaj = doc.SelectSingleNode("/dokument/pochodzenie/rodzaj").InnerText; string zrodlo = doc.SelectSingleNode("/dokument/pochodzenie/zrodlo").InnerText; dsScans.Skany.AddSkanyRow(Guid.Empty, dataPobrania, nazwaPliku, liczbaStron, lokalizacja, urzadzenie, rodzaj, zrodlo, katalogPliku, nazwaSkanu, miniatura, pierwszaStrona); } catch { } } dsScans.AcceptChanges(); ////////////////////// return(dsScans); }