private void tKrkB_Validated(object sender, EventArgs e) { int i = 0; string s = ((TextBox)sender).Text.Trim(); if (s.Length > 0) { DataView dvR = ((DataTable)cmbReasons.DataSource).DefaultView; for (i = 0; i < dvR.Count; i++) { if (dvR[i].Row["KRK"].ToString() == s) {// краткий код обнаружен if (cmbReasons.SelectedIndex == i) { cmbReasons.SelectedIndex = i - 1; } cmbReasons.SelectedIndex = i; //UpdateFullKodPr(dvR[i].Row["KPR"].ToString(), dvR[i].Row["SNM"].ToString()); if (nDocType == AppC.TYPD_BRK) {// для актов забраковки на этом все заканчивается EndEditB(true); this.Close(); } //aEd.TryNext(AppC.CC_NEXT); break; } } if (i >= dvR.Count) { Srv.ErrorMsg("Не найден!", "Код " + s, true); //((TextBox)sender).Text = ""; } } }
// проверка даты private void tDateD_p_Validating(object sender, CancelEventArgs e) { string sD = ((TextBox)sender).Text.Trim(); if (sD.Length > 0) { try { sD = Srv.SimpleDateTime(sD); DateTime d = DateTime.ParseExact(sD, "dd.MM.yy", null); xDP.dDatDoc = d; ((TextBox)sender).Text = sD; } catch { e.Cancel = true; } } else { xDP.dDatDoc = DateTime.MinValue; } //if (e.Cancel != true) // e.Cancel = !ServClass.TryEditNextFiled((Control)sender, nCurEditCommand, aEdVvod); }
public EmployeeHolidaysInfo UpdateFromEmployee(Employee employee) { if (employee == null) { return(null); } if (employee.IsNew) { return(null); } if (EmployeeId != employee.ID) { return(null); } EmployeeHolidaysInfo entity = GetEntity(EmployeeId, Year); if (entity == null) { entity = new EmployeeHolidaysInfo(); } entity.EmployeeID = employee.ID; entity.NewHolidays = employee.NewHolidays; entity.OldHolidays = employee.OldHolidays; entity.UsedHolidays = employee.UsedHolidays; entity.Year = (short)Year; entity.CalculateSpareHolidays(); Srv.SaveOrUpdate(entity); return(entity); }
private void tParty_Validating(object sender, CancelEventArgs e) { if (bInScanProceed) { return; } string sT = ((TextBox)sender).Text.Trim(); if (sT.Length > 0) { try { if (sT.Length > 4) { Srv.ErrorMsg("Партия - 4 знака!", true); e.Cancel = true; } } catch { e.Cancel = true; } } if (!e.Cancel) { xMark.ScanFirst.nParty = sT; ((TextBox)sender).Text = sT; } }
private void TestEmm() { int nE, nWithNE; DataTable dtM = xNSI.DT[NSI.NS_MC].dt; DataRelation myRelation = dtM.ChildRelations[NSI.REL2EMK]; DataRow[] childRows; WriteProt(String.Format("========== Test NS_MC & EMK {0}", DateTime.Now)); nWithNE = 0; foreach (DataRow dr in dtM.Rows) { childRows = dr.GetChildRows(myRelation); nE = childRows.Length; if ((nE > 1) || (nE < 1)) { nWithNE++; WriteProt(String.Format("KRKMC={0} E={1} EAN={3} {2} ", dr["KRKMC"], nE, dr["SNM"], dr["EAN13"])); } } WriteProt(String.Format("========== Total = {0}", nWithNE)); Srv.ErrorMsg(nWithNE.ToString()); }
// восстановление рабочих данных (при необходимости) public void TryRestoreUserDat(Smena xSm, AppPars xP, bool bRestAll) { Smena xSaved; object xxx; int nRet = Srv.ReadXMLObj(typeof(Smena), out xxx, xP.sDataPath + sP_CS); if (nRet == AppC.RC_OK) { xSaved = (Smena)xxx; if (xSaved.nDocs > 0) { // данные действительно есть if ((xSaved.sUser == xSm.sUser) || (bRestAll == true)) { // сохраненный соответствует новому TimeSpan tsDiff = xSm.dBeg.Subtract(xSaved.dBeg); if ((tsDiff.Days <= 7) || (true)) {// данные могут быть актуальны nRet = DSRestore(false, xP.sDataPath + sP_CSDat); if (nRet == AppC.RC_OK) { xSm.nDocs = xSaved.nDocs; } xSm.nDocs = DT[NSI.TBD_DOC].dt.Rows.Count; } } } } }
// дата выработки private void tDTV_Validating(object sender, CancelEventArgs e) { if (bInScanProceed) { return; } string sT = ((TextBox)sender).Text.Trim(); if (sT.Length > 0) { try { sT = Srv.SimpleDateTime(sT, Smena.DateDef); DateTime d = DateTime.ParseExact(sT, "dd.MM.yy", null); xMark.ScanFirst.dDataIzg = d; xMark.ScanFirst.sDataIzg = sT; ((TextBox)sender).Text = sT; } catch { e.Cancel = true; } } else { xMark.ScanFirst.dDataIzg = DateTime.MinValue; } //if (e.Cancel || (xMark.ScanFirst.dDataIzg == DateTime.MinValue)) //{ // bSetByHand = false; //} }
public int ConvertSSCC2Lst(ServerExchange xSE, string sSSCC, ref PSC_Types.ScDat scD, bool bInfoOnEmk, DataTable dtResult) { int nRec, nRet = AppC.RC_OK; string sP; DataSet dsTrans = null; // вместе с командой отдаем заголовок документа xCUpLoad = new CurUpLoad(xPars); xCUpLoad.sCurUplCommand = AppC.COM_ZSC2LST; if (xCDoc.drCurRow is DataRow) { dsTrans = xNSI.MakeWorkDataSet(xNSI.DT[NSI.BD_DOCOUT].dt, dtResult, new DataRow[] { xCDoc.drCurRow }, null, xSm, xCUpLoad); } MakeTempDOUTD(dtResult); LoadFromSrv dgL = new LoadFromSrv(LstFromSSCC); xCLoad = new CurLoad(); xCLoad.sSSCC = sSSCC; xCLoad.xLP.lSysN = xCDoc.nId; xCLoad.dtZ = dtL; sP = String.Format("(SSCC={0},TYPE={1})", sSSCC, "ROW"); string sL = xSE.ExchgSrv(AppC.COM_ZSC2LST, sP, "", dgL, dsTrans, ref nRet, 20); if (dtL.Rows.Count > 0) { nRet = TestProdBySrv(xSE, nRet); if (nRet == AppC.RC_OK) { nRec = xCLoad.dtZ.Rows.Count; if (nRec == 1) {// будем изображивать сканирование SetVirtScan(xCLoad.dtZ.Rows[0], ref scD, true, bInfoOnEmk); scD.sSSCC = sSSCC; } else {// добавление группы ??? nRet = AppC.RC_MANYEAN; } } } else {// просто сохраним запись ??? - если была сетевая ошибка! при ошибке сервера ничего сохранять не надо! if (xSE.ServerRet != AppC.RC_OK) { Srv.ErrorMsg(sL); } } return(nRet); }
// добавление в список SSCC отмаркированного поддона public DataRow AddSSCC2SSCCTable(string sSSCC, int nPP, CurDoc xCDoc, bool bAddNew) { DataRow ret = null; int nKey = (int)xCDoc.drCurRow["SYSN"]; try { bAddNew = false; ret = FindSCCTInSSCCList(sSSCC, nKey, ref nPP); if (ret == null) { bAddNew = true; ret = xNSI.DT[NSI.BD_SSCC].dt.NewRow(); ret["SYSN"] = nKey; ret["NPODDZ"] = nPP; ret["SSCC"] = sSSCC; ret["STATE"] = 1; } ret["IN_TTN"] = 1; if (bAddNew) { xNSI.DT[NSI.BD_SSCC].dt.Rows.Add(ret); } } catch { Srv.ErrorMsg("Ошибка добавления SSCC!"); } return(ret); }
// допустимость ввода продукции private bool CanSetOperObj() { bool bSrcNeed = AppC.xDocTInf[xCDoc.xDocP.nTypD].AdrFromNeed, bDstNeed = AppC.xDocTInf[xCDoc.xDocP.nTypD].AdrToNeed, ret = true; if (xPars.UseAdr4DocMode) { if (bSrcNeed) {// адрес-источник нужен ? if (AppC.xDocTInf[xCDoc.xDocP.nTypD].MoveType == AppC.MOVTYPE.MOVEMENT) { if ((xSm.xAdrFix1 != null) && (!xCDoc.xOper.IsFillSrc())) {// зафиксирован адрес xCDoc.xOper.SetOperSrc(xSm.xAdrFix1, xCDoc.xDocP.nTypD, true); } } if ((xCDoc.xOper.GetSrc(false).Length > 0) || ((xCDoc.drCurRow["CHKSSCC"] is int) && ((int)xCDoc.drCurRow["CHKSSCC"] > 0)) || (IsDoc4Check())) { } else { ret = false; Srv.ErrorMsg("Не указан адрес!"); } } } return(ret); }
public void MakeConnection(string ConnectionString, SSASConnectionState state) { try { SSASConnection = new AdomdConnection { ConnectionString = ConnectionString }; Srv.Connect(ConnectionString); if ((int)Srv.ServerMode != (int)state) { throw new Exception("Wrong connection type! Server you've tried to connect is " + Srv.ServerMode.ToString()); } SSASConnection.SessionID = Srv.SessionID; SSASConnection.Open(); ConnectionState = state; DatabaseName = SSASConnection.Database; PrepareTrace(); } catch (Exception e) { if (SSASConnection.State == System.Data.ConnectionState.Open) { SSASConnection.Close(); } if (Srv.Connected) { Srv.Disconnect(); } throw new Exception(e.Message, e); } }
private static void LoadRegServers(AtlasServerManager ArkMgr) { key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\AtlasServerManager\\Servers"); if (key != null) { string[] Servers = key.GetSubKeyNames(); foreach (string Srv in Servers) { if (Srv.StartsWith("Server")) { AtlasServerData ASD = LoadRegServer(ArkMgr, Srv); try { if (ASD.PID != 0) { ASD.ServerProcess = Process.GetProcessById(ASD.PID); } } catch { ASD.PID = 0; } ArkMgr.ServerList.Items.Add(new ArkServerListViewItem(ASD)); } } key.Close(); } }
public void GradeStudent() { Console.Clear(); Console.WriteLine("Asistente de calificaciones"); Console.WriteLine("---------------------------"); Console.WriteLine(""); var subjects = SubjectSrv.GetAllSubjects(); if (subjects.Count() == 0) { Console.WriteLine("No hay cursos registrados en el sistema"); return; } Console.WriteLine("Materias disponibles"); Console.WriteLine(""); ConsolePrompts.PrintListWithIndices(subjects.Select(s => s.Name)); Console.WriteLine(""); var option = ConsolePrompts.ReadNumberUntilValid( prompt: "Numero de la materia deseada", min: 1, max: subjects.Count()); var subject = subjects.ElementAt(option - 1); var students = StudentSrv.GetStudentsEnrolledInSubject(subject.Id); Console.WriteLine(""); if (students.Count() == 0) { Console.WriteLine($"No hay estudiantes inscriptos a {subject.Name}"); return; } Console.WriteLine("Estudiantes inscriptos"); Console.WriteLine(""); ConsolePrompts.PrintListWithIndices(students.Select(s => $"{s.LastName}, {s.FirstName} [{s.Id}]")); Console.WriteLine(""); option = ConsolePrompts.ReadNumberUntilValid( prompt: "Numero del estudiante", min: 1, max: subjects.Count()); var student = students.ElementAt(option - 1); Console.WriteLine(""); var grade = ConsolePrompts.ReadNumberUntilValid( prompt: "Nota", min: 1, max: 100); StudentSrv.GradeStudent(student.Id, subject.Id, grade); Srv.SendNotification(student.Id, $"Has recibido una calificacion! Sacaste {grade} en {subject.Name}"); Console.WriteLine(""); Console.WriteLine($"Se notifico a {student.LastName}, {student.FirstName} que su nota para {subject.Name} fue {grade}"); }
// проверка пароля для непустого пользователя public bool ValidUserPass(string sUser, string sPass, string sTabN, string sUN) { bool ret = false; int nRet = AppC.RC_OK; if (sUser.Length > 0) { if ((sUser != AppC.SUSER) && (sUser != AppC.GUEST)) { try { if (sTabN.Length > 0) {// отсканирован штрихкод с табельным ret = true; } else { DataView dv = new DataView(xNSI.DT[NSI.NS_USER].dt, String.Format("KP='{0}'", sUser), "", DataViewRowState.CurrentRows); if (dv.Count == 1) { if (sPass == (string)dv[0].Row["PP"]) { ret = true; sUN = (string)dv[0].Row["NMP"]; sTabN = (string)dv[0].Row["TABN"]; } } } string sE = CheckUserLogin(sUser, sTabN, ref nRet); if (nRet != AppC.RC_OK) { ret = false; Srv.ErrorMsg(sE, true); } } catch { } } else { ret = true; sUN = (sUser == AppC.SUSER) ? "Admin" : "Работник склада"; } if (ret) { xSm.sUser = sUser; xSm.sUName = sUN; xSm.sUserPass = sPass; xSm.sUserTabNom = sTabN; xSm.urCur = (sUser == AppC.SUSER) ? Smena.USERRIGHTS.USER_SUPER : Smena.USERRIGHTS.USER_KLAD; } } return(ret); }
public string sPathBD; // путь к таблицам // загрузка одной таблицы public bool Read1NSI(TableDef xT, int nReg) { bool bWasRead = false; int tc1, nE = 0; string sPath = ""; object dg = null; //xT.sDTStat = float.MinValue.ToString(); xT.sDTStat = "0"; if ((xT.dt != null) && ((xT.nType & TBLTYPE.NSI) == TBLTYPE.NSI) && (((xT.nType & TBLTYPE.LOAD) == TBLTYPE.LOAD) || ((xT.nType & TBLTYPE.INTERN) == TBLTYPE.INTERN) || (nReg == LOAD_ANY))) // НСИ загружаемое { if ((xT.nState == DT_STATE_INIT) || (nReg == LOAD_ANY)) { if (xT.dg != null) { dg = xT.dg.DataSource; xT.dg.DataSource = null; } xT.nErr = 0; tc1 = Environment.TickCount; try { sPath = sPathNSI + xT.sXML; xT.dt.BeginLoadData(); nE = 1; xT.dt.Clear(); nE = 2; xT.dt.ReadXml(sPath); nE = 3; xT.dt.EndLoadData(); xT.nState = DT_STATE_READ; xT.sDTStat = Srv.TimeDiff(tc1, Environment.TickCount); bWasRead = true; } catch (Exception ee) { xT.nErr = nE; xT.nState = DT_STATE_READ_ERR; } if (dg != null) { xT.dg.DataSource = dg; } dg = null; } } return(bWasRead); }
public int SaveCS(string sP, int nD) { //xSm.nDocs = DT[NSI.TBD_DOC].dt.Rows.Count; //Srv.WriteXMLObjTxt(typeof(Smena), xSm, xP.sDataPath + sP_CS); //dsM.WriteXml(xP.sDataPath + sP_CSDat); this.nDocs = nD; return(Srv.WriteXMLObjTxt(typeof(Smena), this, sP + sXML)); }
public Dns(Flags flags, Qry qry, Count count, string a, string ns, Resp resp, Srv srv) { this.flags = flags; this.qry = qry; this.count = count; this.a = a; this.ns = ns; this.resp = resp; this.srv = srv; }
public static void DebugCheckMethods() { Srv.GetEntities(100); Srv.GetEntity(100, 2007); Srv.GetEntities(new long[] { 100, 1001 }, 2007); Srv.GetEntitiesByStore(1003, 2007); Srv.GetEntitiesByCountry(999, 2007); }
// Выгрузить настройки клавиатуры private void MMenuClick_LoadControl(object sender, EventArgs e) { if (xSm.sUser == AppC.SUSER) { if (xFuncs.SaveKMap() == AppC.RC_OK) { MessageBox.Show("Файл выгружен"); } } else { Srv.ErrorMsg("Только Admin!", true); } CreateMMenu(); }
// Корректность введенного private AppC.VerRet VerifyB() { int n = 0; AppC.VerRet v; v.nRet = AppC.RC_CANCEL; v.cWhereFocus = null; try { if (xMark.ScanFirst.sKMC.Length > 0) { if (xMark.ScanFirst.nMest > 0) { if (xMark.ScanFirst.nParty.Length > 0) { if (xMark.ScanFirst.dDataIzg != DateTime.MinValue) { v.nRet = AppC.RC_OK; } else { Srv.ErrorMsg("Введите дату"); v.cWhereFocus = tDTV; } } else { Srv.ErrorMsg("Введите партию"); v.cWhereFocus = tParty; } } else { Srv.ErrorMsg("Нулевое количество"); v.cWhereFocus = tMest; } } } catch { n = 0; } return(v); }
public static void ClearAll() { key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\\AtlasServerManager\\Servers"); if (key != null) { string[] Servers = key.GetSubKeyNames(); foreach (string Srv in Servers) { if (Srv.StartsWith("Server")) { key.DeleteSubKey(Srv); } } key.Close(); } }
private void LoadAvtoList(bool bUsePropusk) { int nRet = AppC.RC_OK; string sPar, sErr = ""; LoadFromSrv dgRead; xSE = new MainF.ServerExchange(xMainF); dgRead = new LoadFromSrv(AvtoList); sPar = String.Format("(IO={0},NSH={1},KSK={2}", xPark.ParkIO, xPark.NShl, xMainF.xSm.nSklad); if (xPark.NSm > 0) { sPar += ",KSMEN=" + xPark.NSm.ToString(); } if (xPark.NPtvList > 0) { sPar += ",NPL=" + xPark.NPtvList.ToString(); } if (xPark.Propusk.Length > 0) { sPar += ",PRPSK=" + xPark.Propusk.Trim(); } sPar += ")"; //Cursor crsOld = Cursor.Current; //Cursor.Current = Cursors.WaitCursor; sErr = xSE.ExchgSrv(AppC.COM_ZOTG, sPar, "", dgRead, null, ref nRet); //FakeEx(); //Cursor.Current = crsOld; bsSh.RemoveFilter(); if (nRet == AppC.RC_OK) { xPark.SaveOldPars(); IsParkAvail(); //lAvtoCount.Text = bsSh.Count.ToString(); //xPark.SaveOldPars(); } else { ((DataView)bsSh.DataSource).Table.Rows.Clear(); Srv.ErrorMsg(sErr, true); if (nRet == 24) {// неверный шлюз BeginEditP(tShlAddr); } } }
public static int ReadSm(ref Smena xS, string sPath) { object x; int nRet = Srv.ReadXMLObj(typeof(Smena), out x, sPath); if (nRet == AppC.RC_OK) { xS = (Smena)x; xS.sUName = xS.sUser = ""; } else { xS = new Smena(); } return(nRet); }
// проверка даты private void tDefDateDoc_Validating(object sender, CancelEventArgs e) { string sD = tDefDateDoc.Text.Trim(); if (sD.Length > 0) { try { sD = Srv.SimpleDateTime(sD); ((TextBox)sender).Text = sD; } catch { e.Cancel = true; } } }
private static void Main(string[] args) { HostFactory.Run(serviceConfig => { serviceConfig.Service <LoadApplication>(Srv => { Srv.ConstructUsing(name => new LoadApplication()); Srv.WhenStarted(execute => execute.Start()); Srv.WhenStopped(execute => execute.Stop()); }); serviceConfig.SetServiceName("SagaService"); serviceConfig.SetDisplayName("Saga Service"); serviceConfig.SetDescription("This is a service processing all saga events"); serviceConfig.StartAutomatically(); }); }
// проверка типа private void tKT_p_Validating(object sender, CancelEventArgs e) { string sT = tKT_p.Text.Trim(); if (bEditMode) { if (xDP.nNumTypD == AppC.EMPTY_INT) { if (!aEdVvod.Fict4Next.Focused) { Srv.ErrorMsg("Укажите тип!", true); } e.Cancel = true; } } }
// Корректность введенного private AppC.VerRet VerifyAvt() { AppC.VerRet v; bool bGoodUser = false; try { if (nCurReg != AppC.AVT_TOUT) { //if (tUser.Enabled) // bGoodUser = ValidUserPass(xSm.sUser, xSm.sUserPass, "", ""); //else // bGoodUser = true; bGoodUser = ValidUserPass(xSm.sUser, xSm.sUserPass, "", ""); } else { if (nCurReg != AppC.AVT_PARS) { bGoodUser = (tPass.Text == xSm.sUserPass) ? true : false; } else { bGoodUser = true; } } } catch { bGoodUser = false; } if (!bGoodUser) { v.nRet = AppC.RC_CANCEL; Srv.ErrorMsg("Неверный пользователь или пароль!"); } else { v.nRet = AppC.RC_OK; } v.cWhereFocus = null; return(v); }
public void HandlePostRequest() { // this post data processing just reads everything into a memory stream. // this is fine for smallish things, but for large stuff we should really // hand an input stream to the request processor. However, the input stream // we hand him needs to let him see the "end of the stream" at this content // length, because otherwise he won't know when he's seen it all! int content_len = 0; MemoryStream ms = new MemoryStream(); if (HttpHeaders.ContainsKey("Content-Length")) { content_len = Convert.ToInt32(this.HttpHeaders["Content-Length"]); if (content_len > MAX_POST_SIZE) { throw new Exception( String.Format("POST Content-Length({0}) too big for this simple server", content_len)); } byte[] buf = new byte[BUF_SIZE]; int to_read = content_len; while (to_read > 0) { Console.WriteLine("starting Read, to_read={0}", to_read); int numread = this.InputStream.Read(buf, 0, Math.Min(BUF_SIZE, to_read)); Console.WriteLine("read finished, numread={0}", numread); if (numread == 0) { if (to_read == 0) { break; } else { throw new Exception("client disconnected during post"); } } to_read -= numread; ms.Write(buf, 0, numread); } ms.Seek(0, SeekOrigin.Begin); } Srv.HandlePostRequest(this, new StreamReader(ms)); }
static void Main(string[] args) { HostFactory.Run(serviceConfig => { serviceConfig.Service <LoadApplication>(Srv => { Srv.ConstructUsing(name => new LoadApplication()); Srv.WhenStarted(execute => execute.Start()); Srv.WhenStopped(execute => execute.Stop()); }); serviceConfig.SetServiceName("NotificationService"); serviceConfig.SetDisplayName("Notification Service"); serviceConfig.SetDescription("This service will notify the end user about the activity."); serviceConfig.StartAutomatically(); }); }
public static void Main(string[] args) { Console.Title = "Payment"; HostFactory.Run(serviceConfig => { serviceConfig.Service <LoadApplication>(Srv => { Srv.ConstructUsing(name => new LoadApplication()); Srv.WhenStarted(execute => execute.Start()); Srv.WhenStopped(execute => execute.Stop()); }); serviceConfig.SetServiceName("PaymentService"); serviceConfig.SetDisplayName("Payment Service"); serviceConfig.SetDescription("This is a service processing all the payments made by students"); serviceConfig.StartAutomatically(); }); }