📄 rkfhdlg.cpp
字号:
CWnd *wn_ghdw;
CWnd *wn_jfxs;
CWnd *wn_yzf;
CWnd *wn_rkn;
CWnd *wn_rky;
CWnd *wn_rkr;
CWnd *wn_save;
wn_sbmc = GetDlgItem(IDC_sbmc);
wn_rkfs = GetDlgItem(IDC_rkfs);
wn_sfdzp= GetDlgItem(IDC_sfdzp);
wn_cjpp = GetDlgItem(IDC_cjpp);
wn_xhgg = GetDlgItem(IDC_xhgg);
wn_wpdj = GetDlgItem(IDC_wpdj);
wn_wpsl = GetDlgItem(IDC_wpsl);
wn_zje = GetDlgItem(IDC_zje);
wn_jbr = GetDlgItem(IDC_jbr);
wn_ghdw = GetDlgItem(IDC_ghdw);
wn_ssbm = GetDlgItem(IDC_ssbm);
wn_jfxs = GetDlgItem(IDC_jfxs);
wn_yzf = GetDlgItem(IDC_yzf);
wn_rkn = GetDlgItem(IDC_rkn);
wn_rky = GetDlgItem(IDC_rky);
wn_rkr = GetDlgItem(IDC_rkr);
wn_save = GetDlgItem(IDSAVE);
if (cur_focus == 1){
wn_rkfs->SetFocus();
cur_focus = 2;
return ;
}
// if (cur_focus == 2){
// wn_sfdzp->SetFocus();
// cur_focus = 3;
// return ;
// }
if (cur_focus == 2){
wn_cjpp->SetFocus();
cur_focus = 4;
return ;
}
if (cur_focus == 4){
wn_xhgg->SetFocus();
cur_focus = 5;
return ;
}
if (cur_focus == 5){
wn_wpdj->SetFocus();
cur_focus = 6;
return ;
}
if (cur_focus == 6){
wn_wpsl->SetFocus();
cur_focus = 7;
return ;
}
if (cur_focus == 7){
wn_zje->SetFocus();
cur_focus = 8;
return ;
}
if (cur_focus == 8){
wn_jbr->SetFocus();
cur_focus = 9;
return ;
}
if (cur_focus == 9){
wn_ghdw->SetFocus();
cur_focus = 10;
return ;
}
if (cur_focus == 10){
wn_ssbm->SetFocus();
cur_focus = 11;
return ;
}
if (cur_focus == 11){
wn_jfxs->SetFocus();
cur_focus = 12;
return ;
}
if (cur_focus == 12){
wn_yzf->SetFocus();
cur_focus = 13;
return ;
}
if (cur_focus == 13){
wn_rkn->SetFocus();
cur_focus = 14;
return ;
}
if (cur_focus == 14){
wn_rky->SetFocus();
cur_focus = 15;
return ;
}
if (cur_focus == 15){
wn_rkr->SetFocus();
cur_focus = 16;
return ;
}
if (cur_focus == 16){
wn_save->SetFocus();
cur_focus = 0;
return ;
}
CDialog::OnOK();
}
void Crkfhdlg::OnSave()
{
// TODO: Add your control notification handler code here
FILE *fpe;
int num;
long l;
char buf[100];
CString str;
char b1[50],b2[50],b3[50],b4[50],b5[50],b6[50];
CWnd *pwnd;
long l1;
double sls,djs;
int i;
l = mod_rec;
l1 = m_yszm.GetRows();
if (l1 <= l+1){
MessageBox("对不起,您没有选择要修改的纪录.","",MB_OK);
error_flag = 1;
return ;
}
m_yszm.SetRow(l+1);
m_yszm.SetCol(0L);
str = m_yszm.GetText();
if (str[0] == 0){
MessageBox("对不起,您没有选择要修改的纪录.","",MB_OK);
error_flag = 1;
return ;
}
strcpy(kcbh,str.GetBuffer(10));
for (i=0;i<strlen(kcbh);i++){
if (kcbh[i] == '*')
kcbh[i] = ' ';
}
trim(kcbh);
GetDlgItemText(IDC_sbmc,buf,50);
if (strlen(buf) == 0){
MessageBox("没有输入具体设备名称,不能保存.",MB_OK);
pwnd = GetDlgItem(IDC_sbmc);
pwnd->SetFocus();
error_flag = 1;
return ;
}
float f;
int t;
GetDlgItemText(IDC_wpdj,str);
strcpy(buf,str.GetBuffer(14));
f = atof(buf);
djs = f;
sprintf(buf,"%#.2f",f);
if ((f < 0.001)||(strlen(buf) > 9)){
MessageBox("物品单价错误.",MB_OK);
pwnd = GetDlgItem(IDC_wpdj);
pwnd->SetFocus();
error_flag = 1;
return ;
}
SetDlgItemText(IDC_wpdj,buf);
GetDlgItemText(IDC_wpsl,str);
strcpy(buf,str.GetBuffer(14));
f = atof(buf);
sls = f;
sprintf(buf,"%#.2f",f);
if ((f < 0.001)||(strlen(buf) > 9)){
MessageBox("物品数量错误.",MB_OK);
pwnd = GetDlgItem(IDC_wpsl);
pwnd->SetFocus();
error_flag = 1;
return ;
}
if ((buf[strlen(buf)-1] == '0') && (buf[strlen(buf)-2] == '0')){
l = f;
sprintf(buf,"%#ld",l);
}
SetDlgItemText(IDC_wpsl,buf);
GetDlgItemText(IDC_zje,str);
strcpy(buf,str.GetBuffer(14));
double ff;
ff = atof(buf);
if (ff < 0.1){
ff = djs * sls;
}
sprintf(buf,"%#.2lf",ff);
if ((ff < 0.001)||(strlen(buf) > 12)||(fabs(ff-djs*sls) > 0.1)){
MessageBox("总金额错误.",MB_OK);
pwnd = GetDlgItem(IDC_zje);
pwnd->SetFocus();
error_flag = 1;
return ;
}
SetDlgItemText(IDC_zje,buf);
GetDlgItemText(IDC_wpdj,buf,20);
GetDlgItemText(IDC_rkfs,str);
strcpy(buf,str.GetBuffer(22));
if ((strlen(buf) == 0)||(strlen(buf) >= 20)){
MessageBox("入库方式错误.",MB_OK);
pwnd = GetDlgItem(IDC_rkfs);
pwnd->SetFocus();
error_flag = 1;
return ;
}
GetDlgItemText(IDC_ssbm,str);
strcpy(buf,str.GetBuffer(42));
if ((strlen(buf) == 0)||(strlen(buf) >= 40)){
MessageBox("所属部门错误.",MB_OK);
pwnd = GetDlgItem(IDC_ssbm);
pwnd->SetFocus();
error_flag = 1;
return ;
}
GetDlgItemText(IDC_jbr,str);
strcpy(buf,str.GetBuffer(12));
if ((strlen(buf) == 0)||(strlen(buf) > 10)){
MessageBox("经办人错误.",MB_OK);
pwnd = GetDlgItem(IDC_jbr);
pwnd->SetFocus();
error_flag = 1;
return ;
}
GetDlgItemText(IDC_rkn,str);
strcpy(buf,str.GetBuffer(6));
t = atoi(buf);
if ((t < 1990)||(t > 2100)){
MessageBox("入库年份错误.",MB_OK);
pwnd = GetDlgItem(IDC_rkn);
pwnd->SetFocus();
error_flag = 1;
return ;
}
GetDlgItemText(IDC_rky,str);
strcpy(buf,str.GetBuffer(4));
t = atoi(buf);
if ((t < 1)||(t > 12)){
MessageBox("入库月份错误.",MB_OK);
pwnd = GetDlgItem(IDC_rky);
pwnd->SetFocus();
error_flag = 1;
return ;
}
GetDlgItemText(IDC_rkr,str);
strcpy(buf,str.GetBuffer(4));
t = atoi(buf);
if ((t < 1)||(t > 31)){
MessageBox("入库日期错误.",MB_OK);
pwnd = GetDlgItem(IDC_rkr);
pwnd->SetFocus();
error_flag = 1;
return ;
}
fpe = fopen("c:\\xxsbgl\\sbrk.dat","r+b");
if (fpe != NULL){
fseek(fpe,0L,SEEK_END);
l = ftell(fpe);
num = l/453;
l = order_of_recs[mod_rec] * 453L;
fseek(fpe,l,SEEK_SET);
strcpy(tzm.reserve,"");
GetDlgItemText(IDC_jfxs,buf,4);
strcpy(tzm.jfxs,buf);
GetDlgItemText(IDC_yzf,buf,10);
strcpy(tzm.yzf,buf);
strcpy(tzm.rkbh,kcbh);
GetDlgItemText(IDC_byjx,str);
strcpy(buf,str.GetBuffer(10));
trim(buf);
strcpy(tzm.pyjx,buf);
GetDlgItemText(IDC_gdbh,str);
strcpy(buf,str.GetBuffer(10));
strcpy(tzm.gdbh,buf);
GetDlgItemText(IDC_yqdm,str);
strcpy(buf,str.GetBuffer(40));
strcpy(tzm.yqdm,buf);
GetDlgItemText(IDC_sbmc,str);
strcpy(buf,str.GetBuffer(50));
strcpy(tzm.sbmc,buf);
GetDlgItemText(IDC_scdm,str);
strcpy(buf,str.GetBuffer(40));
strcpy(tzm.scdm,buf);
GetDlgItemText(IDC_cjpp,str);
strcpy(buf,str.GetBuffer(40));
strcpy(tzm.cjpp,buf);
GetDlgItemText(IDC_xhgg,str);
strcpy(buf,str.GetBuffer(40));
strcpy(tzm.xhgg,buf);
GetDlgItemText(IDC_wpdj,str);
strcpy(buf,str.GetBuffer(15));
strcpy(tzm.wpdj,buf);
GetDlgItemText(IDC_wpsl,str);
strcpy(buf,str.GetBuffer(15));
strcpy(tzm.wpsl,buf);
GetDlgItemText(IDC_zje,str);
strcpy(buf,str.GetBuffer(15));
strcpy(tzm.zje,buf);
GetDlgItemText(IDC_rkfs,str);
strcpy(buf,str.GetBuffer(20));
strcpy(tzm.rkfs,buf);
GetDlgItemText(IDC_ssbm,b1,40);
strcpy(tzm.ssbm,b1);
GetDlgItemText(IDC_jbr,b2,10);
strcpy(tzm.jbr,b2);
GetDlgItemText(IDC_ghdw,b3,40);
strcpy(tzm.ghdw,b3);
GetDlgItemText(IDC_rkn,b4,6);
strcpy(tzm.rkn,b4);
GetDlgItemText(IDC_rky,b5,4);
strcpy(tzm.rky,b5);
GetDlgItemText(IDC_rkr,b6,4);
strcpy(tzm.rkr,b6);
UpdateData(TRUE);
if (m_sfdzp){
strcpy(buf,"是");
}
else{
strcpy(buf,"否");
}
strcpy(tzm.sfdzp,buf);
fwrite(&(tzm.reserve[0]),sizeof(zmstrt),1,fpe);
fclose(fpe);
}
l = mod_rec + 1;
m_yszm.SetRow(l);
m_yszm.SetCol(1L);
GetDlgItemText(IDC_sbmc,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(2L);
GetDlgItemText(IDC_wpdj,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(3L);
GetDlgItemText(IDC_wpsl,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(4L);
GetDlgItemText(IDC_zje,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(5L);
GetDlgItemText(IDC_rkn,b1,40);
GetDlgItemText(IDC_rky,b2,40);
GetDlgItemText(IDC_rkr,b3,40);
strcpy(buf,b1);
strcat(buf,"年");
strcat(buf,b2);
strcat(buf,"月");
strcat(buf,b3);
strcat(buf,"日");
m_yszm.SetText(buf);
m_yszm.SetCol(6L);
GetDlgItemText(IDC_xhgg,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(7L);
GetDlgItemText(IDC_jbr,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(8L);
GetDlgItemText(IDC_gdbh,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(10L);
GetDlgItemText(IDC_cjpp,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(11L);
GetDlgItemText(IDC_ghdw,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(12L);
GetDlgItemText(IDC_ssbm,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(13L);
GetDlgItemText(IDC_rkfs,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(14L);
GetDlgItemText(IDC_jfxs,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(15L);
GetDlgItemText(IDC_yzf,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(16L);
GetDlgItemText(IDC_yqdm,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(17L);
GetDlgItemText(IDC_scdm,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(18L);
GetDlgItemText(IDC_byjx,buf,40);
m_yszm.SetText(buf);
m_yszm.SetCol(9L);
if (IsDlgButtonChecked(IDC_sfdzp)){
m_yszm.SetText("是");
}
else{
m_yszm.SetText("否");
}
pwnd = GetDlgItem(IDC_sbmc);
pwnd->SetFocus();
order_of_wpsl = order_of_wpdj = order_of_zje =0;
}
BEGIN_EVENTSINK_MAP(Crkfhdlg, CDialog)
//{{AFX_EVENTSINK_MAP(Crkfhdlg)
ON_EVENT(Crkfhdlg, IDC_yszm, -600 /* Click */, OnClickyszm, VTS_NONE)
//}}AFX_EVENTSINK_MAP
END_EVENTSINK_MAP()
void Crkfhdlg::OnClickyszm()
{
// TODO: Add your control notification handler code here
long l;
CString str;
char buf[60];
char buf1[60],buf2[60];
int i,j;
l = m_yszm.GetRowSel();
if (old_sel_row > 0){
m_yszm.SetRow(old_sel_row);
m_yszm.SetCol(0L);
strcpy(buf,old_sel_bh);
m_yszm.SetText(buf);
}
m_yszm.SetRow(l);
m_yszm.SetCol(0L);
str = m_yszm.GetText();
strcpy(buf,str.GetBuffer(20));
strcpy(buf2,buf);
strcpy(old_sel_bh,buf);
strcpy(buf1,"* ");
strcat(buf1,buf);
m_yszm.SetText(buf1);
old_sel_row = l;
mod_rec = l - 1;
m_yszm.SetRow(l);
m_yszm.SetCol(0L);
str = m_yszm.GetText();
if (strcmp(str.GetBuffer(10),"") == 0){
MessageBox("对不起,您没有选择要修改的纪录.","",MB_OK);
return ;
}
strcpy(kcbh,str.GetBuffer(6));
m_yszm.SetCol(1L);
str = m_yszm.GetText();
strcpy(sbmc,str.GetBuffer(40));
m_yszm.SetCol(2L);
str = m_yszm.GetText();
strcpy(wpdj,str.GetBuffer(10));
m_yszm.SetCol(3L);
str = m_yszm.GetText();
strcpy(wpsl,str.GetBuffer(10));
m_yszm.SetCol(4L);
str = m_yszm.GetText();
strcpy(zje,str.GetBuffer(14));
m_yszm.SetCol(5L);
str = m_yszm.GetText();
strcpy(buf,str.GetBuffer(20));
i = 0;
while (buf[i] > 0){
rkn[i] = buf[i];
i ++;
}
if (buf[i] == 0){
return ;
}
rkn[i] = 0;
i += 2;
j = 0;
while (buf[i] > 0){
rky[j] = buf[i];
i ++;
j ++;
}
if (buf[i] == 0){
return ;
}
rky[j] = 0;
i += 2;
j = 0;
while (buf[i] > 0){
rkr[j] = buf[i];
i ++;
j ++;
}
if (buf[i] == 0){
return ;
}
rkr[j] = 0;
m_yszm.SetCol(6L);
str = m_yszm.GetText();
strcpy(xhgg,str.GetBuffer(14));
m_yszm.SetCol(7L);
str = m_yszm.GetText();
strcpy(jbr,str.GetBuffer(6));
m_yszm.SetCol(8L);
str = m_yszm.GetText();
strcpy(gdbh,str.GetBuffer(6));
m_yszm.SetCol(9L);
str = m_yszm.GetText();
strcpy(sfdzp,str.GetBuffer(6));
m_yszm.SetCol(10L);
str = m_yszm.GetText();
strcpy(cjpp,str.GetBuffer(6));
m_yszm.SetCol(11L);
str = m_yszm.GetText();
strcpy(ghdw,str.GetBuffer(6));
m_yszm.SetCol(12L);
str = m_yszm.GetText();
strcpy(ssbm,str.GetBuffer(6));
m_yszm.SetCol(13L);
str = m_yszm.GetText();
strcpy(rkfs,str.GetBuffer(6));
m_yszm.SetCol(14L);
str = m_yszm.GetText();
strcpy(jfxs,str.GetBuffer(4));
m_yszm.SetCol(15L);
str = m_yszm.GetText();
strcpy(yzf,str.GetBuffer(12));
m_yszm.SetCol(16L);
str = m_yszm.GetText();
strcpy(yqdm,str.GetBuffer(12));
m_yszm.SetCol(17L);
str = m_yszm.GetText();
strcpy(scdm,str.GetBuffer(12));
m_yszm.SetCol(18L);
str = m_yszm.GetText();
strcpy(pyjx,str.GetBuffer(12));
SetDlgItemText(IDC_sbmc,sbmc);
SetDlgItemText(IDC_wpdj,wpdj);
SetDlgItemText(IDC_wpsl,wpsl);
SetDlgItemText(IDC_zje,zje);
SetDlgItemText(IDC_rkn,rkn);
SetDlgItemText(IDC_rky,rky);
SetDlgItemText(IDC_rkr,rkr);
SetDlgItemText(IDC_xhgg,xhgg);
SetDlgItemText(IDC_jbr,jbr);
SetDlgItemText(IDC_gdbh,gdbh);
if (strcmp(sfdzp,"是") == 0){
CheckDlgButton(IDC_sfdzp,1);
}
else{
CheckDlgButton(IDC_sfdzp,0);
}
SetDlgItemText(IDC_cjpp,cjpp);
SetDlgItemText(IDC_ghdw,ghdw);
SetDlgItemText(IDC_ssbm,ssbm);
SetDlgItemText(IDC_rkfs,rkfs);
SetDlgItemText(IDC_jfxs,jfxs);
SetDlgItemText(IDC_yzf,yzf);
SetDlgItemText(IDC_byjx,pyjx);
SetDlgItemText(IDC_yqdm,yqdm);
SetDlgItemText(IDC_scdm,scdm);
m_yszm.SetCol(0L);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -