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

📄 saletotalb.prg

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


 SET TALK OFF
 SET ECHO 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 '正在进行数据计算......'
 RQ11 = DATEFROM
 QMRQ = DATEEND
 D1 = RQ11
 D2 = QMRQ
  USEDBFJP()
 LCDBF = DBF('JP')
 SELECT 0
 CREATE CURSOR CURSTOTALTEMP ( DJH C ( 6 ) , JCRQ C ( 10 ) , CCRQ C ( 10 ) , B C ( 3 ) ,  ;
      D I , MODEL C ( 10 ) , F I , F1 I , M I , MF C ( 2 ) , DH I , L1 N (  ;
      10 , 2 ) , L N ( 10 , 2 ) , O I , P I )
 IF FILE(LCDBF)
     APPE FROM &LCDBF
 ENDIF 
 SELECT B , COUN( * )  CK , SUM(L)  CKJE , SUM(L1)  CKJE1 , 0  KC , 0  KCJE WHERE  ;
      CCRQ >= D1 AND CCRQ <= D2 AND MF = 'Y' GROUP BY B ORDER BY B INTO CURSOR  ;
      JPXSTJ ???EClause[CD] FROM CURSTOTALTEMP
 LNT = _TALLY
 SELECT B , 0  CK , 0  CKJE , 0  CKJE1 , COUN( * )  KC , SUM(L)  KCJE WHERE  ;
      (MF = ' ' .OR. CCRQ > D2) AND JCRQ <= D2 GROUP BY B ORDER BY B INTO CURSOR JPKCTJ  ;
      ???EClause[CD] FROM CURSTOTALTEMP
 LNTKC = _TALLY
 IF USED('JP')
    SELECT JP
    USE 
 ENDIF 
 IF USED('CURSTOTALTEMP')
    SELECT CURSTOTALTEMP
    USE 
 ENDIF 
 DO CASE 
 CASE LNT = 0
    IF USED('JPXSTJ')
       SELECT JPXSTJ
       USE 
    ENDIF 
    IF USED('JPKCTJ')
       SELECT JPKCTJ
       USE 
    ENDIF 
    IF USED('JPXSTJALL')
       SELECT JPXSTJALL
       USE 
    ENDIF 
    = MESSAGEBOX('B类商品销售统计数为零!    ',64,'信息')
    RETURN 
 CASE LNT > 0 AND LNTKC = 0
    SELECT B , CK , CKJE , CKJE1 , KC , KCJE , 0  CKLJ , 0  CKJELJ , 0  CKJEJ1 INTO CURSOR  ;
         JPXSTJP FROM JPXSTJ
 CASE LNT > 0 AND LNTKC > 0
    SELECT * INTO CURSOR JPXSTJALL ???EClause[CD] FROM JPXSTJ UNION  SELECT * FROM JPKCTJ
    SELECT B , SUM(CK)  CK , SUM(CKJE)  CKJE , SUM(CKJE1)  CKJE1 , SUM(KC)  KC , SUM(KCJE)  ;
          KCJE , 0  CKLJ , 0  CKJELJ , 0  CKJEJ1 GROUP BY B ORDER BY B INTO  ;
         CURSOR JPXSTJP FROM JPXSTJALL
 ENDCASE 
 IF USED('JPXSTJ')
    SELECT JPXSTJ
    USE 
 ENDIF 
 IF USED('JPKCTJ')
    SELECT JPKCTJ
    USE 
 ENDIF 
 IF USED('JPXSTJALL')
    SELECT JPXSTJALL
    USE 
 ENDIF 
 SELECT JPXSTJP
 COUNT TO NN
 IF NN > 0
    DEFINE WINDOW VIEWIT FROM 0 , 0 TO 30 , 128 GROW FLOAT CLOSE ZOOM TITLE '报表预览 '  ;
         NOMDI SYSTEM 
    REPORT FORM 镜片销售统计 PREVIEW NOCONSOLE WINDOW VIEWIT
    REPORT FORM 镜片销售统计 TO PRINTER PROMPT NOCONSOLE
 ELSE 
    = MESSAGEBOX('B类商品销售统计数为零!    ',64,'信息')
 ENDIF 
 USE 
 SELECT (LNSELE00)
 RETURN 
*

⌨️ 快捷键说明

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