public void FormulSwith(ModelZg modelZg, string databasepath, ModelImnsOtdel otdel, CalendarModel calendar, Status status, OtdelFormul formul, Loading Load) { SeathZg seathzg = new SeathZg(); if (!formul.IsValidation()) { } else { switch (formul.SelectfFormul.Index) { case 1: if (!otdel.IsValidation() || !calendar.IsValidation()) { break; } { seathzg.SeathZgOtdel(databasepath, modelZg, Formula.GenerateFormula(formul.SelectfFormul.Formula, otdel.SelectOtdel.OtdelDepartament, calendar.Stardatetime, calendar.EndDateTime), Load); break; } case 2: if (!otdel.IsValidation() || !calendar.IsValidation() || !status.IsValidation()) { break; } { seathzg.SeathZgOtdel(databasepath, modelZg, Formula.GenerateFormula(formul.SelectfFormul.Formula, otdel.SelectOtdel.OtdelDepartament, calendar.Stardatetime, calendar.EndDateTime, status.Selectstatus.StatusZg), Load); break; } } } }
/// <summary> /// Данный метод возвращает заполненую колекцию отделов и сотрудников из IMNS /// </summary> /// <param name="db">Соединение с Базой данных IMNS</param> /// <param name="shemeotdel">Схема из библиотеки данных ImnsLotusOtdelValue</param> /// <returns></returns> public static ModelImnsOtdel ShemeSeathImns(NotesDatabase db, ModelImnsOtdel shemeotdel) { var colOtdel = db.Search(String.Format("Select(Form= \"" + DbImnsItem.Departament + "\")"), null, 0); var docOtdel = colOtdel.GetFirstDocument(); while (docOtdel != null) { //ModelImnsOtdel.ModelImnsUsers shemeusers = new ModelImnsOtdel.ModelImnsUsers(); string repOtd = docOtdel.GetItemValue(DbImnsItem.Abbreviation)[0]; var colectUsers = db.Search(String.Format("Select (" + DbImnsItem.Abbreviation + "= \"" + repOtd + "\"&Form= \"" + DbImnsItem.Departament + "\"| @AllChildren)"), null, 0); var docUsers = colectUsers.GetFirstDocument(); while (docUsers != null) { string namenull = docUsers.GetItemValue(DbImnsItem.Abbreviation)[0]; if (docUsers.GetItemValue(ImnsLotusUsers.Dismissal)[0] != "1" && namenull.Length == 0) { shemeotdel.ShemeUsers.Add(new ModelImnsOtdel.ModelImnsUsers { Username = docUsers.GetItemValue(ImnsLotusUsers.User)[0] }); } docUsers = colectUsers.GetNextDocument(docUsers); } shemeotdel.ShemeOtdel.Add(new ModelImnsOtdel { Otdeldepartament = Regex.Replace(docOtdel.GetItemValue(DbImnsItem.NameOtdel)[0], "[0-9]+[\\s]", String.Empty), _shemeousers = shemeotdel.ShemeUsers }); docOtdel = colOtdel.GetNextDocument(docOtdel); } return(shemeotdel); }
public ModelImnsOtdel LoadOtdUser() { ModelImnsOtdel shemeotdel = new ModelImnsOtdel(); try { var db = ConectDb.Databaseconect(ConectionString.Pass, ConectionString.ServerLocal, ConectionString.Imns, false); shemeotdel = Lotuslib.Seath.SeathImns.SeathImns.ShemeSeathImns(db, shemeotdel); } catch (Exception ex) { MessageBox.Show(ex.Message); } return(shemeotdel); }
public void SeathDbZg(ObservableCollection <ModelZg> sheme, string dbpath, ModelImnsOtdel otdel, CalendarModel calendar) { if (!otdel.IsValidation() || !calendar.IsValidation()) { MessageBox.Show("Не прошли"); } else { try { MessageBox.Show("Прошли"); // sheme.Clear(); // var db = Lotuslib.ConectDb.ConectDb.Databaseconect(Lotuslib.ConectionString.ConectionString.Pass, Lotuslib.ConectionString.ConectionString.ServerLocal, dbpath, false); // var col = db.Search(ParamFormula.Formula.FormulaSeath(otdel.OtdelDepartament, start, finish), null, 0); // var docum = col.GetFirstDocument(); // while (docum != null) // { // sheme.Add(new ModelZg // { // StatusZg = docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.StatusZg)[0], // Num = docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.NumZg)[0], // Datareg = docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.DataregZg)[0], // DepartamentZg = docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.DepartamentZg)[0], // Incardrespoutnum = docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.InCardRespOutNum)[0], // Incardrespdi = Convert.ToString(docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.InCardRespDi)[0]), // Extofiledate = Convert.ToString(docum.GetItemValue(Lotuslib.LotusItem.DbZgItem.ExToFileDate)[0]) // }); // docum = col.GetNextDocument(docum); // } } catch (Exception e) { MessageBox.Show(e.Message); } } }