FZBHZCX.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 pop5
- hide menu mainmenu
- set clock to 0,69
- deactivate window win
- on key
- set sysmenu off
- set colo to w/n
- clea
- p=1
- ********
- if file('fzbhz.dbf')
- use fzbhz
- else
- ! copy jqbbfzb.dbf fzbhz.dbf >nul
- use fzbhz
- endif
- 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 '│'
- @ 3,44 say '上 年 数'
- @ 3,60 say'│'
- set colo to 6+/
- @ 3,63 say ' 本 年 数'
- set colo to 2/
- @ 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 下页:Home计算: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 zc
- @ 4+pd,36 say h1
- 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
- 1
- set colo to 2+/1
- @5,2 say zc
- @ 5,36 say h1
- 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
- zc1='zc'
- h='h1'
- ncs='ncs1'
- nms='nms1'
- zy=1
- do whil .t.
- x=inkey(0)
- do case
- case x=4
- zy=1
- *→
- set colo to 2/n
- if ys1=ys
- @ 3,44 say ' 数 量 '
- else
- @ 3,44 say '上 年 数'
- endif
- set colo to 6+/
- if ys1=ys
- @ 3,63 say ' 金 额 '
- else
- @ 3,63 say ' 本 年 数'
- endif
- case x=19
- *←
- set colo to 2
- if ys1=ys
- @ 3,63 say ' 金 额 '
- else
- @ 3,63 say ' 本 年 数'
- endif
- set colo to 6+/
- if ys1=ys
- @ 3,44 say ' 数 量 '
- else
- @ 3,44 say '上 年 数'
- endif
- zy=0
- ***************************************
- case x=46 .or. x=45 .or. x>47 .and. x<58
- a1=.00
- if pp1<>' ' .and. p=1 .or. p=2 .and. pp2<>' ' .or. eof()
- ?? chr(7)
- loop
- endif
- keyb chr(x)
- if zy=1
- set colo to /w
- @ 4+pd,62 say ' '
- @ 4+pd,62 say '' get a1 pict'@bz 99999999999.99'
- read
- repl &nms with a1
- else
- @ 4+pd,43 say '' get a1 pict'@bz 99999999999.99'
- read
- repl &ncs with a1
- endif
- set colo to w/n
- xx=recn()
- pd2=pd
- *****************
- sele 3
- use fzbjs
- do jsgs
- sele 1
- *do fzbjs
- *****************
- if ys1=ys
- go (ys-1)*18+1
- else
- go (ys1)*18
- skip -17
- endif
- pd=1
- set colo to w/n
- do whil .t.
- if zy=0 .and. pp1='' .or. zy=1 .and. pp2=''
- if &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,42 say ' '
- endif
- if &nms<>0
- @ 4+pd,62 say ' '
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,62 say ' '
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,62 say ' '
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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
- if zy=1
- set colo to 2
- @ 3,44 say '上 年 数 '
- set colo to 6+/
- @ 3,63 say ' 本 年 数 '
- else
- set colo to 6+/
- @ 3,44 say '上 年 数'
- set colo to 2/
- @ 3,63 say ' 本 年 数'
- endif
- 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- else
- @ 4+pd,43 say ' '
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 5,43 say &ncs pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms<>0
- @ 5,63 say &nms pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- else
- ?? chr(7)
- endif
- ***下页
- case x=3
- if ys1=ys-1
- if zy=1
- set colo to 2
- @ 3,44 say ' 数 量 '
- set colo to 6+/
- @ 3,63 say ' 金 额 '
- else
- set colo to 6+/
- @ 3,44 say ' 数 量 '
- set colo to 2
- @ 3,63 say ' 金 额 '
- endif
- endif
- 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 5,43 say &ncs pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms<>0
- @ 5,63 say &nms pict'999,999,999.99'
- else
- @ 5,63 say ' '
- endif
- pd=1
- else
- ?? chr(7)
- endif
- ****左页
- case x=15
- if p=2
- zc1='zc'
- h='h1'
- ncs='ncs1'
- nms='nms1'
- set colo to w/n
- go (ys1-1)*18+1
- x=recn()
- pd=1
- set colo to 2
- @ 3,5 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 5,43 say &ncs pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms<>0
- @ 5,63 say &nms 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
- zc1='fz'
- h='h2'
- ncs='ncs2'
- nms='nms2'
- set colo to 2
- @ 3,5 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 &ncs<>0
- @ 4+pd,43 say &ncs pict'999,999,999.99'
- endif
- if &nms<>0
- @ 4+pd,63 say &nms 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 &ncs<>0
- @ 5,43 say &ncs pict'999,999,999.99'
- else
- @ 5,43 say ' '
- endif
- if &nms<>0
- @ 5,63 say &nms 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