📄 zhact.prg
字号:
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
* 文件名: ZHACT.PRG <-- 本文件由 UnFoxAll 创建
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
CLOSE ALL
SET TALK OFF
SET SAFETY OFF
SET PROCEDURE TO zhact
SET COLOR OF SCHEME 2 TO GR+/BG,W+/BG,GR/BG,GR/BG,GR+/B,GR+/B
DEFINE WINDOW ZH FROM 10 , 20 TO 16 , 60 COLOR SCHEME 2 SHADOW DOUBLE
DEFINE WINDOW WRONG FROM 19 , 15 TO 21 , 65 COLOR SCHEME 2 SHADOW DOUBLE
XSLJ = ''
XSBM = ''
XSYK = ''
XSLX = ''
XSDQ = ''
ACTTC = 1
DO ZHACTZHP
PROCEDURE zhactzhp
YEAR_A = INT(VAL(NIAN))
MONTH_A = INT(VAL(YUE))
DO FORM src\form\actrq
CL_YEAR = RIGHT(YEAR_A,2)
DO FORM src\form\dqxz
TT = WEI
N = AT('.',TT)
M_DQDH = SUBSTR(TT,1,N - 1)
IF LEN(ALLTRIM(M_DQDH)) = 1
M_DQDH = '0' + LTRIM(TRIM(M_DQDH))
ENDIF
PA = ''
FILE01 = 'dat\b01' - CL_YEAR - MONTH_A - '.dat'
IF FILE(FILE01)
ELSE
MESSAGEBOX(MONTH_A - '月份无业务状况表,请检查后重新操作!',160,'错误信息提示')
RETURN
ENDIF
DO ZHSJ
ENDPROC
*------
PROCEDURE ZHSJ
M_BLX1 = '0'
DO FORM src\form\zhywzh1
DO CASE
CASE M_BLX1 = '1'
YWBH = '月'
CASE M_BLX1 = '2'
YWBH = '季'
CASE M_BLX1 = '3'
YWBH = '年'
CASE M_BLX1 = '4'
YWBH = '半年'
ENDCASE
ACTTEMP = 'tmp\acttemp.dat'
COPY File (FILE01) TO (ACTTEMP)
USE IN 88 (ACTTEMP) ALIAS ACTTMP
SELECT ACTTMP
DNSJ = 0
SCAN FOR BLX1 = M_BLX1 AND XMDH = '1011'
DNSJ = DA5
ENDSCAN
IF DNSJ <> 0
ELSE
MESSAGEBOX(MONTH_A - '月份无' - YWBH - '报表数据,请检查后重新操作!',160,'错误信息提示')
RETURN
ENDIF
DELETE ALL FOR BLX1 <> M_BLX1
DELETE ALL FOR DQDH <> VAL(M_DQDH)
DELETE ALL FOR XMDH = 'a'
PACK
GO TOP
SCAN FOR XMDH = 'dpbz'
REPLACE XMDH WITH '0000'
ENDSCAN
SORT ON XMDH TO tmp\act01.dat
COPY File lib\zhact.dat TO tmp\zhact.dat
USE IN 99 tmp\zhact.dat ALIAS ZHACT
SELECT ZHACT
DELETE ALL
PACK
USE IN 88 tmp\act01.dat ALIAS ACT01
SELECT ACT01
COUNT TO S
GO TOP
KG1 = ' '
KG2 = ' '
FOR I = 1 TO S
SELECT ACT01
XMDH1 = XMDH
IF LENC(ALLTRIM(XMDH)) = 2
XMDH1 = ALLTRIM(XMDH) - KG2
ELSE
IF LENC(ALLTRIM(XMDH)) = 3
XMDH1 = ALLTRIM(XMDH) - KG1
ELSE
XMDH1 = ALLTRIM(XMDH)
ENDIF
ENDIF
DA0 = MONTH_A - CL_YEAR - M_DQDH - XMDH1
DA01 = DA1 * 100
DA02 = DA2 * 100
DA03 = DA3 * 100
DA04 = DA4 * 100
DA05 = DA5 * 100
DA06 = DA6 * 100
DO CASE
CASE ABS(DA01) < 10
IF (DA01) >= 0
DA01C = '+00000000000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-00000000000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 100 AND ABS(DA01) >= 10
IF (DA01) >= 0
DA01C = '+0000000000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-0000000000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 1000 AND ABS(DA01) >= 100
IF (DA01) >= 0
DA01C = '+000000000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-000000000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 10000 AND ABS(DA01) >= 1000
IF (DA01) >= 0
DA01C = '+00000000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-00000000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 100000 AND ABS(DA01) >= 10000
IF (DA01) >= 0
DA01C = '+0000000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-0000000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 1000000 AND ABS(DA01) >= 100000
IF (DA01) >= 0
DA01C = '+000000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-000000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 10000000 AND ABS(DA01) >= 1000000
IF (DA01) >= 0
DA01C = '+00000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-00000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 100000000 AND ABS(DA01) >= 10000000
IF (DA01) >= 0
DA01C = '+0000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-0000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 1000000000 AND ABS(DA01) >= 100000000
IF (DA01) >= 0
DA01C = '+000000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-000000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 10000000000 AND ABS(DA01) >= 1000000000
IF (DA01) >= 0
DA01C = '+00000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-00000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 100000000000 AND ABS(DA01) >= 10000000000
IF (DA01) >= 0
DA01C = '+0000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-0000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 1000000000000 AND ABS(DA01) >= 100000000000
IF (DA01) >= 0
DA01C = '+000' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-000' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 10000000000000 AND ABS(DA01) >= 1000000000000
IF (DA01) >= 0
DA01C = '+00' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-00' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
CASE ABS(DA01) < 100000000000000 AND ABS(DA01) >= 10000000000000
IF (DA01) >= 0
DA01C = '+0' - ALLTRIM(STR(DA01,15,0))
ELSE
DA01C = '-0' - ALLTRIM(STR(ABS(DA01),15,0))
ENDIF
OTHERWISE
ENDCASE
DO CASE
CASE ABS(DA02) < 10
IF (DA02) >= 0
DA02C = '+00000000000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-00000000000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 100 AND ABS(DA02) >= 10
IF (DA02) >= 0
DA02C = '+0000000000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-0000000000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 1000 AND ABS(DA02) >= 100
IF (DA02) >= 0
DA02C = '+000000000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-000000000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 10000 AND ABS(DA02) >= 1000
IF (DA02) >= 0
DA02C = '+00000000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-00000000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 100000 AND ABS(DA02) >= 10000
IF (DA02) >= 0
DA02C = '+0000000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-0000000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 1000000 AND ABS(DA02) >= 100000
IF (DA02) >= 0
DA02C = '+000000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-000000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 10000000 AND ABS(DA02) >= 1000000
IF (DA02) >= 0
DA02C = '+00000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-00000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 100000000 AND ABS(DA02) >= 10000000
IF (DA02) >= 0
DA02C = '+0000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-0000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 1000000000 AND ABS(DA02) >= 100000000
IF (DA02) >= 0
DA02C = '+000000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-000000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 10000000000 AND ABS(DA02) >= 1000000000
IF (DA02) >= 0
DA02C = '+00000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-00000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 100000000000 AND ABS(DA02) >= 10000000000
IF (DA02) >= 0
DA02C = '+0000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-0000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 1000000000000 AND ABS(DA02) >= 100000000000
IF (DA02) >= 0
DA02C = '+000' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-000' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 10000000000000 AND ABS(DA02) >= 1000000000000
IF (DA02) >= 0
DA02C = '+00' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-00' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
CASE ABS(DA02) < 100000000000000 AND ABS(DA02) >= 10000000000000
IF (DA02) >= 0
DA02C = '+0' - ALLTRIM(STR(DA02,15,0))
ELSE
DA02C = '-0' - ALLTRIM(STR(ABS(DA02),15,0))
ENDIF
OTHERWISE
ENDCASE
DO CASE
CASE ABS(DA03) < 10
IF (DA03) >= 0
DA03C = '+00000000000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-00000000000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
CASE ABS(DA03) < 100 AND ABS(DA03) >= 10
IF (DA03) >= 0
DA03C = '+0000000000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-0000000000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
CASE ABS(DA03) < 1000 AND ABS(DA03) >= 100
IF (DA03) >= 0
DA03C = '+000000000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-000000000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
CASE ABS(DA03) < 10000 AND ABS(DA03) >= 1000
IF (DA03) >= 0
DA03C = '+00000000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-00000000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
CASE ABS(DA03) < 100000 AND ABS(DA03) >= 10000
IF (DA03) >= 0
DA03C = '+0000000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-0000000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
CASE ABS(DA03) < 1000000 AND ABS(DA03) >= 100000
IF (DA03) >= 0
DA03C = '+000000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-000000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
CASE ABS(DA03) < 10000000 AND ABS(DA03) >= 1000000
IF (DA03) >= 0
DA03C = '+00000000' - ALLTRIM(STR(DA03,15,0))
ELSE
DA03C = '-00000000' - ALLTRIM(STR(ABS(DA03),15,0))
ENDIF
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -