123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315 |
- $PBExportHeader$w_mtrl_ch_fx.srw
- $PBExportComments$分销系统(门店采购订单明细选供应商物料)
- forward
- global type w_mtrl_ch_fx from w_publ_base
- end type
- type tv_1 from uo_tv_fx_mtrltype within w_mtrl_ch_fx
- end type
- type dw_show from u_dw_rbtnfilter within w_mtrl_ch_fx
- end type
- type dw_select from u_dw_rbtnfilter within w_mtrl_ch_fx
- end type
- type cb_select from uo_imflatbutton within w_mtrl_ch_fx
- end type
- type cb_del from uo_imflatbutton within w_mtrl_ch_fx
- end type
- type cb_ok from uo_imflatbutton within w_mtrl_ch_fx
- end type
- end forward
- global type w_mtrl_ch_fx from w_publ_base
- integer width = 4375
- integer height = 2300
- string title = "供应商物料选择"
- boolean minbox = false
- windowtype windowtype = response!
- long backcolor = 16777215
- string icon = "graphics\chain_link_128px.ico"
- boolean center = true
- tv_1 tv_1
- dw_show dw_show
- dw_select dw_select
- cb_select cb_select
- cb_del cb_del
- cb_ok cb_ok
- end type
- global w_mtrl_ch_fx w_mtrl_ch_fx
- forward prototypes
- public subroutine wf_retrieve ()
- public subroutine wf_retrieve_mtrltype (readonly oleobject arg_mtrltypes)
- public subroutine wf_retrieve_mtrl (readonly integer arg_mtrltypeid, readonly integer arg_sonflag)
- end prototypes
- public subroutine wf_retrieve ();string arg_msg
- oleobject mtrltypes
- mtrltypes = FXAppCom.GetSptMtrltype(app_token_fx, ref arg_msg)
- IF (arg_msg <> '') THEN
- MessageBox('ERROR', '获取物料类别失败:' + arg_msg)
- RETURN
- END IF
- dw_show.ReSet( )
- wf_retrieve_mtrltype(mtrltypes)
- end subroutine
- public subroutine wf_retrieve_mtrltype (readonly oleobject arg_mtrltypes);long i, cnt, row
- cnt = arg_mtrltypes.Count
- if cnt <= 0 then return
- datastore ds
- ds = create datastore
- ds.DataObject = 'ds_fx_mtrltype'
- oleobject mtrltype
- for i = 1 to cnt
- mtrltype = arg_mtrltypes.GetItem(i - 1)
-
- row = ds.InsertRow(0)
- ds.Object.comid[row] = mtrltype.GetInt('comid')
- ds.Object.mtrltypeid[row] = mtrltype.GetInt('mtrltypeid')
- ds.Object.mtrltype[row] = mtrltype.GetString('mtrltype')
- ds.Object.handtype[row] = mtrltype.GetString('handtype')
- ds.Object.sonflag[row] = mtrltype.GetInt('sonflag')
- ds.Object.parentid[row] = mtrltype.GetInt('parentid')
- ds.Object.mtrltypeid_erp[row] = mtrltype.GetInt('mtrltypeid_erp')
- next
- tv_1.uof_init(ds)
- end subroutine
- public subroutine wf_retrieve_mtrl (readonly integer arg_mtrltypeid, readonly integer arg_sonflag);oleobject mtrls, mtrl
- mtrls = FXAppCom.CreArrOfPbDictionary()
- string arg_msg
- mtrls = FXAppCom.GetSptMtrl(app_token_fx, arg_mtrltypeid, arg_sonflag, ref arg_msg)
- long i, cnt, row
- cnt = mtrls.Count
- dw_show.Reset( )
- dw_show.SetRedraw(false)
- for i = 1 to cnt
- mtrl = mtrls.GetItem(i - 1)
-
- row = dw_show.InsertRow(0)
- dw_show.Object.fxmtrlid[row] = mtrl.GetInt('fxmtrlid')
- dw_show.Object.comid[row] = mtrl.GetInt('comid')
- dw_show.Object.mtrlid[row] = mtrl.GetInt('mtrlid')
- dw_show.Object.mtrlcode[row] = mtrl.GetString('mtrlcode')
- dw_show.Object.mtrlname[row] = mtrl.GetString('mtrlname')
- dw_show.Object.mtrlmode[row] = mtrl.GetString('mtrlmode')
- dw_show.Object.mtrlsectype[row] = mtrl.GetString('mtrlsectype')
- dw_show.Object.zxmtrlmode[row] = mtrl.GetString('zxmtrlmode')
- dw_show.Object.usermtrlmode[row] = mtrl.GetString('usermtrlmode')
- next
- dw_show.SetRedraw(true)
- dw_show.SelectRow(0, false)
- end subroutine
- on w_mtrl_ch_fx.create
- int iCurrent
- call super::create
- this.tv_1=create tv_1
- this.dw_show=create dw_show
- this.dw_select=create dw_select
- this.cb_select=create cb_select
- this.cb_del=create cb_del
- this.cb_ok=create cb_ok
- iCurrent=UpperBound(this.Control)
- this.Control[iCurrent+1]=this.tv_1
- this.Control[iCurrent+2]=this.dw_show
- this.Control[iCurrent+3]=this.dw_select
- this.Control[iCurrent+4]=this.cb_select
- this.Control[iCurrent+5]=this.cb_del
- this.Control[iCurrent+6]=this.cb_ok
- end on
- on w_mtrl_ch_fx.destroy
- call super::destroy
- destroy(this.tv_1)
- destroy(this.dw_show)
- destroy(this.dw_select)
- destroy(this.cb_select)
- destroy(this.cb_del)
- destroy(this.cb_ok)
- end on
- event open;call super::open;wf_retrieve( )
- end event
- event resize;call super::resize;cb_exit.X = this.workspacewidth( ) - cb_exit.Width
- end event
- type cb_func from w_publ_base`cb_func within w_mtrl_ch_fx
- integer width = 151
- integer height = 164
- end type
- type cb_exit from w_publ_base`cb_exit within w_mtrl_ch_fx
- integer x = 1801
- integer width = 151
- integer height = 164
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- end type
- type tv_1 from uo_tv_fx_mtrltype within w_mtrl_ch_fx
- integer y = 176
- integer width = 1015
- integer height = 2052
- integer taborder = 30
- boolean bringtotop = true
- integer textsize = -9
- fontcharset fontcharset = gb2312charset!
- fontfamily fontfamily = anyfont!
- string facename = "宋体"
- boolean disabledragdrop = false
- boolean hideselection = false
- boolean tooltips = false
- boolean trackselect = true
- string picturename[] = {"Application!","Structure5!"}
- end type
- event selectionchanged;call super::selectionchanged;wf_retrieve_mtrl(this.ins_cur_info.mtrltypeid[1], this.ins_cur_info.sonflag[1])
- end event
- type dw_show from u_dw_rbtnfilter within w_mtrl_ch_fx
- integer x = 1029
- integer y = 176
- integer width = 3351
- integer height = 976
- integer taborder = 20
- boolean bringtotop = true
- string dataobject = "dw_fx_mtrldef"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- event clicked;call super::clicked;if (row <= 0) then return
- This.SelectRow(row, not This.IsSelected(row))
- end event
- type dw_select from u_dw_rbtnfilter within w_mtrl_ch_fx
- integer x = 1029
- integer y = 1260
- integer width = 3351
- integer height = 964
- integer taborder = 20
- boolean bringtotop = true
- string dataobject = "dw_fx_mtrldef"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean rbutton_filter_use = true
- boolean rbutton_setposition_use = true
- boolean titleclick_sort_use = true
- end type
- event clicked;call super::clicked;if (row <= 0) then return
- This.SelectRow(0, false)
- This.SelectRow(row, true)
- end event
- event rowfocuschanged;call super::rowfocuschanged;IF currentrow <=0 THEN RETURN
- this.selectrow(0,false)
- this.selectrow(currentrow,true)
- this.SetRow(currentrow)
- end event
- type cb_select from uo_imflatbutton within w_mtrl_ch_fx
- integer x = 3118
- integer y = 1160
- integer width = 608
- integer height = 92
- integer taborder = 30
- boolean bringtotop = true
- string text = "↓ 选择"
- end type
- event clicked;call super::clicked;long row
- row = dw_show.GetRow( )
- if (row <= 0) then
- MessageBox('提示', '请在上方的物料清单内选择')
- return
- end if
- long i
- for i = 1 to dw_show.RowCount( )
- if (dw_show.IsSelected(i)) then
- dw_show.RowsCopy(i, i, Primary!, dw_select, dw_select.RowCount() + 1, Primary!)
- end if
- next
- dw_show.SelectRow(0, false)
- dw_show.SetRow(0)
- if (dw_select.RowCount( ) > 0) then
- dw_select.SelectRow(0, false)
- dw_select.SelectRow(dw_select.RowCount( ), true)
- dw_select.SetRow(dw_select.RowCount( ))
- end if
- end event
- type cb_del from uo_imflatbutton within w_mtrl_ch_fx
- integer x = 3744
- integer y = 1160
- integer width = 608
- integer height = 92
- integer taborder = 40
- boolean bringtotop = true
- string text = "↑删除"
- end type
- event clicked;call super::clicked;if (dw_select.GetRow() <= 0) then
- MessageBox('提示', '请在下方的物料清单内选择')
- return
- end if
- dw_select.DeleteRow(dw_select.GetRow())
- dw_show.TriggerEvent(rowfocuschanged!)
- end event
- type cb_ok from uo_imflatbutton within w_mtrl_ch_fx
- integer x = 1029
- integer width = 165
- integer height = 164
- integer taborder = 20
- boolean bringtotop = true
- string text = "选定"
- string normalpicname = "ok.bmp"
- integer picsize = 16
- toolbaralignment pic_align = alignattop!
- end type
- event clicked;call super::clicked;if (dw_select.RowCount() <= 0) then
- MessageBox('提示', '右下角的清单内并没有内容')
- return
- end if
- s_fx_mtrldef s_tran
- long i
- for i = 1 to dw_select.RowCount()
- s_tran.fxmtrlid[i] = dw_select.Object.fxmtrlid[i]
- s_tran.comid[i] = dw_select.Object.comid[i]
- s_tran.mtrlid[i] = dw_select.Object.mtrlid[i]
- s_tran.mtrlcode[i] = dw_select.Object.mtrlcode[i]
- s_tran.mtrlname[i] = dw_select.Object.mtrlname[i]
- s_tran.mtrlmode[i] = dw_select.Object.mtrlmode[i]
- s_tran.mtrlsectype[i] = dw_select.Object.mtrlsectype[i]
- s_tran.zxmtrlmode[i] = dw_select.Object.zxmtrlmode[i]
- s_tran.usermtrlmode[i] = dw_select.Object.usermtrlmode[i]
- next
- CloseWithReturn(parent, s_tran)
- end event
|