回 帖 发 新 帖 刷新版面

主题:代码问题!

cTallyName=ALLTRIM(Thisform.txtTallyName.Value)
**根据工资项目列表生成新账套格式
CREATE TABLE (cTallyName)(员工编号 N(10) UNIQUE,员工姓名 C(10),所属部门 C(20))
SELECT (cTallyName)
APPEND FROM tblPerson FIELDS 员工编号,员工姓名,所属部门   &&由人员信息表复制人员信息
SELECT tblSalaryItem 
SCAN 
    cFieldName=ALLTRIM(tblSalaryItem.fldItem)  &&这换其它表就可以???         
    ALTER TABLE (cTallyName) ADD &cFieldName N(15,2) &&这句提示有问题!
ENDSCAN 
ALTER TABLE (cTallyName) ADD Py C(20)   &&加入存放员工姓名拼音的字段
SELECT (cTallyName)
REPLACE Py WITH ChrToPy(ALLTRIM(员工姓名)) ALL &&生成拼音码

 提示:字段名称重名或无效       

回复列表 (共6个回复)

沙发

tblSalaryItem 表中的纪录唯一吗?
中间是否存在空格或其它的不符合要求的字符?

板凳

tblSalaryItem.fldItem 表中的纪录中间,是否存在空格,或其它的不符合要求的不可见字符?

3 楼

这样的代码效率太低了,而且可靠性不强~!

4 楼

非常感激cbl518大师!
在你的帮助下,我学到了好多知识。
怎样改一下更好呢

5 楼

SELECT tblSalaryItem
SCAN all
    cFieldName=cFieldName+','+REPLICATE("0", 12)+'.00 AS '+ALLTRIM(fldItem)
ENDSCAN 
cmd0='SELECT 员工编号,员工姓名,所属部门'+cFieldName+', ChrToPy(ALLTRIM('+tblPerson+'.员工姓名)) AS py from '+tblPerson+' into table '+cTallyName
&cmd0

6 楼

以上我已测试,没有有问题。
ok!!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册