📄 sellitman.prg
字号:
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
* 文件名: SELLITMAN.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 '正在进行数据计算......'
FULLNAME = DM
USEDBFORDERNO()
USEDBFITEM()
SELECT 0
DO CASE
CASE USED('有奖销售')
SELECT 有奖销售
CASE FILE('有奖销售.DBF')
USE 有奖销售.DBF
CASE FILE('XSGL\有奖销售.DBF')
USE XSGL\有奖销售.DBF
CASE FILE('\VFP\XSGL\有奖销售.DBF')
USE \VFP\XSGL\有奖销售.DBF
CASE FILE('C:\VFP\XSGL\有奖销售.DBF')
USE C:\VFP\XSGL\有奖销售.DBF
OTHERWISE
= MESSAGEBOX('未发现文件 “有奖销售.DBF” ! ',48,'信息')
RETURN
ENDCASE
WAIT WINDOW NOWAIT TIMEOUT 200 '数据计算......'
SET DELETED ON
T00 = 0
SELECT ORDERNO.CJR CJR , ITEM.NO NO , ITEM.QJRQ QJRQ , UPPER(ITEM.CODE) CODE , ;
UPPER(ITEM.MODEL) MODEL WHERE ;
ORDERNO.WS <> -1 AND ORDERNO.LB > ' ' AND ORDERNO.CJR > ' ' AND ITEM.QJRQ >= DATEFROM AND ;
ITEM.QJRQ <= DATEEND AND ITEM.BZ = ' ' AND ITEM.NO = ORDERNO.NO AND ;
LEN(ALLTRIM(ITEM.CODE)) > 0 ;
HAVING ;
.NOT. ISNULL(CJR) AND .NOT. ISNULL(CODE) ORDER BY ;
ITEM.CODE INTO TABLE YJXSTMP FROM ITEM , ORDERNO
IF _TALLY > 0
T00 = 1
SELECT 0
CREATE CURSOR YJXS ( CJR C ( 8 ) , NO I , QJRQ C ( 10 ) , CODE C ( 12 ) , MODEL C ( 18 ;
) , 型号 C ( 10 ) , 备注 C ( 30 ) , 奖金 Y , 店长奖金 Y )
APPEND FROM YJXSTMP
GO TOP
SCAN
LCCODE = YJXS.CODE
LCM = YJXS.MODEL
LCXH0 = YJXS.型号
LCQJRQ = YJXS.QJRQ
SELECT 有奖销售
GO TOP
SCAN FOR ;
LCQJRQ >= DTOC(有奖销售.起始日期) AND LCQJRQ <= DTOC(有奖销售.结束日期) AND ;
LCCODE = ALLTRIM(有奖销售.类别) + '-' + ALLTRIM(有奖销售.品牌) AND ;
(有奖销售.奖金 > YJXS.奖金 .OR. LEN(ALLTRIM(LCXH0)) = 0 AND LEN(ALLTRIM(有奖销售.型号)) > 0)
LCNYF = ' '
LCNYE = ' '
IF TYPE('年月from') = 'C'
LCNYF = 有奖销售.年月FROM
LCNYE = 有奖销售.年月END
ENDIF
IF LCNYF > ' ' .OR. LCNYE > ' '
IF .NOT. (LCCODE >= ;
ALLTRIM(有奖销售.类别) + '-' + ALLTRIM(有奖销售.品牌) + '-' + ALLTRIM(LCNYF) AND ;
LCCODE <= ALLTRIM(有奖销售.类别) + '-' + ALLTRIM(有奖销售.品牌) + '-' + ALLTRIM(LCNYE))
LOOP
ENDIF
ENDIF
LNJJ = 有奖销售.奖金
LNDZJJ = 有奖销售.店长奖金
LCXH = 有奖销售.型号
LNBZ = 有奖销售.备注
IF LEN(ALLTRIM(LCXH)) = 0 .OR. LCM = ALLTRIM(LCXH) .OR. ;
LEFT(LCXH,1) = '*' AND ALLTRIM(RIGHT(LCXH,LEN(LCXH) - 1)) $ LCM .OR. ;
LEFT(LCXH,1) = '#' AND ALLTRIM(SUBSTR(LCXH,VAL(SUBSTR(LCXH,2,2)),LEN(ALLTRIM(RIGHT(LCXH,LEN(LCXH) - 3))))) == ;
ALLTRIM(SUBSTR(LCM,VAL(SUBSTR(LCXH,2,2)),LEN(ALLTRIM(RIGHT(LCXH,LEN(LCXH) - 3)))))
SELECT YJXS
REPLACE YJXS.型号 WITH LCXH , 备注 WITH LNBZ , 奖金 WITH LNJJ , 店长奖金 WITH LNDZJJ
ENDIF
SELECT 有奖销售
ENDSCAN
SELECT YJXS
ENDSCAN
DELETE ALL FOR 奖金 = 0 AND 店长奖金 = 0
T00 = 0
SELECT CJR 承件人 , NO 三联单 , QJRQ 取件日期 , CODE + ' ' + MODEL 商品条码 , 备注 , ;
奖金 , 店长奖金 ORDER BY CJR , 备注 , QJRQ , NO , CODE INTO ;
CURSOR CURST01 FROM YJXS
IF _TALLY > 0
T00 = 1
LCDATETIME = TTOC(DATETIME())
REPORT FORM 有奖销售个人 PREVIEW NOCONSOLE
REPORT FORM 有奖销售个人 TO PRINTER PROMPT NOCONSOLE
ENDIF
ENDIF
IF T00 = 0
= MESSAGEBOX('统计数为零! ',64,'信息')
ENDIF
USE
IF USED('ORDERNO')
SELECT ORDERNO
USE
ENDIF
IF USED('ITEM')
SELECT ITEM
USE
ENDIF
IF USED('有奖销售')
SELECT 有奖销售
USE
ENDIF
IF USED('YJXSTMP')
SELECT YJXSTMP
USE
ENDIF
DELETE File YJXSTMP.DBF
SELECT (LNSELE00)
RETURN
*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -