ZZSBSR.PRG
上传用户:xue7720
上传日期:2013-01-31
资源大小:1240k
文件大小:8k
源码类别:

行业应用

开发平台:

VFP

  1. *define WINDOW   output FROM 0,0 TO 25,79 
  2. *ACTIVATE WINDOW output
  3. hide popup pop2
  4. hide popup pop2_5
  5. hide menu mainmenu
  6. set clock to 0,69 
  7. deactivate window win
  8. on key 
  9. set sysmenu off
  10. set colo to w/n
  11. clea
  12. if file(wj)
  13.     use &wj
  14.    else
  15.    ! copy jqbbzzsb.dbf &wj >nul
  16.    use &wj
  17. endif
  18. p=1
  19. ********
  20. set colo to 6/
  21. @ 1,0 say '广西盐业公司'
  22. @ 1,67 say 'JQ财务系统'
  23. set colo to 2/
  24. ** 作为通用子程序时,下面应为@ 0,25 say &hh=' 科目汇总表等'
  25. @ 0,25 say '增  值  税  明  细  表 '
  26. @ 2,0 say '┏━━━━━━━━━━━━━━━━┯━┯━━━━━━━━━━┯━━━━━━━━┓'
  27. @ 3,0 say '┃'
  28. @ 3,5 say '        项         目 '
  29. @ 3,34 say '│'          
  30. @ 3,36 say '行'
  31. @ 3,38 say '│'
  32. set colo to 6+/
  33. @ 3,44 say '本  月   数'
  34. set colo to 2/
  35. @ 3,60 say'│'
  36. @ 3,63 say ' 累  计   数'
  37. @ 3,78 say '┃'
  38. *
  39. @ 4,0 say '┠────────────────┼─┼──────────┼────────┨'
  40. pd=4
  41. do whil pd<23
  42. i=pd+1
  43. @ i,0 say '┃'
  44. @ i,34 say '│'
  45. @ i,38 say '│'
  46. @ i,60 say'│'
  47. @ i,78 say '┃'
  48. pd=pd+1
  49. enddo
  50. @ 23,0 say '┗━━━━━━━━━━━━━━━━┷━┷━━━━━━━━━━┷━━━━━━━━┛'
  51. set colo to 1/6
  52. @ 24,0 say '      ↑ 上一笔 : ↓ 下一笔 : PgUp 上一页 : PgDn 下一页 : Esc 退出            '
  53. set colo to w/n
  54. ************
  55. go bott
  56. pd=recn()
  57. pd=pd/16
  58. pd1=int(pd)
  59. ys=pd-pd1
  60. if ys=0
  61.    ys=pd1
  62.   else
  63.   ys=pd1+1
  64. endif
  65. go top
  66. pd=1
  67. ys1=1
  68. do whil .t. 
  69. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  70. @ 4+pd,36 say h
  71. if bys<>0
  72. @ 4+pd,43 say bys pict'999,999,999.99'
  73. endif
  74. if ljs<>0
  75. @ 4+pd,63 say ljs pict'999,999,999.99'
  76. endif
  77. if .not. eof()
  78. skip
  79. pd=pd+1
  80. else 
  81. exit
  82. endif
  83. *pd=pd+1
  84. if pd=19
  85. exit
  86. endif
  87. enddo
  88. 1
  89. set colo to 2+/1
  90. @5,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  91. @ 5,36 say h
  92. if bys<>0
  93. @ 5,43 say bys pict'999,999,999.99'
  94. else 
  95. @ 5,43 say '              '
  96. endif
  97. if ljs<>0
  98. @ 5,63 say ljs pict'999,999,999.99'
  99. else
  100. @ 5,63 say '              '
  101. endif
  102. pd=1
  103. zy=0
  104. do whil .t.
  105. x=inkey(0)
  106. do case
  107. case x=4
  108. zy=1
  109. set colo to 2/n
  110. @ 3,44 say '上  年   数'
  111. set colo to 6+/
  112. @ 3,63 say ' 累  计   数'
  113. case x=19
  114. zy=0
  115. set colo to 2/n
  116. @ 3,63 say ' 累  计   数'
  117. set colo to 6+/n
  118. @ 3,44 say '上  年   数'
  119. case x=46 .or. x=45 .or. x>47 .and. x<58
  120. a1=.00
  121. if pp1<>' ' .or. recn()=1 .and. zy=0
  122. ?? chr(7)
  123. loop
  124. endif
  125. keyb chr(x)
  126. if zy=1
  127. @ 4+pd,62 say '' get a1 pict'@bz 999999999.99' 
  128. read
  129. repl ljs with a1 
  130. else
  131. @ 4+pd,43 say '' get a1 pict'@bz 999999999.99'
  132. read
  133. repl bys with a1
  134. endif
  135. xx=recn()
  136. pd2=pd
  137. ****************************计算公式
  138. sele 3
  139. use zzsbjs
  140. do jsgs
  141. sele 1
  142. ************************************
  143. set colo to w/n
  144. if ys1=1
  145. go top
  146. else
  147. go 19
  148. endif
  149. pd=1
  150. do whil .t. 
  151. if zy=0 .and. pp1='' .or. zy=1 .and. pp1=''
  152. if bys<>0
  153. @ 4+pd,43 say bys pict'999,999,999.99'
  154. else
  155. @ 4+pd,43 say '              '
  156. endif
  157. if ljs<>0
  158. @ 4+pd,63 say ljs pict'999,999,999.99'
  159. else
  160. @ 4+pd,63 say '              '
  161. endif
  162. endif
  163. if .not. eof()
  164. skip
  165. pd=pd+1
  166. else 
  167. exit
  168. endif
  169. if pd=19
  170. exit
  171. endif
  172. enddo
  173. go xx
  174. pd=pd2
  175. *****************
  176.  if pd=18 .or. eof()
  177.        ?? chr(7)
  178.      else
  179. set colo to w/n
  180. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  181. @ 4+pd,36 say h
  182. if bys<>0
  183. @ 4+pd,43 say bys pict'999,999,999.99'
  184. else
  185. @ 4+pd,42 say '               '
  186. endif
  187. if ljs<>0
  188. @ 4+pd,62 say '              '
  189. @ 4+pd,63 say ljs pict'999,999,999.99'
  190. else
  191. @ 4+pd,62 say '               '
  192. endif
  193. set colo to 2+/1
  194.       skip 
  195.      pd=pd+1
  196. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  197. @ 4+pd,36 say h
  198. if bys<>0
  199. @ 4+pd,43 say bys pict'999,999,999.99'
  200. else
  201. @ 4+pd,43 say '              '
  202. endif
  203. if ljs<>0
  204. @ 4+pd,63 say ljs pict'999,999,999.99'
  205. else
  206. @ 4+pd,63 say '              '
  207. endif
  208. endif
  209. **************
  210. case x=1
  211. set colo to w/n
  212. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  213. @ 4+pd,36 say h
  214. if bys<>0
  215. @ 4+pd,43 say bys pict'999,999,999.99'
  216. else
  217. @ 4+pd,42 say '               '
  218. endif
  219. if ljs<>0
  220. @ 4+pd,62 say '              '
  221. @ 4+pd,63 say ljs pict'999,999,999.99'
  222. else
  223. @ 4+pd,62 say '               '
  224. endif
  225. 1
  226. set colo to 2+/1
  227.      pd=1
  228. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  229. @ 4+pd,36 say h
  230. if bys<>0
  231. @ 4+pd,43 say bys pict'999,999,999.99'
  232. else
  233. @ 4+pd,43 say '              '
  234. endif
  235. if ljs<>0
  236. @ 4+pd,63 say ljs pict'999,999,999.99'
  237. else
  238. @ 4+pd,63 say '              '
  239. endif
  240. **************
  241.   case x=5
  242.    if pd=1 .or. recn()=1
  243.      ?? chr(7)
  244.    else
  245. set colo to w/n
  246. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  247. @ 4+pd,36 say h
  248. if bys<>0
  249. @ 4+pd,43 say bys pict'999,999,999.99'
  250. else
  251. @ 4+pd,43 say '              ' 
  252. endif
  253. if ljs<>0
  254. @ 4+pd,63 say ljs pict'999,999,999.99'
  255. else
  256. @ 4+pd,63 say '              '
  257. endif
  258. set colo to 2+/1
  259.    skip -1
  260.    pd=pd-1
  261. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  262. @ 4+pd,36 say h
  263. if bys<>0
  264. @ 4+pd,43 say bys pict'999,999,999.99'
  265. else
  266. @ 4+pd,43 say '              '
  267. endif
  268. if ljs<>0
  269. @ 4+pd,63 say ljs pict'999,999,999.99'
  270. else
  271. @ 4+pd,63 say '              '
  272. endif
  273. endif
  274. case x=24 .or. x=13
  275.       if pd=18 .or. eof()
  276.        ?? chr(7)
  277.      else
  278. set colo to w/n
  279. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
  280. @ 4+pd,36 say h
  281. if bys<>0
  282. @ 4+pd,43 say bys pict'999,999,999.99'
  283. else
  284. @ 4+pd,43 say '              '
  285. endif
  286. if ljs<>0
  287. @ 4+pd,63 say ljs pict'999,999,999.99'
  288. else
  289. @ 4+pd,63 say '              '
  290. endif
  291. set colo to 2+/1
  292.       skip 
  293.      pd=pd+1
  294. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
  295. @ 4+pd,36 say h
  296. if bys<>0
  297. @ 4+pd,43 say bys pict'999,999,999.99'
  298. else
  299. @ 4+pd,43 say '              '
  300. endif
  301. if ljs<>0
  302. @ 4+pd,63 say ljs pict'999,999,999.99'
  303. else
  304. @ 4+pd,63 say '              '
  305. endif
  306. endif
  307. ****上页
  308. case x=18
  309. if ys1>1
  310. ys1=ys1-1
  311. go ys1*18
  312.  skip -17
  313. pd=1
  314. set colo to w/n
  315. @ 5,2 clea to 22,33
  316. @ 5,36 clea to 22,37
  317. @ 5,40 clea to 22,58
  318. @ 5,62 clea to 22,77
  319. do whil .t. 
  320. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
  321. @ 4+pd,36 say h
  322. if bys<>0
  323. @ 4+pd,43 say bys pict'999,999,999.99'
  324. else
  325. @ 4+pd,43 say '              '
  326. endif
  327. if ljs<>0
  328. @ 4+pd,63 say ljs pict'999,999,999.99'
  329. else
  330. @ 4+pd,63 say '              '
  331. endif
  332. if .not. eof()
  333. skip
  334. pd=pd+1
  335. else 
  336. exit
  337. endif
  338. if pd=19
  339. exit
  340. endif
  341. enddo
  342. skip -18
  343. set colo to 2+/1
  344. @ 5,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  345. @ 5,36 say h
  346. if bys<>0
  347. @ 5,43 say bys pict'999,999,999.99'
  348. else
  349. @ 5,43 say '              '
  350. endif
  351. if ljs<>0
  352. @ 5,63 say ljs pict'999,999,999.99'
  353. else 
  354. @ 5,63 say '              '
  355. endif
  356. pd=1
  357. else
  358. ?? chr(7)
  359. endif
  360. ***下页
  361. case x=3
  362. set colo to w/n
  363. if ys1<ys
  364.   ys1=ys1+1
  365.   go (ys1-1)*18+1
  366.   x=recn()
  367. pd=1
  368. set colo to w/n
  369. @ 5,2 clea to 22,33
  370. @ 5,36 clea to 22,37
  371. @ 5,40 clea to 22,58
  372. @ 5,62 clea to 22,77
  373. do whil .t. 
  374. @ 4+pd,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
  375. @ 4+pd,36 say h
  376. if bys<>0
  377. @ 4+pd,43 say bys pict'999,999,999.99'
  378. endif
  379. if ljs<>0
  380. @ 4+pd,63 say ljs pict'999,999,999.99'
  381. endif
  382. if .not. eof()
  383. skip
  384. pd=pd+1
  385. else 
  386. exit
  387. endif
  388. *pd=pd+1
  389. if pd=19
  390. exit
  391. endif
  392. enddo
  393. go x
  394. set colo to 2+/1
  395. @ 5,2 say xm pict'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx' 
  396. @ 5,36 say h
  397. if bys<>0
  398. @ 5,43 say bys pict'999,999,999.99'
  399. else
  400. @ 5,43 say '              '
  401. endif
  402. if ljs<>0
  403. @ 5,63 say ljs pict'999,999,999.99'
  404. else
  405. @ 5,63 say '              '
  406. endif
  407. pd=1
  408. else
  409. ?? chr(7)
  410. endif  
  411. case x=27
  412. exit
  413. othe
  414. ?? chr(7)
  415. endcase
  416. enddo
  417. clos data
  418. set colo to w+/1
  419. *set colo of scheme 3 to w+/1
  420. @ 0,0,23,79 box '北北北北' colo scheme 3
  421. set colo to w+/n
  422. @ 1,1,22,78 box '鞍鞍鞍鞍鞍' colo scheme 1
  423. @ 23,28 say "当前数据的月份:"+str(Ryear,4,0)+"年"+str(Ryf,2,0)+"月" colo 1+/3
  424. @ 24,0 say ' JQ001汇总报表系统(Ver1.0)  黄朝生研制  版权所有  南宁市建政路51号  邮编:530023 ' colo 4/w  
  425. set clock to 23,69
  426. on key label Escape do Rquit
  427. retu