Example #1
0
 //初始化配置对象
 private void Init(string excelConfigFullName)
 {
     int t = 1;
     bool r = true;
     xml = new MyXML(excelConfigFullName);
     endFlag = xml.GetSingleNodeAttribute("Config", "EndFlag") != "" ? xml.GetSingleNodeAttribute("Config", "EndFlag") : "RowBlank";//默认判断是否读取结束的标志设为“RowBlank”,也就是空行。
     r = int.TryParse(xml.GetSingleNodeAttribute("Config", "HeaderIndex"), out t);
     if (r)
     {
         headerIndex = Convert.ToByte(xml.GetSingleNodeAttribute("Config", "HeaderIndex"));
     }
     r = int.TryParse(xml.GetSingleNodeAttribute("Config", "DataIndex"), out t);
     if (r)
     {
         dataIndex = Convert.ToByte(xml.GetSingleNodeAttribute("Config", "DataIndex"));
     }
     if (MyFilleBase.FileBeing(excelConfigFullName))//根据完整路径判断文件是否存在
     {
         AddEnities(excelConfigFullName);
     }
     else
     {
         throw new Exception("相应配置文件未找到,请检查相应文件是否存在!");
     }
 }
Example #2
0
 public ClusterData(MyXML xml)
 {
     name = xml.elem.Name.ToString();
     //xml.getDouble("D", ref D, tol);
     xml.getDouble("x", ref x, tol);
     xml.getDouble("y", ref y, tol);
     xml.getDouble("l", ref l, tol);
     if (startx < x)
     {
         startx = x;
     }
     if (starty < y)
     {
         starty = y;
     }
     //xml.getDouble("dx", ref dx, tol); xml.getDouble("dy", ref dy, tol);
 }
Example #3
0
        public Fastener(Document doc)
        {
            this.doc = doc as AssemblyDocument;
            if (this.doc == null)
            {
                return;
            }
            acd = I.getACD(doc);
            if (Macros.StandardAddInServer.xml == null)
            {
                xml = new MyXML("Fast.xml");
            }
            else
            {
                xml = Macros.StandardAddInServer.xml;
            }
            cont = new MyXML("ContentCenter.xml");
            find(acd.Occurrences);
            //faces = faces.Distinct();
            int count = faces.Count;

            //addSlot();
            foreach (var item in slots)
            {
                findSlots(item);
            }
            for (int i = 0; i < count; i++)
            {
                i++;
                List <EdgeProxy> lst = findEdges();
                if (lst != null)
                {
                    fastenerSource ed = new fastenerSource(lst);
                    if (ed != null)
                    {
                        edges.Add(ed);
                    }
                }
                if (faces.Count() == 0)
                {
                    break;
                }
                /*lst = */
            }
            cleanEdges();
        }
Example #4
0
        public void txt()
        {
            string fn = I.aDoc().FullFileName;

            fn = fn.Replace(".ipt", "(Кластер).txt");
            using (System.IO.StreamWriter sw = System.IO.File.CreateText(fn))
            {
                int cx = (countX * ClusterData.countX) * data.Count / 2;
                int cy = (countY * ClusterData.countY) * data.Count / 2;
                if (data.Count == 2)
                {
                    cy = countY * ClusterData.countY;
                }
                double a = 0;
                xml.getDouble("area", ref a, 1);
                sw.Write("Кластер: " + MyXML.getAtt(xml.elem, "val") + "\n");
                sw.Write("Количество ударов: " + cx * cy / (ClusterData.countX * ClusterData.countY) + "\n");
                sw.Write("Количество отверстий по горизонтали: " + cx + " шт.\n");
                sw.Write("Количество отверстий по вертикали: " + cy + " шт.\n");
                sw.Write("Общее количество отверстий: " + cx * cy + " шт.\n");
                sw.Write("Площадь: " + (cx * cy * a).ToString("##.####") + "мм2.");
            }
        }
Example #5
0
        private void find(fastenerSource fast)
        {
            Occ.rev = 1;
            fast.create();
            if (fast.filter())
            {
                return;
            }
            if (fast.l.Length < 3)
            {
                return;
            }
            xml.setRoot();
            cont.setRoot();
            string nameAtt = "hole";

            if (fast.tf == typeFastener.slot)
            {
                nameAtt = "slot";
            }
            if (!xml.set(xml.getEl(new Dictionary <string, string>()
            {
                { "d1", u.convToString(fast.d.First(), 3, "##.##") }, { "d2", u.convToString(fast.d.Last(), 3, "##.##") }, { "name", nameAtt }
            }, false)))
            {
                return;
            }
            Occ      old = default(Occ); bool first = true; bool change = false;
            fastEdge ed = fast.fe;

            if (MyXML.getAtt(xml.elem, "rev") != "")
            {
                ed = fast.le;
            }
            if (contentCenter.check(ed.e as EdgeProxy))
            {
                return;
            }
            foreach (var item in xml.elem.Elements())
            {
                string v    = MyXML.getAtt(item, "val");
                string strL = MyXML.getAtt(item, "l");
                string r    = MyXML.getAtt(item, "rev");
                if (v == "")
                {
                    continue;
                }
                if (v == "rev")
                {
                    Occ.rev = -1; first = true; change = true; continue;
                }
                xml.setRoot();
                var spl = v.Split(':');
                xml.set("abbr", spl[0]);
                cont.set("name", MyXML.getAtt(xml.elem, "name"));
                int n = int.Parse(spl[1]) - 1;
                cont.set(n);
                string        name  = cont.getAtt("Id");
                contentCenter cc    = new contentCenter(doc as Document);
                Occ           co    = cc.place(name);
                string        fname = xml.getAtt("folder");
                addToFolder(co, fname);
                xml.setRoot();
                cont.setRoot();
                if ((spl[0] == "ГЗ" || spl[0] == "ГЗП") && !first)
                {
                    //co.dist = ls + lm;
                    if (strL == "" || !u.eq(strL, fast.l[1] * 10))
                    {
                        co.remove(); continue;
                    }
                    if (fast.fe.Equals(fast.e.First()))
                    {
                        Array.Reverse(fast.l);
                    }
                    double d    = -(fast.l[0] + fast.l[1]);
                    bool   axis = false;
                    if (r != "")
                    {
                        axis = !axis; d = fast.l.Sum();
                    }
                    if (nameAtt == "hole")
                    {
                        cc.add(ed.e, co, d, !axis);
                    }
                    else if (nameAtt == "slot")
                    {
                        fastenerSlot fs  = fast as fastenerSlot;
                        FaceProxy    fac = u.get <FaceProxy>(ed.e.Faces, fi => fi.SurfaceType == SurfaceTypeEnum.kPlaneSurface);
                        if (fac != null)
                        {
                            cc.add(fac, co, d, axis);
                        }
                        if (fs.fp != null)
                        {
                            cc.add(fs.fp, co);
                        }
                    }
                    continue;
                }
                double dist = 0;
                if (change)
                {
                    dist = co.dist;
                }
                if (first)
                {
                    if (change)
                    {
                        dist = (fast.l.Sum()) * Occ.rev + co.dist;
                    }
                    switch (fast.tf)
                    {
                    case typeFastener.hole:
                        cc.add(ed.e, co, dist);
                        break;

                    case typeFastener.slot:
                        fastenerSlot fs  = fast as fastenerSlot;
                        FaceProxy    fac = u.get <FaceProxy>(ed.e.Faces, fi => fi.SurfaceType == SurfaceTypeEnum.kPlaneSurface);
                        if (fac != null)
                        {
                            cc.add(fac, co, dist);
                        }
                        if (fs.fp != null)
                        {
                            cc.add(fs.fp, co);
                        }
                        break;

                    default:
                        break;
                    }
                    first = false; Occ.rev = -Occ.rev;
                }

                else
                {
                    cc.add(old, co, dist);
                }
                old = co;
            }
        }
Example #6
0
 static void UpdateXML()
 {
     MyXML.UpdateXML(Application.dataPath + "/XML/CompletePostion.xml", Selection.activeGameObject.GetComponent <Transform>());
 }
Example #7
0
 static void CreateInilazabelXML()
 {
     MyXML.CreateXML(Application.dataPath + "/XML/Inilazable.xml", Selection.activeGameObject.GetComponentsInChildren <Transform>());
 }
Example #8
0
 static void CreateCompletePositionXML()
 {
     MyXML.CreateXML(Application.dataPath + "/XML/CompletePostion.xml", Selection.activeGameObject.GetComponentsInChildren <Transform>());
 }
Example #9
0
        public static void Main(string[] args)
        {
            string varFileXML = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\process.xml";
            string varKey     = @"
Доступнi ключi: /XML:process.xml /Server:localhost /DB:dw_olap /Cube: /Step:0 /PARALLEL:8 /Metod:0
/XMLA: 1 - процесити через XMLA, 0 - не використовувати XMLA для не INDEX процесінга
/Metod:0 - ігнорувати помилки ключі з конвертацією, 1 - пробувувати без ігнорування
/DAY: - за скільки днів перепроцешувати куби  за замовчуванням 20
/STATE (:2) - Показує стани кубів. :2-Розширена інформація
/DATESTART:DD.MM.YYYY - З Якої дати процесити партіциї.
/PROCESSDIMENSION: - (NONE,UPDATE,FULL)  По замовчуванню UPDATE
/PROCESSCUBE: - (NONE,DATA,FULL) По замовчуванню FULL
/ARX:01.01.2012 - Процесити в режимі архів. (З якої дати розширювати партиції) дата не обов'язковий параметр.
/DAYPROCESS:20 - за скільки днів перепроцешувати партіциї (Переважає значення з налаштувань Виміру)

";

            //Перевіряємо чи є в параметрах XML файл
            for (int i = 0; i < args.Length; i++)
            {
                if (args[i].ToUpper().StartsWith("/XML:"))
                {
                    varFileXML = args[i].Substring(5);
                }
                else if (args[i].ToUpper().StartsWith("/STEP:"))
                {
                    GlobalVar.varStep = Convert.ToInt32(args[i].Substring(6));
                }
            }

            //Перевіряємо наявність XML файла
            if (File.Exists(varFileXML))
            {
                MyXML myXML = new MyXML(varFileXML);
                GlobalVar.varServer = (myXML.GetVar("Server") == null? GlobalVar.varServer : myXML.GetVar("Server"));
                GlobalVar.varDB     = (myXML.GetVar("Database") == null? GlobalVar.varDB : myXML.GetVar("Database"));
                //GlobalVar.varStep = ( myXML.GetVar("DefaultStep") == null? GlobalVar.varStep : Convert.ToInt32( myXML.GetVar("DefaultStep")) );
                GlobalVar.varMaxParallel     = (myXML.GetAttribute("maxParallel", "XMLA") == null ?  GlobalVar.varMaxParallel : Convert.ToInt32(myXML.GetAttribute("maxParallel", "XMLA")));
                GlobalVar.varConectSQL       = myXML.GetVar("ConectSQL");
                GlobalVar.varKeyErrorLogFile = (myXML.GetVar("KeyErrorLogPath") == null ? GlobalVar.varKeyErrorLogFile :myXML.GetVar("KeyErrorLogPath") + "\\Error_" + DateTime.Now.ToString("yyyyMMdd") + ".log");
                if (myXML.GetVar("Step" + GlobalVar.varStep.ToString().Trim(), "ProcessDimension") != null)
                {
                    MyXMLA.SetProcessTypeDimension(myXML.GetVar("Step" + GlobalVar.varStep.ToString().Trim(), "ProcessDimension"));
                }
                GlobalVar.varPrepareSQL          = myXML.GetVar("Step" + GlobalVar.varStep.ToString().Trim(), "PrepareSQL");
                GlobalVar.varWaitSQL             = myXML.GetVar("Step" + GlobalVar.varStep.ToString().Trim(), "WaitSQL");
                GlobalVar.varTimeStart           = (myXML.GetAttribute("Start", "Step" + GlobalVar.varStep.ToString().Trim(), "Time") == null ? GlobalVar.varTimeStart : Convert.ToInt32(myXML.GetAttribute("Start", "Step" + GlobalVar.varStep.ToString().Trim(), "Time")));
                GlobalVar.varTimeEnd             = (myXML.GetAttribute("End", "Step" + GlobalVar.varStep.ToString().Trim(), "Time") == null ? GlobalVar.varTimeEnd : Convert.ToInt32(myXML.GetAttribute("End", "Step" + GlobalVar.varStep.ToString().Trim(), "Time")));
                GlobalVar.varRestartServicesOlap = (myXML.GetVar("Step" + GlobalVar.varStep.ToString().Trim(), "RestartServicesOlap") == null ? GlobalVar.varRestartServicesOlap : Convert.ToInt32(myXML.GetVar("Step" + GlobalVar.varStep.ToString().Trim(), "RestartServicesOlap")));
                GlobalVar.varServicesOlap        = (myXML.GetVar("ServicesOlap") == null ? GlobalVar.varDB : myXML.GetVar("ServicesOlap"));
            }
//          string var= GlobalVar.varProcessDimension;

            //Параметри з командного рядка мають перевагу.
            for (int i = 0; i < args.Length; i++)
            {
                if (args[i].ToUpper().StartsWith("/SERVER:"))
                {
                    GlobalVar.varServer = args[i].Substring(8);
                }
                else if (args[i].ToUpper().StartsWith("/DB:"))
                {
                    GlobalVar.varDB = args[i].Substring(4);
                }
                else if (args[i].ToUpper().StartsWith("/CUBE:"))
                {
                    GlobalVar.varCube = args[i].Substring(6);
                }
                else if (args[i].ToUpper().StartsWith("/STEP:"))
                {
                    GlobalVar.varStep = Convert.ToInt32(args[i].Substring(6));
                }
                else if (args[i].ToUpper().StartsWith("/PARALLEL:"))
                {
                    GlobalVar.varMaxParallel = Convert.ToInt32(args[i].Substring(10));
                }
                else if (args[i].ToUpper().StartsWith("/XML:"))
                {
                    GlobalVar.varFileXML = args[i].Substring(5);
                }
                else if (args[i].ToUpper().StartsWith("/DAY:"))
                {
                    GlobalVar.varDayProcess = Convert.ToInt32(args[i].Substring(5));
                }
                else if (args[i].ToUpper().StartsWith("/STATE:2"))
                {
                    GlobalVar.varStep = -9998;
                }
                else if (args[i].ToUpper().StartsWith("/STATE"))
                {
                    GlobalVar.varStep = -9999;
                }
                else if (args[i].ToUpper().StartsWith("/DATESTART:"))
                {
                    GlobalVar.varDateStartProcess = DateTime.Parse(args[i].Substring(11));
                }
                else if (args[i].ToUpper().StartsWith("/DAYPROCESS:"))
                {
                    GlobalVar.varDayProcess = Convert.ToInt32(args[i].Substring(12));
                }
                else if (args[i].ToUpper().StartsWith("/PROCESSDIMENSION:"))
                {
                    MyXMLA.SetProcessTypeDimension(args[i].Substring(17));
                }
                else if (args[i].ToUpper().StartsWith("/PROCESSCUBE:"))
                {
                    MyXMLA.SetProcessTypeCube(args[i].Substring(13));
                }
                else if (args[i].ToUpper().StartsWith("/ARX"))
                {
                    GlobalVar.varIsArx = true;
                    if (args[i].ToUpper().Length == 14)
                    {
                        GlobalVar.varArxDate = DateTime.ParseExact(args[i].ToUpper().Substring(5), "dd.MM.yyyy", CultureInfo.InvariantCulture);
                    }
                }
                else if (args[i].ToUpper().StartsWith("/?"))
                {
                    Console.Write(varKey);
                    Console.ReadKey(true);
                    return;
                }
                else
                {
                    Console.Write("Колюч=>" + args[i].ToUpper() + " невірний. " + varKey);
                    Console.ReadKey(true);
                    return;
                }
            }


            GlobalVar.varFileLog = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) +
                                   "\\log\\process_" + GlobalVar.varDB.Trim() + "_" +
                                   DateTime.Now.ToString("yyyyMMdd") + "_" + GlobalVar.varStep.ToString().Trim() + ".txt";

            Log.log("START=> /Server:" + GlobalVar.varServer + " /DB:" + GlobalVar.varDB + " /CUBE:" + GlobalVar.varCube + " /Step: " + GlobalVar.varStep.ToString());

            if (1 == 0 && GlobalVar.varServicesOlap.Trim().Length > 0)
            {
                var varService = new Services(GlobalVar.varServicesOlap, GlobalVar.varServer);
                if (!varService.IsStart() || GlobalVar.varRestartServicesOlap == 1 || GlobalVar.varRestartServicesOlap == 3)
                {
                    if (varService.IsStart())
                    {
                        Log.log("Try ReStart =>" + GlobalVar.varServicesOlap + " in " + GlobalVar.varServer);
                        if (!varService.ReStart())
                        {
                            Log.log("No ReStart =>" + GlobalVar.varServicesOlap + " in " + GlobalVar.varServer + "\n" + varService.log);
                            return;
                        }
                        else
                        {
                            Log.log("ReStart OK");
                        }
                    }
                    else
                    {
                        if (!varService.Start())
                        {
                            Log.log("Try start =>" + GlobalVar.varServicesOlap + " in " + GlobalVar.varServer);
                            if (!varService.Start())
                            {
                                Log.log("No start =>" + GlobalVar.varServicesOlap + " in " + GlobalVar.varServer + "\n" + varService.log);
                                return;
                            }
                            else
                            {
                                Log.log("Start OK");
                            }
                        }
                    }
                }
            }

            XMLABuilder.Process(@"Data Source=" + GlobalVar.varServer + ";Provider=msolap;", GlobalVar.varDB, GlobalVar.varCube, GlobalVar.varStep, GlobalVar.varMetod);
            Log.log("END=> /Server:" + GlobalVar.varServer + " /DB:" + GlobalVar.varDB + " /CUBE:" + GlobalVar.varCube + " /Step:" + GlobalVar.varStep.ToString());
            if (GlobalVar.varStep < -9990)
            {
                Console.ReadKey(true);
            }
        }
Example #10
0
        //初始化实体对象
        private void AddEnities(string fullName)
        {
            xml = new MyXML(fullName);
            XmlNodeList tables = xml.GetNodes("Config/Table");
            Entity entity = null;
            Property property = null;
            bool t = true;
            bool r=true;
            int i = 0;
            foreach (XmlNode table in tables)
            {
                entity = new Entity(xml.GetNodeAttribute(table,"Name"));
                r = bool.TryParse(xml.GetNodeAttribute(table, "DeleteRepeat"),out t);
                if (r)
                {
                    entity.DeleteRepeat = Convert.ToBoolean(xml.GetNodeAttribute(table, "DeleteRepeat"));
                }

                if (xml.GetFirstChildNode(table) != null)//说明有列配置
                {

                    foreach (XmlNode column in xml.GetChildNodes(table))
                    {
                        property = new Property();
                        r = bool.TryParse(xml.GetNodeAttribute(column, "IsPrimaryKey"), out t);
                        if (r)
                        {
                            property.IsPrimaryKey = Convert.ToBoolean(xml.GetNodeAttribute(column, "IsPrimaryKey"));
                        }
                        property.ColumnName = xml.GetNodeAttribute(column, "ColumnName");
                        if (xml.GetNodeAttribute(column, "HeaderText") != "")
                        {
                            property.HeaderText = xml.GetNodeAttribute(column, "HeaderText");
                        }
                        r = bool.TryParse(xml.GetNodeAttribute(column, "Required"), out t);
                        if (r)
                        {
                            property.Required = Convert.ToBoolean(xml.GetNodeAttribute(column, "Required"));
                        }
                        property.DataType = xml.GetNodeAttribute(column, "DataType") != "" ? xml.GetNodeAttribute(column, "DataType") : "string";
                        if (xml.GetNodeAttribute(column, "DataLength") != "")
                        {
                            r = int.TryParse(xml.GetNodeAttribute(column, "DataLength"),out i);
                            if (r)
                            {
                                property.DataLength = i;
                            }
                        }
                        property.Comment = xml.GetNodeAttribute(column, "Comment");
                        property.DefaultValue = xml.GetNodeAttribute(column, "DefaultValue") != "" ? xml.GetNodeAttribute(column, "DefaultValue") : "";
                        if (xml.GetFirstChildNode(column) != null)//说明有代码表
                        {
                            DictionaryEntity dictionaryEntity = new DictionaryEntity();
                            dictionaryEntity.Name = xml.GetNodeAttribute(xml.GetFirstChildNode(column), "Name");
                            dictionaryEntity.PrimaryKey = xml.GetNodeAttribute(xml.GetFirstChildNode(column), "PrimaryKey");
                            dictionaryEntity.ReferenceColumn = xml.GetNodeAttribute(xml.GetFirstChildNode(column), "ReferenceColumn");
                            dictionaryEntity.Condition = xml.GetNodeAttribute(xml.GetFirstChildNode(column), "Condition");
                            property.CodeTable = dictionaryEntity;
                        }
                        entity.Propertys.Add(property);
                    }
                    entities.Add(entity);
                }
                else
                {
                    string excludedColumns = xml.GetNodeAttribute(table, "ExcludedColumns");
                    if (excludedColumns != "")
                    {
                        foreach (string ec in excludedColumns.Split(','))
                        {
                            entity.ExcludedColumns.Add(ec);
                        }
                    }
                    entities.Add(entity);
                }
                
            }
        }
Example #11
0
 //将每一步的进度写入XML
 public void UpdateModelstep(string name, int step, int stepmax)
 {
     MyXML.UpdateStepsXML(Const.SavePartesOfSteps, name, step, stepmax);
 }
Example #12
0
//	public List<GameObject> GetList()
//	{
//
//	}
    //添加名称与实际模型对应关系
//   public void AddnametoModels(string key, GameObject value)
//    {
//       // Debug.Log("key::::" + key + "value::::" + value + "contains::::::" + m_nameTomodels.ContainsKey(key));
//        if (!m_nameTomodels.ContainsKey(key))
//        {
//            m_nameTomodels.Add(key, value);
//        }
//    }

    //获取上次存储的模型对应的进度
    void Addmodeltostep()
    {
        m_modelTOstep = MyXML.ReaderStepXml(Const.SavePartesOfSteps);
    }
Example #13
0
 static void Camera()
 {
     MyXML.UpdateXML(Const.J5Dynamo, Selection.activeGameObject.GetComponent <Transform>(), _States.Camera);
 }
Example #14
0
 static void SlowDown()
 {
     MyXML.UpdateXML(Const.J5Dynamo, Selection.activeGameObject.GetComponent <Transform>(), _States.SlowDown);
 }