PZRZ.PRG
上传用户:hbmaozhan
上传日期:2013-01-31
资源大小:1007k
文件大小:9k
源码类别:

企业管理

开发平台:

VFP

  1.  HIDE POPUP pop2
  2.  HIDE MENU mainmenu
  3.  DEAC WINDOW win
  4.  SET SYSMENU OFF
  5.  SET CLOCK TO 0, 69
  6.  ON KEY
  7.  SET COLOR TO W/N
  8.  CLOS DATABASES
  9.  CLEA
  10.  SET PATH TO C:
  11.  IF  .NOT. FILE('pzk.dbf') .OR.  .NOT. FILE('mxk.dbf') .OR.  .NOT. FILE('zzk.dbf')
  12.       ?? CHR(7)
  13.       IF  .NOT. FILE('pzk.dbf')
  14.            @ 7, 30 SAY '尚未输入本月凭证!'
  15.       ELSE
  16.            @ 7, 30 SAY '上月尚未结帐,本月不能记帐!'
  17.       ENDI
  18.       i = INKEY(0)
  19.       SET PATH TO cw
  20.       CLOS DATABASES
  21.       SET COLOR TO W+/B
  22.       @ 0, 0, 23, 79 BOX '北北北北'
  23.       SET COLOR TO W+/N
  24.       @ 1, 1, 22, 78 BOX '鞍鞍鞍鞍鞍'
  25.       @ 23, 28 SAY '当前数据的月份:'+STR(ryear, 4, 0)+'年'+STR(ryf, 2, 0)+'月' COLOR B+/BG 
  26.       @ 24, 0 SAY ' JQ001财务管理系统(Ver2.5)  黄朝生研制  版权所有  南宁市建政路51号  邮编:530023 ' COLOR R/W 
  27.       ON KEY LABEL Escape do Rquit
  28.       SET CLOCK TO 23, 69
  29.       RETU
  30.  ELSE
  31.       SET PATH TO cw
  32.       USE pzk
  33.       IF jzbz='1'
  34.            ?? CHR(7)
  35.            CLOS DATABASES
  36.            SET COLOR TO W+/B
  37.            @ 0, 0, 23, 79 BOX '北北北北'
  38.            SET COLOR TO W+/N
  39.            @ 1, 1, 22, 78 BOX '鞍鞍鞍鞍鞍'
  40.            @ 23, 28 SAY '当前数据的月份:'+STR(ryear, 4, 0)+'年'+STR(ryf, 2, 0)+'月' COLOR B+/BG 
  41.            @ 24, 0 SAY ' JQ001财务管理系统(Ver2.5)  黄朝生研制  版权所有  南宁市建政路51号  邮编:530023 ' COLOR R/W 
  42.            SET CLOCK TO 23, 69
  43.            ON KEY LABEL Escape do Rquit
  44.            RETU
  45.       ENDI
  46.       SET COLOR TO N/G
  47.       CLEA
  48.       SET COLOR TO N/W
  49.       @ 1, 2 CLEAR TO 23, 77
  50.       SET COLOR TO W/N
  51.       @ 11, 14 CLEAR TO 15, 69
  52.       SET COLOR TO N/B
  53.       @ 9, 10 CLEAR TO 13, 65
  54.       SET COLOR TO R+/B
  55.       @ 5, 27 SAY ' 凭  证  入  帐 '
  56.       SET COLOR TO W+/B
  57.       ?? CHR(7)
  58.       @ 9, 30 SAY '注      意'
  59.       @ 11, 17 SAY '1. 凭证入帐期间,请勿中断计算机;请勿关机!'
  60.       @ 12, 17 SAY '2. 建议您使用不间断电源(UPS).'
  61.       @ 17, 30 SAY ' 请等候......'
  62.       SET COLOR TO
  63.       SELE 1
  64.       USE zzk
  65.       rq2 = rq
  66.       @ 19, 31 SAY '整理数据  ......'
  67.       DELE ALL FOR zy<>'期初余额'
  68.       PACK
  69.       USE mxk
  70.       GOTO TOP
  71.       DO WHILE .T.
  72.            pd = zy
  73.            IF pd<>'期初余额'
  74.                 pd = RECNO()
  75.                 EXIT
  76.            ENDI
  77.            IF  .NOT. EOF()
  78.                 SKIP
  79.            ELSE
  80.                 EXIT
  81.            ENDI
  82.       ENDD
  83.       @ 19, 31 SAY '记帐前准备......'
  84.       GOTO BOTTOM
  85.       pd1 = RECNO()
  86.       IF pd1<>pd-1
  87.            pd1 = pd1-pd+1
  88.            GOTO pd
  89.            DELE NEXT pd1
  90.            PACK
  91.       ENDI
  92.       USE pzk
  93.       a1 = 0
  94.       a2 = 0
  95.       SUM ALL jje TO a1
  96.       SUM ALL dje TO a2
  97.       IF a1<>a2
  98.            @ 17, 3 CLEAR TO 23, 77
  99.            @ 9, 10 CLEAR TO 13, 65
  100.            @ 11, 23 SAY '凭证库不平,不能记帐!'
  101.            ss = INKEY(0)
  102.            RETU
  103.       ENDI
  104.       SORT ON kmdm, pzh, rq TO pzk%.dbf
  105.       USE pzk%
  106.       DELE ALL FOR zy='结转利润'
  107.       REPL dje WITH dje-jje, jje WITH 0 ALL FOR '501'=SUBSTR(kmdm, 1, 3)
  108.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '507'=SUBSTR(kmdm, 1, 3)
  109.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '517'=SUBSTR(kmdm, 1, 3)
  110.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '521'=SUBSTR(kmdm, 1, 3)
  111.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '551'=SUBSTR(kmdm, 1, 3)
  112.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '555'=SUBSTR(kmdm, 1, 3)
  113.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '575'=SUBSTR(kmdm, 1, 3)
  114.       REPL dje WITH dje-jje, jje WITH 0 ALL FOR '571'=SUBSTR(kmdm, 1, 3)
  115.       REPL jje WITH jje-dje, dje WITH 0 ALL FOR '3220006'=SUBSTR(kmdm, 1, 6)
  116.       RECA ALL
  117.       COPY FILE mxk.dbf TO mxk%.dbf
  118.       USE mxk
  119.       APPE FROM pzk%.dbf
  120.       @ 19, 31 SAY '计算发生额......'
  121.       USE pzk%
  122.       TOTA ON kmdm TO pzkk%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  123.       USE pzkk%
  124.       REPL pzh WITH 0 ALL
  125.       REPL rq WITH rq2 ALL
  126.       ERAS pzk%.dbf
  127.       SELE 2
  128.       @ 19, 31 SAY '计算本月合计....'
  129.       SELE 2
  130.       USE
  131.       SELE 1
  132.       REPL zy WITH '本月合计' ALL
  133.       USE mxk
  134.       APPE FROM pzkk%.dbf
  135.       USE pzkk%.dbf
  136.       REPL ye WITH jje-dje ALL FOR jhd='+'
  137.       REPL ye WITH dje-jje ALL FOR jhd='-'
  138.       REPL ysl WITH ssl-fsl ALL FOR slbz='2'
  139.       SELE 2
  140.       USE
  141.       SELE 1
  142.       USE mxk%.dbf
  143.       APPE FROM pzkk%.dbf
  144.       USE mxk%.dbf
  145.       @ 19, 31 SAY '计算累计数......'
  146.       TOTA ON kmdm TO mx%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  147.       USE mx%.dbf
  148.       ERAS mxk%.dbf
  149.       SORT ON kmdm TO mxk%.dbf
  150.       USE mxk%.dbf
  151.       ERAS mx%.dbf
  152.       TOTA ON kmdm TO mx%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  153.       USE
  154.       ERAS mxk%.dbf
  155.       RENA mx%.dbf TO mxk%.dbf
  156.       USE mxk%
  157.       @ 19, 31 SAY '计算期末余额....'
  158.       REPL zy WITH '期末及累计' ALL
  159.       a1 = 0
  160.       a2 = 0
  161.       SUM ALL FOR jhd='+' ye TO a1
  162.       SUM ALL FOR jhd='-' ye TO a2
  163.       IF a1<>a2
  164.            SET COLOR TO N/W
  165.            @ 17, 3 CLEAR TO 23, 77
  166.            SET COLOR TO W+/B
  167.            @ 9, 10 CLEAR TO 13, 65
  168.            @ 11, 30 SAY ' 明细帐余额不平!'
  169.            @ 11, 48 SAY a1-a2
  170.       ENDI
  171.       SELE 2
  172.       USE
  173.       SELE 1
  174.       USE mxk
  175.       APPE FROM mxk%.dbf
  176.       USE
  177.       COPY FILE pzKK%.dbf TO mx%.dbf
  178.       USE mx%.dbf
  179.       REPL kmdm WITH SUBSTR(LTRIM(TRIM(kmdm)), 1, 3) ALL
  180.       TOTA ON kmdm TO mx%%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  181.       @ 19, 31 SAY '登记总帐  ......'
  182.       USE
  183.       COPY FILE pzkk%.dbf TO mx%.dbf
  184.       USE mx%.dbf
  185.       DELE ALL FOR LEN(LTRIM(TRIM(kmdm)))<>9
  186.       PACK
  187.       REPL kmdm WITH SUBSTR(LTRIM(TRIM(kmdm)), 1, 7) ALL
  188.       TOTA ON kmdm TO M%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  189.       USE
  190.       ERAS MX%.dbf
  191.       USE Mx%%.dbf
  192.       APPE FROM m%.dbf
  193.       REPL zy WITH '本月合计' ALL
  194.       ERAS m%.dbf
  195.       USE MX%%.dbf
  196.       SORT ON kmdm TO Mx%.dbf
  197.       USE
  198.       ERAS MX%%.dbf
  199.       USE zzk
  200.       APPE FROM mx%.dbf
  201.       ERAS mx%.dbf
  202.       USE
  203.       COPY FILE mxk%.dbf TO mx%.dbf
  204.       USE mxk%
  205.       REPL kmdm WITH SUBSTR(LTRIM(TRIM(kmdm)), 1, 3) ALL
  206.       @ 19, 31 SAY '总帐余额  ......'
  207.       USE mx%
  208.       REPL kmdm WITH SUBSTR(LTRIM(TRIM(kmdm)), 1, 7) ALL
  209.       USE mxk%
  210.       APPE FROM mx%
  211.       ERAS mx%.dbf
  212.       USE
  213.       USE mxk%
  214.       SORT ON kmdm TO mx%.dbf
  215.       USE mx%
  216.       ERAS mxk%.dbf
  217.       TOTA ON kmdm TO mxkk%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  218.       USE mxkk%
  219.       ERAS mx%.dbf
  220.       REPL zy WITH '期末及累计' ALL
  221.       SORT ON kmdm TO mxk%.dbf
  222.       USE
  223.       @ 19, 31 SAY '整理数据  ......'
  224.       ERAS mxkk%.dbf
  225.       SELE 2
  226.       USE
  227.       SELE 1
  228.       COPY FILE zzk.dbf TO zzk%%.dbf
  229.       USE zzk
  230.       DELE ALL
  231.       PACK
  232.       APPE FROM mxk%
  233.       SELE 1
  234.       RECA ALL
  235.       DELE ALL FOR zy<>'期初余额'
  236.       REPL jje WITH 0, dje WITH 0, ye WITH 0, njye WITH 0, ndye WITH 0 ALL
  237.       REPL ssl WITH 0, sdj WITH 0, fsl WITH 0, fdj WITH 0, ysl WITH 0, ydj WITH 0, yysl WITH 0 ALL
  238.       RECA ALL
  239.       SET INDEX TO zzk
  240.       REIN
  241.       DELE ALL FOR LEN(LTRIM(TRIM(kmdm)))=7
  242.       TOTA ON kmdm TO zzkk%.dbf ALL FIELDS jje, dje, ye, ssl, fsl, ysl, njye, ndye, yysl
  243.       REIN
  244.       USE zzkk%
  245.       REPL zy WITH '期末及累计' ALL
  246.       SELE 2
  247.       USE
  248.       ERAS zzk.dbf
  249.       ERAS mxk%.dbf
  250.       SELE 1
  251.       a3 = 0
  252.       a4 = 0
  253.       SUM ALL FOR jhd='+' .AND. LEN(LTRIM(TRIM(kmdm)))=3 ye TO a3
  254.       SUM ALL FOR jhd='-' .AND. LEN(LTRIM(TRIM(kmdm)))=3 ye TO a4
  255.       IF a1<>a2
  256.            SET COLOR TO N/W
  257.            @ 17, 3 CLEAR TO 23, 77
  258.            SET COLOR TO W+/B
  259.            @ 9, 10 CLEAR TO 13, 65
  260.            @ 11, 30 SAY '总帐余额不平!'
  261.            @ 12, 48 SAY a3-a4
  262.       ENDI
  263.       IF a3<>a1 .OR. a2<>a4
  264.            SET COLOR TO N/W
  265.            @ 17, 3 CLEAR TO 23, 77
  266.            SET COLOR TO W+/B
  267.            @ 9, 10 CLEAR TO 13, 65
  268.            @ 11, 30 SAY '总帐与明细帐不平!'
  269.            @ 13, 48 SAY a3-a1
  270.            @ 13, 64 SAY a4-a2
  271.       ENDI
  272.       USE zzk%%
  273.       APPE FROM zzkk%.dbf
  274.       USE
  275.       RENA zzk%%.dbf TO zzk.dbf
  276.       SELE 2
  277.       USE
  278.       SELE 1
  279.       USE
  280.       ERAS pzkk%.dbf
  281.       ERAS zzkk%.dbf
  282.       ERAS mxkk%%.dbf
  283.       SET COLOR TO BG+/RB
  284.       ?? CHR(7)
  285.       @ 22, 30 SAY '记帐完毕,按任意键返回......'
  286.       ss = INKEY(0)
  287.  ENDI
  288.  CLOS DATABASES
  289.  SET COLOR TO W+/B
  290.  @ 0, 0, 23, 79 BOX '北北北北'
  291.  SET COLOR TO W+/N
  292.  @ 1, 1, 22, 78 BOX '鞍鞍鞍鞍鞍'
  293.  @ 23, 28 SAY '当前数据的月份:'+STR(ryear, 4, 0)+'年'+STR(ryf, 2, 0)+'月' COLOR B+/BG 
  294.  @ 24, 0 SAY ' JQ001财务管理系统(Ver2.5)  黄朝生研制  版权所有  南宁市建政路51号  邮编:530023 ' COLOR R/W 
  295.  ON KEY LABEL Escape do Rquit
  296.  SET CLOCK TO 23, 69
  297.  RETU
  298. *