$PBExportHeader$w_buytask_mtrl_his_ch.srw forward global type w_buytask_mtrl_his_ch from w_pageretr_ch2 end type end forward global type w_buytask_mtrl_his_ch from w_pageretr_ch2 string title = "采购订货历史价格选择 [按Ctrl键反选]" end type global w_buytask_mtrl_his_ch w_buytask_mtrl_his_ch type variables s_buytaskmx_arr INS_RT_STRU //Int if_mlselect = 0 //Boolean if_changeselect = TRUE long ll_cusid = 0 end variables on w_buytask_mtrl_his_ch.create call super::create end on on w_buytask_mtrl_his_ch.destroy call super::destroy end on event close;call super::close;cLOSEWITHRETURN(THIS,INS_RT_STRU) // 窗体级子定义结构变量,用于返回 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)+'%" )' ELSE obj_expr = obj_expr+'( u_mtrldef_mtrlcode 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 = "u_mtrldef.mtrlcode like '%"+Trim(sle_usual_query.Text)+"%'" ELSE ls_querystrpart = "u_mtrldef.mtrlcode 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 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!) dw_pageretr.Retrieve(ll_cusid) 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 open;this.triggerevent('ue_before_open') wf_movetocenter() OLD_TITLE=THIS.TITLE s_tran=Message.PowerObjectParm IF not ISNULL(s_tran) then 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 if_sharedata=s_tran.if_sharedata //是否应用sharedata,当retrieve_all=true是生效 ds_share=s_tran.ds_share ll_cusid = s_tran.d_long end if 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() s_hide_col s_col_mtrlsectype s_col_mtrlsectype.col_1 = 'u_mtrldef_mtrlsectype' f_hide_col(1308,dw_pageretr,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) sle_usual_query.text=trim(arg_string_code) IF Not retrieve_all THEN This.TriggerEvent("ue_usual_query_RETR") //修改ls_newselect,retrieve ELSE IF if_sharedata THEN ds_share.ShareData(dw_pageretr) ELSE wf_retrieveuc(dw_pageretr,ls_newselect,1) This.TriggerEvent('RETRIEVE_pageretr') END IF END IF IF retrieve_all THEN THIS.TRIGGEREVENT("ue_usual_query_filt") END IF dw_choice.SetTransObject(sqlca) wf_face_change() end event type cb_func from w_pageretr_ch2`cb_func within w_buytask_mtrl_his_ch end type type cb_exit from w_pageretr_ch2`cb_exit within w_buytask_mtrl_his_ch end type type sle_usual_query from w_pageretr_ch2`sle_usual_query within w_buytask_mtrl_his_ch integer x = 343 integer y = 184 end type type cb_retrieveall from w_pageretr_ch2`cb_retrieveall within w_buytask_mtrl_his_ch integer x = 1074 end type type em_pagerowno from w_pageretr_ch2`em_pagerowno within w_buytask_mtrl_his_ch integer x = 768 integer y = 32 end type type dw_pageretr from w_pageretr_ch2`dw_pageretr within w_buytask_mtrl_his_ch integer width = 3589 integer height = 1056 string dataobject = "dw_buytask_mtrl_his_ch" boolean rbutton_filter_use = true boolean rbutton_setposition_use = true boolean titleclick_sort_use = true end type type st_1 from w_pageretr_ch2`st_1 within w_buytask_mtrl_his_ch integer x = 18 end type type cb_nextpage from w_pageretr_ch2`cb_nextpage within w_buytask_mtrl_his_ch integer x = 1225 end type type cb_choice from w_pageretr_ch2`cb_choice within w_buytask_mtrl_his_ch 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.GetRow() IF ROW <= 0 THEN MessageBox('提示','请先选择目标行!', Information!, OK! ) RETURN END IF ELSE dw = dw_choice dw.AcceptText() ROW = dw.RowCount() IF ROW <= 0 THEN MessageBox('提示','请先选择缓冲目标!', Information!, OK! ) RETURN END IF END IF FOR ls_i = 1 To dw.RowCount() IF not cbx_ml.Checked or dw.IsSelected(ls_i) THEN chC++ INS_RT_STRU.mtrlid[chC]=dw.OBJECT.u_spt_price_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_spt_price_unit[ls_i] INS_RT_STRU.price[chC]=dw.OBJECT.u_spt_price_price[ls_i] INS_RT_STRU.rebate[chC]=dw.OBJECT.u_spt_price_zqrate[ls_i] INS_RT_STRU.status[chC]=dw.OBJECT.u_spt_price_status[ls_i] INS_RT_STRU.woodcode[chC]=dw.OBJECT.u_spt_price_woodcode[ls_i] INS_RT_STRU.pcode[chC]=dw.OBJECT.u_spt_price_pcode[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.mtrltype[chC]=dw.OBJECT.u_mtrldef_mtrltype[ls_i] // INS_RT_STRU.rate[chC]=dw.OBJECT.u_spt_price_rate[ls_i] // INS_RT_STRU.mxdscrp[chC]=dw.OBJECT.u_spt_price_dscrp[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] END IF NEXT IF chC = 0 THEN MessageBox('提示','请至少选择一个目标行!', Information!, OK! ) RETURN END IF CLOSE(PARENT) end event type cb_refresh from w_pageretr_ch2`cb_refresh within w_buytask_mtrl_his_ch end type type cb_help from w_pageretr_ch2`cb_help within w_buytask_mtrl_his_ch end type type ln_bar from w_pageretr_ch2`ln_bar within w_buytask_mtrl_his_ch end type type ln_bar2 from w_pageretr_ch2`ln_bar2 within w_buytask_mtrl_his_ch end type type r_bar from w_pageretr_ch2`r_bar within w_buytask_mtrl_his_ch end type type ln_1 from w_pageretr_ch2`ln_1 within w_buytask_mtrl_his_ch end type type ln_2 from w_pageretr_ch2`ln_2 within w_buytask_mtrl_his_ch end type type cbx_ml from w_pageretr_ch2`cbx_ml within w_buytask_mtrl_his_ch end type type cb_ok from w_pageretr_ch2`cb_ok within w_buytask_mtrl_his_ch end type event cb_ok::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_choice.Find('u_spt_price_mtrlid ='+String(dw_pageretr.Object.u_spt_price_mtrlid[ls_i]),1,dw_choice.RowCount()) = 0 THEN chC++ dw_pageretr.RowsCopy(ls_i, ls_i, Primary!, dw_choice, dw_choice.RowCount() + 1, Primary!) END IF END IF NEXT end event type cb_del from w_pageretr_ch2`cb_del within w_buytask_mtrl_his_ch end type type cbx_mlselect from w_pageretr_ch2`cbx_mlselect within w_buytask_mtrl_his_ch end type type dw_choice from w_pageretr_ch2`dw_choice within w_buytask_mtrl_his_ch string dataobject = "dw_buytask_mtrl_his_ch" end type type cbx_allselect from w_pageretr_ch2`cbx_allselect within w_buytask_mtrl_his_ch end type