| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3293 人关注过本帖
标题:如何取得第J个字段的值?
取消只看楼主 加入收藏
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
EVALUATE()计算字符表达式的值并返回结果
也可以返回字符型字段的值?
2013-09-30 20:15
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
n1="X"
FOR J=1 TO 12
IF EVALUATE(FIELD(J))>1500
UPDATE 表2 SET X2=&n1+allt(str(j)),X3=&n1+allt(str(j+1)),.....&&语法错误
ENDIF

FOR J=1 TO 12
IF EVALUATE(FIELD(J))>1500&& 应该是VAL(FIELD())
UPDATE 表2 SET X2=EVALUATE(FIELD(J)),X3=EVALUATE(FIELD(J+1)) &&替换的全部是空白记录
ENDIF
2013-09-30 22:36
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
以下是引用hu9jj在2013-9-30 20:58:24的发言:

VAL("X"+STR(J))的值永远等于0
难怪都是空白记录呢!
2013-09-30 22:37
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
字段都是字符型.EVALUATE(FIELD(J))>1500,是不行。那么是不是应该VAL(EVALUATE(FIELD(J)))>1500?

[ 本帖最后由 CHB123 于 2013-9-30 23:19 编辑 ]
2013-09-30 23:17
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
谢谢各位的热心帮助!我回去试试。顺祝各位十一节日快乐!
2013-10-01 11:08
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
以下是引用hu9jj在2013-10-1 08:17:12的发言:

要取字段的值,试试:
cZdm="X"+str(j)    &&要注意消除str(j)的前后空格,并注意字段名是否存在前导0,如X001、X002
if VAL(&cZdm)>1500
字段名中不存在前导"0",是X1不是X001.

[ 本帖最后由 CHB123 于 2013-10-2 13:57 编辑 ]
2013-10-01 11:10
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
以下是引用hu9jj在2013-10-1 08:27:03的发言:

要注意首先要确定字段名的组成是否正确,然后通过宏替换获得字段的值,再进行转换。
直接使用val("X'+str(j))表达式,只能对“X1”、“X2”...等字符串进行转换,由于VAL函数遇到非数字就结束转换,你的字符串第一个字符就不是数字,所以结果恒等于0。
说得对,这一点太重要了.
2013-10-01 11:18
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
以下是引用qjbzjp在2013-10-1 10:28:54的发言:

USE 表1
FOR j=1 TO 12
    x=FIELD(j)
    xj=FIELD(j+1)
    IF &x>1500
        UPDATE 表2 SET X2=&X,X3=&Xj
    ENDIF
NEXT
更新的仍然是空白记录。可是?&X是有值的呀。
2013-10-01 14:52
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
上传一个附件,请大家抽出宝贵时间帮帮我!
新建文件夹.rar (3.71 KB)


[ 本帖最后由 CHB123 于 2013-10-2 14:05 编辑 ]
2013-10-01 14:54
CHB123
Rank: 2
来 自:湖北
等 级:论坛游民
帖 子:100
专家分:68
注 册:2012-7-2
收藏
得分:0 
标准上班时间:
上午7:30,11:30
下午13:30,17:30
加班18:00,21:00
打卡时间各不同,想导入到标准表中。上班时间是上班时间,下班时间是下班时间。用于计算考勤和工资。
打卡:有重复打卡的。有少打卡的。我想只有从第一个字段开始比较,才能正确导入到标准表中。

[ 本帖最后由 CHB123 于 2013-10-1 16:12 编辑 ]
2013-10-01 16:01
快速回复:如何取得第J个字段的值?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.032617 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved