Example #1
0
        // Чтение из таблицы "Входной_буфер" значения самой ранней записи, добавляет в таблицу "В работе"
        public Result AddNewProduct(out InpProduct productOut)
        {
            productOut = null;
            // Подключение
            Result result = ConnectDb(_dbPath, out DbCore db);

            if (result.Error != ResultEnum.No_Error)
            {
                return(result);
            }

            // Чтение из таблицы "Входной_буфер
            InpProduct product = null;

            try
            {
                InpBufferTbl tbl = new InpBufferTbl(db);
                product = tbl.ExtractFirstItem();
                // Добавение датчика из таблицы "В работе". Необязательная операция
                InpToWorkTable(product, db);
            }
            catch (Exception e)
            {
                result = new Result(ResultEnum.Err_Data_Moves, e);
            }
            db.Disconnect();
            productOut = product;
            return(result);
        }
Example #2
0
        public Result AlarmClearSystem()
        {
            // Подключение
            Result result = ConnectDb(_dbPath, out DbCore db);

            if (result.Error != ResultEnum.No_Error)
            {
                return(result);
            }
            try
            {
                InpBufferTbl inpTbl = new InpBufferTbl(db);
                OutBuffer    outTbl = new OutBuffer(db);
                while (true)
                {
                    InpProduct product = inpTbl.ExtractFirstItem();
                    if (product == null)
                    {
                        break;
                    }
                    outTbl.AddProduct(DateTime.Now, product.SN, AlarmSystemErrNymber);
                }
                // Очистка таблицы "В работе", необязательная операция
                ClearWorkTable(db);
            }
            catch (Exception e)
            {
                result = new Result(ResultEnum.Err_Data_Moves, e);
            }


            db.Disconnect();
            return(result);
        }