Example #1
0
 public static void AddNotFoundFiles(DataGridView dictDGV, OraObjectDict dict)
 {
     foreach (FileInfo file in dict.notFoundFiles)
     {
         dictDGV.Rows.Add(file.FullName);
     }
     dictDGV.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
 }
Example #2
0
 public static void AddOraObjectsInDGV(DataGridView dictDGV, OraObjectDict dict)
 {
     foreach (KeyValuePair <OraObject, HashSet <FileInfo> > item in dict.baseDict.objFilesPairs)
     {
         OraObject oraObj = item.Key;
         foreach (FileInfo file in item.Value)
         {
             dictDGV.Rows.Add(oraObj.objName, oraObj.type, file.FullName);
         }
     }
     dictDGV.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
 }
Example #3
0
        //список должен быть создан до запуска
        public static void RetrieveObjectsFromSQL(string script, FileInfo file, OraObjectDict dict)
        {
            RemoveComments(ref script);
            //проверка всех DDL
            foreach (string objType in OraObjectTypes)
            {
                Regex regex = new Regex(RegexWhiteSpacesStart + objType + RegexWhiteSpacesEnd, RegexOptions.IgnoreCase);
                InsertionsByRegex(script, objType, file, dict, regex);
            }

            foreach (string sttm in DMLStatements)
            {
                Regex regex = new Regex(RegexWhiteSpacesStart + sttm + RegexWhiteSpacesEnd, RegexOptions.IgnoreCase);
                InsertionsByRegex(script, sttm, file, dict, regex);
            }

            InsertionsByRegex(script, "INDEX", file, dict, new Regex(RegexWhiteSpacesStart + RegexIndexingTable + RegexWhiteSpacesEnd));
        }
Example #4
0
        public static void AddOraIntersectionsInDGV(DataGridView dictDGV, OraObjectDict dict)
        {
            bool colorDeterminator = false;

            foreach (KeyValuePair <OraObject, HashSet <FileInfo> > item in dict.intersections.objFilesPairs)
            {
                OraObject oraObj = item.Key;
                foreach (FileInfo file in item.Value)
                {
                    DataGridViewRow row = new DataGridViewRow();
                    row.Cells.AddRange(new DataGridViewTextBoxCell(), new DataGridViewTextBoxCell(), new DataGridViewTextBoxCell());
                    row.Cells[0].Value             = oraObj.objName;
                    row.Cells[1].Value             = oraObj.type;
                    row.Cells[2].Value             = file.FullName;
                    row.DefaultCellStyle.BackColor = colorDeterminator ? Color.LightCyan : Color.LightYellow;
                    dictDGV.Rows.Add(row);
                }
                colorDeterminator = !colorDeterminator;
            }
            dictDGV.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
        }
Example #5
0
        private void TSMIFileScPrereq_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            ofd.Filter = "Файлы сценария (*.txt)|*.txt|Все файлы (*.*)|*.*";
            infaDict   = new InfaObjectDict();
            oraDict    = new OraObjectDict();
            List <FileInfo> fileScs = new List <FileInfo>();
            List <FileInfo> files   = FileScUtils.GetListOfFiles(fileScs);

            if (ofd.ShowDialog() == DialogResult.OK)
            {
                fileScs.Add(new FileInfo(ofd.FileName));
                files = FileScUtils.GetListOfFiles(fileScs);

                infaParser = new InfaParser(files, infaDict);
                sqlParser  = new SqlParser();

                PBChecks.Value   = 0;
                PBChecks.Maximum = infaParser.WorkAmount(infaDict) + sqlParser.WorkAmoumt(files);

                sqlParser.StartOfCheck  += () => PBChecks.Invoke(new Action(() => PBChecks.Visible = true));
                infaParser.StartOfCheck += () => PBChecks.Invoke(new Action(() => PBChecks.Visible = true));

                sqlParser.ProgressChanged  += () => PBChecks.Invoke(new Action(() => PBChecks.Value++));
                infaParser.ProgressChanged += () => PBChecks.Invoke(new Action(() => PBChecks.Value++));

                sqlParser.EndOfCheck  += () => PBChecks.Invoke(new Action(() => PBChecks.Visible = false));
                infaParser.EndOfCheck += () => PBChecks.Invoke(new Action(() => PBChecks.Visible = false));


                checkThread = new Thread(() =>
                {
                    sqlParser.RetrieveObjectsFromFile(files, oraDict);
                    infaParser.RetrieveObjectsFromFiles(files, infaDict);
                    _checked = true;
                });
                checkThread.Start();
            }
        }
Example #6
0
        private static void InsertIntoDict(Match obj, string type, FileInfo file, OraObjectDict dict)
        {
            string objName = obj.Value.Trim().ToUpper();

            dict.AddObjectConsiderIntersections(new OraObject(objName, type), file);
        }
Example #7
0
        private static void InsertionsByRegex(string script, string type, FileInfo file, OraObjectDict dict, Regex regex)
        {
            MatchCollection matchCollection = regex.Matches(script);

            foreach (Match match in matchCollection)
            {
                int   start = match.Index + match.Length;
                Match obj   = IdentifierRegex.Match(script, start);
                InsertIntoDict(obj, type, file, dict);
            }
        }