救急啊,麻烦看看这些代码哪里有错啊!

thomashoo 2003-12-18 10:13:34
一个dw窗口连接的是一个grid风格的数据对象dw-1,所有列都可以修改,
我想当我更改某行中的数据后,把修改过的这行数据拷贝到另外一个
dw—2 里去,dw—2是external的数据源,所有列名和dw-1一样的:
我是在一个“保存”按钮的clickd事件里面的代码,我的代码如下:
if dw_1.update()=1 then
messagebox("","保存成功!")
else
messagebox("","保存失败!")
end if

dwItemStatus l_status
l_status=dw_1.getItemStatus(dw_1.getrow(),dw_1.getcolumn(),primary!)
if l_status=datamodified! then
dw_1.RowsCopy(dw_1.getrow(),dw_1.rowcount(),primary!,dw_2,1,primary!)
end if


保存成功,可是就是不能实现拷贝的功能。
请问:是否dw-2的数据窗口对象不要设置成external,而是和dw-1一样的grid数据窗口对象?是否不应该在“保存”按钮中的事件写如上代码?
或者哪位大哥知道另外的方法,可以指教在下吗?谢谢拉!

...全文
64 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
freebirdwjy 2003-12-18
  • 打赏
  • 举报
回复
1。不能拷贝的原因是两段写反了
2。dw_2是用来显示的吧?如果是直接用dw-1的datawindow就好了,只要不update这样可以保证两个数据窗口结构完全一样,不容易出错。
chrisfy 2003-12-18
  • 打赏
  • 举报
回复
你是先dw_1.update()的,如果是保存成功,那末l_status得值应该是Nomodified!,所以根本进入不了下面条件语句:
if l_status=datamodified! then
dw_1.RowsCopy(dw_1.getrow(),dw_1.rowcount(),primary!,dw_2,1,primary!)
end if
mittee 2003-12-18
  • 打赏
  • 举报
回复
代码不够严密看下面的
for ll_i = 1 to dw_1.rowcount()
if dw_1.getItemStatus(ll_i,0,primary!) = datamodified! then
ll_dw2_rowcount = dw_2.rowcount()
if ll_dw2_rowcount = 0 then ll_dw2_rowcount = 1
dw_1.rowscopy(ll_i,ll_i, Primary!, dw_2, ll_dw2_rowcount, Primary!)

end if
next

wwwafa9 2003-12-18
  • 打赏
  • 举报
回复
哦,你把代码的位置搞反了,把那两段代码换一下位置就可以了。
liliang800207 2003-12-18
  • 打赏
  • 举报
回复
应该是列属性的问题
dw1和dw2的列的字段属性完全一致吗
到数据窗口画板中看一下
rowcopy要求他们一致
joss 2003-12-18
  • 打赏
  • 举报
回复
DW加个计算列判断一下你便明白了!
if (isRowNew(), if (IsRowModified(), "newmodified!", "new!"), if (IsRowModified(), "datamodified!", "notmodified!"))
UPDATE后的行状态已经变了!
zzclhcbmail 2003-12-18
  • 打赏
  • 举报
回复
同意jdsnhan(柳荫凉) (
jdsnhan 2003-12-18
  • 打赏
  • 举报
回复
1、dw-2的数据窗口对象可以设置成external
2、if dw_1.update() = 1 ,dw_1的状态已经转变了。此时其状态已经不再是datamodified!
所以,你的语句没有执行。
klbt 2003-12-18
  • 打赏
  • 举报
回复
数据窗口的行列状态,在保存前后是不一样的。
内容概要:本文围绕三相逆变器模型仿真及软开关技术展开研究,基于Simulink平台构建了完整的系统仿真模型,深入分析了三相逆变器的拓扑结构、工作原理与动态响应特性。研究重点聚焦于软开关技术(如零电压开关ZVS、零电流开关ZCS)在逆变器中的应用,通过仿真验证其在降低开关损耗、提高转换效率、减小电磁干扰等方面的显著优势。文章详细阐述了软开关的实现条件与控制策略设计,结合LCL滤波器优化与PWM调制技术,提升了系统整体性能。通过对电压、电流波形及功率因数等关键指标的仿真分析,验证了所提出方案的有效性与可行性,为高性能逆变器的设计与优化提供了理论依据和技术支撑。; 适合人群:具备电力电子、电气工程及其自动化等相关专业背景,熟悉Simulink仿真环境,从事新能源发电、电力变换器设计、微电网控制或电能质量治理等领域研究的科研人员、工程技术人员及研究生。; 使用场景及目标:①用于高校电力电子课程教学与实验,辅助学生理解逆变器工作机理及软开关技术原理;②为工业界高效率逆变电源、光伏并网逆变器、储能变流器等产品的研发提供技术参考;③支持相关领域科研人员开展新型拓扑与先进控制算法的仿真验证与学术论文撰写。; 阅读建议:建议读者结合文中所述Simulink模型进行动手实践,重点关注软开关触发时序、谐振参数设计与系统稳定性之间的关系,同时可延伸学习死区效应补偿、锁相环控制、孤岛检测等相关技术以构建完整的逆变系统知识体系。

1,110

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