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

行业应用

开发平台:

VFP

  1. *┌──────────────────────────────────┐
  2. *│      Program: jqhzbb.PRG for foxpro 2.6                            │
  3. *│     Function: jq001汇总报表系统主菜单    黄朝生编制                │
  4. *└──────────────────────────────────┘
  5. clea all
  6. set mouse off
  7. SET TALK   OFF
  8. SET SAFETY OFF && 设记分牌为OFF
  9. set sysmenu off
  10. set escape off
  11. set cent on 
  12. *set clock to 23,69
  13. *******************************************
  14. set dele on
  15. set path to jqbb
  16. *do form jqbb
  17. set color to w/0,,
  18. use dw
  19. Rdwmc=mc
  20. bbh='19  年   月   日  (      )      '
  21. set color to 3/3
  22. clea
  23. set color to w/n
  24. @ 4,7,16,76 box'          '
  25. set color to w+/1+
  26. @ 3,5,15,75 box'         '
  27. @ 3,5 to 15,75 double  
  28. @ 4,8 say 'J Q 系 列 软 件 '
  29. set colo to w/n
  30. @ 6,12,13,70 box'         ' 
  31. set color to w+/2+
  32. @ 5,10,12,68 box'         ' 
  33. @ 5,10 to 12,68 
  34. set colo to w+/1
  35. @ 14,27 say 'J Q 软 件 创 作 室      黄朝生' 
  36. set colo to w/n
  37. @ 7,16,11,64 box'          ' 
  38. set color to 6+/r+
  39. @ 6,14,10,62 box'          '
  40. @ 7,18 say '☆   JQ001   汇 总 报 表 系 统   ☆ '
  41. @ 9,32 say ' Ver  1.0'
  42. @ 24 , 0 say ""
  43. i=inkey(3)
  44. *****************************全局变量
  45. set colo to 3+/8 
  46. @ 10,24 clea to 16,64
  47. set colo to 3+/1
  48. @ 8,20 clea to 14,60
  49. publ rq1
  50. RQ1=DATE()
  51. use lll
  52. js=1
  53. @ 11,30 say '请输入密码:'
  54. @ 13,30 say '请输入日期:'
  55. do whil .t.
  56. czy='        '
  57. @ 9,30 say '请输入姓名:' get czy
  58. read
  59. loca all for czy $xm
  60. if .not. eof()
  61. exit
  62. endif
  63. ?? chr(7)
  64. js=js+1
  65. if js=4
  66. quit
  67. endif
  68. enddo
  69. a1=1
  70. do whil .t.
  71. set colo to /w
  72. @ 11,42 say '        '
  73. js=1
  74. pd1=''
  75. pd3=''
  76. do whil js<9
  77.  pd=inkey(0)
  78.  if pd>47 .and. pd<58
  79.  pd1=pd1+'*'
  80.    pd=chr(pd)
  81.    pd3=pd3+pd
  82.     js=js+1
  83.    @11,42 say pd1 
  84.    else
  85.      pd3=ltrim(trim(pd3))
  86.   if pd=13 
  87.     if len(ltrim(trim(pd3)))<>0  
  88.    exit
  89.    endif
  90.   endif
  91.   endif
  92. enddo
  93. set colo to
  94. @ 11,42 say '        '
  95. @ 11,42 say '********'
  96. pd3=val(pd3)
  97. if pd3=mm
  98. exit
  99. endif
  100. ?? chr(7)
  101. a1=a1+1
  102. if a1=4
  103. quit
  104. endif
  105. enddo
  106. @ 13,42 GET RQ1
  107. READ
  108. pd1=mont(rq1)
  109. Ryf=pd1
  110. Ryear=year(rq1)
  111. cd1=pd1
  112. pd2=str(pd1,2,0)
  113. pd2=ltrim(pd2)
  114. pd2='m'+pd2
  115. cd=pd2
  116. xm=czy
  117. eras cdk.dbf
  118. x='jqbb'+str(Ryear,4,0)
  119. xx=x+'nul'
  120. if !file(xx)
  121.    set colo to w+/1
  122.    @ 5,20 clea to 15,60
  123.    @ 10,35 say 'Y=是,其他=否 F'
  124.    @ 12,30 say '指定年份:'+str(Ryear)+' 年'
  125.    @ 8,23 say '尚没有建立指定年份的报表,是否创建它?'
  126.    i=inkey(0)
  127.    if i=89.or.i=121
  128.    ! md &x
  129.    ! cd &x
  130.    ! md m1
  131.    ! md m2
  132.    ! md m3
  133.    ! md m4
  134.    ! md m5
  135.    ! md m6
  136.    ! md m7
  137.    ! md m8
  138.    ! md m9
  139.    ! md m10
  140.    ! md m11
  141.    ! md m12
  142.    else
  143.    quit
  144.    endif
  145. endif   
  146. ! cd &x
  147. ! cd &pd2 
  148. *******************************************
  149. set mouse off
  150. SET COLOR OF SCHEME 2 TO w+/bg,N/W,N/W,B/w,B/Bg,N/Bg,GR+/W,N+/N,B/W,W/N
  151. * 修改 2号调色盘第 7个色彩对, 使热键颜色由+W/W 改为 GR+/W.
  152. SET BORDER TO SINGLE && 指定外框为单线.
  153. on key label Escape do Rquit
  154. ON ERROR DO ERR_2 WITH PROGRAM(),LINENO(),ERROR(),MESSAGE(1),MESSAGE()
  155. *ON ERROR DO ERR_PRO WITH LINENO(1),PROGRAM(),MESSAGE(),MESSAGE(1),ERROR(),;
  156.                     WLAST(),WREAD(),WONTOP(),RDLEVEL()
  157. PUBLIC DBNAME,DBNAME1,DBNAME2
  158. STORE SPACE(11) TO DBNAME  && 设DBNAME 为11个空格
  159. clea
  160. set colo of scheme 3 to w+/1
  161. @ 0,0,23,79 box '北北北北'
  162. set colo of scheme 1 to w+/n
  163. @ 1,1,22,78 box '鞍鞍鞍鞍鞍'
  164. set clock to 23,69
  165. @ 23,28 say "当前数据的月份:"+str(Ryear,4,0)+"年"+str(Ryf,2,0)+"月" colo 1+/3
  166. @ 24,0 say ' JQ001汇总报表系统(Ver1.0)  黄朝生研制  版权所有  南宁市建政路51号  邮编:530023 ' colo 4/w  
  167. save screen to zpm
  168. * 定义下拉式菜单:mainmenu
  169. DEFINE MENU mainmenu
  170. * 定义下拉式菜单各主选项
  171. DEFINE PAD pad1 OF mainmenu PROMPT "系统维护"
  172. DEFINE PAD pad2 OF mainmenu PROMPT "报表录入"
  173. DEFINE PAD pad3 OF mainmenu PROMPT "报表汇总"
  174. DEFINE PAD pad4 OF mainmenu PROMPT "报表打印"
  175. DEFINE PAD pad5 OF mainmenu PROMPT "报表查询"
  176. DEFINE PAD pad6 OF mainmenu PROMPT "其  它"
  177. DEFINE PAD pad7 OF mainmenu PROMPT "公  式"
  178. ON PAD pad1 OF mainmenu ACTIVATE POPUP pop1   && 选择1 相当于DO CASE
  179. ON PAD pad2 OF mainmenu ACTIVATE POPUP pop2
  180. ON PAD pad3 OF mainmenu ACTIVATE POPUP pop3
  181. ON PAD pad4 OF mainmenu ACTIVATE POPUP pop4
  182. ON PAD pad5 OF mainmenu ACTIVATE POPUP pop5
  183. ON PAD pad6 OF mainmenu ACTIVATE POPUP pop6
  184. ON PAD pad7 OF mainmenu ACTIVATE POPUP pop7
  185. * 定义下拉式菜单mainmenu的第一个子菜单:pop1
  186. DEFINE POPUP pop1 MARGIN  shadow
  187. DEFINE BAR  1 OF pop1 PROMPT "<1.系统报转入 "
  188. DEFINE BAR  2 OF pop1 PROMPT "<2.下属表读入 "
  189. DEFINE BAR  3 OF pop1 PROMPT "<3.汇总表转出 "
  190. DEFINE BAR  4 OF pop1 PROMPT "<4.备份 数 据 "
  191. DEFINE BAR  5 OF pop1 PROMPT "<5.恢复 数 据 " 
  192. DEFINE BAR  6 OF pop1 PROMPT "<6.版本 说 明 "
  193. DEFINE BAR  7 OF pop1 PROMPT "<7.退出JQ系统 "
  194. * 定义子菜单pop1各选项的执行程序或命令.
  195. ON SELECT BAR  1 OF pop1  DO xtbbzr          
  196. ON SELECT BAR  2 OF pop1  DO xsbdr           
  197. ON SELECT BAR  3 OF pop1  DO hzbzc         
  198. ON SELECT BAR  4 OF pop1  DO bfsj          && 备份数据
  199. ON SELECT BAR  5 OF pop1  DO hfsj          && 恢复数据
  200. ON SELECT BAR  6 OF pop1  DO bbsm          && 版本说明
  201. ON SELECT BAR  7 OF poP1  quit &&QUIT      && 退出
  202. * 定义下拉式菜单mainmenu的第二个子菜单:pop2
  203. DEFINE POPUP pop2 MARGIN shadow
  204. DEFINE BAR 1 OF pop2 PROMPT "<1.资产负债表 "
  205. DEFINE BAR 2 OF pop2 PROMPT "<2.损  益  表 "
  206. DEFINE BAR 3 OF pop2 PROMPT "<3.补充明细表 "
  207. DEFINE BAR 4 OF pop2 PROMPT "<4.应交款项表 "
  208. DEFINE BAR 5 OF pop2 PROMPT "<5.增值税报表 "
  209. DEFINE BAR 6 OF pop2 PROMPT "<6.利润明细表 "
  210. DEFINE BAR 7 OF pop2 PROMPT "<7.现金流量表 "
  211. * 定义pop2的程序项
  212. define popup pop2_1 margin shadow
  213. on bar 1 of pop2 activate popup pop2_1
  214. sele 1
  215. use hzdw
  216. count all to a1
  217. go top
  218. for i=1 to a1 
  219. define bar i of pop2_1 prompt hzdw
  220. ss='fzbsr'+alltrim(str(i))
  221. on selection bar i of pop2_1 do &ss
  222. if !eof()
  223. skip
  224. endif
  225. endfor
  226. define popup pop2_2 margin shadow
  227. on bar 2 of pop2 activate popup pop2_2
  228. sele 1
  229. use hzdw
  230. count all to a1
  231. go top
  232. for i=1 to a1
  233. define bar i of pop2_2 prompt hzdw
  234. ss='sybsr'+alltrim(str(i))
  235. on selection bar i of pop2_2 do &ss
  236. if !eof()
  237. skip
  238. endif
  239. endfor
  240.     
  241. define popup pop2_3 margin shadow
  242. on bar 3 of pop2 activate popup pop2_3
  243. sele 1
  244. use hzdw
  245. count all to a1
  246. go top
  247. for i=1 to a1
  248. define bar i of pop2_3 prompt hzdw
  249. ss='bcbsr'+alltrim(str(i))
  250. on selection bar i of pop2_3 do &ss
  251. if !eof()
  252. skip
  253. endif
  254. endfor
  255. define popup pop2_4 margin shadow
  256. on bar 4 of pop2 activate popup pop2_4
  257. sele 1
  258. use hzdw
  259. count all to a1
  260. go top
  261. for i=1 to a1
  262. define bar i of pop2_4 prompt hzdw
  263. ss='yjkbsr'+alltrim(str(i))
  264. on selection bar i of pop2_4 do &ss
  265. if !eof()
  266. skip
  267. endif
  268. endfor
  269. define popup pop2_5 margin shadow
  270. on bar 5 of pop2 activate popup pop2_5
  271. sele 1
  272. use hzdw
  273. count all to a1
  274. go top
  275. for i=1 to a1
  276. define bar i of pop2_5 prompt hzdw
  277. ss='zzsbsr'+alltrim(str(i))
  278. on selection bar i of pop2_5 do &ss
  279. if !eof()
  280. skip
  281. endif
  282. endfor
  283. define popup pop2_6 margin shadow
  284. on bar 6 of pop2 activate popup pop2_6
  285. sele 1
  286. use hzdw
  287. count all to a1
  288. go top
  289. for i=1 to a1
  290. define bar i of pop2_6 prompt hzdw
  291. ss='xsbsr'+alltrim(str(i))
  292. on selection bar i of pop2_6 do &ss
  293. if !eof()
  294. skip
  295. endif
  296. endfor
  297. define popup pop2_7 margin shadow
  298. on bar 7 of pop2 activate popup pop2_7
  299. sele 1
  300. use hzdw
  301. count all to a1
  302. go top
  303. for i=1 to a1
  304. define bar i of pop2_7 prompt hzdw
  305. *wj='bdb'+alltrim(str(i))
  306. ss='bdbsr'+alltrim(str(i))
  307. on selection bar i of pop2_7 do &ss
  308. if !eof()
  309. skip
  310. endif
  311. endfor
  312.      * 定义下拉式菜单mainmenu的第三个子菜单:pop3
  313. DEFINE POPUP pop3 MARGIN shadow
  314. DEFINE BAR 1 OF pop3 PROMPT "<1.资产负债表 "
  315. DEFINE BAR 2 OF pop3 PROMPT "<2.损  益  表 "
  316. DEFINE BAR 3 OF pop3 PROMPT "<3.补充明细表 "
  317. DEFINE BAR 4 OF pop3 PROMPT "<4.应交款项表 "
  318. DEFINE BAR 5 OF pop3 PROMPT "<5.增值税报表 "
  319. DEFINE BAR 6 OF pop3 PROMPT "<6.利润明细表 "
  320. define bar 7 of pop3 prompt "<7.现金流量表 "
  321. define popup pop3_2 margin shadow
  322. ON bar 2 of pop3 activate popup pop3_2
  323. *&&SELECT  BAR 2 OF pop3 DO sybhz
  324. define bar 1 of pop3_2 prompt "快速汇总"
  325. define bar 2 of pop3_2 prompt "一般汇总"
  326. on select bar 1 of pop3_2 do sybhz1
  327. on select bar 2 of pop3_2 do sybhz2
  328. define popup pop3_3 margin shadow
  329. ON bar 3 of pop3 activate popup pop3_3                        
  330. *&&SELECT  BAR 2 OF pop3 DO sybhz                             
  331. define bar 1 of pop3_3 prompt "快速汇总"                      
  332. define bar 2 of pop3_3 prompt "一般汇总"                      
  333. on select bar 1 of pop3_3 do bcbhz1                           
  334. on select bar 2 of pop3_3 do bcbhz2                           
  335.     
  336. on select bar 1 of pop3 do fzbhz
  337. *ON SELECT  BAR 3 OF pop3 DO bcbhz          
  338. ON SELECT  BAR 4 OF pop3 DO yjkbhz           
  339. ON SELECT  BAR 5 OF pop3 DO zzsbhz           
  340. ON SELECT  BAR 6 OF POP3 DO xsmxbHZ
  341. ON SELECT  BAR 7 OF pop3 DO BDBHZ
  342. *定义下拉式菜单mainmenu的第四个子菜单:pop4
  343. DEFINE POPUP pop4 MARGIN shadow 
  344. DEFINE BAR 1 OF pop4 PROMPT "<1.打印汇总资产负债表"
  345. DEFINE BAR 2 OF pop4 PROMPT "<2.打印汇总损  益  表"
  346. DEFINE BAR 3 OF pop4 PROMPT "<3.打印汇总补充明细表"
  347. define bar 4 of pop4 prompt "<4.打印汇总应交款项表"
  348. define bar 5 of pop4 prompt "<5.打印汇总增值税报表"
  349. define bar 6 of pop4 prompt "<6.打印汇总利润明细表"
  350. define bar 7 of pop4 prompt "<7.打印汇总现金流量表"
  351. on selection bar 1 of pop4 do fzbhzdy 
  352. on selection bar 2 of pop4 do sybhzdy
  353. on selection bar 3 of pop4 do bcbhzdy
  354. on selection bar 4 of pop4 do yjkbhzdy
  355. on selection bar 5 of pop4 do zzsbhzdy
  356. on selection bar 6 of pop4 do xsbhzdy
  357. on selection bar 7 of pop4 do bdbhzdy
  358. * 定义下拉式菜单mainmenu的第五个子菜单:pop5
  359. DEFINE POPUP pop5 MARGIN shadow 
  360. DEFINE BAR 1  OF pop5 PROMPT "<1.资产负债表 "
  361. DEFINE BAR 2  OF pop5 PROMPT "<2.损  益  表 "
  362. DEFINE BAR 3  OF pop5 PROMPT "<3.补充明细表 "
  363. DEFINE BAR 4  OF pop5 PROMPT "<4.应交款项表 "
  364. DEFINE BAR 5  OF pop5 PROMPT "<5.增值税报表 "
  365. DEFINE BAR 6  OF pop5 PROMPT "<6.利润明细表 "
  366. DEFINE BAR 7  OF pop5 PROMPT "<7.现金流量表 "
  367. ON SELECT BAR  1 OF pop5 DO fzbhzcx
  368. ON SELECT BAR  2 OF pop5 DO sybhzcx
  369. ON SELECT BAR  3 OF pop5 DO bcbhzcx
  370. ON SELECT BAR  4 OF pop5 DO yjkbhzcx
  371. on select bar  5 of pop5 do zzsbhzcx
  372. ON SELECT BAR  6 OF pop5 DO xsbhzcx
  373. on select bar  7 of pop5 do llbhzcx
  374. * 定义下拉式菜单mainmenu的第六个子菜单:pop6
  375. DEFINE POPUP pop6 MARGIN shadow 
  376. DEFINE BAR 1  OF pop6 PROMPT "<1.改当前月份"
  377. DEFINE BAR 2  OF pop6 PROMPT "<2.改单位名称"
  378. DEFINE BAR 3  OF pop6 PROMPT "<3.人员(密码)管理"
  379. define bar 4  of pop6 prompt "<4.汇总单位管理"
  380. DEFINE BAR 5  OF pop6 PROMPT "<4.WPS 文字编辑"
  381. DEFINE BAR 6  OF pop6 PROMPT "<5.计算本月累计"
  382. DEFINE BAR 7  OF pop6 PROMPT "<6.调用 DOS命令"
  383. ON SELECT BAR  1 OF POP6 do gdcy
  384. ON SELECT BAR  2 OF POP6 do dwmc
  385. ON SELECT BAR  3 OF POP6 DO mm
  386. on select bar  4 of pop6 do hzdwgl
  387. ON SELECT BAR  5 OF POP6 do Jqwps
  388. ON SELECT BAR  7 OF POP6 do dos
  389. define popup pop6_6 margin shadow
  390. ON bar 6 of pop6 activate popup pop6_6                        
  391. define bar 1 of pop6_6 prompt "损  益  表"                      
  392. define bar 2 of pop6_6 prompt "补充明细表"                      
  393. on select bar 1 of pop6_6 do sybljjs                           
  394. on select bar 2 of pop6_6 do bcbljjs                           
  395. ************************************
  396. **
  397. define popup pop7 margin shadow
  398. DEFINE BAR 1 of POP7 PROMPT "<1.资产负债表"
  399. DEFINE BAR 2 OF POP7 PROMPT "<2.损  益  表"
  400. DEFINE BAR 3 OF POP7 PROMPT "<3.补充明细表"
  401. DEFINE BAR 4 OF POP7 PROMPT "<4.应交款项表"
  402. DEFINE BAR 5 OF POP7 PROMPT "<5.增植税报表"
  403. DEFINE BAR 6 OF POP7 PROMPT "<6.销售明细表"
  404. DEFINE BAR 7 OF POP7 PROMPT "<7.现金流量表"
  405. on selection bar 1 of pop7 do fzbjss 
  406. on selection bar 2 of pop7 do sybjss
  407. on selection bar 3 of pop7 do bcmxbjss
  408. on selection bar 4 of pop7 do yjkbjss
  409. on selection bar 5 of pop7 do zzsbjss
  410. on selection bar 6 of pop7 do xsmxbjss
  411. on selection bar 7 of pop7 do xjbjss
  412. *************************************************
  413. * 启动下拉式菜单mainmenu
  414. ACTIVATE MENU MAINMENU
  415. DEACTIVATE WINDOW win
  416. SET CURSOR ON
  417. ON ERROR
  418. RETURN
  419. procedure Rquit
  420. pd='N'
  421. set colo to w/n
  422. *@ 20,57,22,78 box '鞍鞍鞍鞍鞍'
  423. @ 19,55 to 21,76 double  colo w+/1
  424. @ 20,56 say '                    '  colo w+/1
  425. @ 20,56 say '  真的退出吗(Y/N)?'    colo w+/1
  426. i=inkey(0)
  427. if i=89 .or. i=121 .or. i=13
  428. quit
  429. else
  430. set colo to w+/n 
  431. @ 19,55,22,78 box '鞍鞍鞍鞍鞍'
  432. endif
  433. retu
  434. procedure Rqabstejd
  435. dd=1
  436. if dd=0
  437.    do fzbsr1
  438.    do fzbsr2
  439.    do fzbsr3
  440.    do fzbsr4
  441.    do fzbsr5
  442.    do fzbsr6
  443.    do fzbsr7
  444.    do fzbsr8
  445.    do fzbsr9
  446.    do fzbsr10
  447.    do fzbsr11
  448.    do fzbsr12
  449.    do sybsr1
  450.    do sybsr2
  451.    do sybsr3
  452.    do sybsr4
  453.    do sybsr5
  454.    do sybsr6
  455.    do sybsr7
  456.    do sybsr8
  457.    do sybsr9
  458.    do sybsr10
  459.    do sybsr11
  460.    do sybsr12
  461.    do bcbsr1
  462.    do bcbsr2
  463.    do bcbsr3
  464.    do bcbsr4
  465.    do bcbsr5
  466.    do bcbsr6
  467.    do bcbsr7
  468.    do bcbsr8
  469.    do bcbsr9
  470.    do bcbsr10
  471.    do bcbsr11
  472.    do bcbsr12
  473.    do yjkbsr1
  474.    do yjkbsr2
  475.    do yjkbsr3
  476.    do yjkbsr4
  477.    do yjkbsr5
  478.    do yjkbsr6
  479.    do yjkbsr7
  480.    do yjkbsr8
  481.    do yjkbsr9
  482.    do yjkbsr10
  483.    do yjkbsr11
  484.    do yjkbsr12
  485.    do zzsbsr1
  486.    do zzsbsr2
  487.    do zzsbsr3
  488.    do zzsbsr4
  489.    do zzsbsr5
  490.    do zzsbsr6
  491.    do zzsbsr7
  492.    do zzsbsr8
  493.    do zzsbsr9
  494.    do zzsbsr10
  495.    do zzsbsr11
  496.    do zzsbsr12
  497.    do bdbsr1
  498.    do bdbsr2
  499.    do bdbsr3
  500.    do bdbsr4
  501.    do bdbsr5
  502.    do bdbsr6
  503.    do bdbsr7
  504.    do bdbsr8
  505.    do bdbsr9
  506.    do bdbsr10
  507.    do bdbsr11
  508.    do bdbsr12
  509.    do xsbsr1
  510.    do xsbsr2
  511.    do xsbsr3
  512.    do xsbsr4
  513.    do xsbsr5
  514.    do xsbsr6
  515.    do xsbsr7
  516.    do xsbsr8
  517.    do xsbsr9
  518.    do xsbsr10
  519.    do xsbsr11
  520.    do xsbsr12
  521. endif
  522. retu