using CSFrameworkV5.Business;
using CSFrameworkV5.Common;
using CSFrameworkV5.Core;
using CSFrameworkV5.Language;
using CSFrameworkV5.Library;
using CSFrameworkV5.Library.CommonClass;
using DevExpress.XtraEditors;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace CSFrameworkV5.womcaa
{
public partial class frmWOMPlanQZ : frmBaseDataForm
{
private DataTable tb = new DataTable();
private DataTable tbWOMDAA = new DataTable();
private string GCD = "";
private string idString = "";
private DataTable tbWOMGCA = new DataTable();//合并表
private DataTable tbWOMCAA = new DataTable();
private DataTable XT;//线体表
private DataTable JT;//机台表
private DataTable CF;//已拆分数量表
private bllyhj_womcaa _BLLInstance;//业务逻辑层对象引用
private DataTable tbWOMDAAA = new DataTable();
private DataTable tbWOMDAAA_B = new DataTable();
private DataTable tbGCBOM = new DataTable();//高冲bom
//private DataTable tbWOMDAAA;//线体表
private DataTable tbyp = new DataTable();//已排指令表
///
/// 是否拆分了工单
///
public bool IsSplit = false;
private DataTable RY;
private DataTable GYLX;
private DataTable tbWOMDAAA_ONE = new DataTable();
private DataTable tbBM;
public frmWOMPlanQZ()
{
InitializeComponent();
}
public override void InitButtons()
{
var btnClose = ToolbarRegister.CreateButton("btnClose",
LanLib.Get("关闭"), ToolBarGroup.关闭窗体, Globals.LoadBitmap("32_Exit.png"), new Size(57, 28), false, true,
DoClose);
_buttons.AddButton(btnClose);
var btnRefresh = ToolbarRegister.CreateButton("btnRefreshDataDict",
LanLib.Get("查询未排"), ToolBarGroup.数据操作, Globals.LoadBitmap("32_Refresh.png"), new Size(57, 28), true,
true, DoSeleteData);
_buttons.AddButton(btnRefresh);
if (ButtonAuthorized(ButtonAuthority.DELETE))
{
var btnDelete = ToolbarRegister.CreateButton("btnDelete", LanLib.Get("拆分"), ToolBarGroup.数据操作,
Globals.LoadBitmap("32_Del.png"), new Size(57, 28), false, true, SplitWorkOrder);
Buttons.AddButton(btnDelete);
}
//if (ButtonAuthorized(ButtonAuthority.EDIT))
//{
// var btnSave = ToolbarRegister.CreateButton("btnSave", LanLib.Get("下达"), ToolBarGroup.数据操作,
// Globals.LoadBitmap("32_Save.png"), new Size(57, 28), false, true, doXiaDaZhiLing);
// Buttons.AddButton(btnSave);
//}
if (ButtonAuthorized(ButtonAuthority.EDIT))
{
var btnSave = ToolbarRegister.CreateButton("btnSave", LanLib.Get("合并下达"), ToolBarGroup.数据操作,
Globals.LoadBitmap("32_Save.png"), new Size(57, 28), false, true, HBXD);
Buttons.AddButton(btnSave);
}
//if (ButtonAuthorized(ButtonAuthority.EDIT))
//{
// var btnCXTJ = ToolbarRegister.CreateButton("btnSave", LanLib.Get("查询推荐"), ToolBarGroup.数据操作,
// Globals.LoadBitmap("Zoom_32x32.png"), new Size(57, 28), false, true, CXTJ);
// Buttons.AddButton(btnCXTJ);
//}
//if (ButtonAuthorized(ButtonAuthority.EDIT))
//{
// var btnQXTJ = ToolbarRegister.CreateButton("btnSave", LanLib.Get("取消推荐"), ToolBarGroup.数据操作,
// Globals.LoadBitmap("32_Undo.png"), new Size(57, 28), false, true, QXTJ);
// Buttons.AddButton(btnQXTJ);
//}
//if (ButtonAuthorized(ButtonAuthority.EDIT))
//{
// var btnQXAllTJ = ToolbarRegister.CreateButton("btnSave", LanLib.Get("取消全部推荐"), ToolBarGroup.数据操作,
// Globals.LoadBitmap("32_Void.png"), new Size(57, 28), false, true, QXAllTJ);
// Buttons.AddButton(btnQXAllTJ);
//}
//if (ButtonAuthorized(ButtonAuthority.EDIT))
//{
// var btnSavet = ToolbarRegister.CreateButton("btnSave", LanLib.Get("合并"), ToolBarGroup.数据操作,
// Globals.LoadBitmap("32_Save.png"), new Size(57, 28), false, true, hb);
// Buttons.AddButton(btnSavet);
//}
}
// 合并下达
private void HBXD(IButtonInfo sender)
{
//MessageBox.Show("功能暂时关闭");
//return;
//获取gridview中当前cell的行号
int rowHandle = gridView2.FocusedRowHandle;
gridView2.FocusedRowHandle = rowHandle;
gridView2.FocusedColumn = gridView2.Columns["DAA001"];
string bilo = "";
int no = 0; //合并指令数
string GCA059 = "";//销售订单号
string GCA010 = "";//总装工单号
string GCA074 = "";//总装产品编码
string ZLS = "";//指令集
decimal NewShu = 0;//拆分集合里的数量
decimal OldShu = 0;//数据库里的数量(排除了拆分集合里的数量)
if (tb.Rows.Count == 0)
{
MessageBox.Show("还没有数据,请查询未排工单!");
return;
}
DataRow[] selRow = tb.Select("SelL='Y' AND ChaiFenGeShu>0");
if (selRow.Length == 0)
{
MessageBox.Show("请选择工单,并录入拆分个数");
return;
}
//if (tbWOMDAA.Rows.Count > 0)
//{
// tbWOMDAA.Clear();
//}
if (!IsSplit)
{
MessageBox.Show("工单未拆分,不能下达!");
return;
}
if (tbWOMDAA.Rows.Count == 0)
{
MessageBox.Show("请先拆分指令!");
return;
}
//对数据的检测
foreach (DataRow dr in tbWOMDAA.Rows)
{
if (dr["DAA042"].ToString() == "")
{
MessageBox.Show("存在线别为空,不能下达指令!");
return;
}
if (dr["DAA040"].ToString() == " ")
{
MessageBox.Show("存在人员为空,不能下达指令!");
return;
}
//if (dr["DAA069"].ToString() == "")
//{
// MessageBox.Show("设备名称为空,不能下达指令!");
// return;
//}
if (Convert.ToInt32(dr["DAA027"]) <= 0)
{
MessageBox.Show("存在数量小于等于0,不能下达指令!");
return;
}
}
//计算合并工单的总指令数
bilo = tbWOMDAA.Rows[0]["DAA014"].ToString();
string plan_type = tbWOMDAA.Rows[0]["DAA071"].ToString();
foreach (DataRow dr in tbWOMDAA.Rows)
{
no = no + Convert.ToInt32(dr["DAA027"]);
GCA010 = GCA059 + dr["DAA010"].ToString() + ",";
GCA059 = GCA059 + dr["DAA059"].ToString()+",";
GCA074 = GCA074 + dr["DAA074"].ToString() + ",";
if (dr["DAA014"].ToString() != bilo)
{
MessageBox.Show("产品编码不一致,不能合并下达!!!");
return;
}
if (dr["DAA071"].ToString() != plan_type)
{
MessageBox.Show("计划类型不一致,不能合并下达!!!");
return;
}
}
// var duplicates = tbWOMDAA.AsEnumerable()
//.GroupBy(row => row.Field("DAA010")) // 假设DAA010是字符串类型,如果不是请修改类型
//.Where(group => group.Count() > 1) // 查找包含两条或更多条数据的组
//.Select(group => group.Key); // 选择重复的DAA010值
// 使用LINQ查询非空的DAA010字段值并分组,然后筛选出那些包含两条或更多条目的组
var duplicates = tbWOMDAA.AsEnumerable()
.Where(row => !string.IsNullOrEmpty(row.Field("DAA010"))) // 排除空值
.GroupBy(row => row.Field("DAA010"))
.Where(group => group.Count() > 1); // 选择那些有多于一个条目的组
// 如果找到了重复的DAA010值,显示错误消息框
if (duplicates.Any())
{
string errorMessage = "在新开指令中发现了重复的总装指令工单: " + string.Join(", ", duplicates);
MessageBox.Show(errorMessage, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error); // 如果你使用的是Windows // 如果不是Windows Forms,你可能需要使用不同的方式显示消息
return;
}
//判断拆分出来的数量不能超过原工单数量
DataTable dtDAA = tbWOMDAA.DefaultView.ToTable(true, new string[] { "DAA038", "DAA014" });
foreach (DataRow dr in dtDAA.Rows)
{
NewShu = 0;
OldShu = 0;
string filter = string.Format("DAA038 ='{0}' AND DAA014='{1}' and DAA001 not like '%-B' ", dr["DAA038"], dr["DAA014"]);
DataRow[] arrayRow = tbWOMDAA.Select(filter);
foreach (DataRow dr1 in arrayRow)
{
ZLS += "'" + dr1["DAA001"].ToString() + "',";
NewShu += Convert.ToDecimal(dr1["DAA027"]);
}
OldShu = GetYiChaiFenShu(dr["DAA038"].ToString(), ZLS.TrimEnd(','), dr["DAA014"].ToString());
DataRow[] yRow = tb.Select("CAA001='" + dr["DAA038"] + "'");
decimal YuanGDShu = yRow.Length > 0 ? Convert.ToDecimal(yRow[0]["CAA012"]) : 0;
if (NewShu + OldShu > YuanGDShu)
{
MessageBox.Show(string.Format("工单[{0}]的拆分数量[{1}]+[{2}]不能大于工单总量[{3}],请修改!",
dr["DAA038"].ToString(), NewShu.ToString(), OldShu.ToString(), YuanGDShu));
return;
}
}
//合并单据
try
{
GCD = CommonData.GetDocNo("MOHB");
DataRow drNew = tbWOMGCA.NewRow();
Guid newId = Guid.NewGuid();
idString = newId.ToString();
drNew["ID"] = idString;
drNew["GCA001"] = GCD;// 合并指令单号
drNew["GCA003"] = tbWOMDAA.Rows[0]["DAA003"];// 客户编号
drNew["GCA004"] = "5102"; // 工单单别
drNew["GCA005"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); // 开单日期
drNew["GCA006"] = "00:00";// 开单时间
drNew["GCA007"] = "0000";// 开单版本
//drNew["GCA011"] = tbGCBOM.Rows[0]["生产方案"].ToString(); ;// 生产方案
drNew["GCA014"] = tbWOMDAA.Rows[0]["DAA014"];// 产品编码
drNew["GCA015"] = tbWOMDAA.Rows[0]["DAA015"];// 产品名称
drNew["GCA016"] = tbWOMDAA.Rows[0]["DAA016"];// 产品规格
drNew["GCA017"] = tbWOMDAA.Rows[0]["DAA017"];// 单位
drNew["GCA018"] = DateTime.Now.ToString("yyyy-MM-dd");//变更成下达时间dr["CAA010"].GetString().Substring(0, 10);// 预计开工日期
drNew["GCA019"] = DateTime.Now.ToString("yyyy-MM-dd");//变更成下达时间dr["CAA011"].GetString().Substring(0, 10);// 预计完工日期
drNew["GCA020"] = tbWOMDAA.Rows[0]["DAA018"].ToString().Substring(0, 10); //dr["CAA010"].ToString().Length > 10 ? dr["CAA010"].ToString().Substring(11, 5) : "08:00";// 预计开工时间
drNew["GCA021"] = tbWOMDAA.Rows[0]["DAA019"].ToString().Substring(0, 10); //dr["CAA011"].ToString().Length > 10 ? dr["CAA010"].ToString().Substring(11, 5) : "17:30";// 预计完工时间
drNew["GCA022"] = "新开指令";// 生产状态 新单
drNew["GCA027"] = no;// 工单数量
drNew["GCA028"] = 0;
drNew["GCA029"] = 0;
drNew["GCA030"] = 0;
drNew["GCA031"] = tbWOMDAA.Rows[0]["DAA031"];// BOM版次
drNew["GCA032"] = tbWOMDAA.Rows[0]["DAA032"];// 工作中心
drNew["GCA034"] = "";//指令物料超发类型
drNew["GCA035"] = "";//指令组
drNew["GCA036"] = tbWOMDAA.Rows[0]["DAA036"];//图号
drNew["GCA037"] = 0;//备料齐套生产
drNew["GCA038"] = tbWOMDAA.Rows[0]["DAA038"];// 计划批次
drNew["GCA039"] = tbWOMDAA.Rows[0]["DAA039"];// 客户名称
drNew["GCA040"] = tbWOMDAA.Rows[0]["DAA040"];// 备注
drNew["GCA041"] = "";// 目标指令编码
drNew["GCA042"] = tbWOMDAA.Rows[0]["DAA042"];// 生产线别
drNew["GCA043"] = tbWOMDAA.Rows[0]["DAA043"];// 生产批次编码
drNew["GCA044"] = "";// RoHS区分
drNew["GCA045"] = "1";//dr["CAA045"]; 返工标记(1-量产2试做,3-有任务单返工;4-无任务单返工
drNew["GCA046"] = Loginer.CurrentUser.Account;// 审核者
drNew["GCA047"] = "N";// 程序校验
drNew["GCA048"] = 0;//Convert.ToDecimal(dr["FAuxInHighLimitQty"]); 入库上限值
drNew["GCA049"] = "3";// 板面标识
drNew["GCA050"] = 0; //不良品数
drNew["GCA051"] = 0; //备用ObjectToDecimal(dr["FStdWorkHour"]).ToString();
drNew["GCA052"] = 0;//产线人员
drNew["GCA053"] = 0;//是否退料
drNew["GCA054"] = 0;//发料仓库
drNew["GCA055"] = 0;//生产优先级
drNew["GCA056"] = 0;//下一个指令编码
//drNew["GCA057"] = tbWOMDAA.Rows[0]["CAA001"]; //工单单号 udpObjectToDecimal(dr["FOldStdWorkHour"]).ToString();
//drNew["GCA058"] = tbWOMDAA.Rows[0]["CAA016"];// 客户订单
drNew["GCA059"] = GCA059;// 销售订单号
drNew["GCA067"] = tbWOMDAA.Rows[0]["DAA067"];
drNew["GCA068"] = tbWOMDAA.Rows[0]["DAA068"];
drNew["GCA069"] = tbWOMDAA.Rows[0]["DAA069"];
drNew["GCA071"] = tbWOMDAA.Rows[0]["DAA071"];
drNew["GCA073"] = tbWOMDAA.Rows[0]["DAA073"];
drNew["GCA074"] = GCA074;// 总装产品编码
drNew["GYLX"] = tbWOMDAA.Rows[0]["GYLX"];// 总装产品编码
if (tbWOMDAA.Rows[0]["DAA071"].ToString() == "计划外")
{
drNew["flagApp"] = "N";
}
tbWOMGCA.Rows.Add(drNew);
_BLLInstance.InstDataSet(tbWOMGCA, "WOMGCA");
}
catch(Exception EEE)
{
MessageBox.Show("合并工单失败!"+EEE.Message);
return;
}
try
{
int i = 0;
//格式化时间控件的值
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["ID"] = Guid.NewGuid();
dr["DAA020"] = dr["DAA018"].ToString().Substring(0, 10);
dr["DAA021"] = dr["DAA019"].ToString().Substring(0, 10);
dr["DAA050"] = 0;
dr["DAA051"] = 0;
dr["DAA052"] = 0;
dr["DAA028"] = 0;
dr["DAA029"] = 0;
dr["DAA030"] = 0;
dr["DAA033"] = 0;
dr["AppNAME"] = "指令工单";
dr["GCID"] = idString;
dr["DAA070"] = ++i;
dr["HBGD"] = GCD;//合并工单
if (dr["DAA071"].ToString() == "计划外")
{
dr["flagApp"] = "N";
}
}
//保存数据
// PB.StepProgressBar(1, "正在保存指令数据!");
if (_BLLInstance.InstDataSet(tbWOMDAA, "WOMDAA"))
{
//更新已下达的数量
foreach (DataRow row in dtDAA.Rows)
{
UpdateIssueWorkOrder(row["DAA038"].ToString(), row["DAA014"].ToString());
string WOMCAAKG = string.Format("EXEC WMS_CREATE_WOMCAAKG '{0}'", row["DAA038"].ToString());
_BLLInstance.InsDataSet(WOMCAAKG);
}
//生成指令明细数据
foreach (DataRow dr in tbWOMDAA.Rows)
{
//string SQL_WOMDAB = string.Format("EXEC WMS_CREATE_WOMDABGC '{0}','{1}'", dr["DAA001"].ToString(),dr["DAA038"].ToString());
//_BLLInstance.InsDataSet(SQL_WOMDAB);
string SQL1 = string.Format("EXEC WOM_UPDATE_ZZGD '{0}' ", dr["DAA001"].ToString());
_BLLInstance.InsDataSet(SQL1);
string GCBOMBG = string.Format("EXEC WMS_CREATE_WOMDAB '{0}' ",dr["DAA001"].ToString());
_BLLInstance.InsDataSet(GCBOMBG);
}
// PB.StepProgressBar(1, "正在更新已开指令数!");
MessageBox.Show("合并工单<" + GCD +">下达成功!");
tbWOMDAA.Clear();
tbWOMGCA.Clear();
tbyp.Clear();
tb.Clear();
string sql = string.Format(@";WITH B AS(SELECT DISTINCT DAA059,SUM(ISNULL(DAA027,0)) F
FROM WOMDAA(NOLOCK) WHERE DAA032 IN ('洗衣机装配车间','风扇装配车间','罩极装配车间') AND ISNULL(DAA059,'')<>'' GROUP BY DAA059),
ZZYPGD_WP AS (SELECT DAA001 总装指令工单,DAA027 总装指令已排数,ISNULL(DAA059,'') 销售订单号,DAA020 总装预计开工时间
FROM WOMDAA(NOLOCK) AA WHERE ISNULL(DAA059,'') <> '' AND DAA022 <> '完工' AND DAA032 IN ('洗衣机装配车间','风扇装配车间','罩极装配车间') AND NOT EXISTS(SELECT 1 FROM WOMDAA(NOLOCK) BB WHERE BB.DAA010 = AA.DAA001 AND DAA032 = '{0}' )),
ZZYPGD_SUM AS (SELECT DAA001 总装指令工单,DAA027 总装指令已排数,ISNULL(DAA059,'') 销售订单号,DAA020 总装预计开工时间
FROM WOMDAA(NOLOCK) AA WHERE ISNULL(DAA059,'') <> '' AND DAA032 IN ('洗衣机装配车间','风扇装配车间','罩极装配车间'))
SELECT A.CAA002,A.CAA003,A.CAA005,A.CAA018,A.CAA006,A.CAA007,A.CAA008,A.CAA009,A.CAA010,A.CAA011,A.CAA012,A.CAA013,A.CAA014,A.CAA015,A.CAA016,A.CAA022,A.CAA017,A.CAA021,A.ERPID,C.WL069,'1' ChaiFenGeShu,'N' SelL,ZZYPGD_WP.总装指令已排数 WeiPaiShu,isnull(B.F,0) ZWEI ,WL008,D.CAA006 总装产品编码,A.CAA012-isNull(A.CAA013,0) 工单总未排数,
'计划内' 类型,PQZ006 计划排产时间,ZZYPGD_WP.总装指令工单 总装指令工单,ZZYPGD_WP.总装指令已排数 总装指令数量 FROM WOMCAA(nolock) A
LEFT JOIN B ON B.DAA059=A.CAA018
LEFT JOIN GS_WL(NOLOCK) C ON C.WL001=A.CAA006
LEFT JOIN (SELECT distinct CAA006, CAA018 FROM WOMCAA(NOLOCK) WHERE CAA014 IN ('风扇装配车间','洗衣机装配车间','罩极装配车间') AND SUBSTRING(CAA006,1,2)='01' AND ISNULL(CAA018,'')<>'') D ON D.CAA018=A.CAA018
LEFT JOIN GS_PLAN_QZ(NOLOCK) E ON PQZ002 = A.CAA001
RIGHT JOIN ZZYPGD_WP ON ZZYPGD_WP.销售订单号 = A.CAA018
WHERE A.CAA0130 AND ISNULL(A.flagApp,'') <> 'N' AND ISNULL(CAA029,'0') NOT IN ('5','6','7')
union
SELECT A.CAA002,A.CAA003,A.CAA005,A.CAA018,A.CAA006,A.CAA007,A.CAA008,A.CAA009,A.CAA010,A.CAA011,A.CAA012,A.CAA013,A.CAA014,A.CAA015,A.CAA016,A.CAA022,A.CAA017,A.CAA021,A.ERPID,C.WL069,'1' ChaiFenGeShu,'N' SelL,A.CAA012-(SELECT SUM(总装指令已排数) FROM ZZYPGD_SUM WHERE ZZYPGD_SUM.销售订单号 = A.CAA018 ) WeiPaiShu ,isnull(B.F,0) ZWEI ,WL008,D.CAA006 总装产品编码,A.CAA012-isNull(A.CAA013,0) 工单总未排数,
'计划外' 类型,'' 计划排产时间,'' 总装指令工单,'' 总装指令数量 FROM WOMCAA(nolock) A
LEFT JOIN B ON B.DAA059=A.CAA018
LEFT JOIN GS_WL(NOLOCK) C ON C.WL001=A.CAA006
LEFT JOIN (SELECT distinct CAA006, CAA018 FROM WOMCAA(NOLOCK) WHERE CAA014 IN ('风扇装配车间','洗衣机装配车间','罩极装配车间') AND SUBSTRING(CAA006,1,2)='01' AND ISNULL(CAA018,'')<>'') D ON D.CAA018=A.CAA018
WHERE A.CAA0130 AND ISNULL(A.flagApp,'') <> 'N' AND ISNULL(CAA029,'0') NOT IN ('5','6','7')
AND (A.CAA012-(SELECT SUM(总装指令已排数) FROM ZZYPGD_SUM WHERE ZZYPGD_SUM.销售订单号 = A.CAA018 ) > 0) AND EXISTS(SELECT 1 FROM ZZYPGD_SUM WHERE ZZYPGD_SUM.销售订单号 = A.CAA018)
union
SELECT A.CAA002,A.CAA003,A.CAA005,A.CAA018,A.CAA006,A.CAA007,A.CAA008,A.CAA009,A.CAA010,A.CAA011,A.CAA012,A.CAA013,A.CAA014,A.CAA015,A.CAA016,A.CAA022,A.CAA017,A.CAA021,A.ERPID,C.WL069,'1' ChaiFenGeShu,'N' SelL,A.CAA012 WeiPaiShu ,isnull(B.F,0) ZWEI ,WL008,D.CAA006 总装产品编码,A.CAA012-isNull(A.CAA013,0) 工单总未排数,
'计划外' 类型,'' 计划排产时间,'' 总装指令工单,'' 总装指令数量 FROM WOMCAA(nolock) A
LEFT JOIN B ON B.DAA059=A.CAA018
LEFT JOIN GS_WL(NOLOCK) C ON C.WL001=A.CAA006
LEFT JOIN (SELECT distinct CAA006, CAA018 FROM WOMCAA(NOLOCK) WHERE CAA014 IN ('风扇装配车间','洗衣机装配车间','罩极装配车间') AND SUBSTRING(CAA006,1,2)='01' AND ISNULL(CAA018,'')<>'') D ON D.CAA018=A.CAA018
WHERE A.CAA0130 AND ISNULL(A.flagApp,'') <> 'N' AND ISNULL(CAA029,'0') NOT IN ('5','6','7')
AND NOT EXISTS(SELECT 1 FROM ZZYPGD_SUM WHERE ZZYPGD_SUM.销售订单号 = A.CAA018)", searchLookUpEdit1.Text);
tb = _BLLInstance.GETDAT(sql);
this.gridControl1.DataSource = tb;
return;
}
else
{
MessageBox.Show("指令下达失败!");
return;
}
}
finally
{
// PB.MoveProgressBar();
}
}
///
///更新工单已开指令数
///
/// The order.
public void UpdateIssueWorkOrder(string Order, string PartNo)
{
string sql = string.Format(@"update WOMCAA SET CAA013 = ISNULL((SELECT SUM(DAA027) FROM WOMDAA WHERE DAA038 = CAA001 AND DAA014 = CAA006 and DAA001 not like '%-B'), 0),CAA028 = 2
WHERE CAA001 = '{0}' and CAA006='{1}' ", Order, PartNo);
_BLLInstance.InsDataSet(sql);
}
#region 得到数据库里的已拆分数量(排除了拆分集合里的数量)DataTable GetYiChaiFenShu(string DAA038,string DAA001)
///
/// 得到数据库里的已拆分数量(排除了拆分集合里的数量)
///
/// 工单号
/// 指令号集合
///
public decimal GetYiChaiFenShu(string DAA038, string DAA001, string DAA014)
{
string sql = string.Format("select ISNULL(sum(DAA027),0) sl from WOMDAA where DAA038='{0}' AND DAA014='{2}' and DAA001 not in ({1}) and DAA001 not like '%-B' ", DAA038, DAA001, DAA014);
CF = _BLLInstance.GETDAT(sql);
return Convert.ToDecimal(CF.Rows[0]["sl"]);
}
#endregion
//拆分
private void SplitWorkOrder(IButtonInfo sender)
{
if (tb.Rows.Count == 0)
{
MessageBox.Show("还没有数据,请查询未排工单!");
return;
}
DataRow[] selRow = tb.Select("SelL='Y'");
if (selRow.Length == 0)
{
MessageBox.Show("请选择工单,并录入拆分个数");
return;
}
if (tbWOMDAA.Rows.Count > 0)
{
tbWOMDAA.Clear();
}
if (tbWOMGCA.Rows.Count > 0)
{
tbWOMGCA.Clear();
}
Dictionary workorderCount = new Dictionary();
Dictionary workorderCount1 = new Dictionary();
// 遍历selRow中的所有行
foreach (DataRow row in selRow)
{
string workorder = row["任务单号"].ToString();
// 如果工单号不在字典中,则将其添加并设置计数为0
if (!workorderCount.ContainsKey(workorder))
workorderCount[workorder] = 0;
if (!workorderCount1.ContainsKey(workorder))
workorderCount1[workorder] = 0;
// 对每种工单号进行计数
workorderCount[workorder]++;
workorderCount1[workorder]++;
}
#region
/* foreach (DataRow dr in selRow)
{
*//* if (Convert.ToInt32(dr["ChaiFenGeShu"]) == 0)
continue;*/
/* tbWOMDAAA_ONE.Clear();
tbWOMDAAA.Clear();
string sqlstr = String.Format(@"SELECT DISTINCT A.DAA001 指令单号,A.DAA027 指令数量,(A.DAA027-SUM(ISNULL(C.DAA027,0))) 已排数量,A.DAA020 预计开工时间,A.DAA014 物料编码, A.DAA015 物料名称 ,A.DAA016 物料规格,A.DAA059 销售订单号 FROM WOMDAA A
LEFT JOIN WOMDAA C ON C.DAA010 = A.DAA001
WHERE A.DAA059 = '{0}' AND A.DAA032 IN('风扇装配车间','洗衣机装配车间','罩极装配车间') AND A.DAA022 NOT IN('完工', '停工') AND ISNULL(C.DAA010,'')= '' AND ISNULL(C.DAA027,0)< A.DAA027 AND ISNULL(A.DAA075,0) = 0 AND ISNULL(A.DAA059,'') <> ''
GROUP BY A.DAA001 ,A.DAA027 ,A.DAA020 ,A.DAA014 , A.DAA015 ,A.DAA016,A.DAA059 ", dr["CAA018"].ToString());//WHERE ISNULL(DAA028,0) 0)
{
foreach (DataRow row in tbWOMDAAA_ONE.Rows)
{
// 创建一个新的DataRow对象,并设置其ItemArray为当前行的ItemArray
// 注意:这里假设tbWOMDAAA的列与tbWOMDAAA_ONE的列完全相同
DataRow newRow = tbWOMDAAA.NewRow();
newRow.ItemArray = row.ItemArray;
// 将新行添加到tbWOMDAAA中
tbWOMDAAA.Rows.Add(newRow);
}
}*//*
// DataRow newRow_NULL = tbWOMDAAA.NewRow();
// 将新行添加到tbWOMDAAA中
// tbWOMDAAA.Rows.Add(newRow_NULL);
// string sqlstr1 = String.Format(@" SELECT A.BOM001 AS 生产方案,A.BOM002 AS 产品编码,A.BOM003 AS 产品名称, A.BOM004 AS 产品规格, A.BOM007 AS 模具类型 ,
//B.BOMM002 AS 用料编码,B.BOMM003 AS 用料名称,B.BOMM004 AS 用料规格
//FROM GS_BOM AS A LEFT JOIN GS_MBOM AS B ON A.ID = B.PID where BOM002 = '{0}' ", dr["CAA006"].ToString());//WHERE ISNULL(DAA028,0)1)
if (1 != 1)
{
foreach (DataRow row in dt.Rows)
{
if (row[0].ToString() == "") continue;
#region AB面
DataRow drNew = tbWOMDAA.NewRow();
drNew["DAA001"] = BillNo + "-" + row[0];// 指令单号
drNew["DAA003"] = dr["CAA003"];// 客户编号
drNew["DAA004"] = BillType; // 工单单别
drNew["DAA005"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm");// 开单日期
drNew["DAA006"] = "00:00";// 开单时间
drNew["DAA007"] = "0000";// 开单版本
drNew["DAA010"] = dr["总装指令工单"];// 总装工单号 //
drNew["DAA014"] = dr["CAA006"];// 产品编码
drNew["DAA015"] = dr["CAA007"];// 产品名称
drNew["DAA016"] = dr["CAA008"];// 产品规格
drNew["DAA017"] = dr["CAA009"];// 单位
drNew["DAA018"] = dr["CAA020"];//变更成下达时间dr["CAA010"].GetString().Substring(0, 10);// 预计开工日期
drNew["DAA019"] = dr["CAA020"];//变更成下达时间dr["CAA011"].GetString().Substring(0, 10);// 预计完工日期
drNew["DAA020"] = "00:00";//dr["CAA010"].ToString().Length > 10 ? dr["CAA010"].ToString().Substring(11, 5) : "08:00";// 预计开工时间
drNew["DAA021"] = "00:00";//dr["CAA011"].ToString().Length > 10 ? dr["CAA010"].ToString().Substring(11, 5) : "17:30";// 预计完工时间
drNew["DAA022"] = "新开指令";// 生产状态 新单
drNew["DAA027"] = dr["WeiPaiShu"];// 工单数量
drNew["DAA028"] = 0;
drNew["DAA029"] = 0;
drNew["DAA030"] = 0;
drNew["DAA031"] = dr["CAA015"];// BOM版次
drNew["DAA032"] = dr["CAA014"];// 工作中心
drNew["DAA034"] = "";//指令物料超发类型
drNew["DAA035"] = "";//指令组
drNew["DAA036"] = dr["WL008"];//图号
drNew["DAA037"] = 0;//备料齐套生产
drNew["DAA038"] = dr["CAA001"];// ERP工单号//dr["CAA002"];// 计划批次
drNew["DAA039"] = dr["CAA017"];// 客户订单号
drNew["DAA040"] = dr["CAA021"];// 备注
drNew["DAA041"] = dr["总装产品编码"];// 目标指令编码
drNew["DAA042"] = "";// 生产线别
drNew["DAA043"] = dr["CAA002"]; ;// 生产批次编码
drNew["DAA044"] = "";// RoHS区分
drNew["DAA045"] = "";// 相关说明
drNew["DAA046"] = Loginer.CurrentUser.Account;
drNew["DAA047"] = "N";// 程序校验
drNew["DAA048"] = 0;// 周计划已开指令
drNew["DAA049"] = row[0].ToString() == "A" ? "1" : "2";// 板面标识
drNew["DAA050"] = 0; //不良品数
drNew["DAA051"] = 0;//备用
drNew["DAA052"] = 0;//备用
drNew["DAA053"] = 0;//是否退料
drNew["DAA054"] = 0;//发料仓库
drNew["DAA055"] = 0;//生产优先级
drNew["DAA056"] = 0;//下一个指令编码
drNew["DAA057"] = dr["CAA018"]; //工单单号
drNew["DAA058"] = dr["CAA016"];// 生产工艺
drNew["DAA059"] = dr["CAA018"];//
drNew["DAA066"] = tbWOMCAA.Rows[0]["CAA006"].ToString();//
drNew["PID"] = dr["ERPID"];// 销售订单号
tbWOMDAA.Rows.Add(drNew);
#endregion
}
}
else
{
#region 整体面
DataRow drNew = tbWOMDAA.NewRow();
drNew["CREATE_BY"] = Loginer.CurrentUser.Account;// 创建者
drNew["CREATE_DATE"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm");// 创建时间
drNew["DAA001"] = BillNo;// 指令单号
drNew["DAA003"] = dr["CAA003"];// 客户编号
drNew["DAA004"] = BillType; // 工单单别
drNew["DAA005"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); // 开单日期
drNew["DAA006"] = "00:00";// 开单时间
drNew["DAA007"] = "0000";// 开单版本
//drNew["DAA011"] = tbGCBOM.Rows[0]["生产方案"].ToString(); ;// 生产方案
drNew["DAA010"] = dr["总装指令工单"];// 总装工单号
drNew["DAA014"] = dr["CAA006"];// 产品编码
drNew["DAA015"] = dr["CAA007"];// 产品名称
drNew["DAA016"] = dr["CAA008"];// 产品规格
drNew["DAA017"] = dr["CAA009"];// 单位
drNew["DAA018"] = DateTime.Now.ToString("yyyy-MM-dd");//变更成下达时间dr["CAA010"].GetString().Substring(0, 10);// 预计开工日期
drNew["DAA019"] = DateTime.Now.ToString("yyyy-MM-dd");//变更成下达时间dr["CAA011"].GetString().Substring(0, 10);// 预计完工日期
drNew["DAA020"] = "00:00";//dr["CAA010"].ToString().Length > 10 ? dr["CAA010"].ToString().Substring(11, 5) : "08:00";// 预计开工时间
drNew["DAA021"] = "00:00";//dr["CAA011"].ToString().Length > 10 ? dr["CAA010"].ToString().Substring(11, 5) : "17:30";// 预计完工时间
drNew["DAA022"] = "新开指令";// 生产状态 新单
drNew["DAA027"] = dr["WeiPaiShu"]; //i == Convert.ToInt32(dr["ChaiFenGeShu"]) - 1 ? Convert.ToInt32(dr["WeiPaiShu"]) - avg * (Convert.ToInt32(dr["ChaiFenGeShu"]) - 1) : avg;// 工单数量
drNew["DAA028"] = 0;
drNew["DAA029"] = 0;
drNew["DAA030"] = 0;
drNew["DAA031"] = dr["CAA015"];// BOM版次
drNew["DAA032"] = dr["CAA014"];// 工作中心
drNew["DAA034"] = "";//指令物料超发类型
drNew["DAA035"] = "";//指令组
drNew["DAA036"] = dr["WL008"];//图号
drNew["DAA037"] = 0;//备料齐套生产
drNew["DAA038"] = dr["CAA001"];// 计划批次
drNew["DAA039"] = dr["CAA017"];// 客户名称
drNew["DAA040"] = dr["CAA021"];// 备注
drNew["DAA041"] = dr["总装产品编码"];// 目标指令编码
drNew["DAA042"] = "";// 生产线别
drNew["DAA043"] = dr["CAA002"];// 生产批次编码
drNew["DAA044"] = "";// RoHS区分
drNew["DAA045"] = "1";//dr["CAA045"]; 返工标记(1-量产2试做,3-有任务单返工;4-无任务单返工
drNew["DAA046"] = Loginer.CurrentUser.Account;// 审核者
drNew["DAA047"] = "N";// 程序校验
drNew["DAA048"] = 0;//Convert.ToDecimal(dr["FAuxInHighLimitQty"]); 入库上限值
drNew["DAA049"] = "3";// 板面标识
drNew["DAA050"] = 0; //不良品数
drNew["DAA051"] = 0; //备用ObjectToDecimal(dr["FStdWorkHour"]).ToString();
drNew["DAA052"] = 0;//产线人员
drNew["DAA053"] = 0;//是否退料
drNew["DAA054"] = 0;//发料仓库
drNew["DAA055"] = 0;//生产优先级
drNew["DAA056"] = 0;//下一个指令编码
drNew["DAA057"] = dr["CAA001"]; //工单单号 udpObjectToDecimal(dr["FOldStdWorkHour"]).ToString();
drNew["DAA058"] = dr["CAA016"];// 客户订单
drNew["DAA059"] = dr["CAA018"];// 销售订单号
drNew["DAA067"] = "";
drNew["DAA068"] = "";
drNew["DAA069"] = "";
drNew["DAA071"] = dr["类型"];
drNew["DAA073"] = "否";// 是否急料
if (tbWOMCAA.Rows.Count<1)
{
drNew["DAA066"] = "";
}
else
{
drNew["DAA066"] = tbWOMCAA.Rows[0]["CAA006"].ToString();
}
drNew["DAA074"] = dr["总装产品编码"];
drNew["PID"] = dr["ERPID"];//
tbWOMDAA.Rows.Add(drNew);
#endregion
}
}
this.gridControl2.DataSource = tbWOMDAA;
IsSplit = true;
}
repositoryItemSearchLookUpEdit1.ValueMember = "指令单号";
repositoryItemSearchLookUpEdit1.DisplayMember = "指令单号";
repositoryItemSearchLookUpEdit1.ShowClearButton = false;
repositoryItemSearchLookUpEdit1.DataSource = tbWOMDAAA;
//默认筛选框
this.repositoryItemSearchLookUpEdit1.View.OptionsView.ShowAutoFilterRow = true;
this.repositoryItemSearchLookUpEdit1.View.BestFitColumns();*/
#endregion
string sqlc = string.Format(@"select * from yhj_womdaa where 1=2");
tbWOMDAA = _BLLInstance.GETDAT(sqlc);
foreach (DataRow row in selRow)
{
string workorder = row["任务单号"].ToString();
// 生成新的工单号
int count = workorderCount[workorder];
DataRow drNew = tbWOMDAA.NewRow();
drNew["pc_user"] = Loginer.CurrentUser.Account;// 创建者
drNew["pc_time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm");// 创建时间
drNew["daa001"] = workorder+"-"+ count;
drNew["item_id"] = row["物料id"].ToString();
drNew["daa014"] = row["投料单号"].ToString();
drNew["sccj"] = row["车间"].ToString();
tbWOMDAA.Rows.Add(drNew);
}
this.gridControl2.DataSource = tbWOMDAA;
}
private string GetMaxBillNo(string erp_wo)
{
string sql = string.Format(@"SELECT ISNULL(max(convert(int,substring(DAA001,charindex('-',DAA001)+1,len(DAA001)-charindex('-',DAA001)))),0) A FROM WOMDAA
WHERE DAA043='{0}' ", erp_wo);
DataTable Bno = _BLLInstance.GETDAT(sql);
return Bno.Rows[0]["A"].ToString();
}
//查询
private void DoSeleteData(IButtonInfo sender)
{
if (string.IsNullOrEmpty(searchLookUpEdit1.Text))
{
MessageBox.Show("请选择车间");
return;
}
frmWaitingEx.ShowMe(this);
string sql = string.Format(@"select 'N' SelL,c.caa001 任务单号,c.item_id 物料id,c.gd_num 任务数量,isnull(c.YP_num,0)已排数量,c.yj_kgtime 预计开工时间,c.yj_wgtime 预计完工时间,c.ppbom 投料单号,c.cj 车间,b.item_name 物料编号
,b.item_name 物料名称,b.item_no 物料编码
from yhj_womcaa c left join yhj_wlbom b on cast(c.item_id as float)=cast(b.item_id as float)
where c.gd_num<>isnull(c.YP_num,0) and cj='{0}'", searchLookUpEdit1.Text);
tb = _BLLInstance.GETDAT(sql);
tb.Columns.Add("Sel", Type.GetType("System.Boolean"));
/* string sqlWOMDAA = string.Format(@"SELECT A.* FROM WOMDAA A WHERE 1=2 ");
tbWOMDAA = _BLLInstance.GETDAT(sqlWOMDAA);*/
/* string sqlWOMGCA = string.Format(@"SELECT A.* FROM WOMGCA A WHERE 1=2 ");
tbWOMGCA = _BLLInstance.GETDAT(sqlWOMGCA);*/
this.gridControl1.DataSource = tb;
//tbWOMDAAA.Clear();
/* string sq1 = string.Format(@"select XT001 线体名称,XT002 所属车间 FROM GS_XT WHERE XT002 = '{0}' ", searchLookUpEdit1.Text);
XT = _BLLInstance.GETDAT(sq1);
//tbWOMDAA = CommonData.GetEmptyTable(Globals.DEF_US_DBName, "WOMDAA"); repositoryItemGridLookUpEdit1
this.repositoryItemGridLookUpEdit1.DataSource = XT;
this.repositoryItemGridLookUpEdit1.ValueMember = "线体名称";
this.repositoryItemGridLookUpEdit1.DisplayMember = "线体名称";//控件返回值
this.repositoryItemCheckEdit1.QueryCheckStateByValue += RepositoryItemCheckEdit1_QueryCheckStateByValue;
*/
frmWaitingEx.HideMe(this);
}
private void frmWOMPlanr_Load(object sender, EventArgs e)
{
InitButtons();
this.gridView2.OptionsView.ShowGroupPanel = false;
this.gridView3.OptionsView.ShowGroupPanel = false;
this.gridView1.OptionsView.ShowAutoFilterRow = true;
//frmGridCustomize.RegisterGrid(gridView1);//注册表格组件,自动添加样式管理、弹出菜单
//frmGridCustomize.RegisterGrid(gridView2);//注册表格组件,自动添加样式管理、弹出菜单
//DevStyle.SetDetailGridViewLayout(this.gridView1);//明细表表格样式设置
//DevStyle.SetDetailGridViewLayout(this.gridView2);//明细表表格样式设置
gridView2.CellValueChanged += GridView2_CellValueChanged;
this.gridControl1.DataSource = tb;
_BLLInstance = new bllyhj_womcaa();
/* string sq2 = string.Format(@"SELECT RY002 人员编号,RY003 人员 FROM GS_RY (NOLOCK)");
RY = _BLLInstance.GETDAT(sq2);*/
//tbWOMDAA = CommonData.GetEmptyTable(Globals.DEF_US_DBName, "WOMDAA"); repositoryItemGridLookUpEdit1
/* this.repositoryItemGridLookUpEdit3.DataSource = RY;
this.repositoryItemGridLookUpEdit3.ValueMember = "人员";
this.repositoryItemGridLookUpEdit3.DisplayMember = "人员";//控件返回值
//默认筛选框
this.repositoryItemGridLookUpEdit3.View.OptionsView.ShowAutoFilterRow = true;
string sq3 = string.Format(@"SELECT GYA001 工艺路线,GYA002 生产车间 FROM GS_GYA (NOLOCK)");
GYLX = _BLLInstance.GETDAT(sq3);
//tbWOMDAA = CommonData.GetEmptyTable(Globals.DEF_US_DBName, "WOMDAA"); repositoryItemGridLookUpEdit1
this.repositoryItemSearchLookUpEdit3.DataSource = GYLX;
this.repositoryItemSearchLookUpEdit3.ValueMember = "工艺路线";
this.repositoryItemSearchLookUpEdit3.DisplayMember = "工艺路线";//控件返回值
//默认筛选框
this.repositoryItemSearchLookUpEdit3.View.OptionsView.ShowAutoFilterRow = true;
string sqlstr = String.Format(@"SELECT DISTINCT A.DAA001 指令单号,A.DAA027 指令数量,(A.DAA027-SUM(ISNULL(C.DAA027,0))) 已排数量,A.DAA020 预计开工时间,A.DAA014 物料编码, A.DAA015 物料名称 ,A.DAA016 物料规格,A.DAA059 销售订单号 FROM WOMDAA A
LEFT JOIN WOMDAA C ON C.DAA010 = A.DAA001
WHERE 1=2
GROUP BY A.DAA001 ,A.DAA027 ,A.DAA020 ,A.DAA014 , A.DAA015 ,A.DAA016,A.DAA059");//WHERE ISNULL(DAA028,0) 0)
{
tbyp.Clear();
}
/* string sq = string.Format(@"SELECT * FROM WOMDAA WHERE left(DAA001,8)='{0}'", gridView1.GetDataRow(gridView1.FocusedRowHandle)["任务单号"].ToString());
tbyp = _BLLInstance.GETDAT(sq);
gridControl3.DataSource = tbyp;*/
if (gridView1.GetDataRow(gridView1.FocusedRowHandle)["SelL"].ToString() == "N")
{
gridView1.GetDataRow(gridView1.FocusedRowHandle)["SelL"] = "Y";
}
else
{
gridView1.GetDataRow(gridView1.FocusedRowHandle)["SelL"] = "N";
}
}
private void gridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e)
{
/* if (e.RowHandle >= 0)
{
// 获取类型字段的值
string type = gridView1.GetRowCellValue(e.RowHandle, "类型").ToString();
// 只有当类型是“计划内”时,我们才继续处理
if (type == "计划内")
{
e.Appearance.BackColor = Color.Gold;
//// 尝试获取后道预计开工时间字段的值
//string startDateString = gridView1.GetRowCellValue(e.RowHandle, "后道预计开工时间").ToString();
//// 转换为DateTime类型
//DateTime startDate;
//if (DateTime.TryParse(startDateString, out startDate))
//{
// // 获取当前日期
// DateTime currentDate = DateTime.Now.Date;
// // 判断后道预计开工时间是否在今天之前
// if (startDate < currentDate)
// {
// // 后道预计开工时间在今天之前
// e.Appearance.BackColor = Color.Gray;
// }
// else
// {
// // 后道预计开工时间在今天之后
// TimeSpan difference = startDate - currentDate;
// // 根据日期差异设置背景色
// if (difference.TotalDays <= 1)
// {
// // 未来一天内
// e.Appearance.BackColor = Color.Red;
// }
// else if (difference.TotalDays <= 3)
// {
// // 未来三天内
// e.Appearance.BackColor = Color.Gold;
// }
// else if (difference.TotalDays <= 7)
// {
// // 未来七天内
// e.Appearance.BackColor = Color.LightGreen;
// }
// else
// {
// // 超过未来七天
// e.Appearance.BackColor = Color.LightBlue;
// }
// }
//}
//else
//{
// // 如果startDateString不是有效的日期时间,可以选择设置一个默认颜色或忽略
// // e.Appearance.BackColor = Color.White; // 或者其他颜色
//}
}
}*/
}
// 更新模据信息
private void repositoryItemSearchLookUpEdit2_EditValueChanged(object sender, EventArgs e)
{
//获取选择的方案
int a = repositoryItemSearchLookUpEdit2.GetIndexByKeyValue(gridView2.EditingValue.ToString());
//遍历,所选工单的方案一致
foreach (DataRow dr in tbWOMDAA.Rows)
{
this.gridView2.SetRowCellValue(gridView2.FocusedRowHandle, gridView2.Columns["DAA068"], tbGCBOM.Rows[a]["模具类型"].ToString());
this.gridView2.SetRowCellValue(gridView2.FocusedRowHandle, gridView2.Columns["DAA067"], tbGCBOM.Rows[a]["生产方案"].ToString());
dr["DAA068"] = tbGCBOM.Rows[a]["模具类型"].ToString();
dr["DAA067"] = tbGCBOM.Rows[a]["生产方案"].ToString();
}
string sq = string.Format(@"select MG005 设备名称,MG001 设备编号 FROM BOMMG WHERE MG002 = '{0}'", tbGCBOM.Rows[a]["模具类型"].ToString());
JT = _BLLInstance.GETDAT(sq);
////tbWOMDAA = CommonData.GetEmptyTable(Globals.DEF_US_DBName, "WOMDAA"); repositoryItemGridLookUpEdit1
this.repositoryItemGridLookUpEdit2.DataSource = JT;
this.repositoryItemGridLookUpEdit2.ValueMember = "设备名称";
this.repositoryItemGridLookUpEdit2.DisplayMember = "设备名称";//控件返回值
//this.repositoryItemCheckEdit1.QueryCheckStateByValue += RepositoryItemCheckEdit1_QueryCheckStateByValue;
}
//private void repositoryItemGridLookUpEdit2_EditValueChanged(object sender, EventArgs e)
//{
// int a = repositoryItemGridLookUpEdit2.GetIndexByKeyValue(gridView2.EditingValue.ToString());
// foreach (DataRow dr in tbWOMDAA.Rows)
// {
// dr["DAA069"] = gridView2.EditingValue.ToString();
// if(gridView2.EditingValue.ToString().Contains("1"))
// {
// dr["DAA042"] = "高冲1号机";
// }
// if (gridView2.EditingValue.ToString().Contains("2"))
// {
// dr["DAA042"] = "高冲2号机";
// }
// if (gridView2.EditingValue.ToString().Contains("3"))
// {
// dr["DAA042"] = "高冲3号机";
// }
// if (gridView2.EditingValue.ToString().Contains("4"))
// {
// dr["DAA042"] = "高冲4号机";
// }
// if (gridView2.EditingValue.ToString().Contains("5"))
// {
// dr["DAA042"] = "高冲5号机";
// }
// if (gridView2.EditingValue.ToString().Contains("6"))
// {
// dr["DAA042"] = "高冲6号机";
// }
// if (gridView2.EditingValue.ToString().Contains("7"))
// {
// dr["DAA042"] = "高冲7号机";
// }
// if (gridView2.EditingValue.ToString().Contains("8"))
// {
// dr["DAA042"] = "高冲8号机";
// }
// if (gridView2.EditingValue.ToString().Contains("9"))
// {
// dr["DAA042"] = "高冲9号机";
// }
// }
//}
// 添加CellValueChanged事件的处理方法
// CellValueChanged事件处理方法
private void GridView2_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
// 获取当前改变的单元格所在的行和列信息
int rowHandle = e.RowHandle;
int columnIndex = e.Column.VisibleIndex;
// 遍历所有行
if (e.Column.ToString() == "开工日期")
{
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["DAA018"] = gridView2.EditingValue.ToString();
dr["DAA019"] = gridView2.EditingValue.ToString();
}
return;
}
if (e.Column.ToString() == "完工日期")
{
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["DAA019"] = gridView2.EditingValue.ToString();
}
return;
}
if (e.Column.ToString() == "人员")
{
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["DAA040"] = gridView2.EditingValue.ToString();
}
return;
}
if (e.Column.ToString() == "线别")
{
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["DAA042"] = gridView2.EditingValue.ToString();
}
return;
}
if (e.Column.ToString() == "工艺路线")
{
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["GYLX"] = gridView2.EditingValue.ToString();
}
return;
}
if (e.Column.ToString() == "是否急料")
{
foreach (DataRow dr in tbWOMDAA.Rows)
{
dr["DAA073"] = gridView2.EditingValue.ToString();
}
return;
}
return;
}
}
}