📄 dcustoms.cpp
字号:
this->m_EdtSFDJ.SetWindowText(rst.GetFieldValue("随附单据"));
this->m_EdtYT.SetWindowText(rst.GetFieldValue("生产厂家"));
this->m_EdtBZ.SetWindowText(rst.GetFieldValue("标记及备注"));
this->m_EdtZDY.SetWindowText(rst.GetFieldValue("制单员"));
this->m_EdtBGY.SetWindowText(rst.GetFieldValue("报关员"));
this->m_EdtLRR.SetWindowText(rst.GetFieldValue("录入人"));
this->m_EdtLRRBM.SetWindowText(rst.GetFieldValue("录入人部门"));
this->m_EdtSHY.SetWindowText(rst.GetFieldValue("审核员"));
this->m_DtLRSL.SetTime(&LRSJ);
this->m_DtSHSJ.SetTime(&SHSJ);
this->m_CHKSHBZ.SetCheck(atoi(rst.GetFieldValue("审核标志")));
}
void CDCustoms::OnChangeEdtzywbh()
{
}
void CDCustoms::Add(CBaseComboBox* pComboBox,CString sText)
{
CString sSQL,sValue;
pComboBox->GetWindowText(sValue);
if(sValue.IsEmpty()==true)
return;
sSQL.Format("SELECT * FROM %s WHERE %s='%s'",sText+"表",sText,sValue);
CString sNewID;
sNewID=ado.AutoNumber(sText+"表","编号","",1);
RxRecordset rst;
rst.Open(sSQL,adCmdText);
if(rst.GetRecordCount()<1) //数据表中不存在
{
sSQL.Format("INSERT INTO %s VALUES(%s,'%s')",sText+"表",sNewID,sValue);
rst.Open(sSQL,adCmdText);
pComboBox->ClearAllString();
rst.Open(sText+"表");
pComboBox->SetRecordset(rst,sText);
}
}
void CDCustoms::Clear()
{
this->m_ComYWLB.SetWindowText("");
this->m_EdtBGYWBH.SetWindowText("");
this->m_ComBGLB.SetWindowText("");
this->m_EdtTBGFB.SetWindowText("");
this->m_EdtYLRBH.SetWindowText("");
this->m_EdtHGBH.SetWindowText("");
this->m_EdtCKKA.SetWindowText("");
this->m_EdtBAH.SetWindowText("");
this->m_EdtJYDW.SetWindowText("");
this->m_ComYSFS.SetWindowText("");
this->m_EdtYSGJ.SetWindowText("");
this->m_EdtTYDH.SetWindowText("");
this->m_EdtSHDW.SetWindowText("");
this->m_ComMYFS.SetWindowText("");
this->m_ComZMXZ.SetWindowText("");
this->m_EdtZSBL.SetWindowText("");
this->m_EdtXKZH.SetWindowText("");
this->m_EdtQYG.SetWindowText("");
this->m_EdtZXG.SetWindowText("");
this->m_EdtJNMDD.SetWindowText("");
this->m_EdtPZWH.SetWindowText("");
this->m_ComCJFS.SetWindowText("");
this->m_EdtYF.SetWindowText("");
this->m_EdtTBF.SetWindowText("");
this->m_EdtZF.SetWindowText("");
this->m_ComBZ.SetWindowText("");
this->m_EdtHTXY.SetWindowText("");
this->m_EdtJS.SetWindowText("");
this->m_ComBzzl.SetWindowText("");
this->m_EdtMZ.SetWindowText("");
this->m_EdtJZ.SetWindowText("");
this->m_EdtJZXH.SetWindowText("");
this->m_EdtSFDJ.SetWindowText("");
this->m_EdtYT.SetWindowText("");
this->m_EdtBZ.SetWindowText("");
this->m_EdtZDY.SetWindowText("");
this->m_EdtBGY.SetWindowText("");
this->m_EdtLRR.SetWindowText("");
this->m_EdtLRRBM.SetWindowText("");
this->m_EdtSHY.SetWindowText("");
this->m_CHKSHBZ.SetCheck(0);
this->m_ChkSFJZ.SetCheck(0);
}
void CDCustoms::OnButchange()
{
m_IsAdd=false;
Enabled (true);
this->m_DtDate1.SetFocus();
}
void CDCustoms::OnButdele()
{
if(MessageBox("确定要删除此业务单吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
CString sID,sSQL;
this->m_EdtZYWBH.GetWindowText(sID);
sSQL.Format("DELETE 报关单表 WHERE 总业务编号='%s'",sID);
RxRecordset rst;
rst.Open(sSQL,adCmdText);
m_Grid.DeleteAllItems();
if(m_nStyle==1)
rst.Open("SELECT * FROm 报关单表 WHERE 报关单类别 NOT LIKE '%%备案%%'" ,adCmdText);
else
rst.Open("SELECT * FROm 报关单表 WHERE 报关单类别 LIKE '%%备案%%'" ,adCmdText);
this->Clear();
m_Grid.AddCellValue(rst);
m_sID=this->m_Grid.GetItemText(0,0);
if(m_sID.IsEmpty())
return;
Display(m_sID);
}
void CDCustoms::OnButsave()
{
if(MessageBox("确定要保存此报关单吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
//取出文本框中的值。
CString sZYWBH,sDATE1,sDATE2,\
sYWLB,sBGYWBH,sBGLB,sTBGFB,sYLRBH,sHGBH,\
sSFJZ,sCKKA,sBAH,sJKRQ,sSBRQ,sJYDW,sYSFS,sYSGJ,sTYDH,\
sSHDW,sMYFS,sZMXZ,sZSBL,sXKZH,sQYG,sZXG,sJNMDD,sPZWH,\
sCJFS,sYF,sTBF,sZF,sBZ,sHTXY,sJS,sBZZL,sMZ,sJZ,sJZXH,sSFDJ,sYT,
sTBZ,sZDY,sBGY,sLRR,sLRRBM,sSHY,sLRSJ,sSHSJ,sSHBZ;
this->m_EdtZYWBH.GetWindowText(sZYWBH);
CTime date1,date2,JKRQ,SBRQ,LRSJ,SHSJ;
this->m_DtDate1.GetTime(date1);
this->m_DtDate2.GetTime(date2);
this->m_DtJKRQ.GetTime(JKRQ);
this->m_DtSBRQ.GetTime(SBRQ);
this->m_DtLRSL.GetTime(LRSJ);
this->m_DtSHSJ.GetTime(SHSJ);
sDATE1=CTimeToCString(date1);
sDATE2=CTimeToCString(date2);
sJKRQ=CTimeToCString(JKRQ);
sSBRQ=CTimeToCString(SBRQ);
sLRSJ=CTimeToCString(LRSJ);
sSHSJ=CTimeToCString(SHSJ);
int nSFJZ=this->m_ChkSFJZ.GetCheck();
sSFJZ.Format("%d",nSFJZ);
int nSHBZ=this->m_CHKSHBZ.GetCheck();
sSHBZ.Format("%d",nSHBZ);
this->m_ComYWLB.GetWindowText(sYWLB);
this->m_EdtBGYWBH.GetWindowText(sBGYWBH);
this->m_ComBGLB.GetWindowText(sBGLB);
this->m_EdtTBGFB.GetWindowText(sTBGFB);
this->m_EdtYLRBH.GetWindowText(sYLRBH);
this->m_EdtHGBH.GetWindowText(sHGBH);
this->m_EdtCKKA.GetWindowText(sCKKA);
this->m_EdtBAH.GetWindowText(sBAH);
this->m_EdtJYDW.GetWindowText(sJYDW);
this->m_ComYSFS.GetWindowText(sYSFS);
this->m_EdtYSGJ.GetWindowText(sYSGJ);
this->m_EdtTYDH.GetWindowText(sTYDH);
this->m_EdtSHDW.GetWindowText(sSHDW);
this->m_ComMYFS.GetWindowText(sMYFS);
this->m_ComZMXZ.GetWindowText(sZMXZ);
this->m_EdtZSBL.GetWindowText(sZSBL);
this->m_EdtXKZH.GetWindowText(sXKZH);
this->m_EdtQYG.GetWindowText(sQYG);
this->m_EdtZXG.GetWindowText(sZXG);
this->m_EdtJNMDD.GetWindowText(sJNMDD);
this->m_EdtPZWH.GetWindowText(sPZWH);
this->m_ComCJFS.GetWindowText(sCJFS);
this->m_EdtYF.GetWindowText(sYF);
this->m_EdtTBF.GetWindowText(sTBF);
this->m_EdtZF.GetWindowText(sZF);
this->m_ComBZ.GetWindowText(sBZ);
this->m_EdtHTXY.GetWindowText(sHTXY);
this->m_EdtJS.GetWindowText(sJS);
this->m_ComBzzl.GetWindowText(sBZZL);
this->m_EdtMZ.GetWindowText(sMZ);
this->m_EdtJZ.GetWindowText(sJZ);
this->m_EdtJZXH.GetWindowText(sJZXH);
this->m_EdtSFDJ.GetWindowText(sSFDJ);
this->m_EdtYT.GetWindowText(sYT);
this->m_EdtBZ.GetWindowText(sTBZ);
this->m_EdtZDY.GetWindowText(sZDY);
this->m_EdtBGY.GetWindowText(sBGY);
this->m_EdtLRR.GetWindowText(sLRR);
this->m_EdtLRRBM.GetWindowText(sLRRBM);
this->m_EdtSHY.GetWindowText(sSHY);
CString sSQL;
if(m_IsAdd==true)
sSQL.Format("INSERT INTO 报关单表 VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s',%s,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%s,%s,%s,'%s','%s',%s,'%s',%s,%s,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s',%s)",sZYWBH,sDATE1,sDATE2,sYWLB,sBGYWBH,sBGLB,sTBGFB,sYLRBH,sHGBH,sSFJZ,sCKKA,sBAH,sJKRQ,sSBRQ,sJYDW,sYSFS,sYSGJ,sTYDH,sSHDW,sMYFS,sZMXZ,sZSBL,sXKZH,sQYG,sZXG,sJNMDD,sPZWH,sCJFS,sYF,sTBF,sZF,sBZ,sHTXY,sJS,sBZZL,sMZ,sJZ,sJZXH,sSFDJ,sYT,sTBZ,sZDY,sBGY,sLRR,sLRRBM,sSHY,sLRSJ,sSHSJ,sSHBZ);
else
sSQL.Format("UPDATE 报关单表 SET 录入日期='%s',录入日期2='%s',业务类别='%s',报关业务编号='%s',报关单类别='%s',报关分部='%s',预录入编号='%s',海关编号='%s',是否接转=%s,进口口案='%s',备案号='%s',进口日期='%s',申报日期='%s',经营单位='%s',运输方式='%s',运输工具='%s',提运单号='%s',收货单位='%s',贸易方式='%s',征免性质='%s',征税比率='%s',许可证号='%s',起运国='%s',装卸港='%s',境内目的地='%s',批准文号='%s',成交方式='%s',运费=%s,保费=%s,杂费=%s,币种='%s',合同协议号='%s',件数=%s,包装种类='%s',毛重=%s,净重=%s,集装箱号='%s',随附单据='%s',生产厂家='%s',标记及备注='%s',制单员='%s',报关员='%s',录入人='%s',录入人部门='%s',审核员='%s',录入时间='%s',审核时间='%s',审核标志=%s WHERE 总业务编号='%s'",sDATE1,sDATE2,sYWLB,sBGYWBH,sBGLB,sTBGFB,sYLRBH,sHGBH,sSFJZ,sCKKA,sBAH,sJKRQ,sSBRQ,sJYDW,sYSFS,sYSGJ,sTYDH,sSHDW,sMYFS,sZMXZ,sZSBL,sXKZH,sQYG,sZXG,sJNMDD,sPZWH,sCJFS,sYF,sTBF,sZF,sBZ,sHTXY,sJS,sBZZL,sMZ,sJZ,sJZXH,sSFDJ,sYT,sTBZ,sZDY,sBGY,sLRR,sLRRBM,sSHY,sLRSJ,sSHSJ,sSHBZ,sZYWBH);
RxRecordset rst;
rst.Open(sSQL,adCmdText);
this->Enabled(false);
m_Grid.DeleteAllItems();
if(m_nStyle==1)
rst.Open("SELECT * FROm 报关单表 WHERE 报关单类别 NOT LIKE '%%备案%%'" ,adCmdText);
else
rst.Open("SELECT * FROm 报关单表 WHERE 报关单类别 LIKE '%%备案%%'" ,adCmdText);
m_Grid.AddCellValue(rst);
this->m_ButNew.SetFocus();
}
void CDCustoms::OnButundo()
{
if(MessageBox("确定要撤消操作吗?","系统提示",MB_OKCANCEL|MB_ICONQUESTION)!=1)
return;
this->Clear();
this->Enabled(false);
this->Display(m_sID);
}
void CDCustoms::OnButexit()
{
this->OnCancel();
}
void CDCustoms::OnChkdate()
{
if(m_ChkDate.GetCheck()==1)
{
m_DtFind1.EnableWindow(true);
m_DtFind2.EnableWindow(true);
}
else
{
m_DtFind1.EnableWindow(false);
m_DtFind2.EnableWindow(false);
}
}
void CDCustoms::OnButQuery()
{
RxRecordset rst;
CString sFindDate1,sFindDate2;
if(this->m_ChkDate.GetCheck()==1)
{
CTime time1,time2;
m_DtFind1.GetTime(time1);
m_DtFind2.GetTime(time2);
sFindDate1=CTimeToCString(time1);
sFindDate2=CTimeToCString(time2);
}
CString sSQL,sField,sEmblem,sCondition,sOther;
this->m_ComField.GetWindowText(sField);
this->m_ComEmblem.GetWindowText(sEmblem);
this->m_EdtConditiom.GetWindowText(sCondition);
if(m_nStyle==1)
sOther=" 报关单类别 NOT LIKE '%%备案%%'";
else
sOther=" 报关单类别 LIKE '%%备案%%'";
//判断查询字段的类型
if(this->m_ChkDate.GetCheck()==1)
{
if(m_ComField.m_CurrentFieldType=="数值型")
sSQL.Format("SELECT * FROM 报关单表 WHERE %s %s %s AND 录入日期 BETWEEN '%s' AND '%s' AND %s",sField,sEmblem,sCondition,sFindDate1,sFindDate2,sOther);
else
{
if(sEmblem!="LIKE")
sSQL.Format("SELECT * FROM 报关单表 WHERE %s %s '%s' AND 录入日期 BETWEEN '%s' AND '%s' AND %s",sField,sEmblem,sCondition,sFindDate1,sFindDate2,sOther);
else
sSQL.Format("SELECT * FROM 报关单表 WHERE %s %s '%%%s%%' AND 录入日期 BETWEEN '%s' AND '%s' AND %s",sField,sEmblem,sCondition,sFindDate1,sFindDate2,sOther);
}
}
else
{
if(m_ComField.m_CurrentFieldType=="数值型")
sSQL.Format("SELECT * FROM 报关单表 WHERE %s %s %s AND %s",sField,sEmblem,sCondition,sOther);
else
{
if(sEmblem!="LIKE")
sSQL.Format("SELECT * FROM 报关单表 WHERE %s %s '%s' AND %s",sField,sEmblem,sCondition,sOther);
else
sSQL.Format("SELECT * FROM 报关单表 WHERE %s %s '%%%s%%' AND %s",sField,sEmblem,sCondition,sOther);
}
}
rst.Open(sSQL,adCmdText);
m_Grid.DeleteAllItems();
m_Grid.AddCellValue(rst);
}
void CDCustoms::OnMenuysfs()
{
CString sSQL;
sSQL.Format("SELECT * FROM 运输方式表");
CDBaseQuery dlg("运输方式查询",sSQL,"编号",1);
dlg.DoModal();
}
void CDCustoms::OnMenumyfs()
{
CString sSQL;
sSQL.Format("SELECT * FROM 贸易方式表");
CDBaseQuery dlg("贸易方式查询",sSQL,"编号",1);
dlg.DoModal();
}
void CDCustoms::OnMenuzmxz()
{
CString sSQL;
sSQL.Format("SELECT * FROM 征免性质表");
CDBaseQuery dlg("征免性质查询",sSQL,"编号",1);
dlg.DoModal();
}
void CDCustoms::OnMenucjfs()
{
CString sSQL;
sSQL.Format("SELECT * FROM 成交方式表");
CDBaseQuery dlg("成交方式查询",sSQL,"编号",1);
dlg.DoModal();
}
void CDCustoms::OnMenubz()
{
CString sSQL;
sSQL.Format("SELECT * FROM 币种表");
CDBaseQuery dlg("币种查询",sSQL,"编号",1);
dlg.DoModal();
}
void CDCustoms::OnMenubzzl()
{
CString sSQL;
sSQL.Format("SELECT * FROM 包装种类表");
CDBaseQuery dlg("包装种类查询",sSQL,"编号",1);
dlg.DoModal();
}
void CDCustoms::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult)
{
m_sID=m_Grid.GetItemText(m_Grid.GetHotItem(),0);
Display(m_sID);
*pResult = 0;
}
void CDCustoms::OnComEdtChange()
{
OnComSelChange();
}
void CDCustoms::OnComSelChange()
{
//取出边线宽度及标题栏高度
int nTitleHeight=::GetSystemMetrics(SM_CYSIZE);
int nLineWidth=::GetSystemMetrics(SM_CXFIXEDFRAME);
CString sText;
m_ComBGLB.GetWindowText(sText);
int i=sText.Find("出");
if(i==-1)
{
m_StaKA.SetWindowText("进口口岸");
m_StaRQ.SetWindowText("进口日期");
m_StaDW.SetWindowText("收货单位");
m_StaSS.SetWindowText("征税比例");
m_StaGJ.SetWindowText("起运国(地区)");
m_StaZXG.SetWindowText("装卸港");
m_StaJN.SetWindowText("境内目的地");
m_StaYT.SetWindowText("用途");
this->m_EdtZSBL.IsMoneyOnly(true);
}
else
{
m_StaKA.SetWindowText("出口口岸");
m_StaRQ.SetWindowText("出口日期");
m_StaDW.SetWindowText("发货单位");
m_StaSS.SetWindowText("结汇方式");
m_StaZXG.SetWindowText("起运港");
m_StaGJ.SetWindowText("运抵国(地区)");
m_StaJN.SetWindowText("境内货源地");
m_StaYT.SetWindowText("生产厂家");
this->m_EdtZSBL.IsMoneyOnly(false);
}
CRect rcBAH,rcKA,rcBZ,rcJZXH,rcStaBZ;
this->m_EdtBAH.GetWindowRect(&rcBAH);
this->m_EdtCKKA.GetWindowRect(&rcKA);
this->m_EdtJZXH.GetWindowRect(&rcJZXH);
rcKA.top=m_rcBak.top-nTitleHeight-nLineWidth;
rcKA.bottom=m_rcBak.bottom-nTitleHeight-nLineWidth;
rcBZ.left=m_rcMemBZ.left-nLineWidth;
rcBZ.right=m_rcMemBZ.right-nLineWidth;
i=sText.Find("备案");
if(i==-1)
{
m_StaYWBH.SetWindowText("报关业务单号");
rcKA.right=m_rcBak.right-nLineWidth;
this->m_StaJZXH.ShowWindow(SW_SHOW);
rcBZ.top=m_rcMemBZ.top-nTitleHeight-nLineWidth;
rcBZ.bottom=m_rcMemBZ.bottom-nTitleHeight-nLineWidth;
}
else
{
m_StaYWBH.SetWindowText("备案编号");
rcBZ.top=rcJZXH.top-nTitleHeight-nLineWidth;
rcBZ.bottom=m_rcMemBZ.bottom-nTitleHeight-nLineWidth;
rcKA.right=rcBAH.right;
this->m_StaJZXH.ShowWindow(SW_HIDE);
m_EdtBAH.EnableWindow(false);
m_EdtSFDJ.EnableWindow(false);
m_EdtJZXH.EnableWindow(false);
m_EdtYT.EnableWindow(false);
m_StaRQ.SetWindowText("备案日期");
}
this->m_EdtCKKA.MoveWindow(&rcKA);
this->m_EdtBZ.MoveWindow(&rcBZ);
}
void CDCustoms::OnKillfocusCombglb()
{
OnComSelChange();
}
void CDCustoms::OnKillfocusEdtbgywbh()
{
CString sText,sSQL;
this->m_EdtBGYWBH.GetWindowText(sText);
RxRecordset rst;
sSQL.Format("SELECT * FROM 报关单表 WHERE 报关业务编号='%s'",sText);
rst.Open(sSQL,adCmdText);
if(rst.GetRecordCount()<1)
return;
else
{
MessageBox("编号[ "+sText+" ]已被占用,请输入其它编号!","系统提示",MB_OK|MB_ICONSTOP);
this->m_EdtBGYWBH.SetWindowText("");
this->m_EdtBGYWBH.SetFocus();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -