📄 pt_sta_f.ec
字号:
/* 打印日报表附表 */#include </u/ebcsav/include/sav.h>$include sqlca;$include sqlda;void type_op();char edit_op();void addspace();void addspacef();char y_n();void mess();char readch();char readdv();char readst();void prtf_dnum();FILE *pf_l;#include </u/ebcsav/include/begin>FILE *fp;char sec[11],st[8];double bac[32],bad[32],amound[32],amounc[32];short uro[32],urc[32],ur[32],voud[32],vouc[32],i,n,h,j,urh,urf,te1[32],sa1[32];double ba1[8],ba2[8],ba3[8],ba4[8],ba5[8],ba6[8],ba7[8];short voux[32],ur1[8],ur2[8],ur3[8],ur4[8],ur5[8],ur6[8],ur7[8];short h1[4],uh1[4],t_h1[4],f1[4],uf1[4],t_f1[4];char *title[25]={"整│三个月"," │六个月","存│一 年"," │两 年", "整│三 年"," │五 年","取│小 计"," 活 期 ", "零│一 年","存│三 年","整│五 年","取│小 计", "存│一 年","本│三 年","取│五 年","息│小 计", "定活两便 ", " │一个月","大│三个月","额│六个月","存│九个月", "单│一 年"," │小 计","通知存款 ","合 计"};char *titl[24]={" │ │一月"," │定│三月","美│ │六月"," │ │一年", " │期│两年","元│ │小计"," │活 期"," │合 计", " │ │一月"," │定│三月","日│ │六月"," │ │一年", " │期│两年","元│ │小计"," │活 期"," │合 计", " │ │一月"," │定│三月","港│ │六月"," │ │一年", " │期│两年","币│ │小计"," │活 期"," │合 计"};$ char cu[7]={'U','J','H','M','P','F','C'};$ char opa[2],se[2],sta[2],sav[2],te[2],c_type[2],t1[2],t2[2],t3[2],t4[2];$ double amoud,amouc,amou;$ long urh1,urf1,usr,vod,voc,usrc,usro,uruh1,t_urh1,uruf1,t_urf1;$ database saving;sec[10]='\0';opa[0]=op_num;opa[1]='\0';se[0]=op.num&0x7f;se[1]='\0';sta[1]='\0';sa1[1]='\0';sav[1]='\0';te[1]='\0';t1[0]=3;t2[0]=6;t3[0]=12;t4[0]=24;t1[1]='\0';t2[1]='\0';t3[1]='\0';t4[1]='\0';c_type[1]='\0';fp=fopen("/u/ebcsav/data/sav_sect.dat","r");fseek(fp,((op.num&0x7f)-1)*34+24,0);fread(sec,10,1,fp);fclose(fp);for(n=0;n<7;n++)if(op.name[n]!='\0')st[n]=op.name[n]^0xff;else st[n]='\0';n=op.type;/*人民币日报表附表*/if((op.type&0x1)==1){for(i=0;i<25;i++){ bac[i]=bad[i]=amound[i]=amounc[i]=0.0; ur[i]=uro[i]=urc[i]=voud[i]=vouc[i]=voux[i]=0;}$ declare blot scroll cursor for select sav_type,term,debi_amoun,cred_amoun, today_bala,open_user,canc_user,today_user,debi_vouch,cred_vouch from r_dai;$ open blot;for(i=0;i<25;i++){ $ fetch blot into $sav,$te,$amoud,$amouc,$amou,$usro,$usrc,$usr,$vod,$voc; if(sqlca.sqlcode!=0) { move(20,20); printw("fetch r_dai error"); getch(); break; } uro[i]=usro; urc[i]=usrc; ur[i]=usr; amound[i]=amoud; amounc[i]=amouc; bac[i]=amou; te1[i]=te[0]; sa1[i]=sav[0]; voud[i]=vod; vouc[i]=voc; voux[i]=voud[i]+vouc[i];}$ close blot;move(12,22);mess(60);mess(4);getch();move(12,22);addspace(40);move(12,22);mess(65);refresh();if((pf_l=fopen("/dev/lp0","w"))==0)/*if((pf_l=fopen("/u/ebcsav/tmp/r_state","w"))==0)*/{printw("打印机正在工作,任意键返回");getch();return;}fprintf(pf_l,"\n\n\n\n\n\n\n%d",0);addspacef(57);fprintf(pf_l,"e%d%d人 民 币 营 业 日 报 表 附 表e%d%d\n",2,2,1,1);addspacef(53);fprintf(pf_l,"─────────────────────────────────\n\n\n\n");addspacef(28);fprintf(pf_l,"人民币");addspacef(19);fprintf(pf_l,"营业部门 : %-11s",sec);addspacef(19);fprintf(pf_l,"%4d年%2d月%2d日",year,month,day);addspacef(19);fprintf(pf_l," 操作员 : %-7s\n",st);addspacef(22);fprintf(pf_l,"┏━━━━━┯━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━┯━━━━━━━━┓\n");addspacef(22);fprintf(pf_l,"┃ │ 本 日 发 生 额 │ 本 日 余 额 │ 户 数 │ 传 票 张 数 ┃\n");addspacef(22);fprintf(pf_l,"┃ 科 目 ├────────┬────────┼────────┬────────┼───┬───┬───┼──┬──┬──┨\n");addspacef(22);fprintf(pf_l,"┃ │ 借 方 │ 贷 方 │ 借 方 │ 贷 方 │ 开户 │ 销户 │总户数│借方│贷方│合计┃\n");addspacef(22);fprintf(pf_l,"┠─┬───┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n");for(i=0;i<25;i++){addspacef(22);fprintf(pf_l,"┃%10s│",title[i]);prtf_dnum(amound[i],16);fprintf(pf_l,"│");prtf_dnum(amounc[i],16);fprintf(pf_l,"│");prtf_dnum(bad[i],16);fprintf(pf_l,"│");prtf_dnum(bac[i],16);fprintf(pf_l,"│%5d │%5d │%5d │%3d │%3d │%3d ┃\n",uro[i],urc[i],ur[i],voud[i],vouc[i],voux[i]);if(i!=24)if(i==6||i==15||i==22) { addspacef(22); fprintf(pf_l,"┠─┴───┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); }else if(i==7||i==16) { addspacef(22); fprintf(pf_l,"┠─┬───┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); }else if(i==11) { addspacef(22); fprintf(pf_l,"┠─┼───┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); }else if(i==23) { addspacef(22); fprintf(pf_l,"┠─────┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); }else { addspacef(22); fprintf(pf_l,"┃ ├───┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); }}addspacef(22);fprintf(pf_l,"┗━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━━━━┷━━━━━━━━┛\n");addspacef(22);fprintf(pf_l," 经 理 : 事 后 : 复 核 : 制 表:%d\n",2);fprintf(pf_l,"\n\n\n\n\n\n\n\n\n\n\n");fclose(pf_l);}/*打印外币日报表附表*/if((op.type&0x2)==2){for(i=0;i<24;i++){ bac[i]=bad[i]=amound[i]=amounc[i]=0.0; ur[i]=uro[i]=urc[i]=voud[i]=vouc[i]=voux[i]=0;}$ declare blot1 scroll cursor for select sav_type,term,debi_amoun,cred_amoun, today_bala,open_user,canc_user,today_user,debi_vouch,cred_vouch from f_dai where cur_type='U';$ open blot1;for(i=0;i<8;i++){ $ fetch blot1 into $sav,$te,$amoud,$amouc,$amou,$usro,$usrc,$usr,$vod,$voc; if(sqlca.sqlcode!=0) { move(20,20); printw("fetch blot1 error"); getch(); break; } uro[i]=usro; urc[i]=usrc; ur[i]=usr; amound[i]=amoud; amounc[i]=amouc; bac[i]=amou; te1[i]=te[0]; sa1[i]=sav[0]; voud[i]=vod; vouc[i]=voc; voux[i]=voud[i]+vouc[i];/* move(20,20); printw("i=%d sav=%d te=%d bac=%13.2f bad=%13.2f",i,sav[0],te[0],bad[i],bac[i]); getch();*/}$close blot1;$ declare blot2 scroll cursor for select sav_type,term,debi_amoun,cred_amoun, today_bala,open_user,canc_user,today_user,debi_vouch,cred_vouch from f_dai where cur_type='J';$ open blot2;for(i=8;i<16;i++){ $ fetch blot2 into $sav,$te,$amoud,$amouc,$amou,$usro,$usrc,$usr,$vod,$voc; if(sqlca.sqlcode!=0) { move(20,20); printw("fetch blot2 error"); getch(); break; } uro[i]=usro; urc[i]=usrc; ur[i]=usr; amound[i]=amoud; amounc[i]=amouc; bac[i]=amou; te1[i]=te[0]; sa1[i]=sav[0]; voud[i]=vod; vouc[i]=voc; voux[i]=voud[i]+vouc[i]; /*move(20,20); printw("i=%d sav=%d te=%d bac=%13.2f bad=%13.2f",i,sav[0],te[0],bad[i],bac[i]); getch();*/}$close blot2;$ declare blot3 scroll cursor for select sav_type,term,debi_amoun,cred_amoun, today_bala,open_user,canc_user,today_user,debi_vouch,cred_vouch from f_dai where cur_type='H';$ open blot3;for(i=16;i<24;i++){ $ fetch blot3 into $sav,$te,$amoud,$amouc,$amou,$usro,$usrc,$usr,$vod,$voc; if(sqlca.sqlcode!=0) { move(20,20); printw("fetch blot3 error"); getch(); break; } uro[i]=usro; urc[i]=usrc; ur[i]=usr; amound[i]=amoud; amounc[i]=amouc; bac[i]=amou; te1[i]=te[0]; sa1[i]=sav[0]; voud[i]=vod; vouc[i]=voc; voux[i]=voud[i]+vouc[i]; /*move(20,20); printw("i=%d sav=%d te=%d bac=%13.2f bad=%13.2f",i,sav[0],te[0],bad[i],bac[i]); getch();*/}$close blot3;move(12,22);addspace(40);move(12,22);mess(60);mess(4);getch();move(12,22);addspace(40);move(12,22);mess(65);refresh();if((pf_l=fopen("/dev/lp0","w"))==0)/*if((pf_l=fopen("/u/ebcsav/tmp/f_state","w"))==0)*/{printw("打印机正在工作,任意键返回");getch();return;}fprintf(pf_l,"\n\n\n\n\n\n%d",0);addspacef(64);fprintf(pf_l,"e%d%d外 币 营 业 日 报 表 附 表e%d%d\n",2,2,1,1);addspacef(59);fprintf(pf_l,"───────────────────────────────\n\n\n\n");addspacef(30);fprintf(pf_l,"外 币");addspacef(19);fprintf(pf_l,"营业部门 : %-11s",sec);addspacef(19);fprintf(pf_l,"%4d年%2d月%2d日",year,month,day);addspacef(19);fprintf(pf_l," 操作员 : %-7s\n",st);addspacef(22);fprintf(pf_l,"┏━━━━━━┯━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━━━━━━━┯━━━━━━━━━━━┯━━━━━━━━┓\n");addspacef(22);fprintf(pf_l,"┃ │ 本 日 发 生 额 │ 本 日 余 额 │ 户 数 │ 传 票 张 数 ┃\n");addspacef(22);fprintf(pf_l,"┃ 科 目 ├────────┬────────┼────────┬────────┼───┬───┬───┼──┬──┬──┨\n");addspacef(22);fprintf(pf_l,"┃ │ 借 方 │ 贷 方 │ 借 方 │ 贷 方 │ 开户 │ 销户 │总户数│借方│贷方│合计┃\n");addspacef(22);fprintf(pf_l,"┠─┬─┬──┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); for(i=0;i<24;i++) { addspacef(22); fprintf(pf_l,"┃%12s│",titl[i]); prtf_dnum(amound[i],16); fprintf(pf_l,"│"); prtf_dnum(amounc[i],16); fprintf(pf_l,"│"); prtf_dnum(bad[i],16); fprintf(pf_l,"│"); prtf_dnum(bac[i],16); fprintf(pf_l,"│%5d │%5d │%5d │%3d │%3d │%3d ┃\n",uro[i],urc[i],ur[i],voud[i],vouc[i],voux[i]); if(i==5||i==13||i==21) { addspacef(22); fprintf(pf_l,"┃ ├─┴──┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); } else if(i==6||i==14||i==22) { addspacef(22); fprintf(pf_l,"┃ ├────┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); } else if(i==7||i==15) { addspacef(22); fprintf(pf_l,"┠─┼─┬──┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); } else if(i==23) { addspacef(22); fprintf(pf_l,"┗━┷━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━━━━━━┷━━━┷━━━┷━━━┷━━┷━━┷━━┛\n"); } else { addspacef(22); fprintf(pf_l,"┃ │ ├──┼────────┼────────┼────────┼────────┼───┼───┼───┼──┼──┼──┨\n"); } }addspacef(22);fprintf(pf_l," 经 理 : 事 后 : 复 核 : 制 表:%d\n",2);fprintf(pf_l,"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");fclose(pf_l);}$ close database;#include </u/ebcsav/include/end>#include </u/ebcsav/include/mess>#include </u/ebcsav/include/type_op>#include </u/ebcsav/include/edit_op>#include </u/ebcsav/include/addspace>#include </u/ebcsav/include/faddspacef>#include </u/ebcsav/include/y_n>#include </u/ebcsav/include/readch>#include </u/ebcsav/include/readdv>#include </u/ebcsav/include/readst>#include </u/ebcsav/include/fprtf_dnum>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -