예제 #1
0
        public Form1()
        {
            InitializeComponent();
            CreateSqlValueType[] create_cmd = new CreateSqlValueType[2];
            create_cmd[0] = new CreateSqlValueType("nvarchar(50)", "mykey", true);
            create_cmd[1] = new CreateSqlValueType("nvarchar(50)", "num");
            builder.Create_Table("tiaonum", create_cmd);


            string[] inser_cmd = new string[2];
            inser_cmd[0] = "mynum";
            inser_cmd[1] = "0";
            builder.Insert("tiaonum", inser_cmd);
        }
예제 #2
0
        private void 新建ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            // 出现新增窗体页面
            MainSubView.AddView view   = new MainSubView.AddView();
            DialogResult        result = view.ShowDialog();

            if (result == DialogResult.OK)
            {
                string[] insert_cmd = new string[1];
                insert_cmd[0] = MainSubView.AddView.View_Name;
                bool     success  = Main_DataBase_Builder.Insert("AllView", insert_cmd);
                TreeNode viewnode = FindTreeNodeWithName("画面", treeview1);

                /// 创建一个这个界面的表
                ///
                if (success == true)
                {
                    CreateSqlValueType[] create_cmd = new CreateSqlValueType[2];
                    create_cmd[0] = new CreateSqlValueType("nvarchar(50)", "member", true, true);
                    create_cmd[1] = new CreateSqlValueType("nvarchar(50)", "type");
                    Main_DataBase_Builder.Create_Table(MainSubView.AddView.View_Name, create_cmd);
                }

                if (viewnode != null)
                {
                    Reflush_TreeView_ViewNode(viewnode);               // 刷新画面的父结点的信息
                }
            }
        }
예제 #3
0
        private void Save_RunTimeValue_Tick(object sender, System.Timers.ElapsedEventArgs e)
        {
            string Table_Name = "runtimetable" + DateTime.Now.ToString("yyyyMMdd");

            database_builder.Create_Table(Table_Name, runtime_create_sql_value_type);
            // 将所有的值插入进去
            if (RunTime_Save_Table == null)
            {
                return;
            }
            if (AllValue_Table == null)
            {
                return;
            }
            if (RunTime_Save_Table.Rows.Count == 0)
            {
                return;
            }
            if (AllValue_Table.Rows.Count == 0)
            {
                return;
            }
            if (AllStation_Table == null)
            {
                return;
            }
            if (AllStation_Table.Rows.Count == 0)
            {
                return;
            }
            foreach (DataRow dr in RunTime_Save_Table.Rows)
            {
                string value_name = dr[0].ToString();
                // 在变量表中找出值
                DataRow[] valuerows = AllValue_Table.Select("Value_Name='" + value_name + "'");
                DataRow   valuerow  = valuerows[0];

                string value_type    = valuerow[1].ToString();
                int    value_address = int.Parse(valuerow[3].ToString());
                string return_value  = "";

                for (int i = 0; i < running_data.Station_Info_List.Count; i++)
                {
                    Running_Data_Struct mystruct = (Running_Data_Struct)running_data.Station_Info_List[i];
                    if (mystruct.Get_Name() == valuerow[2].ToString())
                    {
                        if (value_type == "Int")
                        {
                            int[] int_array = mystruct.Get_IntData();
                            return_value = int_array[value_address].ToString();
                        }
                        if (value_type == "Bool")
                        {
                            bool[] bool_array = mystruct.Get_SwitchData();
                            return_value = bool_array[value_address].ToString();
                        }
                        if (value_type == "String")
                        {
                            double[] double_array = mystruct.Get_DoubleData();
                            return_value = double_array[value_address].ToString();
                        }
                        // 插入表中

                        string[] insert_cmd = new string[4];
                        insert_cmd[0] = DateTime.Now.ToString("yyyyMMddHHmmss") + DateTime.Now.Millisecond.ToString() + value_name;
                        insert_cmd[1] = value_name;
                        insert_cmd[2] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                        insert_cmd[3] = return_value;
                        database_builder.Insert(Table_Name, insert_cmd);

                        // 插入到列表中
                        foreach (object mydatatable in MyChart.All_Used_Running_Table)
                        {
                            DataTable mydt = (DataTable)mydatatable;
                            if (mydt.TableName == Table_Name)
                            {
                                DataRow newdr = mydt.NewRow();
                                newdr[0] = DateTime.Now.ToString("yyyyMMddHHmmss") + DateTime.Now.Millisecond.ToString() + value_name;
                                newdr[1] = value_name;
                                newdr[2] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                                newdr[3] = return_value;
                                mydt.Rows.Add(newdr);
                            }
                        }
                        break;
                    }
                }
            }
        }
