📄 slabinputformview.cpp
字号:
st_stack.release ();
m_slab_list.DeleteAllItems();
CTime temp_time_cole;
temp_time_cole=CTime::GetCurrentTime();
CString Current_time;
Current_time = temp_time_cole.Format("'%Y-%m-%d'"); //CTime->CString
// resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF WHERE INPUT_DATE ="+Current_time+" order by STEEL_TYPE");
resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF order by STEEL_TYPE");
SlabInfo_List_Update(m_slab_list,rs_cast);
theApp.cn.close();
}
void CSlabInputFormView::OnModifySlab()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);//更新桌面上选择的信息项
m_furcode.TrimLeft();
m_furcode.TrimRight();
CString strTime,m_steel_temp,m_status_temp,m_shift_temp,m_name_temp;
strTime = m_date_input.Format("%Y-%m-%d"); //CTime->CString
m_steel_code.GetLBText(m_steel_code.GetCurSel(),m_steel_temp);
m_status.GetLBText(m_status.GetCurSel(),m_status_temp);
m_shift.GetLBText(m_shift.GetCurSel(),m_shift_temp);
m_oper_name.GetLBText(m_oper_name.GetCurSel(),m_name_temp);
CString str[35];
str[0].Format("'%s'",m_furcode);
str[1].Format("%d",m_count);
str[2].Format("'%s'",m_steel_temp);
str[3].Format("'%s'",m_status_temp);
str[4].Format("'%s'",m_shift_temp);
str[5].Format("'%s'",strTime);
str[6].Format("'%s'",m_name_temp);
str[7].Format("%d",m_slab_h);
str[8].Format("%d",m_slab_w);
str[9].Format("%d",m_slab_l);
str[10].Format("'%s'",m_stack1);
str[11].Format("%d",m_stackcount1);
str[12].Format("'%s'",m_stack2);
str[13].Format("%d",m_stackcount2);
str[14].Format("'%s'",m_stack3);
str[15].Format("%d",m_stackcount3);
str[16].Format("%f",m_edit_c);
str[17].Format("%f",m_edit_si);
str[18].Format("%f",m_edit_mn);
str[19].Format("%f",m_edit_p);
str[20].Format("%f",m_edit_s);
str[21].Format("%f",m_edit_cu);
str[22].Format("%f",m_edit_nb);
str[23].Format("%f",m_edit_v);
str[24].Format("%f",m_edit_ti);
str[25].Format("%f",m_edit_al);
str[26].Format("%f",m_cs1_value);
str[27].Format("%f",m_cs2_value);
str[28].Format("%f",m_cs3_value);
str[29].Format("%f",m_edit_ni);
theApp.open_mes();
if(m_furcode=="")
{
MessageBox("炉号不能为空!","系统提示",MB_ICONWARNING);
return;
}
if(m_count<=0||m_count>300)
{
MessageBox("请检查入库数量!","系统提示",MB_ICONWARNING);
return;
}
if (m_slab_h>300||m_slab_h<100||m_slab_w>3000||m_slab_w<1000||m_slab_l>3500||m_slab_l<1500)
{
MessageBox("请检查坯料规格!","系统提示",MB_ICONWARNING);
return;
}
statement &st_modify = *(theApp.cn).prepare("update CAST_INF set STEEL_TYPE="+str[2]+",OPERATOR="+str[6]+",MATERIAL_THICK="+str[7]+",MATERIAL_WIDE="+str[8]+",MATERIAL_LENGTH="+str[9]+",SHIFT="+str[4]+",DHCR="+str[3]+",INPUT_DATE="+str[5]+",C="+str[16]+",SI="+str[17]+",MN="+str[18]+",P="+str[19]+",S="+str[20]+",CU="+str[21]+",NB="+str[22]+",V="+str[23]+",TI="+str[24]+",AL="+str[25]+",CS1_VALUE="+str[26]+",CS2_VALUE="+str[27]+",CS3_VALUE="+str[28]+" ,NI="+str[29]+" where CAST_ID= "+str[0]);
st_modify.execute ();
st_modify.release ();
statement &st = *(theApp.cn).prepare ("begin CAST_CHANGE_AMOUNT (:ca_id, :slab_amount); end;");
st.bind(":ca_id", DT_TEXT) = m_furcode;
st.bind(":slab_amount", DT_NUMBER) = (long)m_count;
st.execute ();
st.release ();
m_slab_list.DeleteAllItems();
resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF WHERE CAST_ID ="+str[0]+" order by STEEL_TYPE");
SlabInfo_List_Update(m_slab_list,rs_cast);
theApp.cn.close();
}
void CSlabInputFormView::OnDblclkListSlabInf(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
inf_row=m_slab_list.GetSelectionMark();
int i=0;
if (inf_row!=-1)
{
m_furcode = m_slab_list.GetItemText(inf_row,i++);
m_count = atoi(m_slab_list.GetItemText(inf_row,i++));
Scheduled_amount = atoi(m_slab_list.GetItemText(inf_row,i++));
Scheduled_left = atoi(m_slab_list.GetItemText(inf_row,i++));
combo_status = m_slab_list.GetItemText(inf_row,i++);
combo_steel = m_slab_list.GetItemText(inf_row,i++);
m_slab_h = atoi(m_slab_list.GetItemText(inf_row,i++));
m_slab_w = atoi(m_slab_list.GetItemText(inf_row,i++));
m_slab_l = atoi(m_slab_list.GetItemText(inf_row,i++));
combo_shift = m_slab_list.GetItemText(inf_row,i++);
combo_oper_name = m_slab_list.GetItemText(inf_row,i++);
time_str = m_slab_list.GetItemText(inf_row,i++);
m_edit_c = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_si = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_mn = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_p = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_s = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_nb = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_v = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_ti = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_al = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_cu = atof(m_slab_list.GetItemText(inf_row,i++));
m_edit_ni = atof(m_slab_list.GetItemText(inf_row,i++));
m_cs1 = m_slab_list.GetItemText(inf_row,i++);
m_cs1_value = atof(m_slab_list.GetItemText(inf_row,i++));
m_cs2 = m_slab_list.GetItemText(inf_row,i++);
m_cs2_value = atof(m_slab_list.GetItemText(inf_row,i++));
m_cs3 = m_slab_list.GetItemText(inf_row,i++);
m_cs3_value = atof(m_slab_list.GetItemText(inf_row,i++));
int n;
for(i=0;i<steel_code_count;i++)//初始化钢种
{
n=m_steel_code.SetCurSel(i);
m_steel_code.GetLBText(n,judg_str);
if(judg_str==combo_steel)
{ m_steel_code.SetCurSel(n);
break;
}
}
for(i=0;i<3;i++)//初始化班次
{
n=m_shift.SetCurSel(i);
m_shift.GetLBText(n,judg_str);
if(judg_str==combo_shift)
{ m_shift.SetCurSel(n);
break;
}
}
for(i=0;i<3;i++)//初始化操作工
{
n=m_oper_name.SetCurSel(i);
m_oper_name.GetLBText(n,judg_str);
if(judg_str==combo_oper_name)
{ m_oper_name.SetCurSel(n);
break;
}
}
for(i=0;i<3;i++)//初始化板坯状态,是否热装
{
n=m_status.SetCurSel(i);
m_status.GetLBText(n,judg_str);
if(judg_str==combo_status)
{
m_status.SetCurSel(n);
break;
}
}
}
CWnd* pWnd ;
pWnd = GetDlgItem(IDC_EDIT_FurCode);
pWnd->EnableWindow(false);
m_date_input=CString_To_CTime(time_str);
UpdateData(false);
*pResult = 0;
}
void CSlabInputFormView::OnDeleteSlab()
{
// TODO: Add your control notification handler code here
UpdateData(true);
int select_row;
select_row=m_slab_list.GetSelectionMark();
CString dele_furcode;
dele_furcode = m_slab_list.GetItemText(select_row,0);
theApp.open_mes(); //调用过程,删除板坯信息,转入历史记录表
statement &st_dele = *(theApp.cn).prepare ("begin DELE_SLAB_TO_RECORD (:v_fur); end;");
st_dele.bind(":v_fur", DT_TEXT) = dele_furcode;
st_dele.execute ();
st_dele.release ();
theApp.cn.close();
m_slab_list.DeleteAllItems();
UpdateData(TRUE);
int condiction_no = m_condic_select.GetCurSel();
CString select_shift,select_date,si;
switch(condiction_no)
{
case 1:
{
m_shift_search.GetLBText(m_shift_search.GetCurSel(),si);
select_shift.Format("'%s'",si);
select_date = m_date_search.Format("'%Y-%m-%d'"); //CTime->CString
theApp.open_mes();
resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF where SHIFT="+select_shift+" and INPUT_DATE="+select_date+" order by STEEL_TYPE desc");
SlabInfo_List_Update(m_slab_list,rs_cast);
theApp.cn.close();
break;
}
default:
{
theApp.open_mes();
resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF order by STEEL_TYPE desc");
SlabInfo_List_Update(m_slab_list,rs_cast);
theApp.cn.close();
break;
}
}
}
void CSlabInputFormView::OnInPutSearch()
{
// TODO: Add your control notification handler code here
m_slab_list.DeleteAllItems();
UpdateData(TRUE);
int condiction_no = m_condic_select.GetCurSel();
CString select_shift,select_date,si;
switch(condiction_no)
{
case 1:
{
m_shift_search.GetLBText(m_shift_search.GetCurSel(),si);
select_shift.Format("'%s'",si);
select_date = m_date_search.Format("'%Y-%m-%d'"); //CTime->CString
theApp.open_mes();
resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF where SHIFT="+select_shift+" and INPUT_DATE="+select_date+" order by STEEL_TYPE desc");
SlabInfo_List_Update(m_slab_list,rs_cast);
theApp.cn.close();
break;
}
default:
{
theApp.open_mes();
resultset &rs_cast = *(theApp.cn).select ("select * from CAST_INF order by STEEL_TYPE desc");
SlabInfo_List_Update(m_slab_list,rs_cast);
theApp.cn.close();
break;
}
}
}
BOOL CSlabInputFormView::Data_Check()
{
if (m_edit_c<CONTENT_MIN||m_edit_c>CONTENT_MAX)
{
MessageBox("C含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_si<CONTENT_MIN||m_edit_si>CONTENT_MAX)
{
MessageBox("Si含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_mn<CONTENT_MIN||m_edit_mn>CONTENT_MAX)
{
MessageBox("Mn含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_p<CONTENT_MIN||m_edit_p>CONTENT_MAX)
{
MessageBox("P含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_s<CONTENT_MIN||m_edit_s>CONTENT_MAX)
{
MessageBox("S含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_nb<CONTENT_MIN||m_edit_nb>CONTENT_MAX)
{
MessageBox("Nb含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_v<CONTENT_MIN||m_edit_v>CONTENT_MAX)
{
MessageBox("V含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_al<CONTENT_MIN||m_edit_al>CONTENT_MAX)
{
MessageBox("Al含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_ti<CONTENT_MIN||m_edit_ti>CONTENT_MAX)
{
MessageBox("Ti含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_cu<CONTENT_MIN||m_edit_cu>CONTENT_MAX)
{
MessageBox("Cu含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_edit_ni<CONTENT_MIN||m_edit_ni>CONTENT_MAX)
{
MessageBox("Ni含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_cs1_value<CONTENT_MIN||m_cs1_value>CONTENT_MAX)
{
MessageBox("其他成分1含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_cs1_value<CONTENT_MIN||m_cs1_value>CONTENT_MAX)
{
MessageBox("其他成分2含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
if (m_cs1_value<CONTENT_MIN||m_cs1_value>CONTENT_MAX)
{
MessageBox("其他成分3含量输入错误!","系统提示",MB_ICONWARNING);
return false;
}
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -