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

📄 hang_off.ec

📁 这是一个使用 informix esql/c 技术开发的银行程序的部分代码。
💻 EC
📖 第 1 页 / 共 3 页
字号:
                    if(sqlca.sqlcode!=-271) break;                    printw("*");                    refresh();                    delay(5l);                  }                if(sqlca.sqlcode==-271) mess((short)73);                else if(sqlca.sqlcode!=0)                  {                    addstr("写");                    mess(16);                    printw("(%d), ",sqlca.sqlcode);                  }                else                  {                    ti=num_time();                    move(20,20);                    mess((short)42);                    mess((short)4);                    getch();                    printf("%c[5i%c%c9%c%c%c]%cq\n\n",27,27,'%',1,20,27,28);                    addspacef(42);                    printf("解  挂  通  知  单\n");                    addspacef(42);                    printf("==================\n");                    addspacef(14);                    printf("%-10s",sts);                    addspacef(40);                    printf("%4d年%2d月%2d日 %2d时%2d分\n",year,month,day,                      ti/100,ti%100);                    printf("          ─────────────────────────────────────────\n");                    addspacef(14);                    printf("帐号: ");                    prtf_inum((long)s_num[0],2);                    printf("-");                    prtf_inum(a_num,9);                    addspacef(14);                    printf("户名: %-8s",nam);                    addspacef(12);                    printf("凭证号: ");                    prtf_inum(cr_num,7);                    printf("\n");                    addspacef(14);                    printf("储蓄种类: %-10s",&title2[num_c2][2]);                    addspacef(12);                    printf("币种: ");                    switch(cu_type[0])                      {                        case 'C':                          printf("加拿大元");                          break;                        case 'F':                          printf("法国法郎");                          break;                        case 'H':                          printf("港元    ");                          break;                        case 'J':                          printf("日元    ");                          break;                        case 'M':                          printf("德国马克");                          break;                        case 'P':                          printf("英镑    ");                          break;                        case 'R':                          printf("人民币  ");                          break;                        case 'U':                          printf("美元    ");                      }                    addspacef(12);                    printf("期限: ");                    if(num_c2==1||num_c2==3||num_c2==6)                      {                        if(ter[0]<12) printf("%2d个月",ter[0]);                        else printf("%2d年",ter[0]/12);                      }                    printf("\n");                    addspacef(14);                    printf("开户日期: ");                    printf("%4d年%2d月%2d日",ope_date/10000,                      (ope_date%10000)/100,ope_date%100);                    addspacef(8);                    printf("地址: %-24s\n",addres);                    addspacef(14);                    printf("金额: ");                    prtf_dnum(amoun,13);                    printf("\n");                    addspacef(14);                    printf("备注:\n\n\n");                    addspacef(14);                    printf("储户签名:\n");                    printf("          ─────────────────────────────────────────\n");                    printf("              负责人:              复核人:            经办人:            操作员:%s\n",stn);                    printf("%c%c[4i",12,27);                    flag=1;                  }              }          }        if(flag==1)          {            $ commit work;          }        else          {            $ rollback work;            continue;          }        move(20,20);        addspace(50);        move(20,20);        addstr("解挂操作已完成, 是否需要补发凭证(Y/N)? ");        c=y_n('Y','N','N');        move(21,30);        if(c=='N') continue;        cu_type[0]=c1;        statu[0]=c2;        cred_type=(num_c3-1)*10+num_c2;        if(statu[0]>'Z')          {            move(20,20);            addspace(55);            move(20,20);            addstr("再次丢失凭证, 必须销户后重新开户! ");            continue;          }        while(1)          {            move(17,10);            addstr("请输入新的凭证编号:");            addspace(10);            move(17,30);            c=readdv(&x,7);            if(c==10)              {                cr_num2=x;                move(17,30);                addspace(18);                prt_inum(cr_num2,7);              }            else continue;            $ select cre_num from credential              where op_num=$ope_num and cre_type=$cred_type              and cre_num=$cr_num2;            move(20,30);            if(sqlca.sqlcode!=0)              {                mess((short)11);                mess((short)2);              }            else break;          }        statu[0]='a';        flag=0;        $ begin work;        lin_num[0]=1;        switch(num_c2)          {            case 1:              if(num_c3==1)                {                  $ update r_fix                    set status=$statu,cre_num=$cr_num2                    where sec_num=$s_num and acc_num=$a_num;                }              else                {                  $ update f_fix                    set status=$statu,cre_num=$cr_num2                    where sec_num=$s_num and acc_num=$a_num;                }              break;            case 2:              if(num_c3==1)                {                  $ update r_demand                    set status=$statu,cre_num=$cr_num2,line_num=$lin_num                     where sec_num=$s_num and acc_num=$a_num;                }              else                {                  $ update f_demand                    set status=$statu,cre_num=$cr_num2,line_num=$lin_num                    where sec_num=$s_num and acc_num=$a_num;                }              break;            case 3:              $ update r_dated                set status=$statu,cre_num=$cr_num2,line_num=$lin_num                where sec_num=$s_num and acc_num=$a_num;              break;            case 6:              $ update l_fix                set status=$statu,cre_num=$cr_num2                where sec_num=$s_num and acc_num=$a_num;              break;            case 7:              $ update r_call                set status=$statu,cre_num=$cr_num2,line_num=$lin_num                where sec_num=$s_num and acc_num=$a_num;          }        if(sqlca.sqlerrd[2]!=1)          {            addstr("写");            mess((short)14);            printw("(%d), ",sqlca.sqlerrd[2]);          }        else          {            $ insert into subs_cred              values              ($s_num,$s_type,$a_num,$nam,              $cr_num,$cr_num2,$amoun,$ope_num);            if(sqlca.sqlcode!=0)              {                addstr("写");                mess((short)39);                printw("(%d), ",sqlca.sqlcode);              }            else              {                cr_num1=cr_num;                cr_num=cr_num2+200000000;                $ update credential                  set cre_num=$cr_num                  where op_num=$ope_num and cre_type=                  $cred_type and cre_num=$cr_num2;                if(sqlca.sqlerrd[2]!=1)                  {                    addstr("写");                    mess((short)9);                    printw("(%d), ",sqlca.sqlerrd[2]);                  }                else                  {                    cu_type[0]=toupper(c1);                    for(i=0;i<5;i++)                      {                        if(cred_type<=10)                          {                            $ insert into r_blot                              values                              (0,$ope_num,$s_num,$a_num,$nam,                              $s_type,$cu_type,$ter,$cr_num2,                              "S",0,$amoun,0);                          }                        else                          {                            $ insert into f_blot                              values                              (0,$ope_num,$s_num,$a_num,$nam,                              $s_type,$cu_type,$ter,$cr_num2,                              "S",0,$amoun,0);                          }                        if(sqlca.sqlcode!=-271) break;                        printw("*");                        refresh();                        delay(5l);                      }                    if(sqlca.sqlcode==-271) mess((short)73);                    else if(sqlca.sqlcode!=0)                      {                        addstr("写");                        mess((short)16);                        printw("(%d), ",sqlca.sqlcode);                      }                    else  {    cu_type[0]=c1;    if(num_c3==1)      {        $ open blot1;        $ fetch last blot1 into $b_num;        $ close blot1;      }    else      {        $ open blot2;        $ fetch last blot2 into $b_num;        $ close blot2;      }    switch(num_c2)      {        case 1:          year1=int_date/10000;          month1=(int_date%10000)/100;          day1=int_date%100;          month1+=ter[0];          year1+=((month1-1)/12);          month1=((month1-1)%12)+1;          move(20,20);          addspace(60);          move(20,20);          mess((short)42);          mess((short)4);          getch();          printf("%c%c%c%c%c%c%c%c%c%c%c%c%c",27,'[',            '5','i',27,'%','9',1,15,28,'q',27,']');          printf("        凭证号: %d\n\n\n",cr_num2);          addspacef(40);          printf("%4d年%2d月%2d日 %2d时%2d分\n\n\n\n",            year,month,day,ti/100,ti%100);          addspacef(20);          prtf_inum((long)s_num[0],2);          putchar('-');          prtf_inum(a_num,9);          printf("       %4d-%2d-%2d",year,month,day);          printf("    %4d-%2d-%2d",int_date/10000,(int_date%10000)/100,            int_date%100);          addspacef(5);          prtf_inum((long)(op.num&0x7f),2);          printf("        %4d       ",b_num);          switch(toupper(cu_type[0]))            {              case 'R':                printf("人民币");                break;              case 'U':                printf("美元");                break;              case 'J':                printf("日元");                break;              case 'H':                printf("港元");                break;              case 'M':                printf("德国马克");                break;              case 'P':                printf("英镑");                break;              case 'F':                printf("法国法郎");                break;              case 'C':                printf("加拿大元");            }          printf("\n\n");          printf("                   %-8s  ",nam);          if(ter[0]<12) printf("%1d月",ter[0]);          else printf("%1d年",ter[0]/12);          if(cu_type[0]>'Z') printf("(转)");          else addspacef(4);          printf("   %4d-%2d-%2d   ",year1,month1,day1);          if(pas!=0) printf("密");          else addspacef(2);          addspacef(2);          if(ope_date!=int_date) printf("部提");          else addspacef(4);          printf("换存单: ");          prtf_inum(cr_num1,7);          prtf_dnum(amoun,14);          printf("  %s\n\n\n",stn);          printf("%c%c%c%c      换 存 单%c%c%c%c\n",27,'g',27,'e',27,            'h',27,'f');          printf("%c%c%c%c%c",12,            27,'[','4','i');          move(20,20);          addspace(60);          move(20,20);          mess((short)43);          mess((short)4);          getch();          if(toupper(cu_type[0])=='R')            {              printf("%c%c%c%c%c%c%c%c\n\n\n\n\n",                27,'[','5','i',28,'q',27,']');              if(cu_type[0]>'Z') printf("  转");              else addspacef(4);              addspacef(4);              printf("%-8s","人民币");              printf("   %4d-%2d-%2d",year,month,day);              printf("  %4d-%2d-%2d",int_date/10000,(int_date%10000)/100,                int_date%100);              if(ope_date!=int_date) printf(" 部 ");              else addspacef(4);              if(pas!=0) printf(" 密  ");              else addspacef(5);              if(ter[0]<12) printf("%1d月",ter[0]);              else printf("%1d年",ter[0]/12);              printf(" %5.3f",interes*1.2);              printf("  %4d-%2d-%2d  ",year1,month1,day1);              prtf_dnum(amoun*interes*ter[0]*0.001,13);              printf("  %s\n\n\n\n",stn);              addspacef(12);              prtf_inum((long)s_num[0],2);              putchar('-');              prtf_inum(a_num,9);              printf("%c%c            %s", 28,'p',nam);              addspacef(22);              printf("%c%c原凭证号: ",28,'q');              prtf_inum(cr_num1,7);              printf("\n\n\n%c%c",28,'p');              addspacef(14);              prtf_upper(amoun,toupper(cu_type[0]));              printf("%c%c\n\n",28,'q');              addspacef(36);              printf("RMB¥");              prtf_dnum(amoun,13);              printf("%c%c%c%c%c%c%c%c%c%c",12,                27,'%','9',1,20,27,'[','4','i');            }          else            {              printf("%c%c%c%c%c%c%c%c\n",                27,'[','5','i',27,']',28,'p');              printf("      ┏━━━━┓\n");              printf("      ┃");              switch(toupper(cu_type[0]))                {                  case 'U':                    printf("%-8s","  美    元  ");                    break;                  case 'J':                    printf("%-8s","  日    元  ");                    break;                  case 'H':                    printf("%-8s","  港    元  ");                    break;                  case 'M':                    printf("%-8s","德国马克");                    break;                  case 'P':                    printf("%-8s","  英    镑  ");                    break;                  case 'F':                    printf("%-8s","法国法郎");                    break;                  case 'C':                    printf("%-8s","加拿大元");                }              printf("┃\n");              printf("      ┗━━━━┛\n");              printf("%c%c\n",28,'q');              printf("      换存单日期: %4d年%2d月%2d日",year,month,day);              if(ope_date!=int_date) printf("(部提)");              else addspacef(6);              addspacef(45);              printf("%4d-%2d-%2d\n",int_date/10000,(int_date%10000)/100                ,int_date%100);              printf("      原存单号: ");              prtf_inum(cr_num2,7);              printf("\n\n\n");              printf("%c%c                  %-8s%c%c",27,'[',nam,27,']');              addspacef(36);              prtf_inum((long)s_num[0],2);              putchar('-');              prtf_inum(a_num,9);              addspacef(18);              switch(toupper(cu_type[0]))                {                  case 'U':

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -