コード例 #1
0
ファイル: Scans.cs プロジェクト: radtek/eSoda
        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);
        }
コード例 #2
0
        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;
        }
コード例 #3
0
ファイル: ScansDAO.cs プロジェクト: radtek/eSoda
        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);
        }