예제 #4
0
        private void init_database()
        {
            // 初始化数据库
            // 建立固定列表
            // 设备情况列表
            // 设备ID,设备名称,设备车间,设备种类,设备通讯端口,设备地址,通讯协议
            CreateSqlValueType[] create1 = new CreateSqlValueType[7];
            create1[0] = new CreateSqlValueType("nvarchar(50)", "ID", true);
            create1[1] = new CreateSqlValueType("nvarchar(50)", "Name");
            create1[2] = new CreateSqlValueType("nvarchar(50)", "workshop");
            create1[3] = new CreateSqlValueType("nvarchar(50)", "DeivceType");
            create1[4] = new CreateSqlValueType("nvarchar(50)", "Com");
            create1[5] = new CreateSqlValueType("nvarchar(50)", "Address");
            create1[6] = new CreateSqlValueType("nvarchar(50)", "Protocol");
            builder.Create_Table("Device_Info", create1);
            // builder.Create_Database();

            // 创建实时数据库
            CreateSqlValueType[] create_real_data = new CreateSqlValueType[4];
            create_real_data[0] = new CreateSqlValueType("nvarchar(50)", "value_ID", true);
            create_real_data[1] = new CreateSqlValueType("nvarchar(50)", "device_name");
            create_real_data[2] = new CreateSqlValueType("nvarchar(50)", "value_name");
            create_real_data[3] = new CreateSqlValueType("nvarchar(50)", "value");
            builder.Create_Table("Real_Value_Table", create_real_data);

            // 数据存放地址  所有的设备都相同
            CreateSqlValueType[] data_address = new CreateSqlValueType[4];
            data_address[0] = new CreateSqlValueType("nvarchar(50)", "value_name", true);
            data_address[1] = new CreateSqlValueType("nvarchar(50)", "value_type");
            data_address[2] = new CreateSqlValueType("nvarchar(50)", "value_address");
            builder.Create_Table("Value_Config", data_address);

            //============== 所有的MyLabel 地址存放初始化 ==============//

            foreach (MyLabel.value_name name in Enum.GetValues(typeof(MyLabel.value_name)))
            {
                string[] insert_cmd = new string[3];
                insert_cmd[0] = name.ToString();
                insert_cmd[1] = "";
                insert_cmd[2] = "";
                builder.Insert("Value_Config", insert_cmd);
            }

            //============== 所有的MyLabeltimne 地址存放初始化 ==============//

            foreach (MyLabel_time.value_name name in Enum.GetValues(typeof(MyLabel_time.value_name)))
            {
                string[] insert_cmd = new string[3];
                insert_cmd[0] = name.ToString();
                insert_cmd[1] = "";
                insert_cmd[2] = "";
                builder.Insert("Value_Config", insert_cmd);
            }

            //============== 所有的MyLabeltimne 地址存放初始化 ==============//

            foreach (MyLabel_Red_Yellow.value_name name in Enum.GetValues(typeof(MyLabel_Red_Yellow.value_name)))
            {
                string[] insert_cmd = new string[3];
                insert_cmd[0] = name.ToString();
                insert_cmd[1] = "";
                insert_cmd[2] = "";
                builder.Insert("Value_Config", insert_cmd);
            }

            //试验
            Device_Data.chejian1_com1_DT[11, 10] = 3705;
            Device_Data.chejian1_com1_R[12, 15]  = true;
            Device_Data.chejian1_com1_R[10, 20]  = true;


            // 工艺管理有关数据库
            // 工艺名称与参数名称之间的关系
            CreateSqlValueType[] create_gongyi = new CreateSqlValueType[12];
            create_gongyi[0]  = new CreateSqlValueType("nvarchar(50)", "Gongyi_Name", true);
            create_gongyi[1]  = new CreateSqlValueType("nvarchar(50)", "value1_name");
            create_gongyi[2]  = new CreateSqlValueType("nvarchar(50)", "value2_name");
            create_gongyi[3]  = new CreateSqlValueType("nvarchar(50)", "value3_name");
            create_gongyi[4]  = new CreateSqlValueType("nvarchar(50)", "value4_name");
            create_gongyi[5]  = new CreateSqlValueType("nvarchar(50)", "value5_name");
            create_gongyi[6]  = new CreateSqlValueType("nvarchar(50)", "value6_name");
            create_gongyi[7]  = new CreateSqlValueType("nvarchar(50)", "value7_name");
            create_gongyi[8]  = new CreateSqlValueType("nvarchar(50)", "value8_name");
            create_gongyi[9]  = new CreateSqlValueType("nvarchar(50)", "value9_name");
            create_gongyi[10] = new CreateSqlValueType("nvarchar(50)", "value10_name");
            create_gongyi[11] = new CreateSqlValueType("nvarchar(255)", "beizhu");

            builder.Create_Table("Craft_Name_Table", create_gongyi);



            //=============================================================================

            // 工艺代码表
            CreateSqlValueType[] create_craft_code = new CreateSqlValueType[2];
            create_craft_code[0] = new CreateSqlValueType("nvarchar(50)", "Craft_Name", true);
            create_craft_code[1] = new CreateSqlValueType("nvarchar(50)", "Craft_Code");
            builder.Create_Table("Craft_Name_Code", create_craft_code);


            //===============================================================================

            // 生产排产
            CreateSqlValueType[] shenchanpaichan_crate_sql_type = new CreateSqlValueType[3];
            shenchanpaichan_crate_sql_type[0] = new CreateSqlValueType("nvarchar(50)", "ID", true);
            shenchanpaichan_crate_sql_type[1] = new CreateSqlValueType("nvarchar(50)", "state");
            shenchanpaichan_crate_sql_type[2] = new CreateSqlValueType("nvarchar(50)", "工艺名");
            builder.Create_Table("Shengchanpaichan", shenchanpaichan_crate_sql_type);


            //===============================================================================
            // 启动日期
            CreateSqlValueType[] qidongriqi = new CreateSqlValueType[2];
            qidongriqi[0] = new CreateSqlValueType("int", "machine_num");
            qidongriqi[1] = new CreateSqlValueType("datetime", "start_time");

            builder.Create_Table("start_time", qidongriqi);
            for (int i = 1; i <= 100; i++)
            {
                string[] insert_cmd = new string[2];
                insert_cmd[0] = i.ToString();
                insert_cmd[1] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                builder.Insert("start_time", insert_cmd);
            }

            // 临时工艺表
            CreateSqlValueType[] linshi_craft = new CreateSqlValueType[3];
            linshi_craft[0] = new CreateSqlValueType("int", "machine_num");
            linshi_craft[1] = new CreateSqlValueType("nvarchar(50)", "craft_table");
            builder.Create_Table("linshi_craft", linshi_craft);

            for (int i = 1; i <= 100; i++)
            {
                string[] insert_cmd = new string[2];
                insert_cmd[0] = i.ToString();
                insert_cmd[1] = "";
                builder.Insert("linshi_craft", insert_cmd);
            }


            // 执行的工单号
            // 机号  工单号
            CreateSqlValueType[] gongdan_exe = new CreateSqlValueType[2];
            gongdan_exe[0] = new CreateSqlValueType("int", "machine_num");
            gongdan_exe[1] = new CreateSqlValueType("nvarchar(50)", "gongdanhao");
            builder.Create_Table("gongdan", gongdan_exe);

            for (int i = 1; i <= 100; i++)
            {
                string[] insert_cmd = new string[2];
                insert_cmd[0] = i.ToString();
                insert_cmd[1] = "";
                builder.Insert("gongdan", insert_cmd);
            }

            //

            // 操作记录表

            // 操作记录ID="机号+时间" 机号  time="时间" 工单号="" 变量=""  动作="";

            // **单独开发工艺运行情况记录**

            CreateSqlValueType[] caozuo_create = new CreateSqlValueType[6];
            caozuo_create[0] = new CreateSqlValueType("nvarchar(50)", "ID", true);
            caozuo_create[1] = new CreateSqlValueType("int", "machine_num");
            caozuo_create[2] = new CreateSqlValueType("datetime", "mytime");
            caozuo_create[3] = new CreateSqlValueType("nvarchar(50)", "gongdanhao");
            caozuo_create[4] = new CreateSqlValueType("nvarchar(50)", "bianliang");
            caozuo_create[5] = new CreateSqlValueType("nvarchar(50)", "dongzuo");

            builder.Create_Table("caozuo_save", caozuo_create);
            //

            // 跳段记录
            // 记录 ID="机号+时间" 机号 时间 工单 跳段  跳段内容
            CreateSqlValueType[] tiaoduan_save = new CreateSqlValueType[6];
            tiaoduan_save[0] = new CreateSqlValueType("nvarchar(50)", "ID", true);
            tiaoduan_save[1] = new CreateSqlValueType("int", "machine_num");
            tiaoduan_save[2] = new CreateSqlValueType("datetime", "mytime");
            tiaoduan_save[3] = new CreateSqlValueType("nvarchar(50)", "gongdan");
            tiaoduan_save[4] = new CreateSqlValueType("nvarchar(50)", "tiaoduan");
            tiaoduan_save[5] = new CreateSqlValueType("nvarchar(max)", "tiaoduanneirong");

            builder.Create_Table("tiaoduan_save", tiaoduan_save);
        }