⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hzjs.prg

📁 使用VFP编写的信用社系统专用会计报表系统,可上报,汇总,打印.是一款优秀的信用社会计报表系统
💻 PRG
字号:
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
*  文件名: HZJS.PRG <-- 本文件由 UnFoxAll 创建
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


 PARAMETER M_BH , M_BLX1 , M_BLX2 , NIAN , YUE , DL
 JSF_B = 'LIB\JS1.DAT'
 JSF_Z = 'LIB\JS2.DAT'
 JSF_M = 'LIB\JS3.DAT'
 IF M_BH = '04'
 SELECT DAT
 GO TOP
 DO WHILE  .NOT. EOF()
 IF DA1 <> 0
 JSJG1 = ROUND(DA2 / 100 / DA1,2)
 JSJG2 = ROUND(DA6 * 12 / (DA1 * 100 * VAL(YUE)),2)
 ELSE 
 JSJG1 = 0
 JSJG2 = 0
 ENDIF 
 REPLACE DA3 WITH JSJG1
 REPLACE DA5 WITH JSJG2
 SKIP 
 ENDDO 
 ENDIF 
 IF M_BH = '13'
 GO TOP
 DO WHILE  .NOT. EOF()
 IF DA1 <> 0 AND DA2 <> 0
 JSJGX = (DA2 / DA1 - 1) * 100
 REPLACE DA4 WITH JSJGX
 ELSE 
 REPLACE DA4 WITH 0
 ENDIF 
 SKIP 
 ENDDO 
 GO TOP
 DO WHILE  .NOT. EOF()
 IF DA2 <> 0 AND DA5 <> 0
 JSJG = (DA5 / DA2 - 1) * 100
 REPLACE DA7 WITH JSJG
 ELSE 
 REPLACE DA7 WITH 0
 ENDIF 
 SKIP 
 ENDDO 
 GO TOP
 DO WHILE  .NOT. EOF()
 DO CASE 
 CASE DA1 <> 0 AND DA2 <> 0 AND DA5 <> 0 AND DA8 = 0
 IF (DA5 < 0 AND DA1 < 0) .OR. (DA5 > 0 AND DA1 > 0)
 JSJG = (SQRT(ABS(DA5 / DA1)) - 1) * 100
 REPLACE DA8 WITH JSJG
 ENDIF 
 IF (DA5 < 0 AND DA1 > 0) .OR. (DA5 > 0 AND DA1 < 0)
 JSJG = -(SQRT(ABS(DA5 / DA1)) - 1) * 100
 REPLACE DA8 WITH JSJG
 ENDIF 
 CASE DA1 = 0 AND DA2 <> 0 AND DA5 <> 0 AND DA8 = 0
 JSJG = (DA5 / DA2 - 1) * 100
 REPLACE DA8 WITH JSJG
 ENDCASE 
 SKIP 
 ENDDO 
 ENDIF 
 IF M_BH = '12'
 SELECT DAT
 GO TOP
 DO WHILE  .NOT. EOF()
 IF DA4 <> 0
 JSJG1 = DA6 / DA4 * 100
 ELSE 
 JSJG1 = 0
 ENDIF 
 REPLACE DA5 WITH JSJG1
 SKIP 
 ENDDO 
 ENDIF 
 FHBZ = 0
 STORE .T. TO ERR
 DO ZHUNBEI
 IF ERR = .F.
 RETURN 
 ENDIF 
 SELECT JS1
 SCAN FOR BH = M_BH
 DO CASE 
 CASE DW = 0
 BIDW = 1
 CASE DW = 1
 BIDW = 0
 CASE DW = 2
 BIDW = 2
 CASE DW = 3
 BIDW = 3
 ENDCASE 
 SELECT DAT
 FHBZ = 0
 STORE 0 TO FENZI , FENMU , YICI
 DO JS2_SUM
 IF FHBZ = 1
 LOOP 
 ENDIF 
 DO JS3_SUM
 IF FHBZ = 1
 LOOP 
 ENDIF 
 IF FENMU <> 0
 BI = ROUND(FENZI * 100 ** (BIDW) / FENMU,2)
 ELSE 
 BI = 0
 ENDIF 
 SELECT DAT
 LOCATE FOR XMDH = JS1.XMDH
 IF EOF()
 LOOP 
 ENDIF 
 SCATTER TO B_DAT
 STORE BI TO B_DAT( 5 + JS1.LS )
 GATHER FROM B_DAT
 ENDSCAN 
 DO JIESHU
 RETURN 

PROCEDURE ZHUNBEI
 IF  .NOT. FILE(JSF_B) .OR.  .NOT. FILE(JSF_Z) .OR.  .NOT. FILE(JSF_M)
 ?? CHR(7)
 WAIT WINDOW NOWAIT '比率文件不存在!'
 STORE .F. TO ERR
 RETURN 
 ENDIF 
 USE IN 0 LIB\JS1.DAT
 USE IN 0 LIB\JS2.DAT
 USE IN 0 LIB\JS3.DAT
ENDPROC
*------
PROCEDURE JIESHU
 SELECT JS1
 USE 
 SELECT JS2
 USE 
 SELECT JS3
 USE 
