Пример #1
0
        public async void CreateMission(Missions mission)
        {
            _db      = new AIFDbContext();
            _mission = mission;
            if (_mission.Id <= 0)
            {
                _isNew = true;
                var interfaces = await Task.Run(() => {
                    return(_db.Interfaces.ToList());
                });

                foreach (var i in interfaces)
                {
                    _mission.Tasks.Add(new Tasks()
                    {
                        Interfaces = i
                    });
                }
                _db.Missions.Add(_mission);
            }
            else
            {
                _isNew   = false;
                _mission = _db.Missions.Include(m => m.Tasks.Select(s => s.Interfaces)).Single(m => m.Id == _mission.Id);
            }
            _tasks = _mission.Tasks.ToList();
            dg_Interfaces.DataContext = _tasks;
            this.DataContext          = _mission;
        }
Пример #2
0
        public static void Test()
        {
            SAPTestHelper.Current.SetSession();

            int patchSize = 100;


            AIFDbContext db         = new AIFDbContext();
            var          totalIdocs = db.IDocs.Include(i => i.Tasks.Interfaces).Where(s => s.Status == "56").ToList();

            int timers = (int)Math.Ceiling(totalIdocs.Count / double.Parse(patchSize.ToString()));

            for (int i = 0; i < timers; i++)
            {
                var idocs = totalIdocs.Skip(i * patchSize).Take(patchSize);
                //bd87(idocs.Select(s => s.IDocNumber).ToList(),"56");
                bd87(idocs.Select(s => s.IDocNumber).ToList(), "64");
            }


            var interfaces = totalIdocs.GroupBy(g => g.Tasks.Interfaces).Select(g => g.Key).ToList();

            foreach (var i in interfaces)
            {
                TrackStatus(i);
            }
        }
Пример #3
0
        private void TrackStatus(Interfaces i)
        {
            SAPTestHelper.Current.SAPGuiSession.StartTransaction("ZIDOCAUDREP");

            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("S_CREDAT-LOW").Text  = DateTime.Now.AddMonths(-1).ToString("dd.MM.yyyy");
            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("S_CREDAT-HIGH").Text = DateTime.Now.ToString("dd.MM.yyyy");
            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("S_CRETIM-LOW").Text  = "00:00:00";
            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("S_CRETIM-HIGH").Text = "24:00:00";
            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("S_STATUS-LOW").Text  = "*";
            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("P_DIRECT").Text      = "2";


            SAPTestHelper.Current.MainWindow.FindByName <GuiRadioButton>("R_OTHERS").Select();
            SAPTestHelper.Current.MainWindow.FindByName <GuiCTextField>("S_MESTYP-LOW").Text = i.MsgType;

            SAPTestHelper.Current.MainWindow.FindByName <GuiCheckBox>("P_DOWNLD").Selected = true;
            SAPTestHelper.Current.MainWindow.FindByName <GuiRadioButton>("P_FILE").Select();
            SAPTestHelper.Current.MainWindow.FindByName <GuiTextField>("P_CPATH").Text = _data.GetAIF56File(i.Id);

            SAPTestHelper.Current.MainWindow.FindByName <GuiRadioButton>("P_DOC").Select();

            SAPTestHelper.Current.MainWindow.FindByName <GuiButton>("%_S_IDOCNO_%_APP_%-VALU_PUSH").Press();

            List <string> idocNumbers = new List <string>();

            var myTasks = i.Tasks.Where(m => m.Mid == _data.MissionId).ToList();

            foreach (var t in myTasks)
            {
                idocNumbers.AddRange(t.LH7IDocs.Select(s => s.IDocNumber));
            }


            SAPTestHelper.Current.PopupWindow.FindDescendantByProperty <GuiTableControl>().SetBatchValues(idocNumbers);
            SAPTestHelper.Current.PopupWindow.FindByName <GuiButton>("btn[8]").Press();

            SAPTestHelper.Current.MainWindow.FindByName <GuiButton>("btn[8]").Press();

            if (SAPTestHelper.Current.PopupWindow != null)
            {
                SAPTestHelper.Current.PopupWindow.FindByName <GuiButton>("btn[0]").Press();
            }


            var itg_IDocNumbers = Tools.GetDataEntites <IDoc>(_data.GetAIF56File(i.Id));

            using (var db = new AIFDbContext()) {
                foreach (var item in itg_IDocNumbers)
                {
                    var iDoc     = item.GetIDocs();
                    var iDocInDB = db.LH7IDocs.SingleOrDefault(s => s.IDocNumber == iDoc.IDocNumber);
                    if (iDocInDB != null)
                    {
                        db.LH7IDocs.Remove(iDocInDB);
                    }
                    db.LH7IDocs.Add(iDoc);
                }
                db.SaveChanges();
            }
        }
Пример #4
0
        public void ReadIDocList()
        {
            if (!File.Exists(_data.GetIDocFile()))
            {
                using (var db = new AIFDbContext()) {
                    var task = db.Tasks.Single(t => t.Id == _data.TaskId);
                    task.FinishDt   = DateTime.Now;
                    task.IsFinished = true;
                    task.DataCount  = 0;
                    db.SaveChanges();
                }
                SAPTestHelper.Current.CloseSession();
                Return("No data found");
            }

            var iDocNumbers = Tools.GetDataEntites <AIFIDocNumbers>(_data.GetIDocFile(), '|').Take(_data.DataCounts).ToList();

            _iDocNumbers = iDocNumbers.Select(i => i.IDocNumber).ToList();
            using (var db = new AIFDbContext()) {
                var task = db.Tasks.Single(s => s.Id == _data.TaskId);
                foreach (var item in iDocNumbers)
                {
                    task.LH1IDocs.Add(item.GetIDocNumber());
                }
                db.SaveChanges();
            }
        }
Пример #5
0
        public void TrackError()
        {
            var patchSize = 200;

            using (var db = new AIFDbContext()) {
                var idocs = db.LH7IDocs.Where(i => i.Status == "51").ToList();
                var mod   = idocs.Count % patchSize;
                int times = idocs.Count / patchSize;
                if (mod != 0)
                {
                    times++;
                }

                for (int i = 0; i < times; i++)
                {
                    _stepReporter.Report(new ProgressInfo(i + 1, times, ""));
                    var tempIDocs = idocs.Skip(i * patchSize).Take(patchSize).Select(s => s.IDocNumber).ToList();
                    var idocDic   = getErrors(tempIDocs);
                    var errors    = Tools.GetDataEntites <Errors>(_data.FilePath, '|');
                    foreach (var error in errors)
                    {
                        error.IDocNumber = idocDic[error.Index];
                        error.Mid        = _data.MissionId;
                    }
                    db.Errors.AddRange(errors);
                    db.SaveChanges();
                }
            }
            SAPTestHelper.Current.CloseSession();
        }
Пример #6
0
 public void CleanError()
 {
     using (var db = new AIFDbContext()) {
         SqlParameter para = new SqlParameter("mid", _data.MissionId);
         db.Database.ExecuteSqlCommand("Delete from Errors where Mid = @mid", para);
     }
 }
Пример #7
0
 public void DataCheck()
 {
     db         = new AIFDbContext();
     totalIdocs = db.LH7IDocs.Include(i => i.Tasks.Interfaces).Where(s => s.Status == "56").ToList();
     if (totalIdocs.Count == 0)
     {
         Return("No 56 Data Found");
     }
 }
Пример #8
0
        //private void setStatus(bool isWorking) {
        //    grid.IsEnabled = !isWorking;
        //}

        private async void loadMissions()
        {
            var controller = await this.ShowProgressAsync("Please wait...", "Loading data from server");

            controller.SetIndeterminate();
            dg_Missions.DataContext = null;

            await Task.Run(() => {
                _db       = new AIFDbContext();
                _missions = new ObservableCollection <Missions>(_db.Missions);
            });

            dg_Missions.DataContext = _missions;
            await controller.CloseAsync();
        }
Пример #9
0
        public void UploadStatus()
        {
            var itg_IDocNumbers = Tools.GetDataEntites <IDoc>(_data.GetIDocITGFile());

            using (var db = new AIFDbContext()) {
                var task = db.Tasks.Single(s => s.Id == _data.TaskId);
                task.IsFinished = true;
                task.FinishDt   = DateTime.Now;
                task.DataCount  = itg_IDocNumbers.Count;
                foreach (var item in itg_IDocNumbers)
                {
                    task.LH7IDocs.Add(item.GetIDocs());
                }

                db.SaveChanges();
            }
        }
Пример #10
0
 public void GetTask()
 {
     using (var db = new AIFDbContext()) {
         _aifTask = db.Tasks.Include(t => t.Interfaces).Single(t => t.Id == _data.TaskId);
     }
 }