$PBExportHeader$w_aifmb_mtrl_map.srw forward global type w_aifmb_mtrl_map from window end type type cb_node_ch from uo_imflatbutton within w_aifmb_mtrl_map end type type cb_product_ch from uo_imflatbutton within w_aifmb_mtrl_map end type type r_bar from rectangle within w_aifmb_mtrl_map end type type st_1 from statictext within w_aifmb_mtrl_map end type type sle_1 from singlelineedit within w_aifmb_mtrl_map end type type ddlb_storageid from uo_ddlb_storageid within w_aifmb_mtrl_map end type type ddlb_notuse from dropdownlistbox within w_aifmb_mtrl_map end type type ddlb_mtrlprp from uo_ddlb_mtrlprp within w_aifmb_mtrl_map end type type ddlb_mtrlorigin from uo_ddlb_mtrlorigin within w_aifmb_mtrl_map end type type tv_1 from uo_tv_mtrltype within w_aifmb_mtrl_map end type type cb_mtrltype from uo_imflatbutton within w_aifmb_mtrl_map end type type cb_cancel from uo_imflatbutton within w_aifmb_mtrl_map end type type cb_edit from uo_imflatbutton within w_aifmb_mtrl_map end type type dw_1 from u_dw_rbtnfilter within w_aifmb_mtrl_map end type type cb_exit from uo_imflatbutton within w_aifmb_mtrl_map end type type cb_reflash from uo_imflatbutton within w_aifmb_mtrl_map end type type ln_bar from line within w_aifmb_mtrl_map end type type ln_bar2 from line within w_aifmb_mtrl_map end type type ln_1 from line within w_aifmb_mtrl_map end type type ln_2 from line within w_aifmb_mtrl_map end type type ln_3 from line within w_aifmb_mtrl_map end type type ln_4 from line within w_aifmb_mtrl_map end type end forward global type w_aifmb_mtrl_map from window integer width = 3790 integer height = 2208 windowtype windowtype = child! long backcolor = 67108864 string icon = "AppIcon!" boolean center = true event ue_retrieve ( ) event ue_set_mtrltype ( ) event ue_nodeid_ch ( ) event ue_productid_ch ( ) cb_node_ch cb_node_ch cb_product_ch cb_product_ch r_bar r_bar st_1 st_1 sle_1 sle_1 ddlb_storageid ddlb_storageid ddlb_notuse ddlb_notuse ddlb_mtrlprp ddlb_mtrlprp ddlb_mtrlorigin ddlb_mtrlorigin tv_1 tv_1 cb_mtrltype cb_mtrltype cb_cancel cb_cancel cb_edit cb_edit dw_1 dw_1 cb_exit cb_exit cb_reflash cb_reflash ln_bar ln_bar ln_bar2 ln_bar2 ln_1 ln_1 ln_2 ln_2 ln_3 ln_3 ln_4 ln_4 end type global w_aifmb_mtrl_map w_aifmb_mtrl_map type variables boolean dw_edit_mode = false end variables forward prototypes public subroutine wf_face () end prototypes event ue_retrieve();Long ll_inuse IF ddlb_notuse.Text = '有效' THEN ll_inuse = 1 ELSEIF ddlb_notuse.Text = '无效' THEN ll_inuse = 0 ELSE ll_inuse = -1 END IF String ls_mtrlcode ls_mtrlcode = Trim(sle_1.Text) IF Pos(ls_mtrlcode,'%') <= 0 THEN ls_mtrlcode = '%' + ls_mtrlcode + '%' END IF string ls_handtype ls_handtype = tv_1.uo_cur_info.handtype ls_handtype = ls_handtype + '%' dw_1.Retrieve(ddlb_mtrlorigin.uo_mtrlorigin, ll_inuse, ls_handtype, ddlb_storageid.uo_storageid, sys_user_scid, ddlb_mtrlprp.uo_mtrlprp,ls_mtrlcode) end event event ue_set_mtrltype();if dw_edit_mode then return open(w_mtrltype_def) end event event ue_nodeid_ch();IF Not dw_edit_mode THEN RETURN Long ll_nodeid,row row = dw_1.GetRow() IF row <= 0 THEN RETURN Open(w_aifmb_class_map_ch) ll_nodeid = Message.DoubleParm IF ll_nodeid <= 0 THEN RETURN String ls_nodename SELECT nodename INTO :ls_nodename FROM aifmb_ClassNode Where nodeid = :ll_nodeid; IF sqlca.SQLCode <> 0 THEN MessageBox('ERROR', '查询基类名称失败ID=' + String(ll_nodeid) + ',' + sqlca.SQLErrText) RETURN END IF dw_1.Object.u_mtrldef_NodeID[row] = ll_nodeid dw_1.Object.aifmb_classnode_nodename[row] = ls_nodename dw_1.Object.u_mtrldef_ProductID[row] = 0 dw_1.Object.aifmb_productcode_mtrlcode[row] = '' dw_1.Object.aifmb_productcode_mtrlname[row] = '' dw_1.Object.aifmb_productcode_mtrlmode[row] = '' end event event ue_productid_ch();IF Not dw_edit_mode THEN RETURN Long ll_productid, ll_nodeid,row row = dw_1.GetRow() IF row <= 0 THEN RETURN Open(w_aifmb_product) ll_productid = Message.DoubleParm IF ll_productid <= 0 THEN RETURN String ls_nodename String ls_mtrlcode String ls_mtrlname String ls_mtrlmode SELECT aifmb_ProductCode.mtrlcode, aifmb_ProductCode.mtrlname, aifmb_ProductCode.mtrlmode, aifmb_ProductCode.NodeID, aifmb_ClassNode.NodeName INTO :ls_mtrlcode, :ls_mtrlname, :ls_mtrlmode, :ll_nodeid, :ls_nodename FROM aifmb_ProductCode LEFT OUTER JOIN aifmb_ClassNode ON aifmb_ProductCode.NodeID = aifmb_ClassNode.NodeID Where (aifmb_ProductCode.ProductID = :ll_productid); IF sqlca.SQLCode <> 0 THEN MessageBox('ERROR', '查询标准物料信息失败ID=' + String(ll_productid) + ',' + sqlca.SQLErrText) RETURN END IF dw_1.Object.u_mtrldef_NodeID[row] = ll_nodeid dw_1.Object.aifmb_classnode_nodename[row] = ls_nodename dw_1.Object.u_mtrldef_ProductID[row] = ll_productid dw_1.Object.aifmb_productcode_mtrlcode[row] = ls_mtrlcode dw_1.Object.aifmb_productcode_mtrlname[row] = ls_mtrlname dw_1.Object.aifmb_productcode_mtrlmode[row] = ls_mtrlmode end event public subroutine wf_face ();cb_reflash.Enabled = Not dw_edit_mode cb_edit.Enabled = True cb_cancel.Enabled = dw_edit_mode cb_mtrltype.Enabled = Not dw_edit_mode ddlb_mtrlorigin.Enabled = Not dw_edit_mode ddlb_mtrlprp.Enabled = Not dw_edit_mode ddlb_notuse.Enabled = not dw_edit_mode sle_1.Enabled = not dw_edit_mode ddlb_storageid.Enabled = not dw_edit_mode tv_1.Enabled = not dw_edit_mode cb_node_ch.Enabled = dw_edit_mode cb_product_ch.Enabled = dw_edit_mode Long i IF dw_edit_mode THEN // FOR i = 1 To 1 // dw_1.SetTabOrder(i, i * 10) // NEXT cb_edit.Text = '保存' cb_edit.normalpicname = 'Save.bmp' ELSE // FOR i = 1 To 1 // dw_1.SetTabOrder(i, 0) // NEXT cb_edit.Text = '修改' cb_edit.normalpicname = 'OPEN.BMP' END IF cb_edit.of_init_draw() cb_edit.of_paint() cb_edit.TriggerEvent('ue_textchange') end subroutine on w_aifmb_mtrl_map.create this.cb_node_ch=create cb_node_ch this.cb_product_ch=create cb_product_ch this.r_bar=create r_bar this.st_1=create st_1 this.sle_1=create sle_1 this.ddlb_storageid=create ddlb_storageid this.ddlb_notuse=create ddlb_notuse this.ddlb_mtrlprp=create ddlb_mtrlprp this.ddlb_mtrlorigin=create ddlb_mtrlorigin this.tv_1=create tv_1 this.cb_mtrltype=create cb_mtrltype this.cb_cancel=create cb_cancel this.cb_edit=create cb_edit this.dw_1=create dw_1 this.cb_exit=create cb_exit this.cb_reflash=create cb_reflash this.ln_bar=create ln_bar this.ln_bar2=create ln_bar2 this.ln_1=create ln_1 this.ln_2=create ln_2 this.ln_3=create ln_3 this.ln_4=create ln_4 this.Control[]={this.cb_node_ch,& this.cb_product_ch,& this.r_bar,& this.st_1,& this.sle_1,& this.ddlb_storageid,& this.ddlb_notuse,& this.ddlb_mtrlprp,& this.ddlb_mtrlorigin,& this.tv_1,& this.cb_mtrltype,& this.cb_cancel,& this.cb_edit,& this.dw_1,& this.cb_exit,& this.cb_reflash,& this.ln_bar,& this.ln_bar2,& this.ln_1,& this.ln_2,& this.ln_3,& this.ln_4} end on on w_aifmb_mtrl_map.destroy destroy(this.cb_node_ch) destroy(this.cb_product_ch) destroy(this.r_bar) destroy(this.st_1) destroy(this.sle_1) destroy(this.ddlb_storageid) destroy(this.ddlb_notuse) destroy(this.ddlb_mtrlprp) destroy(this.ddlb_mtrlorigin) destroy(this.tv_1) destroy(this.cb_mtrltype) destroy(this.cb_cancel) destroy(this.cb_edit) destroy(this.dw_1) destroy(this.cb_exit) destroy(this.cb_reflash) destroy(this.ln_bar) destroy(this.ln_bar2) destroy(this.ln_1) destroy(this.ln_2) destroy(this.ln_3) destroy(this.ln_4) end on event resize;ln_bar.EndX = THIS.Width ln_bar2.EndX = THIS.Width ln_1.EndX = THIS.Width ln_2.EndX = THIS.Width ln_3.EndX = THIS.Width ln_4.EndX = THIS.Width r_bar.Width = THIS.Width tv_1.Height = this.WorkSpaceHeight() - tv_1.Y dw_1.Height = this.WorkSpaceHeight() - dw_1.Y dw_1.Width = this.WOrkSpaceWidth() - dw_1.X end event event open;wf_face() dw_1.SetTransObject(sqlca) This.TriggerEvent('ue_retrieve') end event type cb_node_ch from uo_imflatbutton within w_aifmb_mtrl_map integer x = 603 integer width = 288 integer height = 164 integer taborder = 90 boolean enabled = false string text = "批改基类" string normalpicname = "p2.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF Not dw_edit_mode THEN RETURN Long ll_nodeid,row Open(w_aifmb_class_map_ch) ll_nodeid = Message.DoubleParm IF ll_nodeid <= 0 THEN RETURN String ls_nodename SELECT nodename INTO :ls_nodename FROM aifmb_ClassNode Where nodeid = :ll_nodeid; IF sqlca.SQLCode <> 0 THEN MessageBox('ERROR', '查询基类名称失败ID=' + String(ll_nodeid) + ',' + sqlca.SQLErrText) RETURN END IF FOR row = 1 To dw_1.RowCount() dw_1.Object.u_mtrldef_NodeID[row] = ll_nodeid dw_1.Object.aifmb_classnode_nodename[row] = ls_nodename dw_1.Object.u_mtrldef_ProductID[row] = 0 dw_1.Object.aifmb_productcode_mtrlcode[row] = '' dw_1.Object.aifmb_productcode_mtrlname[row] = '' dw_1.Object.aifmb_productcode_mtrlmode[row] = '' NEXT end event type cb_product_ch from uo_imflatbutton within w_aifmb_mtrl_map integer x = 891 integer width = 384 integer height = 164 integer taborder = 80 boolean enabled = false string text = "批改标准编码" string normalpicname = "p2.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF Not dw_edit_mode THEN RETURN Long ll_productid, ll_nodeid,row Open(w_aifmb_product) ll_productid = Message.DoubleParm IF ll_productid <= 0 THEN RETURN String ls_nodename String ls_mtrlcode String ls_mtrlname String ls_mtrlmode SELECT aifmb_ProductCode.mtrlcode, aifmb_ProductCode.mtrlname, aifmb_ProductCode.mtrlmode, aifmb_ProductCode.NodeID, aifmb_ClassNode.NodeName INTO :ls_mtrlcode, :ls_mtrlname, :ls_mtrlmode, :ll_nodeid, :ls_nodename FROM aifmb_ProductCode LEFT OUTER JOIN aifmb_ClassNode ON aifmb_ProductCode.NodeID = aifmb_ClassNode.NodeID Where (aifmb_ProductCode.ProductID = :ll_productid); IF sqlca.SQLCode <> 0 THEN MessageBox('ERROR', '查询标准物料信息失败ID=' + String(ll_productid) + ',' + sqlca.SQLErrText) RETURN END IF FOR row = 1 To dw_1.RowCount() dw_1.Object.u_mtrldef_NodeID[row] = ll_nodeid dw_1.Object.aifmb_classnode_nodename[row] = ls_nodename dw_1.Object.u_mtrldef_ProductID[row] = ll_productid dw_1.Object.aifmb_productcode_mtrlcode[row] = ls_mtrlcode dw_1.Object.aifmb_productcode_mtrlname[row] = ls_mtrlname dw_1.Object.aifmb_productcode_mtrlmode[row] = ls_mtrlmode NEXT end event type r_bar from rectangle within w_aifmb_mtrl_map long linecolor = 16777215 integer linethickness = 4 long fillcolor = 1073741824 integer x = 2139 integer width = 146 integer height = 68 end type event constructor;this.fillcolor = 14215660 this.linecolor = 14215660 this.x = -1 this.y = -1 this.height = ln_1.beginy - 5 end event type st_1 from statictext within w_aifmb_mtrl_map integer x = 878 integer y = 204 integer width = 343 integer height = 48 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 67108864 string text = "编码/名称含" alignment alignment = right! boolean focusrectangle = false end type event clicked;this.backcolor = 14215660 end event type sle_1 from singlelineedit within w_aifmb_mtrl_map event ue_keyup pbm_keyup integer x = 1234 integer y = 188 integer width = 475 integer height = 84 integer taborder = 130 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 borderstyle borderstyle = stylelowered! end type event ue_keyup;IF Key = keyenter! THEN Parent.TriggerEvent('ue_retrieve') END IF end event type ddlb_storageid from uo_ddlb_storageid within w_aifmb_mtrl_map integer x = 1979 integer y = 188 integer width = 800 integer height = 1340 integer taborder = 120 boolean bringtotop = true end type event selectionchanged;call super::selectionchanged;parent.triggerevent('ue_retrieve') end event type ddlb_notuse from dropdownlistbox within w_aifmb_mtrl_map integer x = 1723 integer y = 188 integer width = 251 integer height = 300 integer taborder = 110 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;parent.triggerevent('ue_retrieve') end event type ddlb_mtrlprp from uo_ddlb_mtrlprp within w_aifmb_mtrl_map integer x = 453 integer y = 188 integer width = 352 integer height = 480 integer taborder = 100 boolean bringtotop = true string item[] = {"成品[0]","半成品[1]","原料[2]","其它[8]","全部属性"} end type event selectionchanged;call super::selectionchanged;parent.triggerevent('ue_retrieve') end event type ddlb_mtrlorigin from uo_ddlb_mtrlorigin within w_aifmb_mtrl_map integer y = 188 integer width = 443 integer height = 480 integer taborder = 90 boolean bringtotop = true string text = "全部[-1]" string item[] = {"自制[0]","客户来料[6]","采购[2]","外协[3]","全部[-1]"} end type event selectionchanged;CHOOSE CASE Index CASE 1 uo_mtrlorigin = 0 CASE 2 uo_mtrlorigin = 6 CASE 3 uo_mtrlorigin = 2 CASE 4 uo_mtrlorigin = 3 CASE ELSE uo_mtrlorigin = -1 END CHOOSE parent.triggerevent('ue_retrieve') end event event constructor;IF uo_mtrlorigin = 0 THEN This.Text = '自制[0]' ELSEIF uo_mtrlorigin = 2 THEN This.Text = '采购[2]' ELSEIF uo_mtrlorigin = 3 THEN This.Text = '外协[3]' ELSEIF uo_mtrlorigin = 6 THEN This.Text = '客户来料[6]' ELSEIF uo_mtrlorigin = -1 THEN This.Text = '全部[-1]' END IF end event type tv_1 from uo_tv_mtrltype within w_aifmb_mtrl_map integer y = 296 integer width = 832 integer height = 1988 integer taborder = 90 boolean bringtotop = true integer textsize = -9 fontcharset fontcharset = gb2312charset! fontfamily fontfamily = anyfont! string facename = "宋体" end type event selectionchanged;call super::selectionchanged;parent.triggerevent('ue_retrieve') end event type cb_mtrltype from uo_imflatbutton within w_aifmb_mtrl_map integer x = 151 integer width = 151 integer height = 164 integer taborder = 80 string text = "类别" string normalpicname = "update2.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;parent.triggerevent('ue_set_mtrltype') end event type cb_cancel from uo_imflatbutton within w_aifmb_mtrl_map integer x = 453 integer width = 151 integer height = 164 integer taborder = 90 string text = "放弃" string normalpicname = "UNDO.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;dw_edit_mode = not dw_edit_mode parent.triggerevent('ue_retrieve') wf_face() end event type cb_edit from uo_imflatbutton within w_aifmb_mtrl_map integer x = 302 integer width = 151 integer height = 164 integer taborder = 80 string text = "修改" string normalpicname = "OPEN.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF dw_edit_mode THEN IF dw_1.Update() <> 1 THEN ROLLBACK; MessageBox('ERROR', '保存失败') END IF COMMIT; END IF dw_edit_mode = Not dw_edit_mode wf_face() end event type dw_1 from u_dw_rbtnfilter within w_aifmb_mtrl_map integer x = 841 integer y = 296 integer width = 2354 integer height = 968 integer taborder = 80 string dataobject = "dw_aifmb_mtrldef" boolean hscrollbar = true boolean vscrollbar = true boolean hsplitscroll = 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 This.SetRow(row) END IF end event event doubleclicked;call super::doubleclicked;Long i, ll_nodeid, ll_productid IF Not dw_edit_mode THEN RETURN If (dwo.Name = 'u_mtrldef_nodeid' Or dwo.Name = 'aifmb_classnode_nodename') And row > 0 And dw_edit_mode THEN Parent.TriggerEvent('ue_nodeid_ch') END IF If (dwo.Name = 'u_mtrldef_productid' Or dwo.Name = 'aifmb_productcode_mtrlcode' Or dwo.Name = 'aifmb_productcode_mtrlname' Or dwo.Name = 'aifmb_productcode_mtrlmode') And row > 0 And dw_edit_mode THEN Parent.TriggerEvent('ue_productid_ch') END IF end event event rowfocuschanged;call super::rowfocuschanged; This.SelectRow(0, False) IF currentrow > 0 THEN This.SelectRow(currentrow, True) END IF end event type cb_exit from uo_imflatbutton within w_aifmb_mtrl_map integer x = 1275 integer width = 151 integer height = 164 integer taborder = 70 string text = "退出" boolean cancel = true string normalpicname = "exit.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Close(PARENT) end event type cb_reflash from uo_imflatbutton within w_aifmb_mtrl_map integer width = 151 integer height = 164 integer taborder = 10 string text = "刷新" string normalpicname = "refresh.BMP" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;tv_1.f_maketree(-1) end event type ln_bar from line within w_aifmb_mtrl_map long linecolor = 268435456 integer linethickness = 4 integer beginy = 168 integer endx = 2007 integer endy = 168 end type type ln_bar2 from line within w_aifmb_mtrl_map long linecolor = 16777215 integer linethickness = 4 integer beginy = 172 integer endx = 2039 integer endy = 172 end type type ln_1 from line within w_aifmb_mtrl_map long linecolor = 268435456 integer linethickness = 4 integer beginy = 284 integer endx = 2016 integer endy = 284 end type type ln_2 from line within w_aifmb_mtrl_map long linecolor = 16777215 integer linethickness = 4 integer beginy = 288 integer endx = 2048 integer endy = 288 end type type ln_3 from line within w_aifmb_mtrl_map boolean visible = false long linecolor = 268435456 integer linethickness = 4 integer beginy = 404 integer endx = 2016 integer endy = 404 end type type ln_4 from line within w_aifmb_mtrl_map boolean visible = false long linecolor = 16777215 integer linethickness = 4 integer beginy = 408 integer endx = 2048 integer endy = 408 end type