using System; using System.Collections.Generic; using System.Text; using System.Data; using System.Data.SqlClient; using System.Data.OleDb; using DataLinkMesWork; //using SystemFramework; namespace bizFacade { /// /// 关键零部件追溯 /// public partial class BaseDataSystemMES { /// /// 根据工位号,将计划下达到工位PC /// [MES_计划BOM_订单计划下达_执行顺序] /// [MES_计划BOM_发动机号] /// [MES_计划BOM_发动机装配指南] /// /// //public static void GetOrderForm(string opName) //{ // //订单号 // string orderForm; // //1:获得需要下达的订单列表 // DataTable dt_orderForm; // OrderFormOpName_Select(opName, out dt_orderForm); // if (dt_orderForm != null) // { // for (int i = 0; i < dt_orderForm.Rows.Count; i++) // { // try // { // orderForm = dt_orderForm.Rows[i]["订单号"].ToString(); // //2:根据订单号,工位号,获得[MES_计划BOM_订单计划下达_执行顺序] // //[MES_计划BOM_发动机号] // //[MES_计划BOM_发动机装配指南] // DataTable dt_OrderFormOrderBy; // DataTable dt_EngineID; // DataTable dt_OperationGuid; // GetOrderPlanEngineNumber_OrderForm(orderForm, out dt_OrderFormOrderBy); // GetOrderPlanEngineNumberToPcStation(orderForm, out dt_EngineID); // GetOperationGuid(orderForm, opName, out dt_OperationGuid); // //3将数据导入到工位PC // if (!GetOrderPlanEngineNumberToPcStation_OrderForm_Delete(orderForm)) continue; // if(!GetOrderPlanEngineNumberToPcStation_Delete(orderForm)) continue; // if(!GetOperationGuidToPcStation_Delete(orderForm)) continue; // if(!GetOrderPlanEngineNumberToPcStation_OrderForm(dt_OrderFormOrderBy)) continue; // if(!GetOrderPlanEngineNumberToPcStation(dt_EngineID)) continue; // if(!GetOperationGuidToPcStation(dt_OperationGuid)) continue; // OrderFormOpName_Update(orderForm, opName); // } // catch (Exception err) // { // //ApplicationLog.WriteLog(err,err.Message); // } // } // } //} /// /// "delete from [MES_计划BOM_订单计划下达_执行顺序] where 订单号='" + orderForm + "'"; /// /// //private static bool GetOrderPlanEngineNumberToPcStation_OrderForm_Delete(string orderForm) //{ // string sql; // sql = "delete from [MES_计划BOM_订单计划下达_执行顺序] where 订单号='" + orderForm + "'"; // return DataAccess.ExecuteSQL_OleDb_Access(sql); //} /// /// "delete from [MES_计划BOM_发动机号] where 订单号='" + orderForm + "'"; /// /// //private static bool GetOrderPlanEngineNumberToPcStation_Delete(string orderForm) //{ // string sql; // sql = "delete from [MES_计划BOM_发动机号] where 订单号='" + orderForm + "'"; // return DataAccess.ExecuteSQL_OleDb_Access(sql); //} /// /// "delete from [MES_计划BOM_订单计划下达_执行顺序] where 订单号='" + orderForm + "'"; /// /// //private static bool GetOperationGuidToPcStation_Delete(string orderForm) //{ // string sql; // sql = "delete from [MES_计划BOM_发动机装配指南] where 订单号='" + orderForm + "'"; // return DataAccess.ExecuteSQL_OleDb_Access(sql); //} /// /// exec MES_计划BOM_发动机订单计划_下达工位_修改 /// set 同步状态=1,同步日期=getdate() /// /// /// public static void OrderFormOpName_Update(string orderForm,string opName) { string sql; sql = "exec MES_计划BOM_发动机订单计划_下达工位_修改 '"+orderForm+"','"+opName+"'"; DataAccess.ExecuteSQL(sql); } /// /// 获得工位对应的订单号 /// MES_计划BOM_发动机订单计划_下达工位 /// /// /// public static void OrderFormOpName_Select(string opName, out DataTable dt) { string sql; sql = "select 订单号 from MES_计划BOM_发动机订单计划_下达工位 " + " where 同步状态 = 0 and 工位号='" + opName + "'"; DataAccess.ExecuteDataTable(sql, out dt); } /// /// 下达装配BOM到工位Access文件 INSERT INTO [MES_计划BOM_发动机装配指南] /// /// //static public bool GetOperationGuidToPcStation(DataTable dt) //{ // string sql; // sql = // "INSERT INTO [MES_计划BOM_发动机装配指南]" + // "([订单号], [主配厂家],[工位号], [工位名称], [物料号], [零件图号], [零件名称]," + // " [零件数量],[是否扫描],[扫描方式],[是否主物料],[厂家代码], [生产厂家],[操作指导] )" + // "VALUES(@订单号,@主配厂家,@工位号,@工位名称,@物料号,@零件图号,@零件名称," + // "@零件数量,@是否扫描,@扫描方式,@是否主物料,@厂家代码,@生产厂家,@操作指导)"; // OleDbParameter[] thisParms = new OleDbParameter[14]; // thisParms[0] = new OleDbParameter("@订单号", OleDbType.VarChar, 50, "订单号"); // thisParms[1] = new OleDbParameter("@主配厂家", OleDbType.VarChar, 50, "主配厂家"); // thisParms[2] = new OleDbParameter("@工位号", OleDbType.VarChar, 50, "工位号"); // thisParms[3] = new OleDbParameter("@工位名称", OleDbType.VarChar, 255, "工位名称"); // thisParms[4] = new OleDbParameter("@物料号", OleDbType.VarChar, 50, "物料号"); // thisParms[5] = new OleDbParameter("@零件图号", OleDbType.VarChar, 50, "零件图号"); // thisParms[6] = new OleDbParameter("@零件名称", OleDbType.VarChar, 255, "零件名称"); // thisParms[7] = new OleDbParameter("@零件数量", OleDbType.Integer, 4, "零件数量"); // thisParms[8] = new OleDbParameter("@是否扫描", OleDbType.Integer, 4, "是否扫描"); // thisParms[9] = new OleDbParameter("@扫描方式", OleDbType.Integer, 4, "扫描方式"); // thisParms[10] = new OleDbParameter("@是否主物料", OleDbType.Integer, 4, "是否主物料"); // thisParms[11] = new OleDbParameter("@厂家代码", OleDbType.VarChar, 255, "厂家代码"); // thisParms[12] = new OleDbParameter("@生产厂家", OleDbType.VarChar, 255, "生产厂家"); // thisParms[13] = new OleDbParameter("@操作指导", OleDbType.VarChar, 255, "操作指导"); // return DataAccess.ExecuteDataTable_OleDb_Insert_Access(sql, dt, ref thisParms); //} /// /// 下达装配BOM的发动机号到工位Access文件 INSERT INTO [MES_计划BOM_发动机号] /// /// //static public bool GetOrderPlanEngineNumberToPcStation(DataTable dt) //{ // string sql; // sql = // "INSERT INTO [MES_计划BOM_发动机号]" + // "([发动机号], [订单号], [SAP物料号], [发动机型号], [发动机型号代码], [发动机机型]," + // "[发动机数量], [厂牌编号起始号], [客户名称], [投料日期], [文件编号], [集团名称], [通知号], " + // "[功率], [指南文件编号], [装机状态], [适用状态], [物料描述],[计划下达日期])" + // "VALUES(@发动机号,@订单号,@SAP物料号,@发动机型号,@发动机型号代码,@发动机机型," + // "@发动机数量,@厂牌编号起始号,@客户名称,@投料日期,@文件编号,@集团名称,@通知号," + // "@功率,@指南文件编号,@装机状态,@适用状态,@物料描述,@计划下达日期)"; // OleDbParameter[] thisParms = new OleDbParameter[19]; // thisParms[0] = new OleDbParameter("@发动机号", OleDbType.VarChar, 50, "发动机号"); // thisParms[1] = new OleDbParameter("@订单号", OleDbType.VarChar, 50, "订单号"); // thisParms[2] = new OleDbParameter("@SAP物料号", OleDbType.VarChar, 50, "SAP物料号"); // thisParms[3] = new OleDbParameter("@发动机型号", OleDbType.VarChar, 50, "发动机型号"); // thisParms[4] = new OleDbParameter("@发动机型号代码", OleDbType.Integer, 4, "发动机型号代码"); // thisParms[5] = new OleDbParameter("@发动机机型", OleDbType.VarChar, 50, "发动机机型"); // thisParms[6] = new OleDbParameter("@发动机数量", OleDbType.Integer, 4, "发动机数量"); // thisParms[7] = new OleDbParameter("@厂牌编号起始号", OleDbType.VarChar, 50, "厂牌编号起始号"); // thisParms[8] = new OleDbParameter("@客户名称", OleDbType.VarChar, 255, "客户名称"); // thisParms[9] = new OleDbParameter("@投料日期", OleDbType.DBDate, 8, "投料日期"); // thisParms[10] = new OleDbParameter("@文件编号", OleDbType.VarChar, 50, "文件编号"); // thisParms[11] = new OleDbParameter("@集团名称", OleDbType.VarChar, 255, "集团名称"); // thisParms[12] = new OleDbParameter("@通知号", OleDbType.VarChar, 50, "通知号"); // thisParms[13] = new OleDbParameter("@功率", OleDbType.VarChar, 50, "功率"); // thisParms[14] = new OleDbParameter("@指南文件编号", OleDbType.VarChar, 50, "指南文件编号"); // thisParms[15] = new OleDbParameter("@装机状态", OleDbType.VarChar, 50, "装机状态"); // thisParms[16] = new OleDbParameter("@适用状态", OleDbType.VarChar, 50, "适用状态"); // thisParms[17] = new OleDbParameter("@物料描述", OleDbType.VarChar, 255, "物料描述"); // thisParms[18] = new OleDbParameter("@计划下达日期", OleDbType.DBDate, 8, "计划下达日期"); // return DataAccess.ExecuteDataTable_OleDb_Insert_Access(sql, dt, ref thisParms); //} /// /// 下达装配BOM的发动机号到工位Access文件 INSERT INTO [MES_计划BOM_订单计划下达_执行顺序] /// /// //static public bool GetOrderPlanEngineNumberToPcStation_OrderForm(DataTable dt) //{ // string sql; // sql = // "INSERT INTO [MES_计划BOM_订单计划下达_执行顺序]" + // "([订单号],[执行顺序],[SAP物料号], [发动机型号], [发动机型号代码], [发动机机型]," + // "[发动机数量], [厂牌编号起始号], [客户名称], [投料日期], [文件编号], [集团名称], [通知号], " + // "[功率], [指南文件编号], [装机状态], [适用状态], [物料描述],[计划下达日期])" + // "VALUES(@订单号,@执行顺序,@SAP物料号,@发动机型号,@发动机型号代码,@发动机机型," + // "@发动机数量,@厂牌编号起始号,@客户名称,@投料日期,@文件编号,@集团名称,@通知号," + // "@功率,@指南文件编号,@装机状态,@适用状态,@物料描述,@计划下达日期)"; // OleDbParameter[] thisParms = new OleDbParameter[19]; // thisParms[0] = new OleDbParameter("@订单号", OleDbType.VarChar, 50, "订单号"); // thisParms[1] = new OleDbParameter("@执行顺序", OleDbType.Integer, 4, "执行顺序"); // thisParms[2] = new OleDbParameter("@SAP物料号", OleDbType.VarChar, 50, "SAP物料号"); // thisParms[3] = new OleDbParameter("@发动机型号", OleDbType.VarChar, 50, "发动机型号"); // thisParms[4] = new OleDbParameter("@发动机型号代码", OleDbType.Integer, 4, "发动机型号代码"); // thisParms[5] = new OleDbParameter("@发动机机型", OleDbType.VarChar, 50, "发动机机型"); // thisParms[6] = new OleDbParameter("@发动机数量", OleDbType.Integer, 4, "发动机数量"); // thisParms[7] = new OleDbParameter("@厂牌编号起始号", OleDbType.VarChar, 50, "厂牌编号起始号"); // thisParms[8] = new OleDbParameter("@客户名称", OleDbType.VarChar, 255, "客户名称"); // thisParms[9] = new OleDbParameter("@投料日期", OleDbType.DBDate, 8, "投料日期"); // thisParms[10] = new OleDbParameter("@文件编号", OleDbType.VarChar, 50, "文件编号"); // thisParms[11] = new OleDbParameter("@集团名称", OleDbType.VarChar, 255, "集团名称"); // thisParms[12] = new OleDbParameter("@通知号", OleDbType.VarChar, 50, "通知号"); // thisParms[13] = new OleDbParameter("@功率", OleDbType.VarChar, 50, "功率"); // thisParms[14] = new OleDbParameter("@指南文件编号", OleDbType.VarChar, 50, "指南文件编号"); // thisParms[15] = new OleDbParameter("@装机状态", OleDbType.VarChar, 50, "装机状态"); // thisParms[16] = new OleDbParameter("@适用状态", OleDbType.VarChar, 50, "适用状态"); // thisParms[17] = new OleDbParameter("@物料描述", OleDbType.VarChar, 255, "物料描述"); // thisParms[18] = new OleDbParameter("@计划下达日期", OleDbType.DBDate, 8, "计划下达日期"); // return DataAccess.ExecuteDataTable_OleDb_Insert_Access(sql, dt, ref thisParms); //} /// /// 根据订单号,工位号获得[MES_计划BOM_发动机装配指南] /// /// 订单号 /// 工位号 /// MES_计划BOM_发动机装配指南 /// static public bool GetOperationGuid(string orderForm,string opName,out DataTable dt) { string sql; sql = "exec MES_计划BOM_发动机装配指南_查询_下达到工位 '" + orderForm + "','" + opName + "'"; return DataAccess.ExecuteDataTable(sql, out dt); } /// /// 根据订单号 [MES_计划BOM_订单计划下达_执行顺序] /// /// 订单号 /// [MES_计划BOM_订单计划下达_执行顺序] static public bool GetOrderPlanEngineNumber_OrderForm(string orderForm, out DataTable dt) { string sql; sql = "exec MES_计划BOM_发动机订单计划_查询_下达到工位 '" + orderForm + "'"; return DataAccess.ExecuteDataTable(sql, out dt); } /// /// 根据订单号 [MES_计划BOM_发动机号] /// /// 订单号 /// [MES_计划BOM_发动机号] static public bool GetOrderPlanEngineNumberToPcStation(string orderForm, out DataTable dt) { string sql; sql = "exec MES_计划BOM_发动机号_查询_下达到工位 '" + orderForm + "'"; return DataAccess.ExecuteDataTable(sql, out dt); } } }