📄 dexamine.cpp
字号:
// DExamine.cpp : implementation file
//
#include "stdafx.h"
#include "MyProject.h"
#include "DExamine.h"
#include "ExternDllHeader.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDExamine dialog
CDExamine::CDExamine(CWnd* pParent /*=NULL*/)
: CDialog(CDExamine::IDD, pParent)
{
//{{AFX_DATA_INIT(CDExamine)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CDExamine::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDExamine)
DDX_Control(pDX, IDC_RADYES, m_RadYES);
DDX_Control(pDX, IDC_RADNO, m_RadNO);
DDX_Control(pDX, IDC_RADALL, m_RadALL);
DDX_Control(pDX, IDC_EDTLRRBM, m_EdtLRRBM);
DDX_Control(pDX, IDC_EDTLRR, m_EdtLRR);
DDX_Control(pDX, IDC_EDTFY, m_EDTFY);
DDX_Control(pDX, IDC_EDTBZ, m_EdtBZ);
DDX_Control(pDX, IDC_EDTBJDBH, m_EdtBJDBH);
DDX_Control(pDX, IDC_EDTBGYWBH, m_EdtBGYWBH);
DDX_Control(pDX, IDC_DTZZSJ, m_DtZZSJ);
DDX_Control(pDX, IDC_DTQSSJ, m_DtQssj);
DDX_Control(pDX, IDC_DTLRSJ, m_DtLRSJ);
DDX_Control(pDX, IDC_DTJSSJ, m_DtJSSJ);
DDX_Control(pDX, IDC_DTBJSJ, m_DtBJSJ);
DDX_Control(pDX, IDC_COMID, m_ComID);
DDX_Control(pDX, IDC_CHEWJ, m_CHEWJ);
DDX_Control(pDX, IDC_CHESJ, m_CHESJ);
DDX_Control(pDX, IDC_CHEJSBZ, m_CHEJSBZ);
DDX_Control(pDX, IDC_CHEDZJ, m_CheEDZJ);
DDX_Control(pDX, IDC_BUTSAVE, m_ButSave);
DDX_Control(pDX, IDC_BUTINTO, m_ButInto);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDExamine, CDialog)
//{{AFX_MSG_MAP(CDExamine)
ON_CBN_EDITCHANGE(IDC_COMID, OnEditchangeComid)
ON_CBN_SELCHANGE(IDC_COMID, OnSelchangeComid)
ON_BN_CLICKED(IDC_BUTINTO, OnButinto)
ON_BN_CLICKED(IDC_BUTSAVE, OnButsave)
ON_NOTIFY(DTN_DATETIMECHANGE, IDC_DTQSSJ, OnDatetimechangeDtqssj)
ON_NOTIFY(DTN_DATETIMECHANGE, IDC_DTZZSJ, OnDatetimechangeDtzzsj)
ON_CBN_SETFOCUS(IDC_COMID, OnSetfocusComid)
ON_BN_CLICKED(IDC_RADALL, OnRadall)
ON_BN_CLICKED(IDC_RADNO, OnRadno)
ON_BN_CLICKED(IDC_RADYES, OnRadyes)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDExamine message handlers
void CDExamine::OnOK()
{
// TODO: Add extra validation here
//CDialog::OnOK();
}
void CDExamine::OnCancel()
{
// TODO: Add extra cleanup here
CDialog::OnCancel();
}
void CDExamine::OnEditchangeComid()
{
// TODO: Add your control notification handler code here
}
void CDExamine::OnSelchangeComid()
{
// TODO: Add your control notification handler code here
}
void CDExamine::OnButinto()
{
Clear();
CString sID,sSQL;
RxRecordset rst;
m_ComID.GetWindowText(sID);
if(sID.IsEmpty())
{
MessageBox("请选择一个报关业务编号!","系统提示",MB_OK|MB_ICONSTOP);
m_ComID.SetFocus();
return;
}
this->m_EdtBGYWBH.SetWindowText(sID);
sSQL.Format("SELECT * FROM 三检表 WHERE 报关业务编号='%s'",sID);
rst.Open(sSQL,adCmdText);
if(rst.GetRecordCount()<1)
{
Enabled(true);
m_bInsertOrUpdate=true;
CString sNewID;
sNewID=ado.AutoNumber("三检表","报检单编号","BJ",3);
this->m_EdtBJDBH.SetWindowText(sNewID);
}
else
{
Display();
Enabled(true);
m_bInsertOrUpdate=false;
this->m_CHESJ.SetFocus();
}
}
void CDExamine::OnButsave()
{
if(MessageBox("确定要保存此三检单吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
CString sBJDBH,sBGYWBH,sYWBH,sBJSJ,sJSSJ,sFY,sLRSJ,sLRR,sLRRBM,sBZ;
m_EdtLRRBM.GetWindowText(sLRRBM);//录入人部门
m_EdtLRR.GetWindowText(sLRR);//录入人
m_EDTFY.GetWindowText(sFY);//费用
m_EdtBZ.GetWindowText(sBZ);//备注
m_EdtBJDBH.GetWindowText(sBJDBH);//报检单编号
m_EdtBGYWBH.GetWindowText(sBGYWBH);//报关业务编号
CTime tLRSJ,tJSSJ,tBJSJ;
m_DtLRSJ.GetTime(tLRSJ);
m_DtJSSJ.GetTime(tJSSJ);
m_DtBJSJ.GetTime(tBJSJ);
sLRSJ=CTimeToCString(tLRSJ);//录入时间
sJSSJ=CTimeToCString(tJSSJ);//结束时间
sBJSJ=CTimeToCString(tBJSJ);//报检时间
int nWJ,nSJ,nDZJ,nJSBZ;
nWJ=m_CHEWJ.GetCheck();
nSJ=m_CHESJ.GetCheck();
nJSBZ=m_CHEJSBZ.GetCheck();
nDZJ=m_CheEDZJ.GetCheck();
CString sSQL;
if(m_bInsertOrUpdate==true)
sSQL.Format("INSERT INTO 三检表 VALUES('%s','%s',%d,%d,%d,'%s','%s',%d,%s,'%s','%s','%s','%s')",sBJDBH,sBGYWBH,nSJ,nDZJ,nWJ,sBJSJ,sJSSJ,nJSBZ,sFY,sLRSJ,sLRR,sLRRBM,sBZ);
else
sSQL.Format("UPDATE 三检表 SET 报检单编号='%s',商检=%d,动植检=%d,卫检=%d,报检时间='%s',结束时间='%s',结束标志=%d,费用=%s,录入时间='%s',录入人='%s',录入人部门='%s',备注='%s' WHERE 报关业务编号='%s'",sBJDBH,nSJ,nDZJ,nWJ,sBJSJ,sJSSJ,nJSBZ,sFY,sLRSJ,sLRR,sLRRBM,sBZ,sBGYWBH);
RxRecordset rst;
rst.Open(sSQL,adCmdText);
this->Enabled(false);
this->m_DtQssj.SetFocus();
}
void CDExamine::OnDatetimechangeDtqssj(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
*pResult = 0;
}
void CDExamine::OnDatetimechangeDtzzsj(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
*pResult = 0;
}
void CDExamine::OnSetfocusComid()
{
m_ComID.ClearAllString();
CTime tQs,tJs;
this->m_DtZZSJ.GetTime(tJs);
this->m_DtQssj.GetTime(tQs);
CString sQs,sJs,sSQL;
sQs=CTimeToCString(tQs);
sJs=CTimeToCString(tJs);
if(this->m_RadALL.GetCheck()==1)
sSQL.Format("select * from 报关单表 WHERE 录入日期 BETWEEN '%s' AND '%s' AND 报关单类别 NOT LIKE '%%备案%%'",sQs,sJs);
if(this->m_RadYES.GetCheck()==1)
sSQL.Format("select b.报关业务编号 from 三检表 a inner join 报关单表 b ON a.报关业务编号= b.报关业务编号 WHERE b.录入日期 BETWEEN '%s' AND '%s' AND b.报关单类别 NOT LIKE '%%备案%%'",sQs,sJs);
if(this->m_RadNO.GetCheck()==1)
sSQL.Format("select * from 报关单表 where 报关业务编号 not in (select 报关业务编号 FROM 三检表) AND 录入日期 BETWEEN '%s' AND '%s' AND 报关单类别 NOT LIKE '%%备案%%'",sQs,sJs);
RxRecordset rst;
rst.Open(sSQL,adCmdText);
m_ComID.ClearAllString();
this->m_ComID.SetRecordset(rst,"报关业务编号");
}
BOOL CDExamine::OnInitDialog()
{
CDialog::OnInitDialog();
this->m_RadALL.SetCheck(1);
this->m_EDTFY.IsMoneyOnly(true);
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDExamine::OnRadall()
{
this->m_RadNO.SetCheck(0);
this->m_RadYES.SetCheck(0);
}
void CDExamine::OnRadno()
{
// TODO: Add your control notification handler code here
this->m_RadALL.SetCheck(0);
this->m_RadYES.SetCheck(0);
}
void CDExamine::OnRadyes()
{
this->m_RadALL.SetCheck(0);
this->m_RadNO.SetCheck(0);
}
void CDExamine::Enabled(bool bEnabled)
{
m_EdtLRRBM.EnableWindow(bEnabled);
m_EdtLRR.EnableWindow(bEnabled);
m_EDTFY.EnableWindow(bEnabled);
m_EdtBZ.EnableWindow(bEnabled);
// m_EdtBJDBH.EnableWindow(bEnabled);
// m_EdtBGYWBH.EnableWindow(bEnabled);
m_DtLRSJ.EnableWindow(bEnabled);
m_DtJSSJ.EnableWindow(bEnabled);
m_DtBJSJ.EnableWindow(bEnabled);
m_CHEWJ.EnableWindow(bEnabled);
m_CHESJ.EnableWindow(bEnabled);
m_CHEJSBZ.EnableWindow(bEnabled);
m_CheEDZJ.EnableWindow(bEnabled);
m_ButInto.EnableWindow(!bEnabled);
m_ButSave.EnableWindow(bEnabled);
m_DtQssj.EnableWindow(!bEnabled);
this->m_DtZZSJ.EnableWindow(!bEnabled);
this->m_RadALL.EnableWindow(!bEnabled);
this->m_RadNO.EnableWindow(!bEnabled);
this->m_RadYES.EnableWindow(!bEnabled);
this->m_ComID.EnableWindow(!bEnabled);
}
void CDExamine::Display()
{
CString sID,sSQL;
m_ComID.GetWindowText(sID);
RxRecordset rst;
sSQL.Format("SELECT * FROM 三检表 WHERE 报关业务编号='%s'",sID);
rst.Open(sSQL,adCmdText);
m_EdtLRRBM.SetWindowText(rst.GetFieldValue("录入人部门"));
m_EdtLRR.SetWindowText(rst.GetFieldValue("录入人"));
m_EDTFY.SetWindowText(rst.GetFieldValue("费用"));
m_EdtBZ.SetWindowText(rst.GetFieldValue("备注"));
m_EdtBJDBH.SetWindowText(rst.GetFieldValue("报检单编号"));
m_EdtBGYWBH.SetWindowText(rst.GetFieldValue("报关业务编号"));
CTime tLRSJ,tJSSJ,tBJSJ;
tLRSJ=CStringTOCTime(rst.GetFieldValue("录入时间"));
tJSSJ=CStringTOCTime(rst.GetFieldValue("结束时间"));
tBJSJ=CStringTOCTime(rst.GetFieldValue("报检时间"));
m_DtLRSJ.SetTime(&tLRSJ);
m_DtJSSJ.SetTime(&tJSSJ);
m_DtBJSJ.SetTime(&tBJSJ);
m_CHEWJ.SetCheck(atoi(rst.GetFieldValue("卫检")));
m_CHESJ.SetCheck(atoi(rst.GetFieldValue("商检")));
m_CHEJSBZ.SetCheck(atoi(rst.GetFieldValue("结束时间")));
m_CheEDZJ.SetCheck(atoi(rst.GetFieldValue("动植检")));
}
void CDExamine::Clear()
{
m_EdtLRRBM.SetWindowText("");
m_EdtLRR.SetWindowText("");
m_EDTFY.SetWindowText("");
m_EdtBZ.SetWindowText("");
m_EdtBJDBH.SetWindowText("");
m_EdtBGYWBH.SetWindowText("");
m_CHEWJ.SetCheck(0);
m_CHESJ.SetCheck(0);
m_CHEJSBZ.SetCheck(0);
m_CheEDZJ.SetCheck(0);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -