YJKBSR.PRG
资源名称:jq_report.ARJ [点击查看]
上传用户:xue7720
上传日期:2013-01-31
资源大小:1240k
文件大小:9k
源码类别:
行业应用
开发平台:
VFP
- ********
- *define WINDOW output FROM 0,0 TO 25,79
- *ACTIVATE WINDOW output
- hide popup pop2
- hide popup pop2_4
- hide menu mainmenu
- set clock to 0,69
- deactivate window win
- on key
- set sysmenu off
- clos data
- set colo to w/n
- clea
- if file(wj)
- use &wj
- else
- ! copy jqbbyjkb.dbf &wj >nul
- use &wj
- endif
- p=1
- ********
- set colo to 6/
- @ 1,0 say '广西盐业公司'
- @ 1,67 say 'JQ财务系统'
- set colo to 2/
- ** 作为通用子程序时,下面应为@ 0,25 say &hh=' 科目汇总表等'
- @ 0,25 say '应 交 款 项 表'
- @ 2,0 say '┏━━━━━━━━━━━━━━━━┯━┯━━━━━━━━━━┯━━━━━━━━┓'
- @ 3,0 say '┃'
- @ 3,5 say ' 项 目 '
- @ 3,34 say '│'
- @ 3,36 say '行'
- @ 3,38 say '│'
- set colo to 6+/
- @ 3,44 say '年初未交数'
- set colo to 2/
- @ 3,60 say'│'
- @ 3,63 say ' 本年应交数'
- @ 3,78 say '┃'
- *
- @ 4,0 say '┠────────────────┼─┼──────────┼────────┨'
- pd=4
- do whil pd<23
- i=pd+1
- @ i,0 say '┃'
- @ i,34 say '│'
- @ i,38 say '│'
- @ i,60 say'│'
- @ i,78 say '┃'
- pd=pd+1
- enddo
- @ 23,0 say '┗━━━━━━━━━━━━━━━━┷━┷━━━━━━━━━━┷━━━━━━━━┛'
- set colo to 1/6
- @ 24,0 say '←左栏: →右栏: →|右页: |←左页: ↑上笔: ↓下笔: PgUp 上页: PgDn下页: Esc 退出'
- set colo to w/n
- ************
- go bott
- pd=recn()
- pd=pd/16
- pd1=int(pd)
- ys=pd-pd1
- if ys=0
- ys=pd1
- else
- ys=pd1+1
- endif
- go top
- pd=1
- ys1=1
- do whil .t.
- @ 4+pd,2 say xm
- @ 4+pd,36 say h
- if ncs<>0
- @ 4+pd,43 say ncs pict'999,999,999.99'
- endif
- if bns<>0
- @ 4+pd,63 say bns pict'999,999,999.99'
- endif
- if .not. eof()
- skip
- pd=pd+1
- else
- exit
- endif
- *pd=pd+1
- if pd=19
- exit
- endif
- enddo
- 1
- set colo to 2+/1
- @5,2 say xm
- @ 5,36 say h
- if ncs<>0
- @ 5,43 say ncs pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if bns<>0
- @ 5,63 say bns pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- zc1='XM'
- h='h'
- ncs1='ncs'
- nms1='bns'
- zy=0
- do whil .t.
- x=inkey(0)
- do case
- case x=1
- set colo to w/n
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,42 say ' '
- endif
- if &nms1<>0
- @ 4+pd,62 say ' '
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,62 say ' '
- endif
- set colo to 2+/1
- 1
- pd=1
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- *endif
- case x=4
- * →
- if p<>2
- zy=1
- set colo to 2/
- @ 3,44 say '年初未交数'
- set colo to 6+/
- @ 3,63 say ' 本年应交数'
- else
- ?? chr(7)
- endif
- case x=19
- *←
- if p<>2
- zy=0
- set colo to 2/
- @ 3,63 say ' 本年应交数'
- set colo to 6+/
- @ 3,44 say '年初未交数'
- else
- ?? chr(7)
- endif
- case x=46 .or. x=45 .or. x>47 .and. x<58
- a1=.00
- if pp1<>' '
- ?? chr(7)
- loop
- endif
- keyb chr(x)
- if zy=1
- @ 4+pd,62 say '' get a1 pict'@bz 9999999999.99'
- read
- repl &nms1 with a1
- else
- @ 4+pd,43 say '' get a1 pict'@bz 9999999999.99'
- read
- repl &ncs1 with a1
- endif
- xx=recn()
- pd2=pd
- *************************************
- sele 3
- use yjkbjs
- do jsgs
- sele 1
- ********************************************
- if ys1=ys
- go (ys-1)*18
- else
- go (ys1)*18
- skip -17
- endif
- pd=1
- set colo to w/n
- do whil .t.
- if pp1<>' ' .or. pp1=' '
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- endif
- if .not. eof()
- skip
- pd=pd+1
- else
- exit
- endif
- if pd=19
- exit
- endif
- enddo
- go xx
- pd=pd2
- *****************
- if pd=18 .or. eof()
- ?? chr(7)
- else
- set colo to w/n
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,42 say ' '
- endif
- if &nms1<>0
- @ 4+pd,62 say ' '
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,62 say ' '
- endif
- set colo to 2+/1
- skip
- pd=pd+1
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- endif
- case x=5
- if pd=1 .or. recn()=1
- ?? chr(7)
- else
- set colo to w/n
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- set colo to 2+/1
- skip -1
- pd=pd-1
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- endif
- case x=24 .or. x=13
- if pd=18 .or. eof()
- ?? chr(7)
- else
- set colo to w/n
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- set colo to 2+/1
- skip
- pd=pd+1
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- endif
- ****上页
- case x=18
- if ys1>1
- ys1=ys1-1
- go ys1*18
- skip -17
- pd=1
- set colo to w/n
- @ 5,2 clea to 22,33
- @ 5,36 clea to 22,37
- @ 5,40 clea to 22,58
- @ 5,62 clea to 22,77
- do whil .t.
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- else
- @ 4+pd,63 say ' '
- endif
- if .not. eof()
- skip
- pd=pd+1
- else
- exit
- endif
- if pd=19
- exit
- endif
- enddo
- skip -18
- set colo to 2+/1
- @ 5,2 say &zc1
- @ 5,36 say &h
- if &ncs1<>0
- @ 5,43 say &ncs1 pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms1<>0
- @ 5,63 say &nms1 pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- else
- ?? chr(7)
- endif
- ***下页
- case x=3
- set colo to w/n
- if ys1<ys
- ys1=ys1+1
- go (ys1-1)*18+1
- x=recn()
- pd=1
- set colo to w/n
- @ 5,2 clea to 22,33
- @ 5,36 clea to 22,37
- @ 5,40 clea to 22,58
- @ 5,62 clea to 22,77
- do whil .t.
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- endif
- if .not. eof()
- skip
- pd=pd+1
- else
- exit
- endif
- *pd=pd+1
- if pd=19
- exit
- endif
- enddo
- go x
- set colo to 2+/1
- @ 5,2 say &zc1
- @ 5,36 say &h
- if &ncs1<>0
- @ 5,43 say &ncs1 pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms1<>0
- @ 5,63 say &nms1 pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- else
- ?? chr(7)
- endif
- ****左页
- case x=15
- if p=2
- ncs1='ncs'
- nms1='bns'
- set colo to w/n
- go (ys1-1)*18+1
- x=recn()
- pd=1
- set colo to 6+/
- @ 3,44 say '年初未交数 '
- set colo to 2
- @ 3,63 say ' 本年应交数'
- set colo to w/n
- @ 5,2 clea to 22,33
- @ 5,36 clea to 22,37
- @ 5,40 clea to 22,58
- @ 5,62 clea to 22,77
- do whil .t.
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- endif
- if .not. eof()
- skip
- pd=pd+1
- else
- exit
- endif
- *pd=pd+1
- if pd=19
- exit
- endif
- enddo
- go x
- set colo to 2+/1
- @ 5,2 say &zc1
- @ 5,36 say &h
- if &ncs1<>0
- @ 5,43 say &ncs1 pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms1<>0
- @ 5,63 say &nms1 pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- p=1
- else
- ?? chr(7)
- endif
- ****右页
- case x=9
- if p=1
- set colo to w/n
- go (ys1-1)*18+1
- x=recn()
- pd=1
- zy=0
- ncs1='bnyj'
- nms1='nms'
- set colo to 6+/
- @ 3,44 say '本年已交数'
- set colo to 2
- @ 3,63 say ' 年末未交数 '
- set colo to w/n
- @ 5,2 clea to 22,33
- @ 5,36 clea to 22,37
- @ 5,40 clea to 22,58
- @ 5,62 clea to 22,77
- do whil .t.
- @ 4+pd,2 say &zc1
- @ 4+pd,36 say &h
- if &ncs1<>0
- @ 4+pd,43 say &ncs1 pict'999,999,999.99'
- endif
- if &nms1<>0
- @ 4+pd,63 say &nms1 pict'999,999,999.99'
- endif
- if .not. eof()
- skip
- pd=pd+1
- else
- exit
- endif
- *pd=pd+1
- if pd=19
- exit
- endif
- enddo
- go x
- set colo to 2+/1
- @ 5,2 say &zc1
- @ 5,36 say &h
- if &ncs1<>0
- @ 5,43 say &ncs1 pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms1<>0
- @ 5,63 say &nms1 pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- p=2
- else
- ?? chr(7)
- endif
- case x=27
- exit
- othe
- ?? chr(7)
- endcase
- enddo
- clos data
- set colo to w+/1
- *set colo of scheme 3 to w+/1
- @ 0,0,23,79 box '北北北北' colo scheme 3
- set colo to w+/n
- @ 1,1,22,78 box '鞍鞍鞍鞍鞍' colo scheme 1
- @ 23,28 say "当前数据的月份:"+str(Ryear,4,0)+"年"+str(Ryf,2,0)+"月" colo 1+/3
- @ 24,0 say ' JQ001汇总报表系统(Ver1.0) 黄朝生研制 版权所有 南宁市建政路51号 邮编:530023 ' colo 4/w
- set clock to 23,69
- on key label Escape do Rquit
- retu