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

📄 moreorlesstotal.prg

📁 通过VFP编程的方式来统计指定数据库中的有关数据
💻 PRG
字号:
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
*  文件名: MOREORLESSTOTAL.PRG <-- 本文件由 UnFoxAll 创建
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-


 SET TALK OFF
 SET SAFETY OFF
 SET DELETED ON
 SET DATE TO ANSI
 SET CENTURY ON
 LNSELE00 = SELECT()
 DM = IIF(TYPE('SHORTNAME') = 'C',SHORTNAME,'')
 IF TYPE('DATEFROM') <> 'C'
    DATEEND0 = DATE()
    DATEEND = DTOC(DATE())
    IF DAY(DATE()) = 1
       DATEEND0 = DATE() - 1
       DATEEND = DTOC(DATE() - 1)
    ENDIF 
    DATEFROM0 = DATEEND0
    LNMONTH = MONTH(DATEFROM0)
    DO WHILE .T.
       DATEFROM0 = DATEFROM0 - 1
       IF MONTH(DATEFROM0) < LNMONTH
          DATEFROM0 = DATEFROM0 + 1
          EXIT 
       ENDIF 
    ENDDO 
    DATEFROM = DTOC(DATEFROM0)
 ENDIF 
 WAIT WINDOW NOWAIT TIMEOUT 60 '正在进行数据计算......'
 IF  .NOT. FILE('MAINBOOK.DBF')
    CREATE TABLE MAINBOOK ( CLASS C ( 1 ) , DATETIME T , NUMBER I , TYPE C ( 10 ) , NAME C  ;
         ( 10 ) , NUM I , PRICE Y , NOTE C ( 10 ) )
    USE 
 ENDIF 
 IF  .NOT. FILE('DATAINOUT.DBF')
    CREATE TABLE DATAINOUT ( ID C ( 8 ) , CODE C ( 22 ) , M C ( 18 ) , PJ N ( 10 , 2 ) , B  ;
         C ( 4 ) , C C ( 2 ) , D I , F1 C ( 10 ) , G C ( 6 ) , H C ( 4 ) , I  ;
         C ( 4 ) , DJH N ( 6 ) , O I )
    USE 
 ENDIF 
 SELECT CLASS , B , C , D , F1  MODEL , G  F ,  ;
      IIF(CLASS = 'D',ALLTRIM(I) + ALLTRIM(H),ALLTRIM(H))  F1 , LEFT(TTOC(DATETIME),10)  RQ ,  ;
      IIF(CLASS = 'D',PJ * INT(VAL(I)),PJ)  PJ , NOTE WHERE  ;
      LEFT(TTOC(DATETIME),10) >= DATEFROM AND LEFT(TTOC(DATETIME),10) <= DATEEND AND  ;
(ALLTRIM(TYPE) = '盘盈' .OR. ALLTRIM(TYPE) = '盘亏') AND LEN(ALLTRIM(TYPE)) > 0  ;
      HAVING  ;
       .NOT. ISNULL(B) ORDER BY DATETIME , CLASS , B , D , F1 INTO TABLE YKTOTAL0  ;
      FROM MAINBOOK LEFT JOIN DATAINOUT ON MAINBOOK.NUMBER = DATAINOUT.DJH
 LNT = _TALLY
 SELECT MAINBOOK
 USE 
 SELECT DATAINOUT
 USE 
  USEDBF('JPGL\JPPD', ,'\VFP\JPGL\JPPD.DBF','C:\VFP\JPGL\JPPD.DBF', , ,'CREA CURS JPPD(LB C(1),DJH C(10),JCRQ C(10),CCRQ C(10),B C(3),D I,MODEL C(10),F I,F1 I,M I,MF C(2),L Y,P C(4))')
 IF FILE('JPGL\JPPD.DBF')
    SELECT LB  CLASS , JCRQ  RQ , B , D , MODEL , ALLTRIM(STR(F))  G , ALLTRIM(STR(F1))  H ,  ;
         L  PJ , P  NOTE WHERE  ;
         JCRQ >= DATEFROM AND JCRQ <= DATEEND AND LB <> ' ' INTO TABLE JPPDTMP FROM JPPD
    LNTJPPD = _TALLY
    SELECT JPPDTMP
    USE 
    IF LNTJPPD > 0
       SELECT YKTOTAL0
       APPEND FROM JPPDTMP
    ENDIF 
    DELETE File JPPDTMP.DBF
 ENDIF 
 IF USED('JPPD')
    SELECT JPPD
    USE 
 ENDIF 
 SELECT * ORDER BY RQ , CLASS , B , D , MODEL INTO CURSOR YKTOTAL FROM YKTOTAL0
 LNT = _TALLY
 SELECT YKTOTAL0
 USE 
 DELETE File YKTOTAL0.DBF
 SELECT YKTOTAL
 SUM TO LNPJT PJ
 IF LNT > 0
    GO TOP
    DATETIME = DATETIME()
    REPORT FORM 盘盈盘亏 PREVIEW NOCONSOLE
    REPORT FORM 盘盈盘亏 TO PRINTER PROMPT NOCONSOLE
 ELSE 
    = MESSAGEBOX('盘盈盘亏统计数为零!    ',64,'信息')
 ENDIF 
 USE 
 WAIT WINDOW NOWAIT TIMEOUT 3 '盘盈盘亏统计完毕!'
 SELECT (LNSELE00)
 RETURN 
*

⌨️ 快捷键说明

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