我在数据窗口的itemchanged写了如下语句,可总不能如我所愿啊?

cl007 2001-06-22 02:35:00
我想在"smallyl"输完最小用量,回车,判断库存是否满足,可回车后没动静,我把最小用量再改动一下才触发,请问我该怎么做啊?

string xm_id,authorized_number,medicine_serial_noint,xm_spec,drugstore_id
int mid_to_small,xm_midyl,xm_smallyl,n
if dw_4.getcolumnname()="smallyl" then
n=dw_4.getrow()
xm_id=dw_4.getitemstring(n,"xm_id")
authorized_number=dw_4.getitemstring(n,"authorized_number")
medicine_serial_noint=dw_4.getitemstring(n,"medicine_serial_noint")
xm_spec=dw_4.getitemstring(n,"gg")
drugstore_id=dw_4.getitemstring(n,"drugstore_id")
mid_to_small=dw_4.getitemnumber(n,"mid_to_small")
xm_midyl=dw_4.getitemnumber(n,"midyl")
xm_smallyl=dw_4.getitemnumber(n,"smallyl")


//确定药品是否够用
int li_store_amount_total,li_store_amount,li_store_amount_small
int li_use_amount_total
int li_remain_amount_total
select medicine_amount,medicine_amount_small
into :li_store_amount,:li_store_amount_small
from yf_store_amount
where drugstore_id=:drugstore_id and
medicine_id=:xm_id and
authorized_number=:authorized_number and
medicine_serial_noint=:medicine_serial_noint and
medicine_spec=:xm_spec;
li_store_amount_total = (li_store_amount * mid_to_small + li_store_amount_small)
li_use_amount_total = (xm_midyl * mid_to_small) +xm_smallyl
li_remain_amount_total = (li_store_amount_total - li_use_amount_total)

if li_remain_amount_total < 0 then
messagebox("提示","药品库存不足!")
rollback;
end if
end if
...全文
114 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
caolei1974 2001-06-22
  • 打赏
  • 举报
回复
不过用了row和data就可以不用dw_4.accepttext()。
对了Hanson_bati_zhu(Hanson_bati_zhu)你的qq怎么不让加入啊
szjlq 2001-06-22
  • 打赏
  • 举报
回复
数据是不是没有修改啊,我刚试过是可以的,如果只是要到达这一列就触发
,你可在itemfocuschanged里写:
if dwo.name='smallyl' and row>0 then
xm_id=this.getitemstring(row,"xm_id")
//to do...
end if
cl007 2001-06-22
  • 打赏
  • 举报
回复
Hanson的方案可行,谢谢
caolei1974 2001-06-22
  • 打赏
  • 举报
回复
row是你所在的行号,data是该列的数据不过它是string型的,你的这一列是int,需要转化一下
Hanson_bati_zhu 2001-06-22
  • 打赏
  • 举报
回复
加一句
dw_4.AcceptText()
在这段脚本的开始处
试试看
cl007 2001-06-22
  • 打赏
  • 举报
回复
怎么用,梦飞扬,请明示代码,谢谢
caolei1974 2001-06-22
  • 打赏
  • 举报
回复
那你怎么不用变量row和data
cl007 2001-06-22
  • 打赏
  • 举报
回复
我按tab跳到下一行也没用啊!
caolei1974 2001-06-22
  • 打赏
  • 举报
回复
itemchanged好像是按tab和列改变才触发

1,108

社区成员

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

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