一段ITEMCHANGED的代码

Integer li_index,li_i,li_pos
String ls_editStyle
String ls_temp,ls_bgprevmc,ls_next,ls_now
Integer li_flag
Long ll_RowNo,ll_row
DataWindowChild ldwc_temp
choose case dwo.name
 case 'bgxm'
  dw_1.Modify("bghnr_dw.Visible=0")
  dw_1.Modify("bghnr_e.Visible=0")
  dw_1.Modify("bghnr_n.Visible=0")
  dw_1.Modify("bghnr_em.Visible=0")
  dw_1.Modify("bghnr_lb.Visible=0")
  dw_1.Modify("bghnr_dw.Visible=0")
  
  li_index =Integer(idw_target.Describe(String(data) + '.id'))
  This.Setitem(Row,'bgqnr',String(idw_target.Object.data[1,li_index]))
  ls_EditStyle =idw_target.Describe(Data + '.Edit.Style')
  choose case ls_EditStyle
   case'dddw'
    ls_temp= idw_target.Describe(Data + '.dddw.name')
    dw_1.Modify("bghnr_dw.dddw.name='"+ ls_temp + "'")
    ls_temp= idw_target.Describe(Data + '.dddw.DataColumn')
    dw_1.Modify("bghnr_dw.dddw.DataColumn='"+ ls_temp + "'")
    ls_bmname=ls_temp
    ls_temp= idw_target.Describe(Data + '.dddw.DisplayColumn')
    dw_1.Modify("bghnr_dw.dddw.DisplayColumn='"+ ls_temp + "'")
    
    dw_1.Modify("bghnr_dw.Visible=1")
    is_flag= '_dw'
    ifdw_1.Getchild('bghnr_dw',ldwc_temp)<> 1 thenreturn    
    ldwc_temp.SetTransObject(SQLCA)
    ldwc_temp.Retrieve()
    
    //取变更前编码名称-begin
    ls_bgprevmc=dw_1.GetItemstring(row,"bgqnr")    
    ifThis.GetChild("bghnr_dw",ldwc_temp)<> 1 thenreturn    
    
    ifls_bmname<>'deptcode' then
     ll_Row= ldwc_temp.Find(ls_bmname+"=" + trim(ls_bgprevmc) + "",1,ldwc_temp.RowCount())
    else
     ll_Row= ldwc_temp.Find(ls_bmname+"='" + trim(ls_bgprevmc) + "'",1,ldwc_temp.RowCount())
    endif
    ifll_Row < 1 then
     MessageBox('提示aaaaavvvv','出现异常错误!',StopSign!)
     return
    endif    
    is_prevbm=ls_bgprevmc
    ls_bgprevmc=ldwc_temp.GetItemstring(ll_Row,'mc') 
    This.Setitem(Row,'bgqnr',ls_bgprevmc)     
    //取变更前编码名称-end
    
   case'ddlb'
    dw_1.Modify("bghnr_lb.Visible=1")
    is_flag= '_lb'
    ls_temp= idw_target.Describe(Data +'.values')   
    dw_1.Modify("bghnr_lb.values='"+ ls_temp + "'")
    
    //取变更前下拉名称-begin
    ls_bgprevmc=dw_1.GetItemstring(row,"bgqnr")     
    is_prevbm=ls_bgprevmc
    //-
    ls_next=ls_temp
    li_pos=Pos(ls_temp,'/')   
    //messagebox(ls_temp+string(li_pos),mid(ls_next,li_pos- 1,1))
    forli_i=integer(mid(ls_temp,li_pos - 1,1)) to integer(is_prevbm)
     li_pos= Posw(ls_next,'/')
     ifli_pos < 1 then EXIT
     ls_now=leftw(ls_next,li_pos- 1)
     ls_next=Rightw(ls_next,lenw(ls_next) -li_pos)    
    next
    //-
    ls_bgprevmc=trimw(leftw(ls_now,lenw(ls_now)-1))
    
    This.Setitem(Row,'bgqnr',ls_bgprevmc)     
    //取变更前下拉名称-end
    
    
   case'edit'
    dw_1.Modify("bghnr_e.Visible=1")
    is_flag='_e'    
    is_prevbm='-100'//非编码的标志
   case'editmask'
    dw_1.Modify("bghnr_em.Visible=1")
    is_flag= '_em'
    ls_temp= idw_target.Describe(Data + '.mask')
    dw_1.Modify("bghnr_em.mask='"+ ls_temp +"'")    
    This.Setitem(Row,'bgqnr',String(idw_target.Object.data[1,li_index],"yyyy-mm-dd"))
    is_prevbm='-100'//非编码的标志
  end choose
 case 'bghnr_dw'
  ls_EditStyle =this.Describe(dwo.name + ".Edit.Style")
  if ls_EditStyle<> 'dddw' then return
  
  ifThis.GetChild(dwo.name,ldwc_temp) <>1 then return
  
  ll_RowNo =ldwc_temp.Find("nbm=" + string(data) ,0 ,ldwc_temp.RowCount())
  if ll_RowNo < 1then return
  
  li_flag =ldwc_temp.GetItemNumber(ll_RowNo,'c_zt')
  if li_flag = 1 thenreturn
  
  This.SetItem(Row,string(dwo.name),This.GetItemNumber(Row,String(dwo.name)))
  MessageBox('提示','请选择尚未过期的代码!~r~n白色背景为尚未过期的编码,其它颜色为已经停用的编码!',Stopsign!)
  return 2
end choose

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值