$PBExportHeader$w_sc_workprocedure_add_all.srw forward global type w_sc_workprocedure_add_all from w_publ_pageretr end type type cb_1 from uo_imflatbutton within w_sc_workprocedure_add_all end type type cb_2 from commandbutton within w_sc_workprocedure_add_all end type type cb_3 from commandbutton within w_sc_workprocedure_add_all end type type cb_4 from commandbutton within w_sc_workprocedure_add_all end type type cb_5 from commandbutton within w_sc_workprocedure_add_all end type type dw_1 from u_dw_rbtnfilter within w_sc_workprocedure_add_all end type type ddlb_mtrlorigin from uo_ddlb_mtrlorigin within w_sc_workprocedure_add_all end type type cb_6 from uo_imflatbutton within w_sc_workprocedure_add_all end type type st_codetitle from statictext within w_sc_workprocedure_add_all end type type ln_bar from line within w_sc_workprocedure_add_all end type type ln_bar2 from line within w_sc_workprocedure_add_all end type type r_bar from rectangle within w_sc_workprocedure_add_all end type type ln_1 from line within w_sc_workprocedure_add_all end type type ln_2 from line within w_sc_workprocedure_add_all end type type st_codetitleb from statictext within w_sc_workprocedure_add_all end type end forward global type w_sc_workprocedure_add_all from w_publ_pageretr integer height = 2380 string title = "批产品工序工价" boolean maxbox = true windowstate windowstate = maximized! event retrieve_mx ( ) cb_1 cb_1 cb_2 cb_2 cb_3 cb_3 cb_4 cb_4 cb_5 cb_5 dw_1 dw_1 ddlb_mtrlorigin ddlb_mtrlorigin cb_6 cb_6 st_codetitle st_codetitle ln_bar ln_bar ln_bar2 ln_bar2 r_bar r_bar ln_1 ln_1 ln_2 ln_2 st_codetitleb st_codetitleb end type global w_sc_workprocedure_add_all w_sc_workprocedure_add_all type variables Int cur_mtrlorigin = 0 String ins_code string ins_name string ins_worklevel string ins_techlevel decimal ins_workhour decimal ins_workprice long ins_wrkGrpid long ins_proid Long dw_pageretr_h end variables event retrieve_mx();dw_1.retrieve(ins_code) dw_1.selectrow(0,FALSE) dw_1.selectrow(1,TRUE) end event on w_sc_workprocedure_add_all.create int iCurrent call super::create this.cb_1=create cb_1 this.cb_2=create cb_2 this.cb_3=create cb_3 this.cb_4=create cb_4 this.cb_5=create cb_5 this.dw_1=create dw_1 this.ddlb_mtrlorigin=create ddlb_mtrlorigin this.cb_6=create cb_6 this.st_codetitle=create st_codetitle this.ln_bar=create ln_bar this.ln_bar2=create ln_bar2 this.r_bar=create r_bar this.ln_1=create ln_1 this.ln_2=create ln_2 this.st_codetitleb=create st_codetitleb iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.cb_1 this.Control[iCurrent+2]=this.cb_2 this.Control[iCurrent+3]=this.cb_3 this.Control[iCurrent+4]=this.cb_4 this.Control[iCurrent+5]=this.cb_5 this.Control[iCurrent+6]=this.dw_1 this.Control[iCurrent+7]=this.ddlb_mtrlorigin this.Control[iCurrent+8]=this.cb_6 this.Control[iCurrent+9]=this.st_codetitle this.Control[iCurrent+10]=this.ln_bar this.Control[iCurrent+11]=this.ln_bar2 this.Control[iCurrent+12]=this.r_bar this.Control[iCurrent+13]=this.ln_1 this.Control[iCurrent+14]=this.ln_2 this.Control[iCurrent+15]=this.st_codetitleb end on on w_sc_workprocedure_add_all.destroy call super::destroy destroy(this.cb_1) destroy(this.cb_2) destroy(this.cb_3) destroy(this.cb_4) destroy(this.cb_5) destroy(this.dw_1) destroy(this.ddlb_mtrlorigin) destroy(this.cb_6) destroy(this.st_codetitle) destroy(this.ln_bar) destroy(this.ln_bar2) destroy(this.r_bar) destroy(this.ln_1) destroy(this.ln_2) destroy(this.st_codetitleb) end on event retrieve_pageretr;boolean cb_nextpage_enabled,cb_retrieveall_enabled boolean 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(cur_mtrlorigin) 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 end event event open;call super::open;ins_code = s_tran.b_string SELECT proid, Name, worklevel, techlevel, workhour, workprice, wrkGrpid INTO :ins_proid, :ins_name, :ins_worklevel, :ins_techlevel, :ins_workhour, :ins_workprice, :ins_wrkGrpid FROM u_sc_workprocedure Where code = :ins_code; IF sqlca.SQLCode <> 0 THEN ins_name = '' st_codetitle.text = ins_code +' ' + ins_name + ' 的工价表' dw_1.settransobject(sqlca) this.triggerevent('retrieve_mx') end event event resize;call super::resize;ln_bar.EndX = THIS.Width ln_bar2.EndX = THIS.Width ln_1.EndX = THIS.Width ln_2.EndX = THIS.Width r_bar.Width = THIS.Width Long w_width,w_height w_width = 3600 w_height = 2300 IF newwidth < w_width THEN THIS.Width = w_width IF newheight < w_height THEN THIS.Height = w_height dw_pageretr.height = this.height - ( w_height - dw_pageretr_h) dw_1.width = THIS.width - ( w_width - 2030) dw_1.height = dw_pageretr.height 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)+"%')" ELSE ls_querystrpart = 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 type cb_func from w_publ_pageretr`cb_func within w_sc_workprocedure_add_all integer x = 302 integer y = 0 integer width = 151 integer height = 164 string normalpicname = "other.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type cb_exit from w_publ_pageretr`cb_exit within w_sc_workprocedure_add_all integer x = 453 integer y = 0 integer width = 151 integer height = 164 integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type sle_usual_query from w_publ_pageretr`sle_usual_query within w_sc_workprocedure_add_all integer y = 184 end type type cb_retrieveall from w_publ_pageretr`cb_retrieveall within w_sc_workprocedure_add_all integer x = 914 integer width = 151 integer height = 164 string normalpicname = "p1.ico" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type em_pagerowno from w_publ_pageretr`em_pagerowno within w_sc_workprocedure_add_all integer x = 622 integer y = 40 end type type dw_pageretr from w_publ_pageretr`dw_pageretr within w_sc_workprocedure_add_all integer y = 400 integer width = 1344 integer height = 1748 boolean titlebar = false string dataobject = "dw_sc_workprocedure_add_all_index" boolean resizable = false boolean border = true borderstyle borderstyle = stylelowered! end type event dw_pageretr::constructor;call super::constructor;dw_pageretr_h = THIS.height end event type st_1 from w_publ_pageretr`st_1 within w_sc_workprocedure_add_all integer y = 204 end type type cb_nextpage from w_publ_pageretr`cb_nextpage within w_sc_workprocedure_add_all integer x = 1065 integer width = 64 integer height = 164 string normalpicname = "p4.ico" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type cb_1 from uo_imflatbutton within w_sc_workprocedure_add_all integer x = 151 integer width = 151 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "刷新" string normalpicname = "refresh.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;parent.triggerevent('retrieve_mx') end event type cb_2 from commandbutton within w_sc_workprocedure_add_all integer x = 1376 integer y = 760 integer width = 123 integer height = 84 integer taborder = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string text = ">>" end type event clicked;Long ll_i,child_row Long ll_mtrlid FOR ll_i = 1 TO dw_pageretr.RowCount() IF dw_1.Find('u_sc_workprice_mtrlid='+String(dw_pageretr.Object.mtrlid[ll_i]),1,dw_1.RowCount()) <> 0 THEN CONTINUE; END IF child_row = dw_1.InsertRow(0) dw_1.Object.u_sc_workprice_mtrlid[child_row] = dw_pageretr.Object.mtrlid[ll_i] dw_1.Object.u_mtrldef_mtrlcode[child_row] = dw_pageretr.Object.mtrlcode[ll_i] dw_1.Object.u_mtrldef_mtrlname[child_row] = dw_pageretr.Object.mtrlname[ll_i] dw_1.Object.u_mtrldef_mtrlmode[child_row] = dw_pageretr.Object.mtrlmode[ll_i] dw_1.Object.u_mtrldef_unit[child_row] = dw_pageretr.Object.unit[ll_i] dw_1.Object.u_sc_workprice_proid[child_row] = ins_proid dw_1.Object.u_sc_workprice_procode[child_row] = ins_code dw_1.Object.u_sc_workprice_proname[child_row] = ins_name dw_1.Object.u_sc_workprice_workPrice[child_row] = ins_workprice dw_1.Object.u_sc_workprice_workqty[child_row] = 1 dw_1.Object.u_sc_workprice_workhour[child_row] = ins_workhour dw_1.Object.u_sc_workprice_worklevel[child_row] = ins_worklevel dw_1.Object.u_sc_workprice_techlevel[child_row] = ins_techlevel dw_1.Object.u_sc_workprice_wrkGrpid[child_row] = ins_wrkGrpid NEXT dw_1.SelectRow(0,FALSE) dw_1.SelectRow(1,TRUE) dw_1.SetColumn("u_sc_workprice_workprice") dw_1.SetFocus( ) end event type cb_3 from commandbutton within w_sc_workprocedure_add_all integer x = 1376 integer y = 892 integer width = 123 integer height = 84 integer taborder = 70 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string text = ">" end type event clicked;Long ll_i,child_row,uc_row Long ll_mtrlid uc_row = dw_pageretr.GetRow() IF uc_row <= 0 THEN MessageBox('系统提示','请选择目标行!') RETURN END IF IF dw_1.Find('u_sc_workprice_mtrlid='+String(dw_pageretr.Object.mtrlid[uc_row]),1,dw_1.RowCount()) <> 0 THEN RETURN child_row = dw_1.InsertRow(0) dw_1.Object.u_sc_workprice_mtrlid[child_row] = dw_pageretr.Object.mtrlid[uc_row] dw_1.Object.u_mtrldef_mtrlcode[child_row] = dw_pageretr.Object.mtrlcode[uc_row] dw_1.Object.u_mtrldef_mtrlname[child_row] = dw_pageretr.Object.mtrlname[uc_row] dw_1.Object.u_mtrldef_mtrlmode[child_row] = dw_pageretr.Object.mtrlmode[uc_row] dw_1.Object.u_mtrldef_unit[child_row] = dw_pageretr.Object.unit[uc_row] dw_1.Object.u_sc_workprice_proid[child_row] = ins_proid dw_1.Object.u_sc_workprice_procode[child_row] = ins_code dw_1.Object.u_sc_workprice_proname[child_row] = ins_name dw_1.Object.u_sc_workprice_workPrice[child_row] = ins_workprice dw_1.Object.u_sc_workprice_workqty[child_row] = 1 dw_1.Object.u_sc_workprice_workhour[child_row] = ins_workhour dw_1.Object.u_sc_workprice_worklevel[child_row] = ins_worklevel dw_1.Object.u_sc_workprice_techlevel[child_row] = ins_techlevel dw_1.Object.u_sc_workprice_wrkGrpid[child_row] = ins_wrkGrpid dw_1.SelectRow(0,FALSE) dw_1.SelectRow(child_row,TRUE) dw_1.ScrollToRow(child_row) dw_1.SetColumn("u_sc_workprice_workprice") dw_1.SetFocus( ) end event type cb_4 from commandbutton within w_sc_workprocedure_add_all integer x = 1376 integer y = 1356 integer width = 123 integer height = 84 integer taborder = 80 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string text = "<" end type event clicked;Long child_row Int li_auditflag child_row = dw_1.GetRow() IF child_row <= 0 THEN MessageBox('系统提示','请选择当前目标行!') RETURN END IF li_auditflag = dw_1.object.u_sc_workprice_auditflag[child_row] IF li_auditflag = 1 THEN RETURN dw_1.deleterow(child_row) end event type cb_5 from commandbutton within w_sc_workprocedure_add_all integer x = 1376 integer y = 1488 integer width = 123 integer height = 84 integer taborder = 90 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" string text = "<<" end type event clicked;Long ll_i Long ll_auditflag FOR ll_i = 1 TO dw_1.Rowcount() ll_auditflag = dw_1.object.u_sc_workprice_auditflag[ll_i] IF ll_auditflag = 1 THEN CONTINUE; dw_1.deleterow(ll_i) ll_i = ll_i - 1 NEXT IF dw_1.Rowcount() > 0 THEN dw_1.selectrow(0,FALSe) dw_1.selectrow(1,true) END IF end event type dw_1 from u_dw_rbtnfilter within w_sc_workprocedure_add_all integer x = 1522 integer y = 400 integer width = 2030 integer height = 1748 integer taborder = 20 boolean bringtotop = true string dataobject = "dw_sc_workprocedure_add_all_edit" boolean hscrollbar = true boolean vscrollbar = true end type event clicked;call super::clicked;IF row <= 0 THEN RETURN THIS.SetRow(row) THIS.SelectRow(0,FALSE) THIS.SelectRow(row,TRUE) end event event dwnkey;call super::dwnkey;IF Key = KeyEnter! THEN keybd_event ( 9, 0, 0 , 0 ) // 按下tab keybd_event ( 9, 0, 2, 0 ) // 释放tab RETURN 1 END IF end event event rowfocuschanged;call super::rowfocuschanged;IF currentrow <= 0 THEN RETURN THIS.SelectRow(0,FALSE) THIS.SelectRow(currentrow,TRUE) end event event constructor;call super::constructor;RBUTTON_FILTER_USE=true //右键查询功能开关 titleclick_sort_use=true //单击标题排序功能开关 end event type ddlb_mtrlorigin from uo_ddlb_mtrlorigin within w_sc_workprocedure_add_all integer x = 727 integer y = 184 integer width = 576 integer height = 480 integer taborder = 20 boolean bringtotop = true end type event selectionchanged;call super::selectionchanged;cur_mtrlorigin = this.uo_mtrlorigin parent.triggerevent('retrieve_pageretr') end event type cb_6 from uo_imflatbutton within w_sc_workprocedure_add_all integer width = 151 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "保存" string normalpicname = "save.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;Int rslt = 1 String arg_msg Long ll_i , cnt Long ll_mtrlid, ll_wrkid String ls_mtrlcode dw_1.AcceptText( ) FOR ll_i = 1 To dw_1.RowCount() ll_mtrlid = dw_1.Object.u_sc_workprice_mtrlid[ll_i] ll_wrkid = dw_1.Object.u_sc_workprice_wrkid[ll_i] ls_mtrlcode = dw_1.Object.u_mtrldef_mtrlcode[ll_i] IF dw_1.Object.u_sc_workprice_workqty[ll_i] <= 0 THEN rslt = 0 arg_msg = '行:'+String(ll_i)+',物料: '+ls_mtrlcode+',数量不能少于1,'+sqlca.SQLErrText GOTO ext END IF IF dw_1.Object.u_sc_workprice_wrkid[ll_i] = 0 THEN rslt = 0 arg_msg = '行:'+String(ll_i)+',物料: '+ls_mtrlcode+',请选择车间,'+sqlca.SQLErrText GOTO ext END IF SELECT count(*) INTO :cnt FROM u_mtrl_workprice WHERE mtrlid = :ll_mtrlid And wrkid = :ll_wrkid; IF sqlca.SQLCode <> 0 THEN cnt = 0 END IF IF cnt = 0 THEN INSERT INTO u_mtrl_workprice (mtrlid, wrkid) VALUES (:ll_mtrlid, :ll_wrkid); IF sqlca.SQLCode <> 0 THEN rslt = 0 arg_msg = '行:'+String(ll_i)+',物料: '+ls_mtrlcode+',新建产品工价表失败,'+sqlca.SQLErrText GOTO ext END IF END IF NEXT IF dw_1.Update( ) = -1 THEN MessageBox('系统提示','保存产品工价失败!') ROLLBACK; RETURN END IF ext: IF rslt = 0 THEN ROLLBACK; MessageBox('系统提示',arg_msg) ELSE COMMIT; MessageBox('系统提示','保存产品工价成功!') END IF end event type st_codetitle from statictext within w_sc_workprocedure_add_all integer x = 5 integer y = 300 integer width = 3534 integer height = 96 boolean bringtotop = true integer textsize = -12 integer weight = 700 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 79216776 boolean enabled = false string text = "************** 的工价表" boolean border = true borderstyle borderstyle = styleraised! boolean focusrectangle = false end type type ln_bar from line within w_sc_workprocedure_add_all long linecolor = 268435456 integer linethickness = 4 integer beginy = 172 integer endx = 2007 integer endy = 172 end type type ln_bar2 from line within w_sc_workprocedure_add_all long linecolor = 16777215 integer linethickness = 4 integer beginy = 176 integer endx = 2039 integer endy = 176 end type type r_bar from rectangle within w_sc_workprocedure_add_all 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_bar.beginy - 5 end event type ln_1 from line within w_sc_workprocedure_add_all long linecolor = 268435456 integer linethickness = 4 integer beginy = 284 integer endx = 2016 integer endy = 284 end type type ln_2 from line within w_sc_workprocedure_add_all long linecolor = 16777215 integer linethickness = 4 integer beginy = 288 integer endx = 2048 integer endy = 288 end type type st_codetitleb from statictext within w_sc_workprocedure_add_all integer y = 296 integer width = 3543 integer height = 104 integer textsize = -12 integer weight = 700 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 79216776 boolean enabled = false boolean border = true boolean focusrectangle = false end type