免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3082 | 回复: 5
打印 上一主题 下一主题

seton sflclr 与clear subfile 有什么区别 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-17 21:38 |只看该作者 |倒序浏览
想知道在对一个subfile 进行操作时,seton sflclr 与clear subfile 有什么区别。根据别人指教知道seton sflclr是对subfile的缓存进行清理,那clear 到底是起什么作用的呢?

论坛徽章:
0
2 [报告]
发表于 2008-11-18 09:36 |只看该作者
dspf定义
A          R SCRN2SFL                  SFL                                    --sfl定义
A          R SCRN2CTL                  SFLCTL(SCRN2SFL)            --sflctl定义

seton sflclr是针对sflctl的,会把他对应的sfl的所有记录删除
clear subfile是针对sfl的,在上例中应该是clear SCRN2SFL,而不是clear SCRN2CTL,作用是清空sfl中各字段的内容
比如
A          R SCRN2SFL                  SFL         
A            S2SEL          1A  B  7  2            
A            S2HAWB        20A  O  7  4            
clear SCRN2SFL后 S2SEL 和S2HAWB会变为空(因为他们是字符型的,要是数字的话则为0)

论坛徽章:
0
3 [报告]
发表于 2008-11-18 09:56 |只看该作者
CLEAR和普通用法一样,就是清空一个字段/结构/记录(统称为变量?)
要说到在SUBFILE里的区别,就是SFLCLR被SETON后,是把整个SUBFIEL
全部清空(当然要对SUBFILE CONTROL执行WRITE动作),
而CLEAR是清空SUBFILE里的某一条记录.

一般来说,我们要生成一个SFL前,都要对此SFL清空,这个时候就要用到SFLCLR,
而要真正向SFL里写入具体的记录前,要使用CLEAR把对应记录的变量全部清空,
以免上一条记录的值残留下来,其实这一点对于向DB/PRTF等写数据是一样的.

可以参考你们那里的程序,细细体会他们的用法.

评分

参与人数 1可用积分 +5 收起 理由
fairyboy + 5 回答非常详细!

查看全部评分

论坛徽章:
0
4 [报告]
发表于 2008-11-25 15:46 |只看该作者
2楼:seton sflclr是针对sflctl的,会把他对应的sfl的所有记录删除

3楼:要说到在SUBFILE里的区别,就是SFLCLR被SETON后,是把整个SUBFIEL
全部清空(当然要对SUBFILE CONTROL执行WRITE动作),
而CLEAR是清空SUBFILE里的某一条记录.

到底是删除还是清空??

论坛徽章:
0
5 [报告]
发表于 2008-11-25 18:51 |只看该作者
SFLCLR被SETON后,是把子文件的状态设置成非激活状态,在此状态下,子文件的内容是不能显示的。
而把整个子文件设置成初始值,也就是清空,应该是sflinz来完成的。

CLEAR一个记录格式名,是把该格式下的各个字段初始化。

大概是这样吧,各位看看红皮书吧,我说的可能不对。

论坛徽章:
0
6 [报告]
发表于 2008-11-26 13:38 |只看该作者
SFL没有删除这一说(也许有,不过我没用过).
其实很简单,自己DEBUG一下,什么都出来了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP