📄 cangku.txt
字号:
ZYHSURE=0
@ 7.2,10 GET ZYHSURE FUNC "*HT 确认;放弃" SIZE 1.4,9,2 FONT "宋体",12
READ MODA
IF ZYHSURE=2 OR LAST()=27
CLOSE DATABASES
RELE WINDOW rqw
RETU
ENDIF
jsrq0=CTOD(SUBS(STR(yea,4),3,2)+"."+STR(mon,2)+".01")+1
jsrq=CTOD(SUBS(STR(yea,4),3,2)+"."+STR(mon,2)+".01")+31
jsrq=jsrq-day(jsrq)
SELECT 3
USE cprdata
LOCATE ALL FOR YEAR(rq)=yea AND MONTH(rq)=mon
IF EOF()
CLOSE DATA ALL
RELE WINDOW rqw
do zyhwa_se with [\1], [本月没有数据。请先执行数据录入后重试。按任意键退出……],1
RETURN
ENDIF
do zyhwa_se with [\1], [正在计算报表数据......],11
SELECT 3
INDEX ON cpdm TO cpbbtemp
TOTAL ON cpdm TO cpbbtemp FOR YEAR(rq)=yea AND MONTH(rq)=mon
SELECT 2
USE cpkc
LOCATE ALL FOR rq=jsrq0
SELECT 1
USE cpbbjs
ZAP
APPEND BLANK
APPEND BLANK
APPEND BLANK
APPEND FROM cpbbtemp
IF EOF(2)
REPLACE ALL kcsl WITH 0
ELSE
GO 3
SKIP
DO WHILE .NOT.EOF()
fld="cp"+cpdm
REPLACE kcsl WITH B.&fld
SKIP
ENDDO
ENDIF
IF mon>1
SELECT 3
USE cpbb
SET FILTER TO YEAR(bbrq)=yea AND MONTH(bbrq)=mon-1
GO TOP
DO WHILE .NOT.EOF()
SELECT 1
LOCATE ALL FOR cpdm=C.cpdm
REPLACE ljrk WITH C.ljrk+rksl,ljxs WITH C.ljxs+lssl+pfsl
SELECT 3
SKIP
ENDDO
ELSE
REPLACE ALL ljrk WITH rksl,ljxs WITH lssl+pfsl
ENDIF
SELECT 2
USE cpdm orde cpdm
SELECT 1
SET RELATION TO cpdm INTO B
REPLACE ALL bbrq WITH jsrq,cpmc WITH B.cpmc,dw WITH B.dw
SUM ALL rksl*B.bbj,ljrk*B.bbj,lssl*B.bbj,pfsl*B.bbj,ljxs*B.bbj ;
TO a11,a12,a13,a14,a15
SUM ALL rksl*B.xxj,ljrk*B.xxj,lssl*B.xxj,pfsl*B.xxj,ljxs*B.xxj ;
TO a21,a22,a23,a24,a25
SUM ALL rksl,ljrk,lssl,pfsl,ljxs TO a31,a32,a33,a34,a35
GO TOP
REPLACE cpdm WITH "CZ",cpmc WITH "工业总产值(不变价)",;
dw WITH "千元",rksl WITH a11,ljrk WITH a12,lssl WITH a13,;
pfsl WITH a14,ljxs WITH a15
SKIP
REPLACE cpdm WITH "CZ",cpmc WITH "工业总产值(现行价)",;
dw WITH "千元",rksl WITH a21,ljrk WITH a22,lssl WITH a23,;
pfsl WITH a24,ljxs WITH a25
SKIP
REPLACE cpdm WITH "CL",cpmc WITH "产品总产量",dw WITH " ",;
rksl WITH a31,ljrk WITH a32,lssl WITH a33,pfsl WITH a34,;
ljxs WITH a35
CLOSE DATABASES
USE cpbb
DELETE ALL FOR bbrq=jsrq
PACK
APPEND FROM cpbbjs
ERASE cpbbtemp.dbf
ERASE cpbbtemp.idx
CLOSE DATA ALL
RELE WINDOW rqw
DO zyhwa_se with [],[],12
RETURN
**********
PROC ZCP32
**********
mon=MONTH(DATE())
yea=YEAR(DATE())
DEFINE WINDOW rqw at 0,0 SIZE 10,40 FONT "宋体",12 ;
TITL " 请输入报表时间,按Esc键退出" COLO 0/7* SYSTEM
MOVE WINDOW rqw CENTER
ACTIVATE WINDOW rqw
@ 1,9 SAY "《生产销售月报表》"
@ 2.3,7 to 2.3,31 pen 2
@ 2.5,7 to 2.5,31 pen 2
@ 4,3 SAY "请输入报表的年月:"
@ 4,COL()+1 GET yea PICTURE "9999" VALID yea<=YEAR(DATE()) colo ,6+/4
@ 4,COL()+1 SAY "年"
@ 4,COL()+1 GET mon PICTURE "99" RANGE 1,12 colo ,6+/4
@ 4,COL()+1 SAY "月"
ZYHSURE=0
@ 6.2,10 GET ZYHSURE FUNC "*HT 确认;放弃" SIZE 1.4,9,2 FONT "宋体",12
READ MODA
IF ZYHSURE=2 OR LAST()=27
CLOSE DATABASES
RELE WINDOW rqw
RETU
ENDIF
dyrq=CTOD(SUBS(STR(yea,4),3,2)+"."+STR(mon,2)+".01")+31
dyrq=dyrq-day(dyrq)
dyrq0=CTOD(SUBS(STR(yea-1,4),3,2)+"."+STR(mon,2)+".01")+31
dyrq0=dyrq0-day(dyrq0)
USE cpbb alia a
LOCATE ALL FOR bbrq=dyrq
IF EOF()
CLOSE DATA ALL
RELE WINDOW rqw
DO ZYHWA_SE WITH [\1],[未形成本月报表数据。请先执行统计报表计算后重试。按任意键退出……],1
RETURN
ENDIF
COPY TO cpbbtem FOR bbrq=dyrq0
SELECT 2
USE cpbbtem alia b
INDEX ON cpdm TO cpbbtem
SELECT 1
SET RELATION TO cpdm INTO B
SET FILTER TO bbrq=dyrq
GO TOP
bbyear=STR(yea,4,0)+"年"+STR(mon,2,0)+"月"
RELE WINDOW rqw
DO ZYHBBSC WITH [《生产销售月报表》],[scxsyb]
CLOSE DATA ALL
ERASE cpbbtem.dbf
ERASE cpbbtem.idx
RETURN
***********
PROC ZCP33
***********
mon=MONTH(DATE())
yea=YEAR(DATE())
DEFINE WINDOW rqw at 0,0 SIZE 10,40 FONT "宋体",12 ;
TITL " 请输入报表时间,按Esc键退出" COLO 0/7* SYSTEM
MOVE WINDOW rqw CENTER
ACTIVATE WINDOW rqw
@ 1,8 SAY "《产品收发存汇总表》"
@ 2.3,7 to 2.3,31 pen 2
@ 2.5,7 to 2.5,31 pen 2
@ 4,3 SAY "请输入报表的年月:"
@ 4,COL()+1 GET yea PICTURE "9999" VALID yea<=YEAR(DATE()) colo ,6+/4
@ 4,COL()+1 SAY "年"
@ 4,COL()+1 GET mon PICTURE "99" RANGE 1,12 colo ,6+/4
@ 4,COL()+1 SAY "月"
ZYHSURE=0
@ 6.2,10 GET ZYHSURE FUNC "*HT 确认;放弃" SIZE 1.4,9,2 FONT "宋体",12
READ MODA
IF ZYHSURE=2 OR LAST()=27
CLOSE DATABASES
RELE WINDOW rqw
RETU
ENDIF
dyrq=CTOD(SUBS(STR(yea,4),3,2)+"."+STR(mon,2)+".01")+31
dyrq=dyrq-day(dyrq)
dyrq0=CTOD(SUBS(STR(yea-1,4),3,2)+"."+STR(mon,2)+".01")+31
dyrq0=dyrq0-day(dyrq0)
SELECT 1
USE cpbb alia a
SET FILTER TO bbrq=dyrq AND cpdm<>"CZ"
GO TOP
IF EOF()
CLOSE DATA ALL
RELE WINDOW rqw
DO ZYHWA_SE WITH [\1],[未形成本月报表数据。请先执行统计报表计算后重试。按任意键退出……],1
RETURN
ENDIF
bbyear=STR(yea,4,0)+"年"+STR(mon,2,0)+"月"
RELE WINDOW rqw
DO ZYHBBSC WITH [《产品收发存汇总表》],[cpsfcb]
CLOSE DATA ALL
RETURN
***********
PROC ZYHBBSC
************
PARA PRTNA,REPONA
DEFINE WINDOW SCGZT ;
AT 0.000, 0.000 ;
SIZE 15.278,68.000 ;
TITLE "输出库存管理有关报表" ;
FONT "宋体", 12 ;
FLOAT ;
NOCLOSE ;
NOMINIMIZE ;
SYSTEM ;
COLOR RGB(,,,222,208,226)
MOVE WINDOW SCGZT CENTER
ACTIVATE WINDOW SCGZT NOSHOW
@ 1.333,33.000 TO 11.666,66.500 ;
PEN 1, 8
@ 11.611,33.000 TO 11.611,66.375 ;
PEN 1, 8 ;
STYLE "1" ;
COLOR RGB(255,255,255,255,255,255)
@ 1.389,66.375 TO 11.667,66.375 ;
PEN 1, 8 ;
COLOR RGB(255,255,255,255,255,255)
@ 1.000,9.625 SAY "输出报表" ;
FONT "宋体", 16 ;
STYLE "BT"
@ 5.556,3.875 SAY "报表名称:" ;
FONT "宋体", 12 ;
STYLE "T"
@ 7.8,8 SAY PRTNA FONT "宋体", 12 STYLE "T"
@ 3,40 say [操作提要] FONT "宋体", 12 STYLE "T"
@ 5,38 SAY [ 打印管理器中必须配置]+CHR(13) ;
+[有能够支持A4纸张输出的打]+CHR(13) ;
+[印机(如:LQ1600K)。] ;
SIZE 4,24,0.5 FONT "宋体", 12 STYLE "T"
@ 3.278,1.500 TO 11.611,31.625 ;
PEN 1, 8
@ 12.611,12.375 GET PRN_IT ;
PICTURE "@*HN \<1 打印" ;
SIZE 1.556,10.000,0.500 ;
DEFAULT 1 ;
VALI CZTACF(1) ;
FONT "宋体", 12
@ 12.667,28.500 GET STOP_IT ;
PICTURE "@*HN \<0 退出" ;
SIZE 1.556,10.000,0.500 ;
DEFAULT 1 ;
VALI CZTACF(2) ;
FONT "宋体", 12
@ 12.667,44.750 GET DIS_IT ;
PICTURE "@*HN \<2 显示" ;
SIZE 1.556,10.000,0.500 ;
DEFAULT 1 ;
VALI CZTACF(3) ;
FONT "宋体", 12
ACTIVATE WINDOW SCGZT
READ CYCLE MODA
RELEASE WINDOW SCGZT
RETU
********
FUNC CZTACF
********
PARA IMO
DO CASE
CASE IMO=1
DEFIN WIND AAAA AT 0,0 SIZE 1,2
MOVE WIND AAAA CENT
ACTI WIND AAAA
REPO FORM "&REPONA" TO PRIN PROM
RELE WIND AAAA
CASE IMO=2
CLEA READ
CASE IMO=3
REPO FORM "&REPONA" PREV
ENDC
RETU .T.
***********
FUNC GETRQ
***********
PARA IMO,srrq1,srrq2
DEFI WIND pdpwin AT 0,0 SIZE 10.500,52.125 FLOA SYST COLOR RGB(,,,192,192,192) ;
TITL "输入发生日期" FONT "宋体", 12
MOVE WIND pdpwin CENT
ACTI WIND pdpwin NOSHOW
@ 1.556,4.625 SAY "输入发生日期" FONT "宋体", 12
IF IMO=1
@ 5.889,6.125 SAY "发生日期:" FONT "宋体", 12 STYL "T"
ENDI
IF IMO=2
@ 4.889,4.500 SAY "发生日期从" FONT "宋体", 12 STYL "T"
@ 4.778,30.000 SAY "开始" FONT "宋体", 12 STYL "T"
@ 6.889,9.000 SAY "截止到" FONT "宋体", 12 STYL "T"
@ 6.833,29.875 SAY "为止" FONT "宋体", 12 STYL "T"
ENDI
IF IMO=1
@ 5.889,16.00 GET srrq1 SIZE 0.889,12 DEFAULT { / / } ;
FONT "宋体", 12 COLO ,RGB(255,255,255,128,0,0)
ELSE
@ 4.889,15.875 GET srrq1 SIZE 0.889,12.125 DEFA { / / } ;
FONT "宋体", 12 COLO ,RGB(255,255,255,128,0,0)
@ 6.944,16.000 GET srrq2 SIZE 0.889,12 DEFA { / / } ;
FONT "宋体", 12 COLO ,RGB(255,255,255,128,0,0)
ENDI
rq_sure=0
@ 4.167,40.250 GET rq_sure PICT "@*VT 确认;放弃" ;
SIZE 1.4,8.625,0.889 FONT "宋体", 12
@ 4, 2.25 TO 8.722,37.125 PEN 1, 8
ACTI WIND pdpwin
READ CYCLE MODA
IF rq_sure=2 OR (LAST()=27 AND rq_sure=0)
STOR { / / }TO srrq1,srrq2
ENDI
RELE WIND pdpwin
RETU
************
FUNC XZCPNA &&本函数用于选择某一种产品
************
PRIV FRSELE,CPCHO1,CPYES,CHOICE_V
FRSELE=SELE()
IF !USED("CPDM")
USE "CPDM.DBF" AGAI ALIA CPDM ORDE CPDM IN 0
ENDI
SELE CPDM
GO TOP
CPCHO1=[ ]+CPDM.CPDM+[ :]+CPDM.CPMC+[:]+CPDM.DW+[: ]+CPDM.LB
CHOICE_V=[**CANC**]
DEFI WIND XZCPDM AT 0,0 SIZE 19.5,56.625 ;
TITL "选择产品" FONT "宋体", 12 FLOA SYST
MOVE WINDOW XZCPDM CENTER
DEFI POPUP THE_CPBAR PROMPT FIELD ;
[ ]+CPDM.CPDM+[ :]+CPDM.CPMC+[:]+CPDM.DW+[: ]+CPDM.LB SCROLL
ACTI WIND XZCPDM NOSHOW
@ 1.167, 3.625 SAY "代码" FONT "宋体", 12 STYL "T" COLO RGB(0,0,0,,,,)
@ 1.167, 9.250 SAY "名称" FONT "宋体", 12 STYL "T" COLO RGB(0,0,0,,,,)
@ 1.167, 18.50 SAY "单位" FONT "宋体", 12 STYL "T" COLO RGB(0,0,0,,,,)
@ 1.167,25.625 SAY "类别" FONT "宋体", 12 STYL "T" COLO RGB(0,0,0,,,,)
@ 3.222,39.750 SAY "在左面所列产品"+CHR(13)+;
"记录上双击鼠标,"+CHR(13)+"或是点击后再选"+CHR(13)+;
"择“选中”按钮"+CHR(13)+"则可选择一种产"+CHR(13)+;
"品。如果选择了" SIZE 6,16, 0 FONT "宋体", 11 STYL "T" COLO RGB(0,0,0,,,,)
@ 1.278,39.750 SAY "选择产品提要" FONT "宋体", 12 STYLE "BT" COLO RGB(0,0,0,,,,)
@ 12.056,39.625 SAY "可以在前面直接"+CHR(13)+;
"输入代码或名称"+CHR(13)+"首拼码代替本窗"+CHR(13)+;
"选择产品的方式" SIZE 4,14.125, 0 FONT "宋体", 11 STYL "T" COLO RGB(0,0,0,,,,)
@ 8.889,39.875 SAY "“放弃”,则不"+CHR(13)+"选择任何产品。"+CHR(13);
SIZE 2,14.125, 0 FONT "宋体", 11 STYL "T" COLO RGB(0,0,0,,,,)
@ 1,2 TO 2.278,36.5 PEN 1, 8
@ 1,37.5 TO 16.722,54.75 PEN 1, 8
@ 11.333,37.5 TO 11.333,54.75 PEN 1, 8 STYL "1"
@ 2.667,37.5 TO 2.667,54.625 PEN 1, 8 STYL "1"
@ 2.222,2 GET CPCHO1 PICT "@&NT" POPUP THE_CPBAR SIZE 14.444,34.375 ;
VALI CPXZF(0);
FONT "宋体", 12 COLO RGB(255,255,255,0,0,255),RGB(255,255,255,0,0,255)
@ 17.5,16 GET CPYES ;
VALI CPXZF(CPYES);
PICT "@*HT 选中;放弃" SIZE 1.278,8.75,9.25 DEFA 1 FONT "宋体", 12
ACTI WIND XZCPDM
PUSH KEY CLEA
READ CYCL MODA
RELE WIND XZCPDM
POP KEY
IF USED("cpdm")
SELECT CPDM
USE
ENDIF
RELE POPU THE_CPBAR
SELE (FRSELE)
RETU CHOICE_V
**********
FUNC CPXZF
**********
PARA XZIMO
IF !BETW(RECN("CPDM"),1,RECC())
RETU .F.
ENDI
CHOICE_V=[**CANC**]
IF INLI(XZIMO,0,1)
CHOICE_V=[@]+ALLT(CPDM.CPDM)+[@]+ALLT(CPDM.CPMC)+[@]+ALLT(CPDM.DW)+[@];
+ALLT(CPDM.LB)+[@]+LTRI(STR(RECN("CPDM"),6,0))+[@]
RETU .T.
ENDI
RETU .F.
************
FUNC CPJM
************
PARA JMXS,CO_MESS
IF OCCU([@],CO_MESS)<JMXS+1
RETU [ ]
ENDI
PRIV UBG,UED
UBG=AT([@],CO_MESS,JMXS)
UED=AT([@],CO_MESS,JMXS+1)
RETU SUBS(CO_MESS,UBG+1,UED-UBG-1)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -