hur.cn - 华软网

 热门搜索

同一表,多数据窗口更新处理问题??

  作者:未知    来源:网络    更新时间:2019/1/5
数据库中有一张表,在程序中分为几个数据窗口(统一WINDOWS窗口)来录入措置惩罚.
表中有一主键,各个数据窗口初始化时都运用InsertRow(0),并对其中的主键举行赋值(统一值),
在更新时按顺序来(DW0,DW1....),DW0能够更新成功,其它均不可功,不知道有没有更好的措施能够按照我这类思绪来措置惩罚????
------华软网友回答------
对一个dw举行插入,保存即可,其余dw用sharedata()的方式共享
------华软网友回复------
同时INSERTROW时给主键赋值,是否是所有的数据窗口都是一个值啊,更新时当然不能成功的,赋值时先判断一下,不要有重复值。
------华软网友回复------
有两个方法,第一是在保存的时候,用代码掏出所有需要保存的值,然后用嵌入式sql语句举行保存。第二种方法是数据窗口insertrow,并对主键赋值之后,将status修改成notmodified。这样,如果再有修改,它的状态会自动变为datamodified,保存就能够成功了。采取第二种方法的时候,要保留一个dw不更新状态,而且这个dw要最先保存。
------华软网友回复------
另外新建一个datastore,或是隐藏的dw,插入时,掏出各个数据窗口的数据插入dw,或datastore,保存时只需对dw或datastore操作即可
------华软网友回复------
我的一种做法:有主键的那个datawindow在录入的时候,不在本窗口录入,而是弹出一个窗口来录入,保存并关闭该窗口后,本窗口的datawindow都retrieve,然后再措置惩罚。
弹出窗口来录入数据,大多数用户都能接受,而且,措置惩罚的数据明确。
------华软网友回复------
保存的时候循环对新增的数据加上主键.还要做好主键的CHECK,防止重复.
------华软网友回复------
我现在的意思是一条记录同时分成在多个数据窗口中措置惩罚,新建的时候的问题.

------华软网友回复------
这样措置惩罚方法不对,这样等于是同时插入了好几条主键一样的数据,当然不会成功,用sharedata是对照方便的措施
------华软网友回复------
将主数据窗口设置为可UPDATE,插入新记录后SHAREDATA到其它的数据窗口中,
这样的话,其它的数据窗口数据改变后主数据窗口会随着改变吗??
------华软网友回复------
会改变,楼上说的没错,就你而言,sharedata是最合适的
------华软网友回复------
对,用sharedata最合适
不过,既然是统一个WINDOWS,用一个DW不就好了,还分几个DW?
是否是放在不同的TAB页上?
------华软网友回复------
sharedata搞定问题
------华软网友回复------
用sharedata()的方式共享数据窗体,这样在从数据窗体中编辑的数据会自动写入到主数据窗体中,只需要在主数据窗体中INSERTROW(0),最后只保存主数据窗体的数据即可.
------华软网友回复------
我被这个问题困很久了。高手们能不能给个详细代码啊?

这个问题看起来简单,做起来很难,很多人好像没明白是什么问题。我是新手,大家拍砖吧!!
------华软网友回复------
大家都说的 都是可行的。。。。
要不你把表结构重新设计一下,把这个表分开几个表,通过外键联系关系      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。