www.pudn.com > jq_gongzi.ARJ > GZBHZ-1.PRG


*************************** 
* .\GZBHZ-1.PRG 
*************************** 
if GZBWJ='gzb4' 
  set color to g+/b , bg+/r 
  PD = 1 
  @ 7 , 4 say '选择汇总部门:' 
  @ 9 , 1 prompt '从001到100号 ' 
  @ 10 , 2 prompt '从101到200号 ' 
  @ 11 , 3 prompt '从201到300号 ' 
  @ 12 , 4 prompt '从301到400号 ' 
  @ 13 , 5 prompt '从401到500号 ' 
  menu to PD 
  do case 
  case PD=1 
    RECN1 = 1 
    RECN2 = 100 
  case PD=2 
    RECN1 = 101 
    RECN2 = 200 
  case PD=3 
    RECN1 = 201 
    RECN2 = 300 
  case PD=4 
    RECN1 = 301 
    RECN2 = 400 
  case PD=5 
    RECN1 = 401 
    RECN2 = 500 
  endcase  
else  
  RECN1 = 1 
  RECN2 = 999 
endif  
set color to w+/b 
clear  
select 1 
use &gzbwj 
erase gzbk.dbf 
copy to gzbk.dbf structure extended 
use gzbk 
delete all for FIELD_NAME='编号' 
delete all for FIELD_NAME='姓名' 
delete all for FIELD_NAME='签____章' 
delete all for FIELD_NAME='帐号' 
pack  
replace FIELD_LEN with 10 all 
replace FIELD_DEC with 2 all 
erase gzbhz.dbf 
creat gzbhz.dbf from gzbk 
append blank 
select 2 
use &gzbwj 
go bottom 
MLS = recno() 
go top 
select 3 
use gzbk 
do while  not eof() 
  FIELD = FIELD_NAME 
  select 2 
  go top 
  sum all &field to x1 for recn()>=recn1 .and. recn()<=recn2 
  select 1 
  repl &field with x1 
  select 3 
  skip  
enddo  
close all 
set color to gr+/b 
@ 0 , 0 say '挚 诚 奉 献 !' 
@ 0 , 67 say 'JQ系列软件' 
@ 1 , 35 say '从' 
@ 1 , 39 say RECN1 picture '999' 
@ 1 , 43 say '号汇总到' 
@ 1 , 53 say RECN2 picture '999' 
@ 1 , 57 say '号' 
set color to rb+/b 
@ 0 , 25 say '  工 资 表 数 据 汇 总' 
set color to g+/b 
@ 2 , 0 say '┏━━━━━━━━━━━━┯━━━━━━━━━━━━┯━━━━━━━━━━━━┓' 
@ 3 , 0 say '┃' 
@ 3 , 5 say '   项      目' 
@ 3 , 26 say '│' 
@ 3 , 30 say '    项      目' 
@ 3 , 52 say '│' 
@ 3 , 60 say ' 项       目' 
@ 3 , 78 say '┃' 
@ 4 , 0 say '┠────────────┼────────────┼────────────┨' 
PD = 4 
do while PD<22 
  I = PD+1 
  @ I , 0 say '┃' 
  @ I , 26 say '│' 
  @ I , 52 say '│' 
  @ I , 78 say '┃' 
  PD = PD+1 
enddo  
@ 23 , 0 say '┗━━━━━━━━━━━━┷━━━━━━━━━━━━┷━━━━━━━━━━━━┛' 
set color to b/gr 
@ 24 , 0 say space(80) 
@ 24 , 0 say '         JQ通用工资管理系统!                              ; 
      Esc= 退出    ' 
set color to gr+/gr 
@ 24 , 34 say '按 Print Screen 键打印屏幕!' 
set color to 
select 1 
use gzbhz 
count all to JLS 
ZDS = fcount() 
PD = 1 
YFGZ = 0 
SFGZ = 0 
do while PD<=ZDS 
  if field(PD)='应发工资' 
    YFGZ = PD 
  endif  
  if field(PD)='实发工资' 
    SFGZ = PD 
  endif  
  PD = PD+1 
enddo  
if YFGZ=0 
  @ 10 , 30 say '“应发工资”项目没找到!' 
  I = inkey(0) 
  return  
endif  
if SFGZ=0 
  @ 11 , 30 say '“实发工资”项目没找到!' 
  I = inkey(0) 
  return  
endif  
go top 
ZDS = fcount() 
if ZDS>2 
  PD = 1 
  BS = 1 
  YS = 1 
  do while PD<=ZDS 
    do case 
    case YS=1 
      @ 4+BS , 2 say field(PD) 
    case YS=2 
      @ 4+BS , 28 say field(PD) 
    case YS=3 
      @ 4+BS , 56 say field(PD) 
    endcase  
    PD = PD+1 
    BS = BS+1 
    if BS=19 
      YS = YS+1 
      BS = 1 
    endif  
  enddo  
  go top 
  do while  not bof() 
    PD1 = field(1) 
    PD1 = field(2) 
    PD = 1 
    BS = 1 
    YS = 1 
    do while PD<=ZDS 
      do case 
      case YS=1 
        PD1 = field(PD) 
        @ 4+bs,12 say &pd1  
      case YS=2 
        PD1 = field(PD) 
        @ 4+bs,38 say &pd1 
      case YS=3 
        PD1 = field(PD) 
        @ 4+bs,66 say  &pd1 
      endcase  
      PD = PD+1 
      BS = BS+1 
      if BS=19 
        YS = YS+1 
        BS = 1 
      endif  
    enddo  
    if inkey(0)=27 
      exit  
    endif  
  enddo  
endif  
set color to 
close all 
return