ENDPROC
*------
PROCEDURE JS2_SUM
 SELECT JS2
 SCAN FOR XH = JS1.XH
 JSFH = FH
 IF M_BH <> BH
 SJWJ = 'H' + JS2.BH + NIAN
 DO JSWJCZ
 ELSE 
 SJWJ = 'DAT'
 ENDIF 
  SELE  &SJWJ
 CZSJ = 0
 IF SJWJ <> 'DAT'
 LOCATE FOR  ;
      DQDH = VAL(YUE) AND BLX1 = M_BLX1 AND BLX2 = M_BLX2 AND XMDH = 'dpbz' AND DA1 = DL
 IF FOUND()
 DO CZFZXM
 ENDIF 
 ELSE 
 LOCATE FOR XMDH = JS2.XMDH
 IF FOUND()
 CZSJ = 1
 ENDIF 
 ENDIF 
 IF CZSJ = 1
 SCATTER TO Z_DAT
 IF YICI = 0
 STORE JS2.DW TO YICI
 ENDIF 
 CHA = YICI - JS2.DW
 Z_DAT( 5 + JS2.LS ) = ROUND(Z_DAT(5 + JS2.LS) / 10 ** CHA,2)
  FENZI=ROUND(FENZI&JSFH+Z_DAT(5+JS2->LS),2)    
 ENDIF 
 ENDSCAN 
ENDPROC
*------
PROCEDURE JS3_SUM
 SELECT JS3
 SCAN FOR XH = JS1.XH
 JSFH = FH
 IF M_BH <> BH
 SJWJ = 'H' + JS3.BH + NIAN
 DO JSWJCZ
 ELSE 
 SJWJ = 'DAT'
 ENDIF 
  SELE &SJWJ
 CZSJ = 0
 IF SJWJ <> 'DAT'
 LOCATE FOR  ;
      DQDH = VAL(YUE) AND BLX1 = M_BLX1 AND BLX2 = M_BLX2 AND XMDH = 'dpbz' AND DA1 = DL
 IF FOUND()
 DO CZFMXM
 ENDIF 
 ELSE 
 LOCATE FOR XMDH = JS3.XMDH
 IF FOUND()
 CZSJ = 1
 ENDIF 
 ENDIF 
 IF CZSJ = 1
 SCATTER TO M_DAT
 IF YICI = 0
 STORE JS3.DW TO YICI
 ENDIF 
 CHA = YICI - JS3.DW
 M_DAT( 5 + JS3.LS ) = ROUND(M_DAT(5 + JS3.LS) / 10 ** CHA,2)
  FENMU=ROUND(FENMU&JSFH+M_DAT(5+JS3->LS),2)    
 ENDIF 
 ENDSCAN 
ENDPROC
*------
PROCEDURE CZFZXM
  IF !USED("&SJWJ")
  IF !FILE("DAT\&SJWJ..DAT")
 ?? CHR(7)
 ?? CHR(7)
 @ 5 , 2 SAY BH + '汇总表找不到!'
 = INKEY(1)
 FHBZ = 1
 EXIT 
 ENDIF 
  USE DAT\&SJWJ..DAT IN 0
 ENDIF 
  SELE  &SJWJ
 GO TOP
 LOCATE FOR  ;
      DQDH = VAL(YUE) AND BLX1 = M_BLX1 AND BLX2 = M_BLX2 AND XMDH = 'dpbz' AND DA1 = DL
 IF  .NOT. FOUND()
 ?? CHR(7)
 @ 5 , 2 SAY BH + '汇总表 '
 @ 5 , 5 SAY '找不到!'
 = INKEY(1)
 FHBZ = 1
 EXIT 
 ENDIF 
 DO WHILE  .NOT. EOF()
 IF XMDH <> JS2.XMDH
 SKIP 
 ELSE 
 CZSJ = 1
 EXIT 
 ENDIF 
 IF XMDH = 'dpbz'
 EXIT 
 ENDIF 
 ENDDO 
 IF CZSJ = 0
 ?? CHR(7)
 @ 5 , 2 SAY BH + '汇总表 '
  @5,5 SAY &JS2->XMDH+"找不到!" 
 = INKEY(1)
 FHBZ = 1
 EXIT 
 ENDIF 
ENDPROC
*------
PROCEDURE CZFMXM
 DO WHILE  .NOT. EOF()
 IF XMDH <> JS3.XMDH
 SKIP 
 ELSE 
 CZSJ = 1
 EXIT 
 ENDIF 
 IF XMDH = 'dpbz'
 EXIT 
 ENDIF 
 ENDDO 
 IF CZSJ = 0
 ?? CHR(7)
 @ 5 , 2 SAY BH + '汇总表 '
  @5,5 SAY &JS2->XMDH+"找不到!" 
 = INKEY(1)
 FHBZ = 1
 EXIT 
 ENDIF 
ENDPROC
*------
PROCEDURE JSWJCZ
  IF !USED("&SJWJ")
  IF !FILE("DAT\&SJWJ..DAT")
 ?? CHR(7)
 ?? CHR(7)
 @ 5 , 2 SAY BH + '汇总表找不到!'
 = INKEY(1)
 FHBZ = 1
 EXIT 
 ENDIF 
  USE DAT\&SJWJ..DAT IN 0
 ENDIF 
ENDPROC
*------*

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -