private void textEmp_KeyUp(object sender, KeyEventArgs e) { if (!keyLocker.Contains(e.KeyData)) { keyLocker.Add(e.KeyData); try { lastKeyData = e.KeyData; if (lastEmployeeText != textEmp.Text && !(textEmp.Text.Length == 1 && Regex.IsMatch(textEmp.Text, "[A-Za-z]"))) { buttonSelect.Text = label + "..."; if ((lastKeyData != Keys.Delete) && (lastKeyData != Keys.Back) && lastKeyData != Keys.Down && lastKeyData != Keys.Up) { ParseEmployee(false); } } else if ((textEmp.Text.Length == 1 && Regex.IsMatch(textEmp.Text, "[A-Za-z]")) || (textEmp.Text.Length == 0)) { buttonSelect.Text = label + "..."; } lastEmployeeText = textEmp.Text; } catch (Exception ex) { ErrorShower.OnShowError(null, ex.Message, ""); } finally { keyLocker.Remove(e.KeyData); } } }
private void StartInstall(object sender, DoWorkEventArgs args) { try { Installer installer = new Installer(gccPath, projectPath); installer.OnProgressChangeEvent += ProgressChangeSend; installer.StartInstall(); } catch (Exception e) { ErrorShower.Show(e); } }
private void btnOK_Click(object sender, EventArgs e) { CheckNew(false); if (_stampId <= 0) { return; } if (edited) { string name = textName.Text.Trim(); string nameEn = textNameEn.Text.Trim(); if (name.Length < 1 || nameEn.Length < 1) { ErrorShower.OnShowError(null, Environment.StringResources.GetString( "StampEditDialog.CheckNew.ErrorMessage1"), Environment.StringResources.GetString("Warning")); return; } if ( !Environment.StampData.SetField(Environment.StampData.NameField, SqlDbType.NVarChar, _stampId, name)) { return; } if ( !Environment.StampData.SetField(Environment.StampData.NameEnField, SqlDbType.VarChar, _stampId, nameEn)) { return; } } End(DialogResult); }
private void Parse() { string txt = text.Text.Trim(); try { ID = 0; if (PersonIDs == null || PersonIDs.Length == 0) { SelectDialog(FormXml(false, false).OuterXml); } else { if (txt.Length == 0) { SelectDialog(FormXml(true, true).OuterXml); } else { var findForm = FindForm(); if (findForm != null) { findForm.Cursor = Cursors.WaitCursor; } var filter = new DsoDoc(); filter.SearchText.Text = txt; filter.SearchText.Enabled = true; if (PersonIDs != null) { for (int i = 0; i < PersonIDs.Length; i++) { filter.Person.Add(PersonIDs[i]); } filter.Person.MatchAnyItem = true; filter.Person.Enabled = true; } int result = 0; int maxRecords = 0; //поскольку не надо ничего возвращать var ids = new int[maxRecords]; Data.Env.Docs.FindДокументы(filter, ids, ref result, ref maxRecords); if (result > 0) { if (result < maxResult) { string xml = FormXml(true, true).OuterXml; SelectUniversal(Data.DALC.Documents.Search.Options.GetSQL(xml), xml); } else { SelectDialog(FormXml(true, true).OuterXml); } } else { if (PersonIDs.Length > 1) { filter.Person.MatchAnyItem = false; Data.Env.Docs.FindДокументы(filter, ids, ref result, ref maxRecords); if (result > 0) { if (result < maxResult) { string xml = FormXml(true, false).OuterXml; SelectUniversal(Data.DALC.Documents.Search.Options.GetSQL(xml), xml); } else { SelectDialog(FormXml(true, false).OuterXml); } } else { SelectDialog(FormXml(false, false).OuterXml); } } SelectDialog(FormXml(false, false).OuterXml); } if (findForm != null) { findForm.Cursor = Cursors.Default; } } } } catch (Exception ex) { Data.Env.WriteToLog(ex); ErrorShower.OnShowError(null, ex.Message, ""); } }
public DataTable GetImages(DateTime minDate) { var table = new DataTable(); AddColumns(table); try { var dir = new DirectoryInfo(path); Console.WriteLine("{0}: Dir get files", DateTime.Now.ToString("HH:mm:ss fff")); FileInfo[] files = dir.GetFiles(); Console.WriteLine("{0}: Beginning cycle", DateTime.Now.ToString("HH:mm:ss fff")); for (int i = 0; i < files.Length; i++) { FileInfo f = files[i]; Console.Write("File " + i + "/" + files.Length + ": " + f.Name + "."); Console.Write("ext."); if ((ImageType(f.Extension) != null)) { Console.Write("date."); if (f.CreationTime >= minDate) { Console.Write("row."); DataRow row = table.NewRow(); Console.Write("fill."); FillRow(row, f); Console.Write("pos."); int insPos = -1; for (int j = 0; j < table.Rows.Count; j++) { var jDate = (DateTime)table.Rows[j][DateField]; var nDate = (DateTime)row[DateField]; if (DateTime.Compare(jDate, nDate) <= 0) { insPos = j; break; } } Console.Write("add."); if (insPos != -1) { table.Rows.InsertAt(row, insPos); } else { table.Rows.Add(row); } } } Console.WriteLine("{0}: done", DateTime.Now.ToString("HH:mm:ss fff")); } } catch (Exception ex) { Lib.Win.Data.Env.WriteToLog(ex); ErrorShower.OnShowError(null, ex.Message, ""); } return(table); }
private static void timer_Elapsed(object sender, ElapsedEventArgs e) { if ((wndHandleHashtable == null || wndHandleHashtable.Count == 0) && (answerCollection == null || answerCollection.Count == 0)) { return; } try { Console.Write("+"); if (wndHandleHashtable != null) { for (int i = wndHandleHashtable.Count - 1; i > -1; i--) { KeyValuePair <IntPtr, object[]> item = wndHandleHashtable[i]; if (item.Value == null) { if (wndHandleHashtable.Contains(item)) { wndHandleHashtable.Remove(item); } } else { if (item.Value[1].Equals(false)) { if (Program.MainFormDialog.InvokeRequired) { Program.MainFormDialog.BeginInvoke(new MessageSender(HideForm.SendMessage), new object[] { (IntPtr)item.Value[0], "s" }); } else { HideForm.SendMessage((IntPtr)item.Value[0], "s"); } Application.DoEvents(); } else { var newitem = new KeyValuePair <IntPtr, object[]>(item.Key, new[] { item.Value[0], false }); if (wndHandleHashtable.Contains(item)) { wndHandleHashtable.Remove(item); } wndHandleHashtable.Add(newitem); } } } } //if(answerCollection != null) // using(WebClient wc = new WebClient()) // { // wc.Credentials = CredentialCache.DefaultNetworkCredentials; // for(int i = answerCollection.Count - 1; i > -1; i--) // { // Common.SendAnswerParams item = answerCollection[i]; // if(String.IsNullOrEmpty(item.AnswerKey)) // { // if(answerCollection.Contains(item)) // answerCollection.Remove(item); // } // else // { // var values = new NameValueCollection(); // values["value"] = "s"; // values["control"] = item.AnswerControl; // values["callbackKey"] = item.AnswerKey; // values["escaped"] = "0"; // wc.UploadValues(new Uri(item.AnswerUrl), "POST", values); // Application.DoEvents(); // } // } // } } catch (Exception ex) { Lib.Win.Data.Env.WriteToLog(ex); ErrorShower.OnShowError(Program.MainFormDialog, ex.Message, string.Empty); } }
private DataRow[] ParseQuery(string txt) { if (txt == null) { return(null); } txt = Regex.Replace(txt, "[" + Regex.Escape(@"]\*+?|{[()^$#%'") + "]+", "", RegexOptions.IgnoreCase); txt = Regex.Replace(txt, "[.]+", " ", RegexOptions.IgnoreCase).Replace(" ", " ").Trim(); if (txt.Length == 0) { return(null); } string[] w = Regex.Split(txt, @"\s"); var rw = w.Clone() as string[] ?? new string[w.Length]; for (int j = 0; j < rw.Length; j++) { rw[j] = Replacer.ReplaceRusLat(w[j]); } int len = w.Length; if (len > 0 && len < 4) { string query = ""; var variants = new ArrayList(); string f = empData.FField; string i = empData.IField; string o = empData.OField; string fe = empData.FEngField; string ie = empData.IEngField; string l = empData.LoginField; switch (len) { case 1: variants.Add(l + " LIKE '" + w[0] + "%'"); variants.Add(f + " LIKE '" + rw[0] + "%'"); variants.Add(i + " LIKE '" + rw[0] + "%'"); variants.Add(fe + " LIKE '" + rw[0] + "%'"); variants.Add(ie + " LIKE '" + rw[0] + "%'"); break; case 2: variants.Add(f + " LIKE '" + rw[0] + "%' AND " + i + " LIKE '" + rw[1] + "%'"); variants.Add(i + " LIKE '" + rw[0] + "%' AND " + o + " LIKE '" + rw[1] + "%'"); variants.Add(i + " LIKE '" + rw[0] + "%' AND " + f + " LIKE '" + rw[1] + "%'"); variants.Add(fe + " LIKE '" + rw[0] + "%' AND " + ie + " LIKE '" + rw[1] + "%'"); variants.Add(ie + " LIKE '" + rw[0] + "%' AND " + fe + " LIKE '" + rw[1] + "%'"); break; case 3: variants.Add(f + " LIKE '" + rw[0] + "%' AND " + i + " LIKE '" + rw[1] + "%' AND " + o + " LIKE '" + rw[2] + "%'"); variants.Add(i + " LIKE '" + rw[0] + "%' AND " + o + " LIKE '" + rw[1] + "%' AND " + f + " LIKE '" + rw[2] + "%'"); break; } for (int j = 0; j < variants.Count; j++) { if (query.Length > 0) { query += " OR "; } query += "(" + (string)variants[j] + ")"; } try { return(empTable.Select(query)); } catch (Exception ex) { Data.Env.WriteToLog(ex); ErrorShower.OnShowError(null, ex.Message, ""); } } return(null); }
private void CheckNew(bool warning) { if (_stampId >= 0) { return; } string name = textName.Text.Trim(); string nameEn = textNameEn.Text.Trim(); if (name.Length < 1 || nameEn.Length < 1) { ErrorShower.OnShowError(null, Environment.StringResources.GetString( "StampEditDialog.CheckNew.ErrorMessage1"), Environment.StringResources.GetString("Warning")); return; } if (StampImage == null) { ErrorShower.OnShowError(null, Environment.StringResources.GetString( "StampEditDialog.CheckNew.ErrorMessage2"), Environment.StringResources.GetString("Warning")); return; } byte[] imagebyte = GetImageBytes(StampImage); if (imagebyte == null || imagebyte.Length < 10) { ErrorShower.OnShowError(this, Environment.StringResources.GetString( "StampEditDialog.CheckNew.ErrorMessage2"), Environment.StringResources.GetString("Warning")); return; } if (warning && MessageBox.Show("Сохранить штамп?", Environment.StringResources.GetString("Confirmation"), MessageBoxButtons.YesNoCancel) == DialogResult.No) { return; } if (createStampID < 1) { _stampId = Environment.StampData.AddStamp(imagebyte, name, nameEn); if (_stampId > 0) { Environment.StampRightsData.SetStampRights(_stampId, new List <StampRight> { new StampRight { UserId = Environment.CurEmp.ID } }); Environment.StampChecksData.SetStampRules(null, _stampId, new StampRule { UserId = Environment.CurEmp.ID }); } } else { if (Environment.StampData.SetStampImage(createStampID, imagebyte, name, nameEn)) { _stampId = createStampID; buttonReplace.Visible = false; } } }
private void DelPart(string srcFile, string dstFile, int page_from, int page_to, bool savePermission) { PdfReader basePDFReader = null; string tmpF = (srcFile == dstFile) ? Path.GetTempFileName() : dstFile; FileAttributes fa = FileAttributes.Normal; try { if (srcFile == dstFile) { if (((int)File.GetAttributes(srcFile) & (int)FileAttributes.ReadOnly) == (int)FileAttributes.ReadOnly) { try { fa = File.GetAttributes(srcFile); File.SetAttributes(srcFile, FileAttributes.Normal); } catch (Exception ex) { ErrorShower.OnShowError(null, ex.Message, Environment.StringResources.GetString("DocControl_Page_Error1")); return; } FileStream fs = null; try { fs = File.Open(dstFile, FileMode.Append, FileAccess.Write, FileShare.ReadWrite); } catch (IOException) { ErrorShower.OnShowError(null, string.Format( Environment.StringResources.GetString("DocControl_PDF_FileBusy"), dstFile), Environment.StringResources.GetString("DocControl_Page_Error1")); return; } catch (UnauthorizedAccessException ue) { ErrorShower.OnShowError(null, ue.Message, Environment.StringResources.GetString("DocControl_Page_Error1")); return; } finally { if (fs != null) { fs.Close(); } } } } using ( var fio = new FileStream(srcFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite | FileShare.Delete)) { string password = String.Empty; try { fio.Position = 0; basePDFReader = new PdfReader(fio, Encoding.UTF8.GetBytes(password)); if (!basePDFReader.IsOpenedWithFullPermissions) { throw new BadPasswordException(""); } } catch (BadPasswordException) { while (basePDFReader == null || !basePDFReader.IsOpenedWithFullPermissions) { if (basePDFReader != null) { basePDFReader.Close(); } password = String.Empty; if ( Controls.PdfViewControl.InputBox.Show(Environment.StringResources.GetString("DocControl_PDF_Encrypted"), Environment.StringResources.GetString("DocControl_PDF_EnterPass"), ref password) == DialogResult.Cancel) { return; } try { fio.Position = 0; basePDFReader = new PdfReader(fio, Encoding.UTF8.GetBytes(password)); } catch (BadPasswordException) { } } } if (basePDFReader.NumberOfPages == 0) { throw new Exception("В документе отсутствуют страницы. Операция сохранения невозможна!"); } page_from = (page_from <= 0 || page_from > basePDFReader.NumberOfPages) ? 1 : page_from; page_to = (page_to <= 0 || page_to > basePDFReader.NumberOfPages) ? basePDFReader.NumberOfPages : page_to; if ((page_to - page_from + 1) == basePDFReader.NumberOfPages) { return; } int i = page_from - 1; int j = 1; var pages = new int[basePDFReader.NumberOfPages]; pages = pages.Select(x => x = j++).ToArray(); pages = pages.Where(x => x <page_from || x> page_to).ToArray(); using (var file_stream = new FileStream(tmpF, FileMode.Create, FileAccess.Write, FileShare.None)) using (var document = new iTextSharp.text.Document()) using (var pdfWriter = new PdfCopy(document, file_stream)) { pdfWriter.CompressionLevel = PdfStream.BEST_COMPRESSION; pdfWriter.SetFullCompression(); pdfWriter.RotateContents = true; if (savePermission && password != String.Empty) { pdfWriter.SetEncryption(null, Encoding.UTF8.GetBytes(password), basePDFReader.Permissions, PdfWriter.STANDARD_ENCRYPTION_128); } document.Open(); foreach (int numberPage in pages) { PdfImportedPage pp = pdfWriter.GetImportedPage(basePDFReader, numberPage); pdfWriter.AddPage(pp); } document.Close(); } } if (srcFile == dstFile) { File.Copy(tmpF, dstFile, true); } } catch (Exception ex) { Data.Env.WriteToLog(ex); } finally { if (basePDFReader != null) { basePDFReader.Close(); } if (srcFile == dstFile) { Slave.DeleteFile(tmpF); if (fa != File.GetAttributes(dstFile)) { try { File.SetAttributes(dstFile, fa); } catch (Exception ex) { Data.Env.WriteToLog(ex); } } } } }