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

📄 xsb_csy.prg

📁 不错的用电管理系统,用VFP6.0做的.大家可以下来看看哦
💻 PRG
字号:

***********************************************
* 程序功能:分类汇总抄收员线损表(XSB_CSY.PRG) *
* 程序作者:唐国春                           *
* 完成日期:2002年05月                       *
***********************************************

SET TALK OFF
SET SAFE OFF

CLOSE DATABASE
PUBLIC QH,S,SS,SSS,dytitle,RQ1,RQ2

SELE 0
USE TIME
TIME1=TIME.RQ
RQ1=SUBSTR(TIME1,1,4)
RQ2=SUBSTR(TIME1,5,2)
USE IN TIME

SS='RWSJ\RW'+SUBSTR(TIME1,3,4)
SSS=SS+'.DBF'

SS_BAK='RWSJ\XSBC'+SUBSTR(TIME1,3,4)
SSS_BAK=SS_BAK+'.DBF'

IF .NOT. FILE ("&SSS")
	=MESSAGEBOX('还没有提取生成'+RQ1+'年'+RQ2+'月的电费数据资料!'+CHR(13)+CHR(13)+'请先提取生成电费数据资料!',0+16,'错误')
	CLOSE DATABASE
	SET CURSOR ON
	RETURN
ENDIF

SELE 0
USE GDS
SELE 0
USE XSB
ZAP

*****************************************************************************

SELE 1
USE &SSS
COPY TO tmp.DBF FOR .NOT. EMPTY(GDS)
SELE 0
USE tmp

*******************************************************************

SELE tmp
REPL ALL JEHJ WITH JBDF+CJFJ

SELE 0
USE XS_TMP
ZAP
SELE tmp
GO TOP
DO WHILE .NOT. EOF()
	SELE tmp
	Q1=QH
	Q2=ALLTRIM(CSY)
	Q3=gdl
	Q4=DD
	Q7=GDS
	INSERT INTO XS_TMP (QH,XM,GDL,SDL,GDS) VALUE (Q1,Q2,Q3,Q4,Q7)
	SELE tmp
	SKIP
ENDDO

SELE XS_TMP
***************************生成个人库******************

SELE 0
USE GR
ZAP
SELE XS_TMP
GO TOP

DO WHILE .NOT. EOF()
	SELE XS_TMP
	S=ALLT(XM)
	S1=ALLT(GDS)
	SELE GR
	LOCA FOR ALLT(XM)=S
	IF .NOT. FOUND()
		INSERT INTO GR (XM,GDS) VALUE (S,S1)
	ENDIF
	SELE XS_TMP
	SKIP
ENDDO

SELE GR

********************!*删除总区数据*!***********************

SELE 0
USE shk
GO TOP

DO WHILE .NOT. EOF()
	IF zqbz='*'
		SELE XS_TMP
		DELE ALL FOR SUBS(QH,1,4)==shk.QH
		PACK
	ENDIF
	SELE shk
	SKIP
ENDDO

****************************数据分类汇总********************

SELE GR
set order to tag xm
GO TOP

DO WHILE .NOT. EOF()
	SELE GR
	S=ALLTRIM(XM)
	S1=ALLT(GDS)
	SELE XS_TMP
	LOCA FOR ALLT(XM)=S
	IF FOUND()
		SUM GDL,SDL FOR ALLT(XM)==S TO Q1,Q2
		INSERT INTO XSB (XM,GDL,SDL,GDS) VALUE (S,Q1,Q2,S1)
	ENDIF
	SELE GR
	SKIP
ENDDO

SELE XS_TMP
SUM GDL,SDL FOR EMPTY(XM) TO Q1,Q2

IF Q1<>0 OR Q2<>0
	INSERT INTO XSB (XM,GDL,SDL) VALUE ('(其他)',Q1,Q2)
ENDIF

SUM ALL GDL,SDL TO Q1,Q2
INSERT INTO XSB (XM,GDL,SDL) VALUE ('*合计*',Q1,Q2)

SELE XSB
DELE ALL FOR EMPTY(XM)
PACK

REPL ALL XSL WITH (GDL-SDL)/GDL*100 FOR GDL<>0

COPY TO &SSS_BAK
use in shk

S='xsb.dbf'
dytitle='(按抄收员分类汇总)'

SET SAFE ON

DO FORM dy_xsb

⌨️ 快捷键说明

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