posts - 14,  comments - 3,  trackbacks - 0
  在上个话题中,如下一句留下伏笔:
  dw_1.settaborder('pa_id',0) //这个功能在下面专门讲

  当时在练习中发现,如果通过病案号调出病人信息及输血信息,此时dw_1的所有字段都可以进行修改,包括病案号,但病案号是dw_1与dw_2检索的关键,为病人信息表的主键,输血信息表的外键,如果这个字段被修改,则使两者失去了联系,因此这个字段不能改。
  实现的前提条件:必须是数据表t_patient中有此病人信息,即通过病案号的录入可能调出该病人信息,如果无此病人信息,病案号应该是可以随便录入的。
  实现的要求:希望在dw_1的pa_id(病案号)录入转换焦点时判断,如果无此病人,不用管,如果有此病人,则在检索的同时,将pa_id(病案号)字段设为不可修改。
  实现的方法:一般而言,让数据窗口中部分字段失去修改的能力,可通过TAB值的设定进行,即当TAB值为0时,当前字段无修改能力。因此,只要在判断的条件满足后设定其TAB值为0,则可使其失去修改的能力。
  编写代码:
         if sumpaid>0 then //如果有数据,即数据库中有此病人信息
               dw_1.setfilter("pa_id='"+trim(data)+"'")  //则过滤此病人信息
               dw_1.filter()
       dw_1.retrieve()
        dw_1.settaborder('pa_id',0) //设定pa_id字段的TAB值为0,无法修改。
   end if


当然,在一定条件下要修改其TAB值,dw_1.settabordr('pa_id',1)     //设定pa_id字段的TAB值为1。


如果有其它的方法,请指教。
posted on 2007-07-17 22:18 wlj768 阅读(1125) 评论(0)  编辑 收藏 引用 所属分类: 数据库编程之PB学习
只有注册用户登录后才能发表评论。
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(1)

随笔分类(11)

随笔档案(14)

文章分类(2)

1

搜索

  •  

最新评论

阅读排行榜

评论排行榜