Ejemplo n.º 1
0
        private static List <DPRFull> AssignDataInput()
        {
            try
            {
                List <DPRFull> objDPR = new List <DPRFull>();

                DPRFull obj = new DPRFull();

                DPRFull obj1 = new DPRFull();
                obj.FormalWellName      = "BL6P10";
                obj.CommonWellName      = "BL6P10";
                obj.BasinName           = "Belize";
                obj.BlockNumber         = "14";
                obj.LatDeg              = 5;
                obj.LatMin              = 37;
                obj.LatSec              = 6.95;
                obj.Ns                  = "S";
                obj.LongDeg             = 11;
                obj.LongMin             = 54;
                obj.LongSec             = 44.9;
                obj.Ew                  = "E";
                obj.DrillingContractor  = "KCAD";
                obj.RigName             = "BBLT";
                obj.OwnerDrilled        = 1;
                obj.HoleType            = "N";
                obj.LocatorWell         = "N";
                obj.MultiLateral        = "N";
                obj.WellType            = "D";
                obj.PlayType            = "H";
                obj.RigType             = "PL";
                obj.DrillingMethod      = "TAM";
                obj.UnitOfMeasurement   = "F";
                obj.WaterDepth          = 1281;
                obj.SpudDepthBrt        = 1482;
                obj.Mtd                 = 17900;
                obj.Tvd                 = 8138;
                obj.SubSalt             = "N";
                obj.ComplexWell         = "N";
                obj.MaximumAngleDegrees = 81;
                obj.FinalDrillBitSize   = 12.25;
                obj.DryHoleDays         = 31.2;
                objDPR.Add(obj);
                obj1.FormalWellName = "bl6p10";
                objDPR.Add(obj1);
                return(objDPR);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 2
0
        private static void ValidateTDDPRColumns(DPRTDData obj, List <DPRFull> objDPRList, int rowindex)
        {
            ErrorMessage    errorObj = new ErrorMessage();
            ValidationError objerror = new ValidationError();


            double?mtd1 = 0;
            double?mtd2 = 0;

            try
            {
                for (int j = 0; j < obj.NoOfDay.Count; j++)
                {
                    if (obj.NoOfDay[j] == null)
                    {
                        //Console.WriteLine(errorObj.MDays);

                        objerror.WellName     = obj.WellName;
                        objerror.ErrorMessage = errorObj.MDays;
                        objerror.Row          = j + rowindex + 3;
                        obj.Errors.Add(objerror);
                    }

                    if (obj.Actualdepth[j] == null)
                    {
                        // Console.WriteLine(errorObj.MDepths);

                        objerror.WellName     = obj.WellName;
                        objerror.ErrorMessage = errorObj.MDepths;
                        objerror.Row          = j + rowindex + 3;
                        obj.Errors.Add(objerror);
                    }

                    if (obj.HoleSize[j] == null)
                    {
                        //Console.WriteLine(errorObj.MHole);

                        objerror.WellName     = obj.WellName;
                        objerror.ErrorMessage = errorObj.MHole;
                        objerror.Row          = j + rowindex + 3;
                        obj.Errors.Add(objerror);
                    }
                }
                CheckDUplicate(obj, rowindex);
                CheckDepthsSpike(obj, rowindex);
                CheckDaysSeq(obj, rowindex);
                CheckDaysDesc(obj, rowindex);

                for (int i = 0; i < objDPRList.Count; i++)
                {
                    DPRFull objFull = objDPRList[i];

                    if (obj.WellName == objFull.FormalWellName)
                    {
                        mtd1 = objFull.Mtd + (objFull.Mtd * 0.01);
                        mtd2 = objFull.Mtd - (objFull.Mtd * 0.01);

                        if (!obj.Actualdepth.Contains(objFull.Mtd))
                        {
                            //Console.WriteLine(errorObj.MTDMissing);

                            objerror.WellName     = obj.WellName;
                            objerror.Row          = i + rowindex + 3;
                            objerror.ErrorMessage = errorObj.MTDMissing;
                            obj.Errors.Add(objerror);
                        }
                        double?max = obj.Actualdepth.Max();
                        if (!(max < mtd1 && max > mtd2))
                        {
                            //Console.WriteLine(errorObj.MTDLargest);

                            objerror.WellName     = obj.WellName;
                            objerror.Row          = i + rowindex + 3;
                            objerror.ErrorMessage = errorObj.MTDLargest;
                            obj.Errors.Add(objerror);
                        }
                        if (obj.HoleSize.Last() != objFull.FinalDrillBitSize)
                        {
                            //Console.WriteLine(errorObj.HSDrill);

                            objerror.WellName     = obj.WellName;
                            objerror.Row          = i + rowindex + 3;
                            objerror.ErrorMessage = errorObj.HSDrill;
                            obj.Errors.Add(objerror);
                        }
                        for (int j = 0; j < obj.NoOfDay.Count; j++)
                        {
                            if (obj.Actualdepth[j] < mtd1 && obj.Actualdepth[j] > mtd2)
                            {
                                obj.DepthFlag = true;
                            }
                            else
                            {
                                obj.DepthFlag = false;
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                throw ex;
            }
        }
Ejemplo n.º 3
0
        private static void ValidateDPRFullData(List <DPRTDData> objlist, List <DPRFull> objFull, int rowindex)
        {
            ErrorMessage    errorObj = new ErrorMessage();
            ValidationError objerror = new ValidationError();
            bool            status   = false;

            for (int i = 0; i < objFull.Count; i++)
            {
                DPRFull objDPRFull = objFull[i];
                for (int j = 0; j < objlist.Count; j++)
                {
                    if (objlist[j].WellName == objDPRFull.FormalWellName)
                    {
                        status = true;
                        break;
                    }
                    else
                    {
                        status = false;
                    }
                }
                if (!status)
                {
                    if (objDPRFull.DryHoleDays > 10)
                    {
                        //Console.WriteLine(errorObj.Data);
                        objerror.WellName     = objDPRFull.FormalWellName;
                        objerror.ErrorMessage = errorObj.Data;
                        objerror.Row          = i;
                        objDPRFull.Errors.Add(objerror);
                    }
                    else
                    {
                        //Console.WriteLine(errorObj.LT10);
                        objerror.WellName     = objDPRFull.FormalWellName;
                        objerror.ErrorMessage = errorObj.LT10;
                        objerror.Row          = i;
                        objDPRFull.Errors.Add(objerror);
                    }
                }
            }

            for (int i = 0; i < objlist.Count; i++)
            {
                for (int j = 0; j < objFull.Count; j++)
                {
                    if (objFull[j].FormalWellName.ToLower() == objlist[i].WellName.ToLower())
                    {
                        if (!objlist[i].WellName.Equals(objFull[j].FormalWellName, StringComparison.Ordinal))
                        {
                            //Console.WriteLine(errorObj.Case);
                            objerror.WellName     = objlist[i].WellName;
                            objerror.ErrorMessage = errorObj.Case;
                            objerror.Row          = i + rowindex + 3;
                            objlist[i].Errors.Add(objerror);
                        }
                        break;
                    }
                    else
                    {
                        objerror.WellName     = objlist[i].WellName;
                        objerror.ErrorMessage = errorObj.TD;
                        objerror.Row          = i + rowindex + 3;
                        objlist[i].Errors.Add(objerror);
                    }
                    if (objFull[j].UnitOfMeasurement != objlist[i].Units)
                    {
                        //Console.WriteLine(errorObj.UnitsMatch);
                        objerror.WellName     = objlist[i].WellName;
                        objerror.ErrorMessage = errorObj.UnitsMatch;
                        objerror.Row          = i + rowindex + 3;
                        objlist[i].Errors.Add(objerror);
                    }
                }
            }
        }