📄 workunitmanage.cpp
字号:
#include "stdafx.h"
#include "WorkUnitManage.h"
#include "DBBase.h"
using namespace FAP;
using namespace System::Data;
using namespace System::Data::OleDb;
void WorkUnitManage::SetValueDataGrid()
{
String* saLang[] = {S"c", S"j", S"e"};
String *sSQL = S"";
sSQL = String::Concat(sSQL, S"select baseList.process_no, " );
sSQL = String::Concat(sSQL, S" cost_name, " );
sSQL = String::Concat(sSQL, S" rTable.std_man_hour r_std_man_hour, " );
sSQL = String::Concat(sSQL, S" rTable.std_rank r_std_rank, " );
sSQL = String::Concat(sSQL, S" vTable.std_man_hour v_std_man_hour, " );
sSQL = String::Concat(sSQL, S" vTable.std_rank v_std_rank, " );
sSQL = String::Concat(sSQL, S" CARTable.std_man_hour CAR_std_man_hour, " );
sSQL = String::Concat(sSQL, S" CARTable.std_rank CAR_std_rank " );
sSQL = String::Concat(sSQL, S"from (select distinct work_unit.process_no, cost_mst.name_", saLang[iLanguage] ,S" as cost_name" );
sSQL = String::Concat(sSQL, S" from work_unit, cost_mst" );
sSQL = String::Concat(sSQL, S" where work_unit.process_no = cost_mst.process_no) baseList," );
sSQL = String::Concat(sSQL, S" (select work_unit.process_no," );
sSQL = String::Concat(sSQL, S" work_unit.std_man_hour," );
sSQL = String::Concat(sSQL, S" work_unit.std_rank" );
sSQL = String::Concat(sSQL, S" from work_unit" );
sSQL = String::Concat(sSQL, S" where work_unit.std_model = 'R') rTable," );
sSQL = String::Concat(sSQL, S" (select work_unit.process_no," );
sSQL = String::Concat(sSQL, S" work_unit.std_man_hour," );
sSQL = String::Concat(sSQL, S" work_unit.std_rank" );
sSQL = String::Concat(sSQL, S" from work_unit" );
sSQL = String::Concat(sSQL, S" where work_unit.std_model = 'V') vTable," );
sSQL = String::Concat(sSQL, S" (select work_unit.process_no," );
sSQL = String::Concat(sSQL, S" work_unit.std_man_hour," );
sSQL = String::Concat(sSQL, S" work_unit.std_rank" );
sSQL = String::Concat(sSQL, S" from work_unit" );
sSQL = String::Concat(sSQL, S" where work_unit.std_model = 'CAR') CARTable" );
sSQL = String::Concat(sSQL, S" where baseList.process_no = rTable.process_no(+)" );
sSQL = String::Concat(sSQL, S" and baseList.process_no = vTable.process_no(+)" );
sSQL = String::Concat(sSQL, S" and baseList.process_no = CARTable.process_no(+)" );
oDataSet= oDB->dSetSQL_Select(sSQL, S"Table", 0);
oDataTable = oDataSet->Tables->Item["Table"];
oDataView = new DataView(oDataTable);
oDataView->AllowDelete = false;
oDataView->AllowNew = false;
dataGrid1->DataSource=oDataView;
/*dataGrid1->DataSource=oDataTable;*/
}
void WorkUnitManage::InitGridDataGrid()
{
DataGridTextBoxColumn *oProcessNum;
DataGridTextBoxColumn *oProcessName;
DataGridTextBoxColumn *oRStandManHour;
DataGridTextBoxColumn *oRStandRank;
DataGridTextBoxColumn *oVStandManHour;
DataGridTextBoxColumn *oVStandRank;
DataGridTextBoxColumn *oCARStandManHour;
DataGridTextBoxColumn *oCARStandRank;
oTableStyle = new DataGridTableStyle();
oTableStyle->MappingName = S"Table";
oProcessNum = new DataGridTextBoxColumn();
oProcessNum->MappingName =S"process_no";
oProcessNum->HeaderText = oInf->saG_StrArrayProcessNum[iLanguage];
oProcessNum->Alignment = HorizontalAlignment::Center;
oProcessNum->Width =70;
oProcessNum->NullText =S"";
oProcessNum->ReadOnly =true;
oProcessName = new DataGridTextBoxColumn();
oProcessName->MappingName =S"cost_name";
oProcessName->HeaderText = oInf->saG_StrArrayProcessName[iLanguage];
oProcessName->Alignment = HorizontalAlignment::Center;
oProcessName->Width =170;
oProcessName->NullText =S"";
oProcessName->ReadOnly =true;
oRStandManHour = new DataGridTextBoxColumn();
oRStandManHour->MappingName =S"r_std_man_hour";
oRStandManHour->HeaderText = oInf->saG_StrArrayRStandManHour[iLanguage];
oRStandManHour->Alignment = HorizontalAlignment::Center;
oRStandManHour->Width =100;
oRStandManHour->NullText =S"";
oRStandRank = new DataGridTextBoxColumn();
oRStandRank->MappingName =S"r_std_rank";
oRStandRank->HeaderText = oInf->saG_StrArrayRStandRank[iLanguage];
oRStandRank->Alignment = HorizontalAlignment::Center;
oRStandRank->Width =120;
oRStandRank->NullText =S"";
oVStandManHour = new DataGridTextBoxColumn();
oVStandManHour->MappingName =S"v_std_man_hour";
oVStandManHour->HeaderText = oInf->saG_StrArrayVStandManHour[iLanguage];
oVStandManHour->Alignment = HorizontalAlignment::Center;
oVStandManHour->Width =100;
oVStandManHour->NullText =S"";
oVStandRank = new DataGridTextBoxColumn();
oVStandRank->MappingName =S"v_std_rank";
oVStandRank->HeaderText = oInf->saG_StrArrayVStandRank[iLanguage];
oVStandRank->Alignment = HorizontalAlignment::Center;
oVStandRank->Width =120;
oVStandRank->NullText =S"";
oCARStandManHour = new DataGridTextBoxColumn();
oCARStandManHour->MappingName =S"CAR_std_man_hour";
oCARStandManHour->HeaderText = oInf->saG_StrArrayCARStandManHour[iLanguage];
oCARStandManHour->Alignment = HorizontalAlignment::Center;
oCARStandManHour->Width =100;
oCARStandManHour->NullText =S"";
oCARStandRank = new DataGridTextBoxColumn();
oCARStandRank->MappingName =S"CAR_std_rank";
oCARStandRank->HeaderText = oInf->saG_StrArrayCARStandRank[iLanguage];
oCARStandRank->Alignment = HorizontalAlignment::Center;
oCARStandRank->Width =120;
oCARStandRank->NullText =S"";
oTableStyle->GridColumnStyles->Add(oProcessNum);
oTableStyle->GridColumnStyles->Add(oProcessName);
oTableStyle->GridColumnStyles->Add(oRStandManHour);
oTableStyle->GridColumnStyles->Add(oRStandRank);
oTableStyle->GridColumnStyles->Add(oVStandManHour);
oTableStyle->GridColumnStyles->Add(oVStandRank);
oTableStyle->GridColumnStyles->Add(oCARStandManHour);
oTableStyle->GridColumnStyles->Add(oCARStandRank);
dataGrid1->TableStyles->Add(oTableStyle);
}
bool WorkUnitManage::UpdateGrid()
{
String * strSQL;
Single sngRStandManHour;
Single sngVStandManHour;
Single sngCARStandManHour;
String *strProcessNum;
String *strRStandRank;
String *strVStandRank;
String *strCARStandRank;
DataGridCell dCellProcessNum;
DataGridCell dCellRStandManHour ;
DataGridCell dCellRStandRank ;
DataGridCell dCellVStandManHour ;
DataGridCell dCellVStandRank ;
DataGridCell dCellCARStandManHour ;
DataGridCell dCellCARStandRank ;
dCellProcessNum.ColumnNumber = 0;//point to first column
dCellRStandManHour.ColumnNumber = 2;//point to third column
dCellRStandRank.ColumnNumber=3;
dCellVStandManHour.ColumnNumber = 4;
dCellVStandRank.ColumnNumber=5;
dCellCARStandManHour.ColumnNumber = 6;
dCellCARStandRank.ColumnNumber=7;
for (int i = 0; i< __try_cast<DataView *>(dataGrid1->DataSource)->Count;i++) {
dCellProcessNum.RowNumber = i;
dCellRStandManHour.RowNumber = i;
dCellRStandRank.RowNumber=i;
dCellVStandManHour.RowNumber = i;
dCellVStandRank.RowNumber=i;
dCellCARStandManHour.RowNumber = i;
dCellCARStandRank.RowNumber=i;
sngRStandManHour=NULL;
sngVStandManHour=NULL;
sngCARStandManHour=NULL;
try{
if(!(dataGrid1->Item[dCellRStandManHour]->ToString()->Equals(S"")))
sngRStandManHour = Single::Parse(dataGrid1->Item[dCellRStandManHour]->ToString());
if(!(dataGrid1->Item[dCellVStandManHour]->ToString()->Equals(S"")))
sngVStandManHour = Single::Parse(dataGrid1->Item[dCellVStandManHour]->ToString());
if(!(dataGrid1->Item[dCellCARStandManHour]->ToString()->Equals(S"")))
sngCARStandManHour = Single::Parse(dataGrid1->Item[dCellCARStandManHour]->ToString());
}
catch (...) {
MessageBox::Show(S"请输入数字!");
return false;
}
strProcessNum = dataGrid1->Item[dCellProcessNum]->ToString();
strRStandRank = dataGrid1->Item[dCellRStandRank]->ToString();
strSQL =S"";
strSQL = String::Concat(strSQL,S"update work_unit " );
strSQL = String::Concat(strSQL,S" set " );
if(sngRStandManHour!=NULL)
strSQL = String::Concat(strSQL,S" STD_MAN_HOUR =",sngRStandManHour.ToString(),S",");
strSQL = String::Concat(strSQL,S" std_rank='",strRStandRank,S"'" );
strSQL = String::Concat(strSQL,S" where PROCESS_NO = '",strProcessNum,S"'" );
strSQL = String::Concat(strSQL,S" and STD_MODEL='R'" );
// strSQL = S"update work_unit set STD_MAN_HOUR = ";
//strSQL = String::Concat(strSQL,sngRStandManHour.ToString());
//strSQL = String::Concat(strSQL,S", std_rank=");
// strSQL = String::Concat(strSQL,S"'",strRStandRank,S"'");
//strSQL = String::Concat(strSQL,S" where PROCESS_NO = '",strProcessNum,S"' and STD_MODEL='R'");
//MessageBox::Show(strSQL);
if (!oDB->blnSQL_Execute(strSQL)){
//MessageBox::Show(S"更新失败!");
return false;
}
strVStandRank = dataGrid1->Item[dCellVStandRank]->ToString();
strSQL =S"";
strSQL = String::Concat(strSQL,S"update work_unit " );
strSQL = String::Concat(strSQL,S" set " );
if(sngVStandManHour!=NULL)
strSQL = String::Concat(strSQL,S" STD_MAN_HOUR =",sngVStandManHour.ToString(),S",");
strSQL = String::Concat(strSQL,S" std_rank='",strVStandRank,S"'" );
strSQL = String::Concat(strSQL,S" where PROCESS_NO = '",strProcessNum,S"'" );
strSQL = String::Concat(strSQL,S" and STD_MODEL='V'" );
//MessageBox::Show(strSQL);
if (!oDB->blnSQL_Execute(strSQL)){
//MessageBox::Show(S"更新失败!");
return false;
}
strCARStandRank = dataGrid1->Item[dCellCARStandRank]->ToString();
strSQL =S"";
strSQL = String::Concat(strSQL,S"update work_unit " );
strSQL = String::Concat(strSQL,S" set " );
if(sngCARStandManHour!=NULL)
strSQL = String::Concat(strSQL,S" STD_MAN_HOUR =",sngCARStandManHour.ToString(),S",");
strSQL = String::Concat(strSQL,S" std_rank='",strCARStandRank,S"'" );
strSQL = String::Concat(strSQL,S" where PROCESS_NO = '",strProcessNum,S"'" );
strSQL = String::Concat(strSQL,S" and STD_MODEL='CAR'" );
//MessageBox::Show(strSQL);
if (!oDB->blnSQL_Execute(strSQL)){
//MessageBox::Show(S"更新失败!");
return false;
}
}
return true;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -