📄 dutyroser1.cpp
字号:
//****** begin **************************//
//changed by dongzhaoliang in 2006/5
//****** end **************************//
#include "stdafx.h"
#include "DutyRoser1.h"
using namespace FAP;
void DutyRoser1::setSimple(DateTime dtpTmp,int intLang){
String *strSQL;
DataSet *dSetDutyRoster;
DataTable *tblTmp;
String* saLang[] = {S"C", S"J", S"E"};
/*strSQL = S"select distinct ";
strSQL = String::Concat(strSQL,S" a.TEAM ,a.Name_");
strSQL = String::Concat(strSQL,saLang[intLang],S" as name_T,");
strSQL = String::Concat(strSQL,"a.process_no, b.name_",saLang[intLang],S" as name_P");
strSQL = String::Concat(strSQL,S" from team_mst a, cost_mst b,labor_cost c");
strSQL = String::Concat(strSQL,S" where a.team = c.team and a.process_no = c.process_no and c.process_no = b.process_no and ");
strSQL = String::Concat(strSQL,S" (c.work_ymd between ( to_date('", dtpTmp.ToString(S"yyyy-MM"),S"-01','yyyy-MM-dd')) and (last_day(to_date('", dtpTmp.ToString(S"yyyy-MM"),S"','yyyy-MM'))))");*/
strSQL = S"";
strSQL = String::Concat(strSQL,S"select distinct team_mst.TEAM, " );
strSQL = String::Concat(strSQL,S" team_mst.Name_",saLang[intLang],S" as name_T, " );
strSQL = String::Concat(strSQL,S" team_mst.process_no, " );
strSQL = String::Concat(strSQL,S" cost_mst.name_",saLang[intLang],S" as name_P " );
strSQL = String::Concat(strSQL,S" from team_mst, cost_mst, labor_cost " );
strSQL = String::Concat(strSQL,S" where team_mst.team = labor_cost.team " );
strSQL = String::Concat(strSQL,S" and team_mst.process_no = labor_cost.process_no " );
strSQL = String::Concat(strSQL,S" and labor_cost.process_no = cost_mst.process_no " );
strSQL = String::Concat(strSQL,S" and (labor_cost.work_ymd between ( to_date('", dtpTmp.ToString(S"yyyy-MM"),S"-01','yyyy-MM-dd')) and ");
strSQL = String::Concat(strSQL,S" (last_day(to_date('", dtpTmp.ToString(S"yyyy-MM"),S"','yyyy-MM'))))" );
dSetDutyRoster = dbDutyRoster->dSetSQL_Select(strSQL,S"DutyRoser",0);
//DBGridSch->SetDataBinding(dSetCalendar, S"ProductCalendar");
tblTmp = dSetDutyRoster->Tables->Item[S"DutyRoser"];
DBGridSim->DataSource = tblTmp;
}
void FAP::DutyRoser1::InitSimpleGird(int intLang){
DataGridTextBoxColumn *oTeamNo;
DataGridTextBoxColumn *oTeamName;
DataGridTextBoxColumn *oProcessNo;
DataGridTextBoxColumn *oProcessName;
DataGridTableStyle *oTableStyle = new DataGridTableStyle();
oTableStyle->MappingName = S"DutyRoser";
//oTeamNo
oTeamNo = new DataGridTextBoxColumn();
oTeamNo->MappingName = S"TEAM";
oTeamNo->HeaderText = infDutyRoster->saG_Team[intLang];
oTeamNo->Alignment = HorizontalAlignment::Center;
oTeamNo->Width = 80;
oTeamNo->ReadOnly = true;
oTeamNo->NullText = S"";
//oTeamName
oTeamName = new DataGridTextBoxColumn();
oTeamName->MappingName = S"name_T";
oTeamName->HeaderText = infDutyRoster->saG_TeamName[intLang];
oTeamName->Alignment = HorizontalAlignment::Center;
oTeamName->Width = 130;
oTeamName->ReadOnly = true;
oTeamName->NullText =S"";
//oProcessNo
oProcessNo = new DataGridTextBoxColumn();
oProcessNo->MappingName = S"process_no";
oProcessNo->HeaderText = infDutyRoster->saG_StrArrayWorkingProcedure [intLang];
oProcessNo->Alignment = HorizontalAlignment::Center;
oProcessNo->Width = 120;
oProcessNo->ReadOnly = true;
oProcessNo->NullText = S"";
//oProcessName
oProcessName = new DataGridTextBoxColumn();
oProcessName->MappingName = S"name_P";
oProcessName->HeaderText = infDutyRoster->saG_ProcessName [intLang];
oProcessName->Alignment = HorizontalAlignment::Center;
oProcessName->Width = 250;
oProcessName->ReadOnly = false;
oProcessName->NullText = S"";
oTableStyle->GridColumnStyles->Add(oTeamNo);
oTableStyle->GridColumnStyles->Add(oTeamName);
oTableStyle->GridColumnStyles->Add(oProcessNo);
oTableStyle->GridColumnStyles->Add(oProcessName);
DBGridSim->TableStyles->Add(oTableStyle);
}
void FAP::DutyRoser1::InitDetailGird(int intLang){
DataGridTextBoxColumn *oDate;
DataGridTextBoxColumn *oSum;
DataGridTableStyle *oTableStyle = new DataGridTableStyle();
oTableStyle->MappingName = S"DutyDetail";
//oDate
oDate = new DataGridTextBoxColumn();
oDate->MappingName = S"Date1";
oDate->HeaderText = infDutyRoster->saPROYMD[intLang];
oDate->Alignment = HorizontalAlignment::Center;
oDate->Width = 180;
oDate->ReadOnly = true;
oDate->NullText = S"";
//oSum
oSum = new DataGridTextBoxColumn();
oSum->MappingName = S"Cost";
oSum->HeaderText = infDutyRoster->saG_LaborCost [intLang];
oSum->Alignment = HorizontalAlignment::Center;
oSum->Width = 130;
oSum->ReadOnly = true;
oSum->NullText =S"";
oTableStyle->GridColumnStyles->Add(oDate);
oTableStyle->GridColumnStyles->Add(oSum);
dbGridDtl->TableStyles->Add(oTableStyle);
}
void DutyRoser1::setDetail(DateTime dteTmp,String *strProTemp,String *strTeam)
{
DataSet *dSetDetail;
DataTable *tblTmp;
String *strSQL;
//strSQL = S" select ";
//strSQL = String::Concat(strSQL,S" sum(a.cost * b.total_number) as Cost,b.work_ymd as Date1 from labor_cost b, labor_cost_rank a where a.rank = b.rank ");
//strSQL = String::Concat(strSQL,S" and (b.work_ymd between ( to_date('", dteTmp.ToString(S"yyyy-MM"),S"-01','yyyy-MM-dd')) and (last_day(to_date('", dteTmp.ToString(S"yyyy-MM"),S"','yyyy-MM'))))");
//strSQL = String::Concat(strSQL,S" and b.process_no = '",strProTemp,S"'");
//strSQL = String::Concat(strSQL,S" and b.team = ",strTeam);
//strSQL = String::Concat(strSQL,S" group by b.work_ymd");
strSQL = S"";
strSQL = String::Concat(strSQL,S"select sum(labor_cost_rank.cost * labor_cost.total_number) as Cost, " );
strSQL = String::Concat(strSQL,S" labor_cost.work_ymd as Date1 " );
strSQL = String::Concat(strSQL,S" from labor_cost, labor_cost_rank " );
strSQL = String::Concat(strSQL,S" where labor_cost_rank.rank = labor_cost.rank " );
strSQL = String::Concat(strSQL,S" and (labor_cost.work_ymd between ( to_date('", dteTmp.ToString(S"yyyy-MM"),S"-01','yyyy-MM-dd')) and ");
strSQL = String::Concat(strSQL,S" (last_day(to_date('", dteTmp.ToString(S"yyyy-MM"),S"','yyyy-MM')))) " );
strSQL = String::Concat(strSQL,S" and labor_cost.process_no = '",strProTemp,S"' " );
strSQL = String::Concat(strSQL,S" and labor_cost.team = ",strTeam );
strSQL = String::Concat(strSQL,S" group by labor_cost.work_ymd " );
dSetDetail = dbDutyRoster->dSetSQL_Select(strSQL,S"DutyDetail",0);
tblTmp = dSetDetail->Tables->Item[S"DutyDetail"];
dbGridDtl->DataSource = tblTmp;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -