下列程序不知问题出自哪里,现贴上代码,请高手赐教,谢谢!!!
图片附件: 游客没有浏览图片的权限,请
登录 或
注册
待修改代码如下:
CLOSE DATABASES
CLEAR ALL
PUBLIC
cPath
cPath=ADDBS(JUSTPATH(SYS(16)))
SET DEFAULT TO (cPath)
DECLARE long sscanf IN msvcrt long,string,single@,long@
DECLARE long strcpy IN msvcrt string@,string
DECLARE long strcpy IN msvcrt as strcpy_ptr long,string
cBuffer = REPLICATE(0h00,256)
pBuffer = strcpy(@cBuffer, "")
LOCAL a as Single, n as Long, p as Long, ph as Long
a = 0.00
n = 0
CREATE CURSOR tt (姓名 C(10),项目 V(10),金额 N(6,2))
USE 开支明细表.dbf ALIAS tb IN 0
SELECT tb
SCAN
FOR i=1 TO ALINES(arr,tb.支出明细,5,"")
p=strcpy_ptr(@pBuffer,arr[i])
ph=p
DO WHILE !(SYS(2600,p,1) == 0h00)
IF sscanf(p,"%f%n",@a,@n) == 1
INSERT INTO tt
VALUES (tb.姓名,SYS(2600,ph,p-ph), a)
p
= p+n
ph = p
ELSE
p = p+1
ENDIF
ENDDO
ENDFOR
ENDSCAN
cmd="CREATE TABLE 开支统计表 (姓名 C(10)"
SELECT DISTINCT 项目 FROM tt INTO CURSOR tmp
SCAN
cmd=cmd+","+项目+ " n(6,2)"
ENDSCAN
cmd=cmd + ",合计
n(6,2))"
EXECSCRIPT(cmd)
SELECT distinct 姓名 FROM tt INTO CURSOR tmp
SELECT 开支统计表
APPEND FROM
DBF("tmp")
INDEX on
姓名 TAG
姓名
SELECT tt
SET RELATION TO 姓名 INTO "开支统计表 "
SCAN
replace (tt.项目)
WITH tt.金额,合计 WITH 合计+tt.金额 IN "开支统计表"
ENDSCAN
SELECT * FROM 开支统计表