$PBExportHeader$w_mtrlware_storageid_ch_saletask.srw forward global type w_mtrlware_storageid_ch_saletask from w_pageretr_ch end type type cbx_mlselect from checkbox within w_mtrlware_storageid_ch_saletask end type type ddlb_storageid from uo_ddlb_storageid within w_mtrlware_storageid_ch_saletask end type type tab_1 from tab within w_mtrlware_storageid_ch_saletask end type type tabpage_1 from userobject within tab_1 end type type dw_1 from u_dw_rbtnfilter within tabpage_1 end type type tabpage_1 from userobject within tab_1 dw_1 dw_1 end type type tabpage_3 from userobject within tab_1 end type type dw_3 from u_dw_rbtnfilter within tabpage_3 end type type tabpage_3 from userobject within tab_1 dw_3 dw_3 end type type tabpage_2 from userobject within tab_1 end type type dw_4 from u_dw_rbtnfilter within tabpage_2 end type type tabpage_2 from userobject within tab_1 dw_4 dw_4 end type type tab_1 from tab within w_mtrlware_storageid_ch_saletask tabpage_1 tabpage_1 tabpage_3 tabpage_3 tabpage_2 tabpage_2 end type type ddlb_notuse from dropdownlistbox within w_mtrlware_storageid_ch_saletask end type type dw_2 from u_dw_rbtnfilter within w_mtrlware_storageid_ch_saletask end type type cb_ok from uo_imflatbutton within w_mtrlware_storageid_ch_saletask end type type cb_del from uo_imflatbutton within w_mtrlware_storageid_ch_saletask end type type cbx_ml from checkbox within w_mtrlware_storageid_ch_saletask end type type ddlb_mtrlprp from dropdownlistbox within w_mtrlware_storageid_ch_saletask end type type st_2 from statictext within w_mtrlware_storageid_ch_saletask end type type tv_1 from uo_tv_mtrltype within w_mtrlware_storageid_ch_saletask end type type cb_other from uo_imflatbutton within w_mtrlware_storageid_ch_saletask end type end forward global type w_mtrlware_storageid_ch_saletask from w_pageretr_ch integer width = 3621 integer height = 2252 string title = "订单产品选择" event retrieve_mx ( ) event ue_help ( ) event ue_retrieve_info ( ) cbx_mlselect cbx_mlselect ddlb_storageid ddlb_storageid tab_1 tab_1 ddlb_notuse ddlb_notuse dw_2 dw_2 cb_ok cb_ok cb_del cb_del cbx_ml cbx_ml ddlb_mtrlprp ddlb_mtrlprp st_2 st_2 tv_1 tv_1 cb_other cb_other end type global w_mtrlware_storageid_ch_saletask w_mtrlware_storageid_ch_saletask type variables s_mtrldef_array INS_RT_STRU boolean if_changeselect=true int if_mlselect=0 Long cur_scid Long cur_storageid = -1 Long cur_storageid_arr[] String ls_handtype = '' Int cur_mtrlorigin = 0 //当前显示物料来源 Int notuse = 1 datawindow dw_1,dw_3,dw_4 end variables forward prototypes public subroutine wf_face_change () end prototypes event retrieve_mx();long ll_mtrlid if dw_pageretr.getrow() <= 0 then dw_1.reset() dw_3.reset() dw_4.reset() else ll_mtrlid = dw_pageretr.object.u_mtrldef_mtrlid[dw_pageretr.getrow()] dw_1.retrieve(ll_mtrlid) dw_3.retrieve(ll_mtrlid) dw_4.retrieve(ll_mtrlid) end if end event event ue_help();Int i i = htmlhelpA(Handle(THIS), sys_help_chm, 0, THIS.Title+".html") end event event ue_retrieve_info();Long ll_row Long ll_mtrlid ll_row = dw_pageretr.GetRow() IF ll_row <= 0 THEN ll_mtrlid = 0 ELSE ll_mtrlid = dw_pageretr.Object.u_mtrldef_mtrlid[ll_row] END IF IF IsValid(w_mtrl_info) THEN w_mtrl_info.WindowState = Normal! w_mtrl_info.ins_mtrlid = ll_mtrlid w_mtrl_info.wf_retrieve(ll_mtrlid) END IF end event public subroutine wf_face_change ();if cbx_ml.checked then dw_pageretr.height=1308 cb_ok.visible=false cb_del.visible=false dw_2.visible=false else dw_pageretr.height=788 cb_ok.visible=true cb_del.visible=true dw_2.visible=true end if end subroutine on w_mtrlware_storageid_ch_saletask.create int iCurrent call super::create this.cbx_mlselect=create cbx_mlselect this.ddlb_storageid=create ddlb_storageid this.tab_1=create tab_1 this.ddlb_notuse=create ddlb_notuse this.dw_2=create dw_2 this.cb_ok=create cb_ok this.cb_del=create cb_del this.cbx_ml=create cbx_ml this.ddlb_mtrlprp=create ddlb_mtrlprp this.st_2=create st_2 this.tv_1=create tv_1 this.cb_other=create cb_other iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.cbx_mlselect this.Control[iCurrent+2]=this.ddlb_storageid this.Control[iCurrent+3]=this.tab_1 this.Control[iCurrent+4]=this.ddlb_notuse this.Control[iCurrent+5]=this.dw_2 this.Control[iCurrent+6]=this.cb_ok this.Control[iCurrent+7]=this.cb_del this.Control[iCurrent+8]=this.cbx_ml this.Control[iCurrent+9]=this.ddlb_mtrlprp this.Control[iCurrent+10]=this.st_2 this.Control[iCurrent+11]=this.tv_1 this.Control[iCurrent+12]=this.cb_other end on on w_mtrlware_storageid_ch_saletask.destroy call super::destroy destroy(this.cbx_mlselect) destroy(this.ddlb_storageid) destroy(this.tab_1) destroy(this.ddlb_notuse) destroy(this.dw_2) destroy(this.cb_ok) destroy(this.cb_del) destroy(this.cbx_ml) destroy(this.ddlb_mtrlprp) destroy(this.st_2) destroy(this.tv_1) destroy(this.cb_other) end on event ue_before_open;call super::ue_before_open;dw_1 = tab_1.tabpage_1.dw_1 dw_3 = tab_1.tabpage_3.dw_3 dw_4 = tab_1.tabpage_2.dw_4 if_ue_retr=true if_ue_sort=true dw_1.settransobject(sqlca) dw_3.settransobject(sqlca) dw_4.settransobject(sqlca) end event event close;call super::close;cLOSEWITHRETURN(THIS,INS_RT_STRU) // 窗体级子定义结构变量,用于返回 end event event open;THIS.TriggerEvent('ue_before_open') wf_movetocenter() OLD_TITLE = THIS.Title s_tran = Message.PowerObjectParm IF NOT IsNull(s_tran) THEN retrieve_all = local_retrieve_all //s_tran.if_retrieve_all mode = s_tran.work_mode arg_pkid = s_tran.arg_pkid arg_string_code = s_tran.arg_string_code cur_scid = s_tran.c_long // cur_storageid = s_tran.d_long END IF ////////////////// //String ls_storagename //ls_storagename = f_find_storageid(String(cur_storageid)) //THIS.Title = ls_storagename + THIS.Title ////////////////// dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关 dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关 dw_pageretr.SetTransObject (sqlca) pkcolumndbtname = wf_get_pkcolumndbtname(dw_pageretr) //取第一列为关键字 ori_oldselect = dw_pageretr.Describe("DataWindow.Table.Select") ls_newselect = ori_oldselect ds_curquery = CREATE DATASTORE ds_curquery.DataObject = 'd_extr_find' ds_curquery.SetTransObject (sqlca) wf_editindex_lockf() //IF sys_version_type = 1 THEN // ddlb_mtrlprp.Text = "采购[2]" // cur_mtrlorigin = 2 // ddlb_mtrlprp .Enabled = FALSE //ELSEIF s_tran.b_long = 0 THEN // ddlb_mtrlprp.Text = "自制产品[0]" // cur_mtrlorigin = 0 //ELSEIF s_tran.b_long = 2 THEN // ddlb_mtrlprp.Text = "采购[2]" // cur_mtrlorigin = 2 //ELSEIF s_tran.b_long = 3 THEN // ddlb_mtrlprp.Text = "外加工部件[3]" // cur_mtrlorigin = 3 //ELSEIF s_tran.b_long = 4 THEN // ddlb_mtrlprp.Text = "自制部件[4]" // cur_mtrlorigin = 4 //ELSEIF s_tran.b_long = -1 THEN // ddlb_mtrlprp.Text = "全部[-1]" // cur_mtrlorigin = -1 //END IF tv_1.f_maketree(-1) tv_1.triggerevent(selectionchanged!) sle_usual_query.Text = Trim(arg_string_code) IF NOT retrieve_all AND Trim(arg_string_code) <> '' THEN THIS.TriggerEvent("ue_usual_query_RETR") //修改ls_newselect,retrieve ELSE wf_retrieveuc(dw_pageretr,ls_newselect,1) THIS.TriggerEvent('RETRIEVE_pageretr') END IF IF retrieve_all AND Trim(arg_string_code) <> '' THEN THIS.TriggerEvent("ue_usual_query_filt") END IF INS_RT_STRU.mtrlid[1] = 0 //ddlb_storageid.Text = '[全部]' s_hide_col s_col s_col.col_1 = 'u_mtrldef_planprice' f_hide_col(490,dw_pageretr,s_col) s_hide_col s_col_mtrlsectype s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype' f_hide_col(1308,dw_pageretr,s_col_mtrlsectype) f_hide_col(1308,dw_2,s_col_mtrlsectype) s_hide_col s_col_zxmtrlmode s_col_zxmtrlmode.col_1 = 'u_mtrldef_zxmtrlmode' f_hide_col(1309,dw_pageretr,s_col_zxmtrlmode) f_hide_col(1309,dw_2,s_col_zxmtrlmode) wf_face_change() end event event retrieve_pageretr;boolean cb_firstpage_enabled,cb_nextpage_enabled,cb_retrieveall_enabled boolean cb_priorpage_enabled,cb_func_enabled,cb_retrieve_enabled cb_nextpage_enabled=cb_nextpage.enabled cb_retrieveall_enabled=cb_retrieveall.enabled cb_func_enabled=cb_func.enabled cb_nextpage.enabled=false cb_retrieveall.enabled=false cb_func.enabled=false SetPointer(HourGlass!) IF ddlb_notuse.Text = '全部' THEN notuse = -1 ELSE notuse = 1 END IF dw_pageretr.retrieve(cur_scid,cur_storageid_arr,ls_handtype,cur_mtrlorigin,notuse) if dw_pageretr.rowcount()>0 and dw_pageretr.getrow()=0 then dw_pageretr.setrow(1) SetPointer(Arrow!) cb_nextpage.enabled=cb_nextpage_enabled cb_retrieveall.enabled=cb_retrieveall_enabled cb_func.enabled=cb_func_enabled IF cbx_mlselect.Checked AND dw_pageretr.RowCount() > 1 THEN dw_pageretr.SelectRow(1,FALSE) END IF end event event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr='' if trim(sle_usual_query.text)<>'' then IF POS(trim(sle_usual_query.text),'%')=0 THEN obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "%'+trim(sle_usual_query.text)+'%" )' obj_expr=obj_expr+' or (u_mtrldef_mtrlname LIKE "%'+trim(sle_usual_query.text)+'%" )' ELSE obj_expr=obj_expr+'( u_mtrldef_mtrlcode LIKE "'+trim(sle_usual_query.text)+'" )' obj_expr=obj_expr+' or (u_mtrldef_mtrlname LIKE "'+trim(sle_usual_query.text)+'" )' END IF end if dw_pageretr.setfilter(obj_expr) dw_pageretr.SetRedraw(False) dw_pageretr.filter() if dw_pageretr.rowcount()>=1 then dw_pageretr.selectrow(0,false) dw_pageretr.selectrow(1,true ) end if dw_pageretr.SetRedraw(TRUE ) end event event ue_usual_query_retr;call super::ue_usual_query_retr;string ls_querystrpart='' ls_newselect=lower(ori_oldselect) if trim(sle_usual_query.text)<>'' then if pos(trim(sle_usual_query.text),'%')=0 then ls_querystrpart=ls_querystrpart + "( u_mtrldef.mtrlcode like '%"+trim(sle_usual_query.text)+"%'" ls_querystrpart=ls_querystrpart + " or u_mtrldef.mtrlname like '%"+trim(sle_usual_query.text)+"%')" else ls_querystrpart=ls_querystrpart + "( u_mtrldef.mtrlcode like '"+trim(sle_usual_query.text)+"'" ls_querystrpart=ls_querystrpart + " or u_mtrldef.mtrlname like '"+trim(sle_usual_query.text)+"')" end if if Pos(ls_newselect," where ") <> 0 then ls_newselect=ls_newselect+" AND ("+ls_querystrpart+')' else ls_newselect=ls_newselect+" where ("+ls_querystrpart+')' end if end if wf_retrieveuc(dw_pageretr,ls_newselect,1) this.triggerevent('retrieve_pageretr') end event type cb_func from w_pageretr_ch`cb_func within w_mtrlware_storageid_ch_saletask end type type cb_exit from w_pageretr_ch`cb_exit within w_mtrlware_storageid_ch_saletask integer x = 718 end type type sle_usual_query from w_pageretr_ch`sle_usual_query within w_mtrlware_storageid_ch_saletask integer x = 1801 end type type cb_retrieveall from w_pageretr_ch`cb_retrieveall within w_mtrlware_storageid_ch_saletask integer x = 1335 end type type em_pagerowno from w_pageretr_ch`em_pagerowno within w_mtrlware_storageid_ch_saletask integer x = 1029 end type type dw_pageretr from w_pageretr_ch`dw_pageretr within w_mtrlware_storageid_ch_saletask integer x = 859 integer y = 300 integer width = 2715 integer height = 788 string dataobject = "dw_mtrlware_storageid_ch_saletask" end type event dw_pageretr::clicked;if row>0 then this.setrow(row) if if_mlselect=1 then if if_changeselect then this.selectrow(row,not this.IsSelected(row)) else if_changeselect=true end if else this.selectrow(0,false) this.selectrow(row,true) end if end if end event event dw_pageretr::doubleclicked;if cbx_ml.checked then cb_choice.TRIGGEREVENT(CLICKED!) else cb_ok.TRIGGEREVENT(CLICKED!) end if end event event dw_pageretr::rowfocuschanged;if if_mlselect=1 then if currentrow <=0 then return if keydown(keycontrol!) then if this.isselected(currentrow) then this.selectrow(currentrow,false) if_changeselect=false else if_changeselect=true end if else if not this.isselected(currentrow) then this.selectrow(currentrow,true) if_changeselect=false else if_changeselect=true end if end if else if currentrow <=0 then return this.selectrow(0,false) this.selectrow(currentrow,true) end if parent.triggerevent('retrieve_mx') parent.TriggerEvent('ue_retrieve_info') end event event dw_pageretr::dwnkey;call super::dwnkey;if keydown(keyenter!) then return 1 end event event dw_pageretr::retrievestart;call super::retrievestart;tv_1.Enabled = False ddlb_mtrlprp.Enabled = False ddlb_storageid.Enabled = False end event event dw_pageretr::retrieveend;call super::retrieveend;tv_1.Enabled = true ddlb_mtrlprp.Enabled = true ddlb_storageid.Enabled = true end event type st_1 from w_pageretr_ch`st_1 within w_mtrlware_storageid_ch_saletask integer x = 1458 integer width = 343 string text = "编码/名称含:" end type type cb_nextpage from w_pageretr_ch`cb_nextpage within w_mtrlware_storageid_ch_saletask integer x = 1486 end type type cb_choice from w_pageretr_ch`cb_choice within w_mtrlware_storageid_ch_saletask integer x = 567 integer taborder = 120 end type event cb_choice::clicked;call super::clicked;Long ROW,ls_i = 0,chC = 0 datawindow dw IF cbx_ml.Checked THEN dw = dw_pageretr ROW = dw_pageretr.GetRow() IF ROW <= 0 THEN MessageBox('提示','请先选择目标行!', Information!, OK! ) RETURN END IF ELSE dw = dw_2 ROW = dw.RowCount() IF ROW <= 0 THEN MessageBox('提示','请先选择缓冲目标行!', Information!, OK! ) RETURN END IF END IF FOR ls_i = 1 To dw.RowCount() IF dw.IsSelected(ls_i) Or Not cbx_ml.Checked THEN chC++ INS_RT_STRU.mtrlid[chC] = dw.Object.u_mtrldef_mtrlid[ls_i] INS_RT_STRU.mtrlcode[chC] = dw.Object.u_mtrldef_mtrlcode[ls_i] INS_RT_STRU.mtrlname[chC] = dw.Object.u_mtrldef_mtrlname[ls_i] INS_RT_STRU.mtrlmode[chC] = dw.Object.u_mtrldef_mtrlmode[ls_i] INS_RT_STRU.unit[chC] = dw.Object.u_mtrldef_unit[ls_i] INS_RT_STRU.mtrltype[chC] = dw.Object.u_mtrldef_mtrltype[ls_i] INS_RT_STRU.planprice[chC] = dw.Object.u_mtrldef_planprice[ls_i] INS_RT_STRU.mtrlsectype[chC] = dw.Object.u_mtrldef_mtrlsectype[ls_i] INS_RT_STRU.zxmtrlmode[chC] = dw.Object.u_mtrldef_zxmtrlmode[ls_i] INS_RT_STRU.net_weight[chC] = dw.Object.u_mtrldef_net_weight[ls_i] INS_RT_STRU.gross_weight[chC] = dw.Object.u_mtrldef_gross_weight[ls_i] INS_RT_STRU.cubage[chC] = dw.Object.u_mtrldef_cubage[ls_i] INS_RT_STRU.mtrlengname[chC] = dw.Object.u_mtrldef_mtrlengname[ls_i] INS_RT_STRU.barcode[chC] = dw.Object.u_mtrldef_barcode[ls_i] INS_RT_STRU.handtype[chC] = dw.Object.u_mtrldef_handtype[ls_i] END IF NEXT //IF cbx_ml.Checked THEN // FOR ls_i = 1 TO dw_pageretr.RowCount() // IF dw_pageretr.IsSelected(ls_i) THEN // chC++ // INS_RT_STRU.mtrlid[chC] = dw_pageretr.Object.u_mtrldef_mtrlid[ls_i] // INS_RT_STRU.mtrlcode[chC] = dw_pageretr.Object.u_mtrldef_mtrlcode[ls_i] // INS_RT_STRU.mtrlname[chC] = dw_pageretr.Object.u_mtrldef_mtrlname[ls_i] // INS_RT_STRU.mtrlmode[chC] = dw_pageretr.Object.u_mtrldef_mtrlmode[ls_i] // INS_RT_STRU.unit[chC] = dw_pageretr.Object.u_mtrldef_unit[ls_i] // INS_RT_STRU.mtrltype[chC] = dw_pageretr.Object.u_mtrldef_mtrltype[ls_i] // INS_RT_STRU.planprice[chC] = dw_pageretr.Object.u_mtrldef_planprice[ls_i] // INS_RT_STRU.mtrlsectype[chC] = dw_pageretr.Object.u_mtrldef_mtrlsectype[ls_i] // INS_RT_STRU.zxmtrlmode[chC] = dw_pageretr.Object.u_mtrldef_zxmtrlmode[ls_i] // END IF // NEXT // //ELSE // dw_2.accepttext() // FOR ls_i = 1 TO dw_2.RowCount() // chC++ // INS_RT_STRU.mtrlid[chC] = dw_2.Object.u_mtrldef_mtrlid[ls_i] // INS_RT_STRU.mtrlcode[chC] = dw_2.Object.u_mtrldef_mtrlcode[ls_i] // INS_RT_STRU.mtrlname[chC] = dw_2.Object.u_mtrldef_mtrlname[ls_i] // INS_RT_STRU.mtrlmode[chC] = dw_2.Object.u_mtrldef_mtrlmode[ls_i] // INS_RT_STRU.unit[chC] = dw_2.Object.u_mtrldef_unit[ls_i] // INS_RT_STRU.mtrltype[chC] = dw_2.Object.u_mtrldef_mtrltype[ls_i] // INS_RT_STRU.planprice[chC] = dw_2.Object.u_mtrldef_planprice[ls_i] // INS_RT_STRU.mtrlsectype[chC] = dw_2.Object.u_mtrldef_mtrlsectype[ls_i] // INS_RT_STRU.zxmtrlmode[chC] = dw_2.Object.u_mtrldef_zxmtrlmode[ls_i] // NEXT // // //END IF IF chC = 0 THEN MessageBox('提示','请至少选择一个目标行!', Information!, OK! ) RETURN END IF Close(Parent) end event type cb_refresh from w_pageretr_ch`cb_refresh within w_mtrlware_storageid_ch_saletask end type type cb_help from w_pageretr_ch`cb_help within w_mtrlware_storageid_ch_saletask boolean visible = false end type type ln_bar from w_pageretr_ch`ln_bar within w_mtrlware_storageid_ch_saletask end type type ln_bar2 from w_pageretr_ch`ln_bar2 within w_mtrlware_storageid_ch_saletask end type type r_bar from w_pageretr_ch`r_bar within w_mtrlware_storageid_ch_saletask end type type ln_1 from w_pageretr_ch`ln_1 within w_mtrlware_storageid_ch_saletask integer beginy = 288 integer endy = 288 end type type ln_2 from w_pageretr_ch`ln_2 within w_mtrlware_storageid_ch_saletask integer beginy = 292 integer endy = 292 end type type cbx_mlselect from checkbox within w_mtrlware_storageid_ch_saletask integer x = 2688 integer y = 204 integer width = 256 integer height = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long backcolor = 134217739 string text = "多选" end type event clicked;if this.checked then if_mlselect=1 else if_mlselect=0 end if f_SetProfileString (sys_empid,dw_pageretr.DATAOBJECT, "if_mlselect", string(if_mlselect)) end event event constructor;if_mlselect=integer(f_ProfileString (sys_empid,dw_pageretr.DATAOBJECT, "if_mlselect", '0')) if if_mlselect =0 then this.checked=false else this.checked=true end if end event type ddlb_storageid from uo_ddlb_storageid within w_mtrlware_storageid_ch_saletask integer x = 581 integer y = 192 integer width = 549 integer height = 1340 integer taborder = 30 boolean bringtotop = true end type event constructor;call super::constructor;cur_storageid = uo_storageid cur_storageid_arr = uo_storageid_arr cur_storageid=long(f_ProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_storageid",'0')) if cur_storageid = -1 then cur_storageid_arr = sys_user_storageid else cur_storageid_arr[1] = cur_storageid end if IF cur_storageid = -1 THEN THIS.TEXT ='[全部]' ELSE string ls_storagename SELECT storagename into :ls_storagename FROM storageid WHERE storageid = :cur_storageid; THIS.TEXT = ls_storagename END IF end event event selectionchanged;call super::selectionchanged;cur_storageid = uo_storageid cur_storageid_arr = uo_storageid_arr cb_refresh.triggerevent(clicked!) f_SetProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_storageid",String(cur_storageid)) end event type tab_1 from tab within w_mtrlware_storageid_ch_saletask event create ( ) event destroy ( ) integer x = 855 integer y = 1652 integer width = 2711 integer height = 508 integer taborder = 110 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long backcolor = 134217739 boolean raggedright = true boolean focusonbuttondown = true integer selectedtab = 1 tabpage_1 tabpage_1 tabpage_3 tabpage_3 tabpage_2 tabpage_2 end type on tab_1.create this.tabpage_1=create tabpage_1 this.tabpage_3=create tabpage_3 this.tabpage_2=create tabpage_2 this.Control[]={this.tabpage_1,& this.tabpage_3,& this.tabpage_2} end on on tab_1.destroy destroy(this.tabpage_1) destroy(this.tabpage_3) destroy(this.tabpage_2) end on type tabpage_1 from userobject within tab_1 integer x = 18 integer y = 96 integer width = 2674 integer height = 396 long backcolor = 134217739 string text = "库存数" long tabtextcolor = 33554432 long tabbackcolor = 134217739 long picturemaskcolor = 536870912 dw_1 dw_1 end type on tabpage_1.create this.dw_1=create dw_1 this.Control[]={this.dw_1} end on on tabpage_1.destroy destroy(this.dw_1) end on type dw_1 from u_dw_rbtnfilter within tabpage_1 integer y = 4 integer width = 2670 integer height = 396 integer taborder = 20 string dataobject = "dw_mtrlware_storageid_ch_saletask_1" boolean hscrollbar = true boolean vscrollbar = true end type type tabpage_3 from userobject within tab_1 integer x = 18 integer y = 96 integer width = 2674 integer height = 396 long backcolor = 134217739 string text = "已订货数" long tabtextcolor = 33554432 long tabbackcolor = 134217739 long picturemaskcolor = 536870912 dw_3 dw_3 end type on tabpage_3.create this.dw_3=create dw_3 this.Control[]={this.dw_3} end on on tabpage_3.destroy destroy(this.dw_3) end on type dw_3 from u_dw_rbtnfilter within tabpage_3 integer width = 2670 integer height = 396 integer taborder = 20 string dataobject = "dw_mtrlware_storageid_ch_saletask_3" boolean hscrollbar = true boolean vscrollbar = true end type type tabpage_2 from userobject within tab_1 integer x = 18 integer y = 96 integer width = 2674 integer height = 396 long backcolor = 134217739 string text = "开单未审数" long tabtextcolor = 33554432 long tabbackcolor = 134217739 long picturemaskcolor = 536870912 dw_4 dw_4 end type on tabpage_2.create this.dw_4=create dw_4 this.Control[]={this.dw_4} end on on tabpage_2.destroy destroy(this.dw_4) end on type dw_4 from u_dw_rbtnfilter within tabpage_2 integer width = 2665 integer height = 396 string dataobject = "dw_mtrlware_storageid_ch_saletask_4" boolean hscrollbar = true boolean vscrollbar = true end type type ddlb_notuse from dropdownlistbox within w_mtrlware_storageid_ch_saletask integer x = 1147 integer y = 192 integer width = 279 integer height = 300 integer taborder = 40 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 string text = "有效" boolean sorted = false string item[] = {"有效","全部"} borderstyle borderstyle = stylelowered! end type event selectionchanged; IF this.Text = '全部' THEN notuse = -1 ELSE notuse = 1 END IF cb_refresh.triggerevent(clicked!) f_SetProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_isuse",String(notuse)) end event event constructor;String ls_str ls_str = f_ProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_isuse",'1') notuse=long(ls_str) IF notuse = -1 THEN ddlb_notuse.Text = '全部' ELSE ddlb_notuse.Text = '有效' END IF end event type dw_2 from u_dw_rbtnfilter within w_mtrlware_storageid_ch_saletask integer x = 859 integer y = 1200 integer width = 2715 integer height = 444 integer taborder = 20 boolean bringtotop = true string dataobject = "dw_mtrlware_storageid_ch_saletask" boolean hscrollbar = true boolean vscrollbar = true end type event rowfocuschanged;call super::rowfocuschanged;if currentrow <=0 then return this.selectrow(0,false) this.selectrow(currentrow,true) end event event clicked;call super::clicked;THIS.SetRow(row) THIS.SelectRow(0,FALSE) THIS.SelectRow(row,TRUE) end event event destructor; //////////////////// end event type cb_ok from uo_imflatbutton within w_mtrlware_storageid_ch_saletask integer x = 2843 integer y = 1100 integer width = 306 integer taborder = 60 boolean bringtotop = true string text = "选定" end type event clicked;call super::clicked;LONG ROW,ls_i,chC=0 ROW=dw_pageretr.GETROW() if ROW<=0 then messagebox('提示','请先选择目标行!', Information!, OK! ) return end if for ls_i=1 to dw_pageretr.rowcount() if dw_pageretr.isselected(ls_i) then if dw_2.find('u_mtrldef_mtrlid ='+string(dw_pageretr.object.u_mtrldef_mtrlid[ls_i]),1,dw_2.rowcount())=0 then chC++ dw_pageretr.RowsCopy(ls_i, ls_i, Primary!, dw_2, dw_2.rowcount() + 1, Primary!) end if end if next end event type cb_del from uo_imflatbutton within w_mtrlware_storageid_ch_saletask integer x = 3223 integer y = 1100 integer width = 306 integer taborder = 70 boolean bringtotop = true string text = "删除" end type event clicked;call super::clicked;IF dw_2.GETROW()=0 THEN MESSAGEBOX('提示','请选择删除的行对象!', Information!, OK! ) RETURN END IF dw_2.DeleteRow (0) dw_2.TriggerEvent (rowfocuschanged!) end event type cbx_ml from checkbox within w_mtrlware_storageid_ch_saletask integer x = 2331 integer y = 204 integer width = 357 integer height = 60 boolean bringtotop = true integer textsize = -9 integer weight = 700 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 16711680 long backcolor = 134217739 string text = "直接多选" boolean checked = true end type event clicked;wf_face_change() int use_ml if this.checked then use_ml=1 else use_ml=0 end if f_SetProfileString (sys_empid,dw_pageretr.DATAOBJECT, "use_ml", string(use_ml)) end event event constructor;int use_ml use_ml=integer(f_ProfileString (sys_empid,dw_pageretr.DATAOBJECT, "use_ml", '1')) if use_ml=0 then this.checked=false else this.checked=true end if end event type ddlb_mtrlprp from dropdownlistbox within w_mtrlware_storageid_ch_saletask integer y = 192 integer width = 571 integer height = 480 integer taborder = 40 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 string text = "全部[-1]" boolean sorted = false boolean vscrollbar = true string item[] = {"自制产品[0]","产品包装件[1]","采购[2]","外协部件[3]","自制部件[4]","全部[-1]"} borderstyle borderstyle = stylelowered! end type event selectionchanged;CHOOSE CASE Index CASE 1 cur_mtrlorigin = 0 CASE 2 cur_mtrlorigin = 1 CASE 3 cur_mtrlorigin = 2 CASE 4 cur_mtrlorigin = 3 CASE 5 cur_mtrlorigin = 4 CASE 6 cur_mtrlorigin = -1 END CHOOSE cb_refresh.TriggerEvent (clicked!) f_SetProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_mtrlorigin",String(cur_mtrlorigin)) end event event constructor;cur_mtrlorigin=long(f_ProfileString (sys_empid,dw_pageretr.DataObject, "ddlb_mtrlorigin",'0')) IF sys_version_type = 1 THEN ddlb_mtrlprp.Text = "采购[2]" cur_mtrlorigin = 2 ddlb_mtrlprp .Enabled = FALSE ELSEIF cur_mtrlorigin = 0 THEN ddlb_mtrlprp.Text = "自制产品[0]" ELSEIF cur_mtrlorigin = 2 THEN ddlb_mtrlprp.Text = "采购[2]" ELSEIF cur_mtrlorigin = 3 THEN ddlb_mtrlprp.Text = "外加工部件[3]" ELSEIF cur_mtrlorigin = 4 THEN ddlb_mtrlprp.Text = "自制部件[4]" ELSEIF cur_mtrlorigin = -1 THEN ddlb_mtrlprp.Text = "全部[-1]" END IF end event type st_2 from statictext within w_mtrlware_storageid_ch_saletask integer x = 1573 integer y = 76 integer width = 535 integer height = 76 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 255 long backcolor = 67108864 string text = "说明:[按Ctrl键反选]" boolean focusrectangle = false end type event constructor;this.backcolor = 14215660 end event type tv_1 from uo_tv_mtrltype within w_mtrlware_storageid_ch_saletask integer y = 300 integer width = 850 integer height = 1856 integer taborder = 50 boolean bringtotop = true integer textsize = -9 fontcharset fontcharset = gb2312charset! fontfamily fontfamily = anyfont! string facename = "宋体" end type event selectionchanged;call super::selectionchanged;ls_handtype = THIS.uo_cur_info.handtype ls_handtype = ls_handtype + '%' PARENT.TriggerEvent('retrieve_pageretr') end event type cb_other from uo_imflatbutton within w_mtrlware_storageid_ch_saletask integer x = 306 integer width = 265 integer height = 164 integer taborder = 30 boolean bringtotop = true string text = "相关信息" string normalpicname = "find2.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Long ll_row ll_row = dw_pageretr.GetRow() IF ll_row <= 0 THEN MessageBox('系统提示','请选择物料') RETURN END IF Long ll_mtrlid ll_mtrlid = dw_pageretr.Object.u_mtrldef_mtrlid[ll_row] IF IsValid(w_mtrl_info) THEN w_mtrl_info.WindowState = Normal! w_mtrl_info.ins_mtrlid = ll_mtrlid w_mtrl_info.wf_retrieve(ll_mtrlid) ELSE OpenWithParm(w_mtrl_info,ll_mtrlid) END IF end event