⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pt_sta_f.ec

📁 这是一个使用 informix esql/c 技术开发的银行程序的部分代码。
💻 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 + -