📄 stockdeliverlist.cpp
字号:
#include "StdAfx.h"
#include "StockDeliverList.h"
using namespace FAP;
void StockDeliverList::InitializeGridValueStockDeliverList(void)
{
String * sMySQL;
String * sMySQLSearch;
sMySQLSearch=S"";
sMySQLSearch=S"";
//已出
if ((cFlag->CompareTo(S"notnull"))==0){
sMySQL=S" deliver_data.STOCK_YMD IS NOT NULL and ";
}
//未出
if ((cFlag->CompareTo(S"isnull"))==0){
sMySQL=S" deliver_data.STOCK_YMD IS NULL and ";
}
//全部
if ((cFlag->CompareTo(S"all"))==0){
sMySQL=S"";
}
//搜索
if ((btnFlag->CompareTo(S"btnsearch"))==0){
String *vstrDate1;
vstrDate1=String::Format("{0:yyyy-MM-dd}",__box(dateTimePicker1->Value));
String *vstrDate2;
vstrDate2=String::Format("{0:yyyy-MM-dd}",__box(dateTimePicker2->Value));
sMySQLSearch=String::Concat(sMySQLSearch,S" deliver_data.DELIVER_YMD>=to_date('");
sMySQLSearch=String::Concat(sMySQLSearch,vstrDate1);
sMySQLSearch=String::Concat(sMySQLSearch,S"','yyyy-MM-dd') AND ");
sMySQLSearch=String::Concat(sMySQLSearch,S" deliver_data.DELIVER_YMD<=to_date('");
sMySQLSearch=String::Concat(sMySQLSearch,vstrDate2);
sMySQLSearch=String::Concat(sMySQLSearch,S"','yyyy-MM-dd') AND ");
}
String* saLang[] = {S"c", S"j", S"e"};
String* sSQL = S"";
/// <summary>
/// insideRank==0 means worker enter into system
/// </summary>
//InitGridStockDeliverList();
if (insideRank==0)
{
sSQL = String::Concat(sSQL,S" select " );
sSQL = String::Concat(sSQL,S" to_char(deliver_data.deliver_ymd,'yy-mm-dd hh24:mi') as deliver_ymd, " );
sSQL = String::Concat(sSQL,S" to_char(deliver_data.stock_ymd,'yy-mm-dd hh24:mi') as stock_ymd, " );
sSQL = String::Concat(sSQL,S" parts_mst.parts_name_", saLang[iLanguage], S" as parts_name, " );
sSQL = String::Concat(sSQL,S" parts_mst.product_code as product_code, ");
sSQL = String::Concat(sSQL,S" (case deliver_data.lot when '-1000000' then '-1' else deliver_data.lot end) as lot, " );
sSQL = String::Concat(sSQL,S" (case parts_mst.unit when 'PC' then floor(deliver_data.deliver_qty) else deliver_data.deliver_qty end) as deliver_qty, " );
sSQL = String::Concat(sSQL,S" cost_mstForOrigin.Name_", saLang[iLanguage], S" as Origin_Name, " );
sSQL = String::Concat(sSQL,S" cost_mstForDestination.Name_", saLang[iLanguage], S" as Destination_Name, " );
//<hidden columns> which are prepared for future's filter operation
sSQL = String::Concat(sSQL,S" deliver_data.origin_code, " );
sSQL = String::Concat(sSQL,S" deliver_data.destination_code, " );
sSQL = String::Concat(sSQL,S" deliver_data.shift, " );
sSQL = String::Concat(sSQL,S" cost_mstForOrigin.line_code as Origin_LineCode, " );
sSQL = String::Concat(sSQL,S" cost_mstForDestination.line_code as Destination_LineCode " );
//</hidden columns>
sSQL = String::Concat(sSQL,S" from " );
sSQL = String::Concat(sSQL,S" parts_mst, " );
sSQL = String::Concat(sSQL,S" cost_mst cost_mstForOrigin, " );
sSQL = String::Concat(sSQL,S" cost_mst cost_mstForDestination, " );
sSQL = String::Concat(sSQL,S" deliver_data " );
sSQL = String::Concat(sSQL,S" where " );
sSQL = String::Concat(sSQL,S" deliver_data.product_code=parts_mst.product_code(+) and " );
sSQL = String::Concat(sSQL,S" deliver_data.origin_code=cost_mstForOrigin.Process_No(+) and " );
sSQL = String::Concat(sSQL,S" deliver_data.destination_code=cost_mstForDestination.Process_No(+) and " );
sSQL = String::Concat(sSQL,S" deliver_data.factory_code='",sFactory ,S"' and deliver_data.deliver_qty>0 and " );
sSQL = String::Concat(sSQL,sMySQL);
sSQL = String::Concat(sSQL,sMySQLSearch);
sSQL = String::Concat(sSQL,S" (deliver_data.origin_code='",sProcess,S"' or deliver_data.destination_code='",sProcess,S"')");
}
else
{
sSQL = String::Concat(sSQL,S" select " );
sSQL = String::Concat(sSQL,S" to_char(deliver_data.deliver_ymd,'yy-mm-dd hh24:mi') as deliver_ymd, " );
sSQL = String::Concat(sSQL,S" to_char(deliver_data.stock_ymd,'yy-mm-dd hh24:mi') as stock_ymd, " );
sSQL = String::Concat(sSQL,S" parts_mst.parts_name_", saLang[iLanguage], S" as parts_name, " );
sSQL = String::Concat(sSQL,S" parts_mst.product_code as product_code, ");
sSQL = String::Concat(sSQL,S" case deliver_data.lot when '-1000000' then '-1' else deliver_data.lot end as lot, " );
sSQL = String::Concat(sSQL,S" (case parts_mst.unit when 'PC' then floor(deliver_data.deliver_qty) else deliver_data.deliver_qty end) as deliver_qty, " );
sSQL = String::Concat(sSQL,S" cost_mstForOrigin.Name_", saLang[iLanguage], S" as Origin_Name, " );
sSQL = String::Concat(sSQL,S" cost_mstForDestination.Name_", saLang[iLanguage], S" as Destination_Name, " );
//<hidden columns> which are prepared for future's filter operation
sSQL = String::Concat(sSQL,S" deliver_data.origin_code, " );
sSQL = String::Concat(sSQL,S" deliver_data.destination_code, " );
sSQL = String::Concat(sSQL,S" deliver_data.shift, " );
sSQL = String::Concat(sSQL,S" cost_mstForOrigin.line_code as Origin_LineCode, " );
sSQL = String::Concat(sSQL,S" cost_mstForDestination.line_code as Destination_LineCode " );
//</hidden columns>
sSQL = String::Concat(sSQL,S" from " );
sSQL = String::Concat(sSQL,S" parts_mst, " );
sSQL = String::Concat(sSQL,S" cost_mst cost_mstForOrigin, " );
sSQL = String::Concat(sSQL,S" cost_mst cost_mstForDestination, " );
sSQL = String::Concat(sSQL,S" deliver_data " );
sSQL = String::Concat(sSQL,S" where " );
sSQL = String::Concat(sSQL,S" deliver_data.product_code=parts_mst.product_code(+) and " );
sSQL = String::Concat(sSQL,S" deliver_data.origin_code=cost_mstForOrigin.Process_No(+) and deliver_data.deliver_qty>0 and " );
//
sSQL = String::Concat(sSQL,sMySQL);
sSQL = String::Concat(sSQL,sMySQLSearch);
//
sSQL = String::Concat(sSQL,S" deliver_data.destination_code=cost_mstForDestination.Process_No(+) and " );
sSQL = String::Concat(sSQL,S" deliver_data.factory_code='",sFactory ,S"'" );
}
oDataSet=oDB->dSetSQL_Select(sSQL, "DataTableStockDeliverList", 0);
//check null value,not let null be displayed
//ds.Tables["Customers"].DefaultView.RowFilter ="IsNull(Region, 'SP') = 'SP'";
//oDataSet->Tables->Item[S"DataTableStockDeliverList"]->DefaultView->RowFilter=S"stock_ymd IS NULL";
//oDataSet->Tables->Item[S"DataTableStockDeliverList"]->DefaultView->RowFilter=S"origin_code='MA01'";
//if
oDataView= oDataSet->Tables->Item[S"DataTableStockDeliverList"]->DefaultView;
oDataView->AllowNew = false;
oDataView->AllowEdit= false;
dataGridStockDeliverList->DataSource = oDataSet->Tables->Item[S"DataTableStockDeliverList"]->DefaultView;
//cFlag=S"";
sMySQL=S"";
sMySQLSearch=S"";
}
void StockDeliverList::InitGridStockDeliverList(void)
{
DataGridTextBoxColumn *oDeliverYMD;
DataGridTextBoxColumn *oStockYMD;
DataGridTextBoxColumn *oPartName;
DataGridTextBoxColumn *oLotNumber;
DataGridTextBoxColumn *oQuantity;
DataGridTextBoxColumn *oOriginName;
DataGridTextBoxColumn *oDestinationName;
DataGridTextBoxColumn *oProductCode;
oTableStyle = new DataGridTableStyle();
oTableStyle->MappingName = S"DataTableStockDeliverList";
//oProductCode
oProductCode = new DataGridTextBoxColumn();
oProductCode->MappingName = S"product_code";
oProductCode->HeaderText = String::Concat(S" ",oInf->saG_Code[iLanguage]);
oProductCode->Alignment = HorizontalAlignment::Left;
oProductCode->Width = 90;
oProductCode->NullText =S"";
//oDeliverYMD
oDeliverYMD = new DataGridTextBoxColumn();
oDeliverYMD->MappingName = S"deliver_ymd";
oDeliverYMD->HeaderText = String::Concat(S" ",oInf->saG_StrArrayDeliverYMD[iLanguage]);
oDeliverYMD->Alignment = HorizontalAlignment::Left;
oDeliverYMD->Width = 115;
oDeliverYMD->NullText =S"";
//oStockYMD
oStockYMD = new DataGridTextBoxColumn();
oStockYMD->MappingName = S"stock_ymd";
oStockYMD->HeaderText = String::Concat(S" ",oInf->saG_StrArrayStockYMD[iLanguage]);
oStockYMD->Alignment = HorizontalAlignment::Left;
oStockYMD->Width = 115;
oStockYMD->NullText = S"";
//oPartName
oPartName = new DataGridTextBoxColumn();
oPartName->MappingName = S"parts_name";
String * strSpaces=S"";
if (iLanguage==0) {strSpaces=S" ";}
if (iLanguage==1) {strSpaces=S" ";}
if (iLanguage==2) {strSpaces=S" ";}
oPartName->HeaderText = String::Concat(strSpaces,oInf->saG_StrArrayPartsName[iLanguage]);
oPartName->Alignment = HorizontalAlignment::Left;
oPartName->Width = 150;
oPartName->NullText =S"";
//oLotNumber
oLotNumber = new DataGridTextBoxColumn();
oLotNumber->MappingName = S"lot";
oLotNumber->HeaderText = String::Concat(S" ",oInf->saG_StrArrayLotNum[iLanguage]);
oLotNumber->Alignment = HorizontalAlignment::Left;
oLotNumber->Width = 70;
oLotNumber->NullText =S"";
//oQuantity
oQuantity = new DataGridTextBoxColumn();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -