$PBExportHeader$w_publ_1ton_share_detail.srw $PBExportComments$一对多单据编辑窗口 forward global type w_publ_1ton_share_detail from w_publ_pageretr end type type dw_uc from u_dw_uc_rbtnfilter within w_publ_1ton_share_detail end type type gb_2 from groupbox within w_publ_1ton_share_detail end type type dw_child from u_dw_rbtnfilter within w_publ_1ton_share_detail end type type cb_viewprint from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_print from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_add from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_edit from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_delet from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_addzy from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_auditing from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_xm from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_retrieve from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_xls from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_help from uo_imflatbutton within w_publ_1ton_share_detail end type type cb_auditing_cancel from uo_imflatbutton within w_publ_1ton_share_detail end type type p_msg from picture within w_publ_1ton_share_detail end type type p_help from picture within w_publ_1ton_share_detail end type type p_encl from picture within w_publ_1ton_share_detail end type type p_other from picture within w_publ_1ton_share_detail end type type gb_3 from groupbox within w_publ_1ton_share_detail end type type ln_bar from line within w_publ_1ton_share_detail end type type ln_bar2 from line within w_publ_1ton_share_detail end type type r_bar from rectangle within w_publ_1ton_share_detail end type type ln_1 from line within w_publ_1ton_share_detail end type type ln_2 from line within w_publ_1ton_share_detail end type end forward global type w_publ_1ton_share_detail from w_publ_pageretr integer width = 3611 integer height = 2380 event retrieve_childdw ( ) event retrieve_uc ( ) event refresh_interface ( ) event ue_f7 ( ) event ue_f8 ( ) event ue_f9 ( ) event ue_f10 ( ) event ue_f6 ( ) event ue_f11 ( ) event ue_f12 ( ) event ue_showall ( ) event ue_print ( ) event ue_viewprint ( ) event ue_addmx ( ) event ue_deletemx ( ) event ue_insertmx ( ) event ue_copyrow ( ) event ue_addzy ( ) event ue_xls ( ) event ue_msg ( ) event ue_bill_copy ( ) event ue_bill_paste ( ) event ue_allowedit ( ) event ue_dwndropdown pbm_dwndropdown event ue_rpt_print ( ) event ue_rpt_viewprint ( ) event ue_modify ( ) event retrieve_childdw_uc ( ) event ue_help ( ) event ue_mtrlpicview ( ) event ue_copycol ( ) event ue_cutcol ( ) event ue_pastecol ( ) event ue_news_add ( ) event ue_news_rel ( ) event resize_p ( ) event ue_rowup ( ) event ue_rowdown ( ) event ue_send_ljfieb ( ) event ue_jdview_ljfieb ( ) event ue_copyself ( ) event ue_mtrl_info ( ) event ue_mtrl_info_retr ( ) event ue_billcache_import ( ) event ue_billcache_export ( ) event ue_billcache_delete ( ) event ue_billcache_check ( ) event ue_sort_mx ( ) event ue_rbbutton ( ) event ue_dwchild_filter ( ) event ue_uprow ( ) event ue_downrow ( ) dw_uc dw_uc gb_2 gb_2 dw_child dw_child cb_viewprint cb_viewprint cb_print cb_print cb_add cb_add cb_edit cb_edit cb_delet cb_delet cb_addzy cb_addzy cb_auditing cb_auditing cb_xm cb_xm cb_retrieve cb_retrieve cb_xls cb_xls cb_help cb_help cb_auditing_cancel cb_auditing_cancel p_msg p_msg p_help p_help p_encl p_encl p_other p_other gb_3 gb_3 ln_bar ln_bar ln_bar2 ln_bar2 r_bar r_bar ln_1 ln_1 ln_2 ln_2 end type global w_publ_1ton_share_detail w_publ_1ton_share_detail type variables Int child_column_int = 1,uc_column_int = 1 datastore ds_copypaste String ls_newname = '' string ls_chnname = '' Long ll_prownum Long ls_powerid Int li_auditprint String ls_rpname = '' Long ls_msgprintid_rpt = 0 Long ll_xls_billid,ll_xls_Templatesid String ls_xls_DefaultDataWindow Long dw_pageretr_w,dw_pageretr_h Long dw_child_h,dw_child_w datastore ds_copy_bill String ins_openfile_log[] //用于退出后删除 Long ins_openfile_log_p = 0 //用于退出后删除 Boolean if_changeselect = TRUE Boolean if_del = FALSE Long ll_lastrow = 0 String is_query_menustr,is_mx_menustr long uc_width,uc_height string cur_mod[] BOOLEAN if_MtrlPicView = false int ifpic = 0 boolean if_ChkMtrlInfo = false end variables forward prototypes public function integer wf_refresh_interface () public function integer wf_lock_child () public function integer wf_no_edit () public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg) public function integer wf_bill_copy (ref string arg_msg) public function integer wf_bill_paste (ref string arg_msg) public subroutine wf_addlog_tempfilepathname (string arg_filepathname) public subroutine wf_del_tempfilepathname () public subroutine wf_reset_uc () public subroutine wf_encl (integer arg_encl) public function integer wf_print_retrievedata (ref s_print_pic_list arg_s_pic, ref string arg_msg) public function window getparentwindow () public subroutine wf_getmtrlid (ref long arg_mtrlid) public function integer wf_billcache_import (datawindow arg_dw, integer arg_row, ref string arg_msg) public function integer wf_billcache_export (datawindow arg_dw, integer arg_row, ref string arg_msg) public function integer wf_billcache_delete (datawindow arg_dw, integer arg_row) public subroutine wf_mxsort () end prototypes event retrieve_childdw();//Long row,uc_relid //row = dw_pageretr.GetRow() //IF row > 0 THEN // uc_relid = dw_pageretr.Object.outwareid[row] // dw_child.SetRedraw (FALSE) // dw_child.Retrieve(uc_relid) // dw_child.SetRedraw (TRUE) //IF dw_child.RowCount() > 0 THEN // dw_child.SelectRow(0,FALSE) // dw_child.SelectRow(1,TRUE) // dw_child.SetRow(1) //END IF //ELSE // dw_child.Reset() //END IF // // end event event refresh_interface;//被 wf_refresh_interface() 调用,用于界面刷新 end event event ue_f7;//cb_add_xm.triggerevent(clicked!) end event event ue_f8;////用于选择明细内容,被F8[默认]\dw_child.doubleclicked调用 //long child_row //if child_row=0 then // messagebox('系统提示','请选定目标明细行!') // return //end if // //s_edit_index_tran s_ch_tran //传递参数使用 //s_ch_tran.if_retrieve_all=false //是否一次RETRIEVE所有行 //s_ch_tran.work_mode=1 //0-单纯编辑模式 1-选择\编辑模式 //s_ch_tran.arg_pkid=0 //目标定位PKID (备用) ////查询列(物料编码)部分内容,用于初步筛选 //s_ch_tran.arg_string_code=trim(dw_child.object.u_mtrldef_mtrlcode[child_row]) // //OPENwithparm(W_materiel,s_ch_tran) //调用 // //S_materiel S_INSCUST //S_INSCUST=Message.PowerObjectParm //接受返回结构 //IF S_INSCUST.mtrlid>0 THEN //正常返回值则可以取以下值 // //dw_child.object.u_mtrldef_mtrlcode[child_row] //dw_child.object.u_mtrldef_unit[child_row] //dw_child.object.u_wasterinwaremx_mtrlid[child_row] //dw_child.object.u_wasterinwaremx_planprice[child_row] //dw_child.object.u_mtrldef_mtrlname[child_row] // ////S_INSCUST.mtrlid ////S_INSCUST.mtrlname ////S_INSCUST.mtrlcode ////S_INSCUST.unit ////S_INSCUST.mtrltype ////S_INSCUST.mtrlmode ////S_INSCUST.planprice // ////S_INSCUST.storageid ////S_INSCUST.cost ////S_INSCUST.price ////S_INSCUST.descrp ////S_INSCUST.source //END IF // end event event ue_showall();dw_pageretr.setfilter('') dw_pageretr.SetRedraw (false) dw_pageretr.filter() dw_pageretr.SetRedraw (true) end event event ue_print();////--直接打印 //uo_print_preview uo_print //IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN // // //S_print_MSG LS_PRMSG // //Long LS_ROW //LS_ROW = dw_pageretr.GetRow() //IF LS_ROW <= 0 THEN // MessageBox('NO','没有打印目标单据!') // RETURN //END IF // //IF ls_newname <> '' THEN // IF Not f_power_ind(ls_powerid) THEN // MessageBox(publ_operator,'你没有使用权限!') // RETURN // END IF // // IF li_auditprint = 1 THEN // IF dw_pageretr.Object.status[dw_pageretr.GetRow()] = 0 THEN // MessageBox('NO','目标单据还未审核,不能打印!') // RETURN // END IF // END IF // // LS_PRMSG.obj_dwNAME = ls_newname //ELSE // // IF NOT f_power_ind(7) THEN // MessageBox(publ_operator,'你没有使用权限!') // RETURN // END IF // // LS_PRMSG.obj_dwNAME = 'dw_rp_saletask_print' //END IF // //if LS_PRMSG.obj_dwNAME = '' then return // //LS_PRMSG.retr_pram_falg = 15 //LS_PRMSG.printrow = ll_prownum //LS_PRMSG.TAG_TEXT = '销售订单' //LS_PRMSG.FILTER_STRING = '' //LS_PRMSG.PAGECH_FLAG = 0 //LS_PRMSG.retr_scid = dw_pageretr.Object.u_saletask_scid[LS_ROW] //LS_PRMSG.retr_pramnmb = dw_pageretr.Object.taskid[LS_ROW] //LS_PRMSG.rowcnt = dw_child.RowCount() //uo_print.FACT_PRINT_MSG = LS_PRMSG // // //String arg_msg //IF uo_print.uof_print_begin(arg_msg) = 0 THEN // MessageBox("系统提示",arg_msg) // RETURN //END IF //uo_print.ds_print() Long ls_msgprintid ls_msgprintid = Message.LongParm SELECT dft_new_dwname,powerid,ifpic,chnname INTO :ls_newname,:ls_powerid,:ifpic,:ls_chnname FROM sys_dft_dwprint_dynamic Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca; IF sqlca.SQLCode <> 0 THEN ls_newname = '' ls_powerid = 0 END IF end event event ue_viewprint();// //Long LS_ROW //LS_ROW = dw_pageretr.GetRow() //IF LS_ROW <= 0 THEN // MessageBox('NO','没有打印目标单据!') // RETURN //END IF // //S_print_MSG LS_PRMSG // //IF ls_newname <> '' THEN // IF Not f_power_ind(ls_powerid) THEN // MessageBox(publ_operator,'你没有使用权限!') // RETURN // END IF // // IF li_auditprint = 1 THEN // IF dw_pageretr.Object.status[dw_pageretr.GetRow()] = 0 THEN // MessageBox('NO','目标单据还未审核,不能打印!') // RETURN // END IF // END IF // // LS_PRMSG.obj_dwNAME = ls_newname //ELSE // IF Not f_power_ind(7) THEN // MessageBox(publ_operator,'你没有使用权限!') // RETURN // END IF // // LS_PRMSG.obj_dwNAME = 'dw_rp_saletask_print' //END IF // //if LS_PRMSG.obj_dwNAME = '' then return // //ls_prmsg.printrow = ll_prownum //LS_PRMSG.TAG_TEXT = '销售订单' //LS_PRMSG.FILTER_STRING = '' //LS_PRMSG.retr_pram_falg = 15 //LS_PRMSG.PAGECH_FLAG = 0 //LS_PRMSG.retr_scid = dw_pageretr.Object.u_saletask_scid[LS_ROW] //LS_PRMSG.retr_pramnmb = dw_pageretr.Object.taskid[LS_ROW] //LS_PRMSG.rowcnt = dw_child.RowCount() //OpenWithParm(w_publ_preview,LS_PRMSG) Long ls_msgprintid ls_msgprintid = Message.LongParm SELECT dft_new_dwname,powerid,auditprint,prownum,ifpic,chnname INTO :ls_newname,:ls_powerid,:li_auditprint,:ll_prownum,:ifpic,:ls_chnname FROM sys_dft_dwprint_dynamic Where sys_dft_dwprint_dynamic.dwprintid = :ls_msgprintid USING sqlca; IF sqlca.SQLCode <> 0 THEN ls_newname = '' ls_powerid = 0 END IF end event event ue_addmx();IF NOT dw_edit_mode THEN MessageBox('系统提示','非编辑状态下不可用') RETURN END IF THIS.TriggerEvent('ue_f8') dw_child.SetFocus() end event event ue_deletemx();IF NOT dw_edit_mode THEN MessageBox('系统提示','非编辑状态下不可用') RETURN END IF IF MessageBox ("询问","是否确定要删除当前细目记录?",Question!,YesNo! ) = 2 THEN RETURN IF dw_child.GetRow() = 0 THEN MessageBox('提示','请选择删除的行对象!') RETURN END IF if_del = TRUE Long ll_i dw_child.SetRedraw(FALSE) FOR ll_i = dw_child.RowCount() TO 1 STEP -1 IF dw_child.IsSelected(ll_i) THEN dw_child.DeleteRow (ll_i) END IF NEXT dw_child.SetRedraw(TRUE) if_del = FALSE IF dw_child.RowCount() = 0 THEN dw_child.InsertRow(0) dw_child.TriggerEvent (RowFocusChanged!) end event event ue_insertmx();long ll_childrow,li_row ll_childrow = dw_child.getrow() li_row = dw_child.insertrow(ll_childrow) dw_child.setrow(li_row) dw_child.scrolltorow(li_row) dw_child.selectrow(0,false) dw_child.selectrow(li_row,true) end event event ue_copyrow();IF Not dw_edit_mode THEN RETURN Long ll_childrow IF sys_option_copyrow_mode = 0 THEN //单据明细复制行功能,复制到最后一行 0-否1是 ll_childrow = dw_child.GetRow() ELSE ll_childrow = dw_child.RowCount() END IF IF ll_childrow = 0 THEN MessageBox('NO','请选择复制对象!') RETURN END IF Long ll_i Long ll_j ll_j = 0 FOR ll_i = 1 To dw_child.RowCount() IF dw_child.IsSelected(ll_i) THEN ll_j++ dw_child.RowsCopy (ll_i,ll_i,Primary!,ds_copypaste,ll_j,Primary!) END IF NEXT //dw_child.RowsCopy (ll_childrow,ll_childrow,Primary!,ds_copypaste,1,Primary!) FOR ll_i = 1 To ds_copypaste.RowCount() ds_copypaste.RowsCopy (ll_i,ll_i,Primary!,dw_child,ll_childrow + ll_i,Primary!) NEXT //ds_copypaste.RowsCopy (1,1,Primary!,dw_child,ll_childrow + 1,Primary!) ds_copypaste.Reset() dw_child.SelectRow(0,False) dw_child.SetRow(ll_childrow + 1) dw_child.ScrollToRow(ll_childrow + 1) dw_child.SelectRow(ll_childrow + 1,True) end event event ue_addzy();//if dw_edit_mode then return // //string arg_msg='',LS_STR //long uc_row //s_inputbox S_SREU // //uc_row=dw_pageretr.getrow() //if uc_row<=0 then // messagebox('系统提示','请选定当前目标单据!') // return //end if //S_SREU.TITLE='请输入要补充到备注的内容' //S_SREU.OLD_TEXT='' //openwithparm(w_inputbox,S_SREU) //LS_STR=Message.StringParm //if trim(LS_STR)='' or isnull(LS_STR) then return // //if uo_ware.getinfo(dw_pageretr.object.inwareid[uc_row],arg_msg)=0 then // messagebox('Error!',arg_msg) // return //end if //if uo_ware.add_dscrp(LS_STR,arg_msg)=0 then // messagebox('Error!',arg_msg) // return //else // messagebox(publ_operator,'添加备注操作成功!') // wf_refresh_curuc(dw_pageretr.object.inwareid[uc_row]) //end if // end event event ue_xls(); string arg_msg Long ll_Templatesid,ll_ationid ll_Templatesid = Message.LongParm ll_ationid = long(Message.wordparm ) if isnull(ll_Templatesid) then ll_Templatesid = 0 if isnull(ll_ationid) then ll_ationid = 0 if ll_Templatesid = 0 then return ll_xls_Templatesid = ll_Templatesid uo_xls_constant uo_constant //Excel全局设置对象 uo_constant = create uo_xls_constant uo_sendtoexcel obj_st //实例化数据处理对象 obj_st = create uo_sendtoexcel obj_st.commit_transaction = sqlca //事务对象 建议显示设置 默认等于sqlca obj_st.uo_const = uo_constant //全局配置对象 s_xls_billlist str_billlist str_billlist = obj_st.of_getbillinfo(ll_Templatesid,arg_msg) //根据模版获取相应的单据信息 if str_billlist.count <=0 then MessageBox('错误',arg_msg) return end if if wf_xls_retrievedata(ll_ationid,str_billlist,obj_st,arg_msg) <> 1 then MessageBox('错误',arg_msg) return end if //发送数据 obj_st.event oe_sendtoexcel(str_billlist) end event event ue_msg();//IF dw_edit_mode THEN RETURN // //Long ll_row //String ls_billcode // //ll_row = dw_pageretr.GetRow() // //IF ll_row <= 0 THEN RETURN //ls_billcode = dw_pageretr.Object.taskcode[ll_row] // //OpenWithParm(w_msg_bill,ls_billcode) end event event ue_bill_copy();String arg_msg = '' IF wf_bill_copy(arg_msg) = 1 THEN MessageBox('系统提示','复制成功') ELSE MessageBox('系统提示',arg_msg) END IF end event event ue_bill_paste();String arg_msg = '' IF wf_bill_paste(arg_msg) = 1 THEN ELSE MessageBox('系统提示',arg_msg) END IF end event event ue_allowedit();Long Columns Int i String ls_modify_str Long ll_row Long ll_value Long ll_statusflag,ll_woodcodeflag,ll_pcodeflag String ls_status,ls_woodcode,ls_pcode String ls_data_type ll_row = dw_child.GetRow() IF ll_row <= 0 THEN RETURN Columns = Long(dw_child.Describe("DataWindow.Column.Count")) FOR i = 1 To Columns ls_modify_str = dw_child.Describe("#" + String(i) + ".name") ls_modify_str = Lower(ls_modify_str) IF i = 1 THEN //第1个字段,约定物料ID ls_data_type = dw_child.Describe(ls_modify_str+".ColType") IF ls_data_type = "long" THEN ll_value = dw_child.GetItemNumber(ll_row,ls_modify_str) END IF END IF IF Pos(ls_modify_str,'statusflag') > 0 THEN ls_data_type = dw_child.Describe(ls_modify_str+".ColType") IF ls_data_type = "long" THEN ll_statusflag = dw_child.GetItemNumber(ll_row,ls_modify_str) END IF END IF IF Pos(ls_modify_str,'woodcodeflag') > 0 THEN ls_data_type = dw_child.Describe(ls_modify_str+".ColType") IF ls_data_type = "long" THEN ll_woodcodeflag = dw_child.GetItemNumber(ll_row,ls_modify_str) END IF END IF IF Pos(ls_modify_str,'pcodeflag') > 0 THEN ls_data_type = dw_child.Describe(ls_modify_str+".ColType") IF ls_data_type = "long" THEN ll_pcodeflag = dw_child.GetItemNumber(ll_row,ls_modify_str) END IF END IF IF Pos(ls_modify_str,'status') > 0 And Pos(ls_modify_str,'statusflag') = 0 And Pos(ls_modify_str,'statustype') = 0 THEN IF Len(ls_modify_str) = Len('status') Or Pos(ls_modify_str,'_status') > 0 THEN IF Not (Pos(ls_modify_str,'u_saletask_status') > 0 Or & Pos(ls_modify_str,'u_buytask_status') > 0 Or & Pos(ls_modify_str,'u_order_ml_status') > 0 Or & Pos(ls_modify_str,'u_order_wfjg_status') > 0 Or & Pos(ls_modify_str,'u_rs_empinfo_status') > 0 ) THEN ls_status = ls_modify_str END IF END IF END IF IF Pos(ls_modify_str,'woodcode') > 0 And Pos(ls_modify_str,'woodcodeflag') = 0 And Pos(ls_modify_str,'woodcodetype') = 0 THEN IF Len(ls_modify_str) = Len('woodcode') Or Pos(ls_modify_str,'_woodcode') > 0 THEN ls_woodcode = ls_modify_str END IF END IF IF Pos(ls_modify_str,'pcode') > 0 And Pos(ls_modify_str,'pcodeflag') = 0 And Pos(ls_modify_str,'pcodetype') = 0 THEN IF Len(ls_modify_str) = Len('pcode') Or Pos(ls_modify_str,'_pcode') > 0 THEN ls_pcode = ls_modify_str END IF END IF NEXT IF ls_status <> '' THEN IF ll_statusflag = 5 THEN //只有5-仅填写时,才能用向下键切换到下一行, 使用ddlb时向下键是被屏蔽的 dw_child.Modify(ls_status+".edit.case='any'") dw_child.Modify(ls_status+".edit.AutoSelect='Yes'") ELSE dw_child.Modify(ls_status+".ddlb.case='any'") IF ll_statusflag <> 0 Or ll_value = 0 THEN dw_child.Modify(ls_status+".dddw.allowedit = no") ELSE dw_child.Modify(ls_status+".dddw.allowedit = yes") END IF END IF END IF IF ls_woodcode <> '' THEN IF ll_woodcodeflag = 5 THEN dw_child.Modify(ls_woodcode+".edit.case='any'") dw_child.Modify(ls_woodcode+".edit.AutoSelect='Yes'") ELSE dw_child.Modify(ls_woodcode+".ddlb.case='any'") IF ll_woodcodeflag <> 0 Or ll_value = 0 THEN dw_child.Modify(ls_woodcode+".dddw.allowedit = no") ELSE dw_child.Modify(ls_woodcode+".dddw.allowedit = yes") END IF END IF END IF IF ls_pcode <> '' THEN IF ll_pcodeflag = 5 THEN dw_child.Modify(ls_pcode+".edit.case='any'") dw_child.Modify(ls_pcode+".edit.AutoSelect='Yes'") ELSE dw_child.Modify(ls_pcode+".ddlb.case='any'") IF ll_pcodeflag <> 0 Or ll_value = 0 THEN dw_child.Modify(ls_pcode+".dddw.allowedit = no") ELSE dw_child.Modify(ls_pcode+".dddw.allowedit = yes") END IF END IF END IF end event event ue_rpt_print();//Long row,uc_relid,ll_scid //row = dw_pageretr.GetRow() //IF row = 0 THEN RETURN // // //uo_rpt_print_preview uo_print //S_rpt_print_MSG LS_PRMSG // //IF dw_pageretr.RowCount() = 0 THEN // MessageBox('系统信息','没有可打印的单据!') // RETURN //END IF // //IF ls_rpname = '' THEN RETURN // //IF li_auditprint = 1 THEN // IF dw_pageretr.Object.status[row] = 0 THEN // MessageBox('NO','目标单据还未审核,不能打印!') // RETURN // END IF //END IF // //IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN // //LS_PRMSG.retr_pram_falg = 15 //LS_PRMSG.TAG_TEXT = THIS.Title //LS_PRMSG.rpname = ls_rpname //LS_PRMSG.FILTER_STRING = '' // //LS_PRMSG.PAGECH_FLAG = 0 //LS_PRMSG.rpid = ls_msgprintid_rpt //LS_PRMSG.retr_scid = dw_pageretr.Object.u_saletask_scid[row] //LS_PRMSG.retr_pramnmb = dw_pageretr.Object.taskid[row] //LS_PRMSG.rowcnt = dw_child.RowCount() // // //uo_print.FACT_PRINT_MSG = LS_PRMSG // //String arg_msg //IF uo_print.uof_print_begin(arg_msg) = 0 THEN // MessageBox("系统提示",arg_msg) // RETURN //END IF //uo_print.ds_print() // // ////**更新打印次料 //printnum = Message.DoubleParm // //String ls_code // //ll_scid = dw_pageretr.Object.u_saletask_scid[row] //ls_code = dw_pageretr.Object.taskcode[row] // //f_update_printnum(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE) ls_msgprintid_rpt = Message.LongParm SELECT rpname,auditprint INTO :ls_rpname,:li_auditprint FROM u_report_list Where rpid = :ls_msgprintid_rpt USING sqlca; IF sqlca.SQLCode <> 0 THEN ls_rpname = '' li_auditprint = 0 END IF end event event ue_rpt_viewprint();// //Long row,uc_relid,ll_scid //row = dw_pageretr.GetRow() //IF row = 0 THEN RETURN // // //IF ls_rpname = '' THEN RETURN // //IF li_auditprint = 1 THEN // IF dw_pageretr.Object.status[row] = 0 THEN // MessageBox('NO','目标单据还未审核,不能打印!') // RETURN // END IF //END IF // //s_rpt_print_msg s_print //s_print.retr_pram_falg = 15 //s_print.rpid = ls_msgprintid_rpt //s_print.retr_flag = TRUE //s_print.tag_text = THIS.Title // //s_print.rpname = ls_rpname //s_print.retr_scid = dw_pageretr.Object.u_saletask_scid[row] //s_print.retr_pramnmb = dw_pageretr.Object.taskid[row] //s_print.rowcnt = dw_child.RowCount() //OpenWithParm(w_rpt_preview,s_print) // ////**更新打印次料 //String arg_msg //printnum = Message.DoubleParm // //String ls_code // //ll_scid = dw_pageretr.Object.u_saletask_scid[row] //ls_code = dw_pageretr.Object.taskcode[row] // //f_update_printnum(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE) ls_msgprintid_rpt = Message.LongParm SELECT rpname,auditprint INTO :ls_rpname,:li_auditprint FROM u_report_list Where rpid = :ls_msgprintid_rpt USING sqlca; IF sqlca.SQLCode <> 0 THEN ls_rpname = '' li_auditprint = 0 END IF end event event ue_modify();//ue_modify()调用修改UC布局窗口 s_dw_uc_modify s_modify s_modify.datawinname_uc = dw_uc.DataObject s_modify.nomod = cur_mod s_modify.uc_column_int = uc_column_int s_modify.uc_width = dw_uc.Width s_modify.uc_height = dw_uc.Height s_modify.win = String(THIS.ClassName()) s_modify.mainid = s_tran.mainid OpenWithParm(w_uc_mod,s_modify) Long ll_type s_resize s_size s_size = Message.PowerObjectParm ll_type = s_size.backtype IF ll_type = 1 THEN uc_width = s_size.Width uc_height = s_size.Height THIS.TriggerEvent(Resize!) dw_uc.TriggerEvent(Constructor!) END IF end event event retrieve_childdw_uc();IF NOT dw_edit_mode THEN dw_uc.Reset() dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!) END IF end event event ue_help();Int i i = htmlhelpA(Handle(THIS), sys_help_chm, 0, THIS.Title+".html") end event event ue_MtrlPicView();IF dw_edit_mode THEN RETURN s_edit_index_tran s_pic Long ll_ConnectionID String arg_msg Long ls_row String ls_col_mtrlid String ls_mtrlcode //String ls_col_pz,ls_pz_ch //string ls_col_value //string ls_data_type Long ll_row,ll_mtrlid s_pzwin_open arg_s_win ll_row = dw_child.GetRow() IF ll_row <= 0 THEN MessageBox('提示','请选择资料') RETURN END IF ls_col_mtrlid = dw_child.Describe("#1.Name") IF NOT Pos(Lower(ls_col_mtrlid),'mtrlid') > 0 THEN RETURN ll_mtrlid = dw_child.GetItemNumber(ll_row,ls_col_mtrlid) IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN MessageBox('提示','没有指定附件数据库连接'+arg_msg) RETURN END IF SELECT mtrlcode INTO :ls_mtrlcode FROM u_mtrldef WHERE mtrlid = :ll_mtrlid USING sqlca; IF sqlca.SQLCode <> 0 THEN MessageBox('提示','没有查找到相关物料信息 '+sqlca.SQLErrText) RETURN END IF s_pic.f_long = 201 //物料资料 mainID s_pic.f_string = ls_mtrlcode s_pic.g_long = ll_mtrlid s_pic.d_long = 0 //relid_mx s_pic.d_string = '' //relcode_mx s_pic.e_long = 0 // scid s_pic.sqltransaction = sys_filedb_sqlca OpenWithParm(w_fj_bill_view,s_pic) end event event ue_copycol();IF NOT dw_edit_mode THEN MessageBox('系统提示','非编辑状态下不可用') RETURN END IF dw_child.SetFocus() dw_child.copy() end event event ue_cutcol();IF NOT dw_edit_mode THEN MessageBox('系统提示','非编辑状态下不可用') RETURN END IF dw_child.SetFocus() dw_child.Cut() end event event ue_pastecol();IF NOT dw_edit_mode THEN MessageBox('系统提示','非编辑状态下不可用') RETURN END IF dw_child.SetFocus() dw_child.paste() end event event ue_news_add();//Long ll_row_p //s_admsg s_msg // //dw_pageretr.AcceptText() // //ll_row_p = dw_pageretr.GetRow() // //IF ll_row_p <= 0 THEN RETURN // //s_msg.billcode = dw_pageretr.Object.billcode[ll_row_p] // //OpenWithParm(w_new_admsg,s_msg) // // end event event ue_news_rel();//Long ll_row_p //String ls_billcode // //dw_pageretr.AcceptText() // //ll_row_p = dw_pageretr.GetRow() // //IF ll_row_p <= 0 THEN RETURN // //ls_billcode = dw_pageretr.Object.billcode[ll_row_p] // //OpenWithParm(w_msg_billcode_rel,ls_billcode) end event event resize_p(); int li = 30 p_other.x = THIS.Width - (p_other.width + li) * 4 - 30 p_msg.x = p_other.x + p_other.width + li p_encl.x = p_msg.x + p_msg.width + li p_help.x = p_encl.x + p_encl.width + li end event event ue_rowup();Long ll_row ll_row = dw_child.GetRow() IF ll_row > 1 THEN dw_child.RowsMove(ll_row, ll_row, Primary!, dw_child, ll_row - 1, Primary!) dw_child.SelectRow(0, False) dw_child.SetRow( ll_row - 1) dw_child.SelectRow(ll_row - 1, True) END IF ////首行 //Long ll_row // //ll_row = dw_child.GetRow() //IF ll_row > 1 THEN // dw_child.RowsMove(ll_row, ll_row, Primary!, dw_child, 1, Primary!) // // dw_child.SelectRow(0, False) // dw_child.SetRow( 1) // dw_child.SelectRow( 1, True) //END IF end event event ue_rowdown();Long ll_row ll_row = dw_child.GetRow() IF ll_row < dw_child.rowcount() THEN dw_child.RowsMove(ll_row + 1, ll_row + 1, Primary!, dw_child, ll_row, Primary!) dw_child.SelectRow(0, False) dw_child.SetRow( ll_row + 1) dw_child.SelectRow(ll_row + 1, True) END IF //最后行 //Long ll_row // //ll_row = dw_child.GetRow() //IF ll_row < dw_child.rowcount() THEN // dw_child.RowsMove(ll_row , ll_row, Primary!, dw_child, dw_child.rowcount() + 1, Primary!) // // dw_child.SelectRow(0, False) // dw_child.SetRow(dw_child.rowcount()) // dw_child.SelectRow(dw_child.rowcount(), True) //END IF end event event ue_send_ljfieb();return end event event ue_jdview_ljfieb();return end event event ue_copyself();window lw_win s_edit_index_tran s_rpinfo s_rpinfo.if_retrieve_all = TRUE openwithparm(lw_win,s_rpinfo,this.Classname()) lw_win.WindowState = Normal! end event event ue_mtrl_info();//IF NOT f_power_ind(2267,sys_msg_pow) THEN // MessageBox(publ_operator,sys_msg_pow) // RETURN //END IF // Long ll_row ll_row = dw_child.GetRow() IF ll_row <= 0 THEN MessageBox('系统提示','请选择物料') RETURN END IF Long ll_mtrlid wf_getmtrlid(ll_mtrlid) 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 event ue_mtrl_info_retr();//IF NOT f_power_ind(2267,sys_msg_pow) THEN // MessageBox(publ_operator,sys_msg_pow) // RETURN //END IF // IF IsValid(w_mtrl_info) THEN Long ll_row ll_row = dw_child.GetRow() IF ll_row <= 0 THEN MessageBox('系统提示','请选择物料') RETURN END IF Long ll_mtrlid wf_getmtrlid(ll_mtrlid) 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 event ue_billcache_import();Int rslt = 1 String arg_msg IF wf_billcache_import(dw_uc, dw_uc.GetRow(), arg_msg) = 0 THEN rslt = 0 GOTO ext END IF IF wf_billcache_import(dw_child, 0 , arg_msg) = 0 THEN rslt = 0 GOTO ext END IF ext: IF rslt = 0 THEN MessageBox('系统提示',arg_msg) END IF end event event ue_billcache_export();Int rslt = 1 String arg_msg IF wf_billcache_export(dw_uc, dw_uc.GetRow(), arg_msg) = 0 THEN rslt = 0 GOTO ext END IF IF wf_billcache_export(dw_child, 0 , arg_msg) = 0 THEN rslt = 0 GOTO ext END IF ext: IF rslt = 0 THEN MessageBox('系统提示',arg_msg) else MessageBox('系统提示',"缓存成功") END IF end event event ue_billcache_delete();Int rslt = 1 IF wf_billcache_delete(dw_uc, dw_uc.GetRow()) = 0 THEN rslt = 0 // GOTO ext END IF IF wf_billcache_delete(dw_child, 0) = 0 THEN rslt = 0 // GOTO ext END IF //ext: //IF rslt = 0 THEN // MessageBox('系统提示',arg_msg) //END IF end event event ue_billcache_check();Long ll_row_cnt String ld_dataobject IF NOT FileExists (sys_inifilename_cache) THEN integer li_FileNum li_FileNum = FileOpen(sys_inifilename_cache, StreamMode!, Write!, LockWrite!, Replace!) FileClose(li_FileNum) END IF ld_dataobject = dw_uc.DataObject ll_row_cnt = Long(ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "RowCnt", "0" )) IF ll_row_cnt = 0 THEN RETURN //IF MessageBox('确认','存在未保存的缓存单据,是否恢复?',question!,YesNo!) = 2 THEN RETURN IF Not dw_edit_mode THEN cb_add.TriggerEvent(Clicked!) This.TriggerEvent('ue_billcache_import') end event event ue_sort_mx();OPENwithparm(w_sortrow,dw_child) STRING LS_EXPR LS_EXPR=Message.StringParm IF ISNULL(LS_EXPR) THEN LS_EXPR=' ' if len(LS_EXPR)>2 and trim(LS_EXPR)='' then return dw_child.setsort(LS_EXPR) dw_child.SetRedraw (false) dw_child.sort() dw_child.SetRedraw (true) end event event ue_rbbutton();dw_child.event rbbutton( dw_child.arg_ins_dwtype,dw_child.arg_ins_dwname,dw_child.arg_ins_dwdata,dw_child.arg_ins_dwrow ) end event event ue_dwchild_filter();dw_child.setfilter('') dw_child.filter() end event event ue_uprow();if not dw_edit_mode then return Long ll_rowcount,ll_move_row Long ll_i ll_rowcount = dw_child.RowCount() IF ll_rowcount <= 0 THEN RETURN FOR ll_i = 1 TO ll_rowcount //如果是选中行 IF dw_child.IsSelected(ll_i) THEN ll_move_row = ll_i END IF NEXT IF ll_move_row = 1 THEN RETURN //上移一行 //dw_uc.RowsMove(ll_move_row, ll_move_row, primary!, & // dw_uc, ll_move_row + 2, primary!) dw_child.RowsMove(ll_move_row, ll_move_row, primary!, & dw_child, ll_move_row - 1, primary!) dw_child.SelectRow(0, FALSE) dw_child.SetRow(ll_move_row - 1) dw_child.SelectRow(ll_move_row - 1, TRUE) end event event ue_downrow();if not dw_edit_mode then return Long ll_rowcount,ll_move_row Long ll_i ll_rowcount = dw_child.RowCount() IF ll_rowcount <= 0 THEN RETURN FOR ll_i = 1 TO ll_rowcount //如果是选中行 IF dw_child.IsSelected(ll_i) THEN ll_move_row = ll_i END IF NEXT IF ll_move_row = ll_rowcount THEN RETURN //上移一行 //dw_uc.RowsMove(ll_move_row, ll_move_row, primary!, & // dw_uc, ll_move_row + 2, primary!) dw_child.RowsMove(ll_move_row, ll_move_row, primary!, & dw_child, ll_move_row + 2, primary!) dw_child.ScrollToRow(ll_move_row + 1) end event public function integer wf_refresh_interface ();//wf_refresh_interface IF dw_edit_mode THEN cb_retrieve.Enabled = FALSE cb_func.Enabled = FALSE cb_delet.Enabled = FALSE cb_print.Enabled = FALSE cb_viewprint.Enabled = FALSE cb_auditing.Enabled = FALSE cb_auditing_cancel.Enabled = FALSE dw_pageretr.RBUTTON_FILTER_USE = FALSE //右键查询功能开关 dw_pageretr.titleclick_sort_use = FALSE //单击标题排序功能开关 // dw_child.titleclick_sort_use = TRUE //单击标题排序功能开关 dw_child.RBUTTON_SETPOSITION_USE = FALSE //定位 ///dw_child.RBUTTON_FILTER_USE = FALSE //右键查询功能开关 cb_edit.Enabled = TRUE cb_add.Enabled = TRUE cb_xls.Enabled = FALSE cb_edit.Text = "放弃&E" cb_add.Text = "保存&S" cb_edit.normalpicname = 'Undo.bmp' cb_add.normalpicname = 'Save.bmp' ELSE cb_retrieve.Enabled = TRUE cb_func.Enabled = TRUE cb_delet.Enabled = TRUE cb_print.Enabled = TRUE cb_viewprint.Enabled = TRUE cb_auditing.Enabled = TRUE cb_auditing_cancel.Enabled = TRUE cb_add.Enabled = TRUE cb_edit.Enabled = TRUE cb_xls.Enabled = TRUE dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关 dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关 // dw_child.titleclick_sort_use = FALSE //单击标题排序功能开关 dw_child.RBUTTON_SETPOSITION_USE = TRUE //定位 //dw_child.RBUTTON_FILTER_USE = TRUE //右键查询功能开关 cb_edit.Text = "修改&E" cb_add.Text = "新建&S" cb_edit.normalpicname = 'OPEN.bmp' cb_add.normalpicname = 'new.bmp' IF dw_pageretr.GetRow() <= 0 THEN cb_edit.Enabled = FALSE cb_delet.Enabled = FALSE cb_addzy.Enabled = FALSE cb_auditing.Enabled = FALSE END IF END IF IF retrieve_all OR dw_edit_mode THEN cb_nextpage.Enabled = FALSE cb_retrieveall.Enabled = FALSE em_pagerowno.Enabled = FALSE IF dw_edit_mode THEN sle_usual_query.Enabled = FALSE ELSE sle_usual_query.Enabled = TRUE END IF ELSE cb_nextpage.Enabled = TRUE cb_retrieveall.Enabled = TRUE em_pagerowno.Enabled = TRUE sle_usual_query.Enabled = TRUE END IF wf_lock_child() //修改uc_taborder IF dw_edit_mode THEN dw_uc.TriggerEvent("ue_taborder") IF dw_uc.ins_if_nomodify_uc_taborder THEN Long ll_uc_int FOR ll_uc_int = 1 TO uc_column_int dw_uc.SetTabOrder (ll_uc_int,ll_uc_int*10 ) NEXT END IF ELSE dw_uc.TriggerEvent("ue_taborder_cancel") END IF cb_edit.of_init_draw() cb_add.of_init_draw() cb_edit.of_paint() cb_add.of_paint() cb_add.TriggerEvent('ue_textchange') cb_edit.TriggerEvent('ue_textchange') ll_lastrow = 0 THIS.TriggerEvent('refresh_interface') RETURN 1 end function public function integer wf_lock_child ();//wf_lock_child Int LS_INT IF dw_edit_mode THEN // //考虑字段X坐标的位置,设置TabOrder // datastore ds // Long ll_row // Long ll_col // Long ll_x // // ds = CREATE datastore // ds.DataObject = "dw_uc_rbtnfilter_setlayout_grid" // // //取坐标 // FOR LS_INT = 1 TO child_column_int // IF Long(dw_child.Describe("#"+String(LS_INT)+ ".x")) > 0 THEN // ll_x = Long(dw_child.Describe("#"+String(LS_INT)+ ".x")) // ELSE // ll_x = 99999 // END IF // ll_row = ds.InsertRow(0) // ds.Object.taporder[ll_row] = LS_INT // ds.Object.X[ll_row] = ll_x // NEXT // ll_x = ds.SetSort("x A") // ll_x = ds.Sort() // FOR LS_INT = 1 TO ds.RowCount() // ll_col = ds.Object.taporder[LS_INT] // dw_child.SetTabOrder (ll_col,LS_INT*10 ) // NEXT // DESTROY ds FOR LS_INT = 1 TO child_column_int dw_child.SetTabOrder (LS_INT,LS_INT*10 ) NEXT ELSE FOR LS_INT = 1 TO child_column_int dw_child.SetTabOrder (LS_INT, 0) NEXT END IF RETURN 1 end function public function integer wf_no_edit ();//wf_no_edit IF dw_edit_mode THEN cb_edit.Enabled = TRUE ELSE cb_edit.Enabled = FALSE END IF RETURN 1 end function public function integer wf_xls_retrievedata (long arg_ationid, ref s_xls_billlist arg_str_billlist, ref uo_sendtoexcel arg_obj_st, ref string arg_msg);//Long LS_ROW,ll_id,i,ll_scid //LS_ROW = dw_pageretr.GetRow() //IF LS_ROW <= 0 THEN // arg_msg = '没有目标单据!' // RETURN 0 //END IF // ////修改点:获取 指定retriev参数 //ll_id = dw_pageretr.Object.#1[LS_ROW] //ll_scid = dw_pageretr.Object.u_saletask_scid[LS_ROW] // ////查询所选模版是否含有图片信息 //Long ll_ifpic //Long ll_classid //SELECT ifpic // INTO :ll_ifpic // FROM U_XLS_Templates // Where id = :ll_xls_Templatesid; //IF sqlca.SQLCode <> 0 THEN // ll_ifpic = 0 //END IF // //Long ll_i,ll_j //Long ll_mtrlid //Long ll_fileid // //Blob ls_filedata //SetNull(ls_filedata) //String Pathname,ls_filename,ls_filetype //String errmsg //uo_fj_mng_billtype ls_uo_fjbt //ls_uo_fjbt = CREATE uo_fj_mng_billtype // //s_xls_pic_list s_pic //结构数组-用于保存图片路径 // //IF ll_ifpic = 1 THEN //如果含有图片信息,则查询本类型单据需要带出哪类附件 // // SELECT classid // INTO :ll_classid // FROM u_billpic_fileclass // Where (billtype = 102); // IF sqlca.SQLCode <> 0 THEN // ll_classid = 0 // END IF // // IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息. // FOR ll_i = 1 TO dw_child.RowCount() // ll_mtrlid = dw_child.Object.mtrlid[ll_i] // //取该附件类型中的第一个附件. // SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype // FROM u_file // WHERE relid = :ll_mtrlid // AND classid = :ll_classid // AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf' // OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg') // USING sys_fileDB_sqlca; // IF sys_fileDB_sqlca.SQLCode <> 0 THEN // ll_fileid = 0 // END IF // IF ll_fileid > 0 THEN // Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype // IF Trim(Pathname) <> '' THEN // IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN // RETURN 0 // END IF // // IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN // RETURN 0 // ELSE // // s_pic.path[ll_i] = Pathname // //记录临时文件位置,本窗口退出后删除 // wf_addlog_tempfilepathname(Pathname) // // END IF // ELSE // s_pic.path[ll_i] = '' // END IF // ELSE // s_pic.path[ll_i] = '' // END IF // NEXT // END IF // // //END IF // //////可选设置/ // //arg_obj_st.uo_const.create_new_pwd( ) //创建随机密码 //IF sys_option_xls_ifuse_passwd = 1 THEN arg_obj_st.uo_const.pwd = Trim(sys_option_xls_user_passwd) //默认加密密码 默认为随即密码 // // //Boolean xls_locked //xls_locked = Not (sys_option_xls_lock = 1) // //// Excel 的可选设置 //IF arg_obj_st.of_setoption(arg_ationid, xls_locked,TRUE,arg_msg) <> 1 THEN // RETURN 0 //END IF // // //FOR i = 1 TO arg_str_billlist.count // ////可选操作/ // // arg_str_billlist.bill[i].ds_data = CREATE datastore // // arg_str_billlist.bill[i].ds_data.DataObject = arg_str_billlist.bill[i].datawindow // // arg_str_billlist.bill[i].ds_data.SetTransObject(sqlca) // // //修改点:注意retrieve 参数与上文对应 // arg_str_billlist.bill[i].ds_data.Retrieve(ll_scid,ll_id) // // IF ll_ifpic = 1 THEN // IF arg_str_billlist.bill[i].datawindow = 'dw_xls_saletaskmx' AND arg_str_billlist.bill[i].ds_data.RowCount() > 0 THEN //设置图片路径 // FOR ll_j = 1 TO arg_str_billlist.bill[i].ds_data.RowCount() // arg_str_billlist.bill[i].ds_data.Object.pic[ll_j] = s_pic.path[ll_j] // NEXT // END IF // END IF //NEXT // // //DESTROY ls_uo_fjbt RETURN 1 // end function public function integer wf_bill_copy (ref string arg_msg);Long rslt = 1 Long ll_rowcount dw_child.AcceptText( ) ll_rowcount = dw_child.RowCount() IF ll_rowcount <= 0 THEN rslt = 0 arg_msg = '没有可复制的明细内容' GOTO ext END IF IF NOT IsValid(ds_copy_bill) THEN ds_copy_bill = CREATE datastore ds_copy_bill.DataObject = dw_child.DataObject ds_copy_bill.SetTransObject(sqlca) END IF ds_copy_bill.Reset() IF dw_child.RowsCopy(1, ll_rowcount, Primary!, ds_copy_bill, 1, Primary!) = - 1 THEN rslt = 0 arg_msg = '复制明细内容失败' GOTO ext END IF ds_copy_bill.AcceptText() ext: RETURN rslt end function public function integer wf_bill_paste (ref string arg_msg);Long rslt = 1 IF NOT dw_edit_mode THEN rslt = 0 arg_msg = '非编辑状态下不可粘贴' GOTO ext END IF Long ll_rowcount dw_child.AcceptText( ) ll_rowcount = ds_copy_bill.RowCount() IF ll_rowcount <= 0 THEN rslt = 0 arg_msg = '没有可粘贴的明细内容' GOTO ext END IF dw_child.Reset() Long ll_child_rowcount ll_child_rowcount = dw_child.RowCount() IF ds_copy_bill.RowsCopy(1, ll_rowcount, Primary!, dw_child, 1, Primary!) = - 1 THEN rslt = 0 arg_msg = '粘贴明细内容失败' GOTO ext END IF dw_child.AcceptText() ext: RETURN rslt end function public subroutine wf_addlog_tempfilepathname (string arg_filepathname);//wf_addlog_tempfilepathname if isnull(arg_filepathname) or len(trim(arg_filepathname))<3 then return ins_openfile_log_p++ ins_openfile_log[ins_openfile_log_p]=arg_filepathname // string ins_openfile_log[] //用于退出后删除 // long ins_openfile_log_p=0 //用于退出后删除 // end subroutine public subroutine wf_del_tempfilepathname ();//wf_del_tempfilepathname // 删除临时文件 Long li FOR li = 1 TO ins_openfile_log_p IF Len(Trim(ins_openfile_log[li])) <= 0 THEN ELSE FileDelete(ins_openfile_log[li]) END IF NEXT end subroutine public subroutine wf_reset_uc ();//wf_reset_uc()应用预览 dw_uc.TriggerEvent(Constructor!) end subroutine public subroutine wf_encl (integer arg_encl);IF arg_encl = 1 THEN p_encl.PictureName = 'p_encl_1.GIF' ELSE p_encl.PictureName = 'p_encl_2.GIF' END IF end subroutine public function integer wf_print_retrievedata (ref s_print_pic_list arg_s_pic, ref string arg_msg);//Long LS_ROW,ll_id,i,ll_scid //LS_ROW = dw_pageretr.GetRow() //IF LS_ROW <= 0 THEN // arg_msg = '没有目标单据!' // RETURN 0 //END IF // ////修改点:获取 指定retriev参数 //ll_id = dw_pageretr.Object.#1[LS_ROW] //ll_scid = dw_pageretr.Object.u_saletask_scid[LS_ROW] // // //Long ll_i,ll_j //Long ll_mtrlid //Long ll_fileid // //Blob ls_filedata //SetNull(ls_filedata) //String Pathname,ls_filename,ls_filetype //String errmsg //uo_fj_mng_billtype ls_uo_fjbt //ls_uo_fjbt = CREATE uo_fj_mng_billtype // //Long ll_classid //SELECT classid // INTO :ll_classid // FROM u_billpic_fileclass // Where (billtype = 102); //IF sqlca.SQLCode <> 0 THEN // ll_classid = 0 //END IF // //IF ll_classid > 0 THEN //如果已经指定好附件类型,则循环明细表查询每个明细的图片信息. // FOR ll_i = 1 TO dw_child.RowCount() // ll_mtrlid = dw_child.Object.mtrlid[ll_i] // arg_s_pic.mtrlid[ll_i] = ll_mtrlid // //取该附件类型中的第一个附件. // SELECT top 1 fileid,DisplayName,FileType INTO :ll_fileid,:ls_filename,:ls_filetype // FROM u_file // WHERE relid = :ll_mtrlid // AND classid = :ll_classid // AND (filetype = 'bmp' OR filetype = 'rle' OR filetype = 'wmf' // OR filetype = 'tif' OR filetype = 'jpg' OR filetype = 'gif' OR filetype = 'jpeg') // USING sys_fileDB_sqlca; // IF sys_fileDB_sqlca.SQLCode <> 0 THEN // ll_fileid = 0 // END IF // IF ll_fileid > 0 THEN // Pathname = sys_cur_path+ins_fjtemppath+'\'+String(Today(),'yymmdd')+String(Now(),'hhmmss')+'_'+ls_filename+'.'+ls_filetype // IF Trim(Pathname) <> '' THEN // IF ls_uo_fjbt.uf_getfjbolb_fromdb( ll_fileid, ls_filedata, sys_fileDB_sqlca, arg_msg) = 0 THEN // RETURN 0 // END IF // // IF f_saveblobtofile(ls_filedata,Pathname,errmsg) = 0 THEN // RETURN 0 // ELSE // // arg_s_pic.path[ll_i] = Pathname // //记录临时文件位置,本窗口退出后删除 // wf_addlog_tempfilepathname(Pathname) // END IF // ELSE // arg_s_pic.path[ll_i] = '' // END IF // ELSE // arg_s_pic.path[ll_i] = '' // END IF // NEXT //END IF RETURN 1 end function public function window getparentwindow ();return this end function public subroutine wf_getmtrlid (ref long arg_mtrlid);Long ll_mtrlid Long ll_row String ls_col_mtrlid ll_row = dw_child.GetRow() IF ll_row > 0 THEN ls_col_mtrlid = dw_child.Describe("#1.Name") IF Not Pos(Lower(ls_col_mtrlid),'mtrlid') > 0 THEN RETURN ll_mtrlid = dw_child.GetItemNumber(ll_row,ls_col_mtrlid) END IF arg_mtrlid = ll_mtrlid end subroutine public function integer wf_billcache_import (datawindow arg_dw, integer arg_row, ref string arg_msg);Int rslt = 1 Long li_col, ll_col_cnt, ll_row_cnt, i String ls_data_type, ls_colname String ld_dataobject Any la_data String ls_data ld_dataobject = arg_dw.DataObject IF arg_row > 0 THEN // ll_row_cnt = Long(ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "RowCnt", "0" )) ELSE ll_row_cnt = Long(ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "MxRowCnt", "0" )) arg_dw.Reset() END IF IF ll_row_cnt = 0 THEN arg_msg = "没有缓存数据" RETURN 0 end if ll_col_cnt = Long(arg_dw.Describe("DataWindow.Column.Count")) FOR li_col = 1 To ll_col_cnt ls_data_type = Left(arg_dw.Describe("#" + String(li_col) + ".coltype"),4) //列数据类型 ls_colname = arg_dw.Describe("#" + String(li_col) + ".Name") IF arg_row > 0 THEN ls_data = ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, ls_colname, "" ) // arg_dw.SetItem(arg_row,li_col, ls_data) CHOOSE CASE ls_data_type CASE "numb","deci","long" la_data = arg_dw.SetItem(arg_row,li_col, Dec(ls_data)) CASE "stri","char" la_data = arg_dw.SetItem(arg_row,li_col, ls_data) CASE "date" la_data = arg_dw.SetItem(arg_row,li_col,DateTime(ls_data)) CASE ELSE arg_msg += ls_data_type+"," END CHOOSE ELSE FOR i = 1 To ll_row_cnt IF arg_dw.RowCount() < i THEN arg_dw.InsertRow(0) ls_data = ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject+"_"+String(i), ls_colname, "" ) CHOOSE CASE ls_data_type CASE "numb","deci","long" la_data = arg_dw.SetItem(i,li_col, Dec(ls_data)) CASE "stri","char" la_data = arg_dw.SetItem(i,li_col, ls_data) CASE "date" la_data = arg_dw.SetItem(i,li_col,DateTime(ls_data)) CASE ELSE arg_msg += ls_data_type+"," END CHOOSE NEXT END IF NEXT IF arg_msg <> "" THEN rslt = 0 // MessageBox('',arg_msg+"未处理") END IF RETURN rslt end function public function integer wf_billcache_export (datawindow arg_dw, integer arg_row, ref string arg_msg);Int rslt = 1 Long li_col, ll_col_cnt, ll_row_cnt, i String ls_data_type, ls_colname String ld_dataobject Any la_data IF NOT FileExists (sys_inifilename_cache) THEN integer li_FileNum li_FileNum = FileOpen(sys_inifilename_cache, StreamMode!, Write!, LockWrite!, Replace!) FileClose(li_FileNum) END IF arg_dw.accepttext() ld_dataobject = arg_dw.DataObject IF arg_row > 0 THEN // SetProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "RowCnt", "1" ) ELSE ll_row_cnt = arg_dw.RowCount() SetProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "MxRowCnt", String(ll_row_cnt) ) END IF ll_col_cnt = Long(arg_dw.Describe("DataWindow.Column.Count")) FOR li_col = 1 To ll_col_cnt ls_data_type = Left(arg_dw.Describe("#" + String(li_col) + ".coltype"),4) //列数据类型 ls_colname = arg_dw.Describe("#" + String(li_col) + ".Name") IF arg_row > 0 THEN CHOOSE CASE ls_data_type CASE "numb","deci","long" la_data = arg_dw.GetItemNumber(arg_row,li_col) CASE "stri","char" la_data = arg_dw.GetItemString(arg_row,li_col) CASE "date" la_data = arg_dw.GetItemDateTime(arg_row,li_col) CASE ELSE arg_msg += ls_data_type+"," END CHOOSE SetProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, ls_colname, String(la_data) ) ELSE FOR i = 1 To ll_row_cnt CHOOSE CASE ls_data_type CASE "numb","deci","long" la_data = arg_dw.GetItemNumber(i,li_col) CASE "stri","char" la_data = arg_dw.GetItemString(i,li_col) CASE "date" la_data = arg_dw.GetItemDateTime(i,li_col) CASE ELSE arg_msg += ls_data_type+"," END CHOOSE SetProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject+"_"+String(i), ls_colname, String(la_data) ) NEXT END IF NEXT IF arg_msg <> "" THEN rslt = 0 //MessageBox('',arg_msg+"未处理") END IF RETURN rslt end function public function integer wf_billcache_delete (datawindow arg_dw, integer arg_row);Int rslt = 1 Long li_col, ll_col_cnt, ll_row_cnt, i //String ls_data_type, ls_colname String ld_dataobject //Any la_data //String ls_data ld_dataobject = arg_dw.DataObject IF arg_row > 0 THEN // ll_row_cnt = Long(ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "RowCnt", "0" )) ELSE ll_row_cnt = Long(ProfileString ( sys_inifilename_cache, publ_userid +"_"+ld_dataobject, "MxRowCnt", "0" )) arg_dw.Reset() END IF IF ll_row_cnt = 0 THEN RETURN 1 pfc_delprofilestring( sys_inifilename_cache, publ_userid +"_"+ld_dataobject,"") IF arg_row > 0 THEN ELSE FOR i = 1 To ll_row_cnt pfc_delprofilestring( sys_inifilename_cache, publ_userid +"_"+ld_dataobject+"_"+String(i),"") NEXT END IF RETURN rslt end function public subroutine wf_mxsort ();String ls_dwname,SortStr ls_dwname = dw_child.DataObject SortStr = f_find_sortset(ls_dwname) IF SortStr <> "" THEN dw_child.setSort(SortStr) dw_child.Sort() END IF end subroutine on w_publ_1ton_share_detail.create int iCurrent call super::create this.dw_uc=create dw_uc this.gb_2=create gb_2 this.dw_child=create dw_child this.cb_viewprint=create cb_viewprint this.cb_print=create cb_print this.cb_add=create cb_add this.cb_edit=create cb_edit this.cb_delet=create cb_delet this.cb_addzy=create cb_addzy this.cb_auditing=create cb_auditing this.cb_xm=create cb_xm this.cb_retrieve=create cb_retrieve this.cb_xls=create cb_xls this.cb_help=create cb_help this.cb_auditing_cancel=create cb_auditing_cancel this.p_msg=create p_msg this.p_help=create p_help this.p_encl=create p_encl this.p_other=create p_other this.gb_3=create gb_3 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 iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.dw_uc this.Control[iCurrent+2]=this.gb_2 this.Control[iCurrent+3]=this.dw_child this.Control[iCurrent+4]=this.cb_viewprint this.Control[iCurrent+5]=this.cb_print this.Control[iCurrent+6]=this.cb_add this.Control[iCurrent+7]=this.cb_edit this.Control[iCurrent+8]=this.cb_delet this.Control[iCurrent+9]=this.cb_addzy this.Control[iCurrent+10]=this.cb_auditing this.Control[iCurrent+11]=this.cb_xm this.Control[iCurrent+12]=this.cb_retrieve this.Control[iCurrent+13]=this.cb_xls this.Control[iCurrent+14]=this.cb_help this.Control[iCurrent+15]=this.cb_auditing_cancel this.Control[iCurrent+16]=this.p_msg this.Control[iCurrent+17]=this.p_help this.Control[iCurrent+18]=this.p_encl this.Control[iCurrent+19]=this.p_other this.Control[iCurrent+20]=this.gb_3 this.Control[iCurrent+21]=this.ln_bar this.Control[iCurrent+22]=this.ln_bar2 this.Control[iCurrent+23]=this.r_bar this.Control[iCurrent+24]=this.ln_1 this.Control[iCurrent+25]=this.ln_2 end on on w_publ_1ton_share_detail.destroy call super::destroy destroy(this.dw_uc) destroy(this.gb_2) destroy(this.dw_child) destroy(this.cb_viewprint) destroy(this.cb_print) destroy(this.cb_add) destroy(this.cb_edit) destroy(this.cb_delet) destroy(this.cb_addzy) destroy(this.cb_auditing) destroy(this.cb_xm) destroy(this.cb_retrieve) destroy(this.cb_xls) destroy(this.cb_help) destroy(this.cb_auditing_cancel) destroy(this.p_msg) destroy(this.p_help) destroy(this.p_encl) destroy(this.p_other) destroy(this.gb_3) destroy(this.ln_bar) destroy(this.ln_bar2) destroy(this.r_bar) destroy(this.ln_1) destroy(this.ln_2) end on event closequery;IF dw_edit_mode THEN Int ls_row = 0 dw_UC.AcceptText() ls_row = dw_UC.GetNextModified(0, Primary!)+& dw_UC.GetNextModified(0, Filter!)+dw_UC.DeletedCount() IF ls_row > 0 THEN IF MessageBox('是否放弃','单据数据已经改变,是否放弃保存?',Question!,YesNo!,1 ) = 2 THEN RETURN 1 END IF ELSE ls_row = dw_child.GetNextModified(0, Primary!)+& dw_child.GetNextModified(0, Filter!)+dw_child.DeletedCount() IF ls_row > 0 THEN IF MessageBox('是否放弃','单据明细数据已经改变,是否放弃保存?',Question!,YesNo!,1 ) = 2 THEN RETURN 1 END IF END IF END IF END IF end event event user_key;call super::user_key;//IF KeyDown(KeyF6!) THEN // THIS.TriggerEvent('ue_f6') //ELSEIF KeyDown(KeyF1!) THEN // THIS.TriggerEvent('ue_help') //ELSEIF KeyDown(KeyF2!) THEN // IF NOT dw_edit_mode THEN // THIS.TriggerEvent('ue_modify') // END IF //ELSEIF KeyDown(KeyF7!) THEN // THIS.TriggerEvent('ue_f7') //ELSEIF KeyDown(KeyF9!) THEN // THIS.TriggerEvent('ue_f9') //ELSEIF KeyDown(KeyF10!) THEN // THIS.TriggerEvent('ue_f10') //ELSEIF KeyDown(KeyF11!) THEN // THIS.TriggerEvent('ue_f11') //ELSEIF KeyDown(KeyF12!) THEN // THIS.TriggerEvent('ue_f12') //ELSEIF KeyDown(KeyShift!) AND KeyDown(KeyLeftArrow!) THEN // THIS.TriggerEvent('ue_copyrow') //ELSEIF KeyDown(KeyShift!) AND KeyDown(KeyUpArrow!) THEN // THIS.TriggerEvent('ue_insertmx') //ELSEIF KeyDown(KeyShift!) AND KeyDown(KeyDownArrow!) THEN // THIS.TriggerEvent('ue_addmx') //ELSEIF KeyDown(KeyShift!) AND KeyDown(KeyRightArrow!) THEN // THIS.TriggerEvent('ue_deletemx') //END IF IF KeyDown(KeyF1!) THEN THIS.TriggerEvent('ue_help') ELSEIF KeyDown(KeyF2!) THEN IF NOT dw_edit_mode THEN THIS.TriggerEvent('ue_modify') END IF ELSEIF KeyDown(KeyF4!) THEN IF dw_edit_mode THEN THIS.TriggerEvent('ue_insertmx') END IF ELSEIF KeyDown(KeyF5!) THEN IF dw_edit_mode THEN THIS.TriggerEvent('ue_addmx') END IF ELSEIF KeyDown(KeyF6!) THEN IF dw_edit_mode THEN THIS.TriggerEvent('ue_deletemx') END IF ELSEIF KeyDown(KeyF7!) THEN THIS.TriggerEvent('ue_f7') ELSEIF KeyDown(KeyF9!) THEN THIS.TriggerEvent('ue_f9') ELSEIF KeyDown(KeyF10!) THEN THIS.TriggerEvent('ue_f10') ELSEIF KeyDown(KeyF11!) THEN THIS.TriggerEvent('ue_f11') ELSEIF KeyDown(KeyF12!) THEN THIS.TriggerEvent('ue_f12') ELSEIF KeyDown(KeyControl!) AND KeyDown(KeyA!) THEN IF dw_edit_mode THEN THIS.TriggerEvent('ue_copyrow') END IF END IF end event event open;call super::open; //uc_column_int=8 //uc dw前8列可以编辑 //child_column_int=4 //子dw前4列可以编辑 // //uo_ware=create uo_mtrloutware end event event ue_before_open;dw_child.SetTransObject(sqlca) dw_uc.SetTransObject(sqlca) if_ue_retr = TRUE if_ue_filter = TRUE if_ue_sort = TRUE //if_MtrlPicView = TRUE ds_copypaste = CREATE datastore ds_copypaste.DataObject = dw_child.DataObject ds_copypaste.SetTransObject(sqlca) ds_copy_bill = CREATE datastore ds_copy_bill.DataObject = dw_child.dataobject ds_copy_bill.SetTransObject(sqlca) //读出UC高度与宽度 uc_width = Long(f_ProfileString(sys_empid,publ_userid+'_'+dw_uc.DataObject, "width",'0')) uc_height = Long(f_ProfileString(sys_empid,publ_userid+'_'+dw_uc.DataObject, "height",'0')) //将UC窗口设为可自动改变高度 dw_uc.Object.datawindow.detail.Height = 2000 dw_uc.Object.datawindow.detail.Height.AutoSize = TRUE end event 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 dw_uc.Retrieve() //dw_uc的dw改左select top 0 并肯不带参数 dw_pageretr.Retrieve() IF dw_pageretr.RowCount() > 0 THEN dw_pageretr.SetRow(1) dw_pageretr.triggerevent(rowfocuschanged!) end if THIS.TriggerEvent('retrieve_childdw') cb_nextpage.Enabled = cb_nextpage_enabled cb_retrieveall.Enabled = cb_retrieveall_enabled cb_func.Enabled = cb_func_enabled end event event key;this.triggerevent('user_key') end event event ue_filter;call super::ue_filter;OPENWITHPARM(w_filter_query,dw_pageretr) STRING LS_EXPR LS_EXPR=Message.StringParm if len(LS_EXPR)>2 and trim(LS_EXPR)='' then return dw_pageretr.setfilter(LS_EXPR) dw_pageretr.SetRedraw (false) dw_pageretr.filter() dw_pageretr.triggerevent('ue_after_filter') dw_pageretr.SetRedraw (true) end event event ue_sort;call super::ue_sort;OPENwithparm(w_sortrow,dw_pageretr) STRING LS_EXPR LS_EXPR=Message.StringParm IF ISNULL(LS_EXPR) THEN LS_EXPR=' ' if len(LS_EXPR)>2 and trim(LS_EXPR)='' then return dw_pageretr.setsort(LS_EXPR) dw_pageretr.SetRedraw (false) dw_pageretr.sort() dw_pageretr.SetRedraw (true) 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 = 3602 w_height = 2300 IF newwidth < w_width THEN THIS.Width = w_width IF newheight < w_height THEN THIS.Height = w_height //dw_child.Width = THIS.Width - (w_width - dw_child_w) //dw_child.Height = THIS.Height - (w_height - dw_child_h) //dw_pageretr.Width = THIS.Width - (w_width - dw_pageretr_w) //============================================================================== //YYX081007 //============================================================================== IF uc_width > 0 THEN dw_uc.Width = uc_width END IF IF uc_height > 0 THEN dw_uc.Height = uc_height END IF dw_pageretr.X = dw_uc.X + dw_uc.Width dw_pageretr.Y = dw_uc.Y dw_pageretr.Width = THIS.Width - dw_pageretr.X - 40 dw_pageretr.Height = dw_uc.Height dw_child.Y = dw_uc.Y + dw_uc.Height - 10 dw_child.Width = THIS.Width - dw_child.X - 40 dw_child.Height = THIS.Height - dw_child.Y - 100 this.triggerevent('resize_p') end event type cb_func from w_publ_pageretr`cb_func within w_publ_1ton_share_detail integer x = 151 integer y = 0 integer width = 151 integer height = 164 end type event cb_func::clicked;//// //is_query_menustr = '' //is_query_menustr = is_query_menustr + "|" + "Text=用户自定义~tEvent=ue_" //call super::clicked m_Dfc_Control_PopupMenu dmPopupMenu String menustr IF if_ue_retr THEN menustr = "Text=高级查询~tEvent=ue_retr" END IF IF if_ue_filter THEN IF Len(Trim(menustr)) = 0 THEN menustr = "Text=高级筛选~tEvent=ue_filter" ELSE menustr = menustr + "|" + "Text=高级筛选~tEvent=ue_filter" END IF END IF IF if_ue_sort THEN IF Len(Trim(menustr)) = 0 THEN menustr = "Text=高级排序~tEvent=ue_sort" ELSE menustr = menustr + "|" + "Text=高级排序~tEvent=ue_sort" menustr = menustr + "|" + "Text=明细高级排序~tEvent=ue_sort_mx" END IF END IF IF Len(Trim(menustr)) = 0 THEN menustr = "Text=显示所有~tEvent=ue_showall" ELSE menustr = menustr + "|" + "Text=显示所有~tEvent=ue_showall" END IF IF menustr <> "" AND if_ue_sentdataout THEN menustr = menustr + "|" + "Text=-" IF if_ue_sentdataout THEN IF Len(Trim(menustr)) = 0 THEN menustr = "Text=数据发送~tEvent=ue_sentdataout" ELSE menustr = menustr + "|" + "Text=数据发送~tEvent=ue_sentdataout" END IF END IF IF Trim(is_query_menustr) <> '' THEN menustr = menustr + "|" + "Text=-" menustr = menustr + is_query_menustr END IF IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = CREATE m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(THIS, menustr) dmPopupMenu.mf_PopMenu() DESTROY dmPopupMenu END IF end event type cb_exit from w_publ_pageretr`cb_exit within w_publ_1ton_share_detail integer x = 2519 integer y = 0 integer width = 151 integer height = 164 integer taborder = 280 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_publ_1ton_share_detail integer x = 201 integer y = 184 integer width = 558 boolean bringtotop = true end type type cb_retrieveall from w_publ_pageretr`cb_retrieveall within w_publ_1ton_share_detail integer x = 2971 integer width = 151 integer height = 164 integer taborder = 240 boolean bringtotop = true 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_publ_1ton_share_detail integer x = 2670 integer y = 32 integer width = 302 integer height = 96 integer taborder = 220 boolean bringtotop = true end type type dw_pageretr from w_publ_pageretr`dw_pageretr within w_publ_1ton_share_detail integer x = 2066 integer y = 292 integer width = 1467 integer height = 940 boolean bringtotop = true string title = "单据摘要内容" end type event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;IF NOT dw_edit_mode THEN PARENT.TriggerEvent('retrieve_childdw_uc') PARENT.TriggerEvent('retrieve_childdw') END IF IF if_ChkMtrlInfo THEN Parent.TriggerEvent('ue_mtrl_info_retr') END IF end event event dw_pageretr::ue_after_filter; IF NOT dw_edit_mode THEN IF THIS.RowCount() > 0 THEN THIS.SetRow(1) THIS.TriggerEvent(RowFocusChanged!) END IF END IF end event event dw_pageretr::constructor;call super::constructor;dw_pageretr_w = this.width dw_pageretr_h = this.height end event type st_1 from w_publ_pageretr`st_1 within w_publ_1ton_share_detail integer x = 9 integer y = 204 string text = "单号含" end type type cb_nextpage from w_publ_pageretr`cb_nextpage within w_publ_1ton_share_detail integer x = 3122 integer width = 64 integer height = 164 integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type type dw_uc from u_dw_uc_rbtnfilter within w_publ_1ton_share_detail event dwnkey pbm_dwnkey event ue_scroll pbm_vscroll event ue_dwndropdown pbm_dwndropdown integer y = 292 integer width = 2066 integer height = 940 integer taborder = 100 end type event dwnkey;PARENT.TriggerEvent('user_key') IF Key = KeyDownArrow! THEN RETURN 1 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 ue_scroll;return 1 end event event ue_dwndropdown;IF Not dw_edit_mode THEN RETURN String ls_col_pz,ls_col_mtrlid String ls_pz_ch String ls_col_value Long ll_col_value String ls_data_type Long ll_row,ll_mtrlid ll_row = This.GetRow() IF ll_row > 0 THEN ls_col_pz = This.GetColumnName( ) ls_data_type = dw_child.Describe(ls_col_pz+".ColType") IF Left(Lower(ls_data_type),4 ) = "char" THEN ls_col_value = This.GetItemString(ll_row,ls_col_pz) ELSEIF Left(Lower(ls_data_type),4) = "long" THEN ll_col_value = This.GetItemNumber(ll_row,ls_col_pz) END IF // arg_s_win.arg_x = THIS.X + THIS.PointerX() + PARENT.X // arg_s_win.arg_y = THIS.Y + THIS.PointerY() + PARENT.Y // // arg_s_win.arg_col = ls_col_pz // arg_s_win.arg_mtrlid = ll_col_value // arg_s_win.arg_col_value = ls_col_value // ls_pz_ch = f_mtrl_pz(arg_s_win) // // IF ls_pz_ch = '' THEN RETURN This.SetItem(ll_row,ls_col_pz,ls_pz_ch) END IF end event event rowfocuschanged;IF not dw_edit_mode then if currentrow >0 THEN dw_pageretr.SETROW(currentrow) dw_pageretr.ScrollToRow(currentrow) dw_pageretr.selectrow(0,false) dw_pageretr.selectrow(currentrow,true) end if end if end event event rowfocuschanging;if dw_edit_mode then return 1 end event event doubleclicked;IF dw_edit_mode And row > 0 THEN Parent.TriggerEvent('ue_f9') END IF end event event rbuttondown;IF dw_edit_mode THEN Long ll_row,ll_column ll_row = THIS.GetRow() ll_column = THIS.GetColumn() IF ll_row <= 0 THEN RETURN IF ll_column <= 0 THEN RETURN IF Left( THIS.Describe( dwo.Name+ ".coltype"),4) = 'date' THEN s_calender_arg s_calender s_calender.PointerX = THIS.PointerX() s_calender.PointerY = THIS.PointerY() s_calender.X = THIS.X + PARENT.X s_calender.Y = THIS.Y + PARENT.Y OpenWithParm(w_calendar,s_calender) THIS.SetItem(ll_row,ll_column,id_date_selected) END IF END IF end event type gb_2 from groupbox within w_publ_1ton_share_detail boolean visible = false integer x = 87 integer y = 292 integer width = 466 integer height = 372 integer taborder = 50 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 16711680 long backcolor = 80269524 boolean righttoleft = true end type type dw_child from u_dw_rbtnfilter within w_publ_1ton_share_detail event ue_dwndropdown pbm_dwndropdown integer y = 1236 integer width = 3538 integer height = 936 integer taborder = 30 boolean bringtotop = true boolean titlebar = true string title = "明细内容 [双击选择]" boolean maxbox = true boolean hscrollbar = true boolean vscrollbar = true boolean resizable = true boolean hsplitscroll = true borderstyle borderstyle = stylebox! boolean rbutton_filter_use = true boolean rbutton_setposition_use = true end type event ue_dwndropdown;IF NOT dw_edit_mode THEN RETURN String ls_col_pz,ls_col_mtrlid String ls_pz_ch String ls_col_value String ls_data_type Long ll_row,ll_mtrlid s_pzwin_open arg_s_win ll_row = THIS.GetRow() IF ll_row > 0 THEN ls_col_mtrlid = THIS.Describe("#1.Name") IF NOT Pos(Lower(ls_col_mtrlid),'mtrlid') > 0 THEN RETURN ll_mtrlid = THIS.GetItemNumber(ll_row,ls_col_mtrlid) ls_col_pz = THIS.GetColumnName( ) ls_data_type = dw_child.Describe(ls_col_pz+".ColType") IF Pos(Lower(ls_data_type),"char") > 0 THEN ls_col_value = THIS.GetItemString(ll_row,ls_col_pz) END IF arg_s_win.arg_x = THIS.X + THIS.PointerX() + PARENT.X arg_s_win.arg_y = THIS.Y + THIS.PointerY() + PARENT.Y arg_s_win.arg_col = ls_col_pz arg_s_win.arg_mtrlid = ll_mtrlid arg_s_win.arg_col_value = ls_col_value ls_pz_ch = f_mtrl_pz(arg_s_win) IF isnull(ls_pz_ch) THEN RETURN THIS.SetItem(ll_row,ls_col_pz,ls_pz_ch) END IF end event event constructor;call super::constructor;//titleclick_sort_use = TRUE dw_child_h = THIS.Height dw_child_w = THIS.Width end event event clicked;call super::clicked;IF row > 0 AND dw_edit_mode THEN THIS.SetRow(row) IF KeyDown(keycontrol!) THEN IF if_changeselect THEN THIS.SelectRow(row,NOT THIS.IsSelected(row)) ELSE if_changeselect = TRUE END IF ll_lastrow = row ELSEIF KeyDown(keyshift!) THEN //按下SHIFT键 // IF ll_lastrow = 0 THEN //上次没选中任何行 // THIS.SelectRow(row,TRUE) // ll_lastrow = currentrow //ll_lastrow为实例变量,记录上次单击的行 // ELSE // THIS.SelectRow(0,FALSE) //全都不选中 // IF currentrow > ll_lastrow THEN // FOR ll_i = ll_lastrow TO currentrow // THIS.SelectRow(ll_i,TRUE) // NEXT // ELSE // FOR ll_i = ll_lastrow TO currentrow STEP -1 // THIS.SelectRow(ll_i,TRUE) // NEXT // END IF // END IF ELSE THIS.SelectRow(0,FALSE) THIS.SelectRow(row,TRUE) ll_lastrow = row END IF END IF end event event doubleclicked;if dw_edit_mode then parent.triggerevent('ue_f8') end if end event event rowfocuschanged;//IF dw_edit_mode THEN RETURN Long ll_i IF Not dw_edit_mode THEN IF currentrow <= 0 THEN RETURN This.SelectRow(0,False) This.SelectRow(currentrow,True) ELSE IF if_del THEN RETURN IF KeyDown(keycontrol!) THEN IF Not This.IsSelected(currentrow) THEN This.SelectRow(currentrow,True) if_changeselect = False ELSE if_changeselect = True END IF ELSEIF KeyDown(keyshift!) THEN //按下SHIFT键 IF ll_lastrow = 0 THEN //上次没选中任何行 This.SelectRow(currentrow,True) ll_lastrow = currentrow //ll_lastrow为实例变量,记录上次单击的行 ELSE This.SelectRow(0,False) //全都不选中 IF currentrow > ll_lastrow THEN FOR ll_i = ll_lastrow To currentrow This.SelectRow(ll_i,True) NEXT ELSE FOR ll_i = ll_lastrow To currentrow Step -1 This.SelectRow(ll_i,True) NEXT END IF END IF ELSE This.SelectRow(0,False) This.SelectRow(currentrow,True) ll_lastrow = currentrow END IF Parent.TriggerEvent('ue_allowedit') END IF IF if_ChkMtrlInfo THEN Parent.TriggerEvent('ue_mtrl_info_retr') END IF 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 //PARENT.TriggerEvent('user_key') end event event rbuttondown;string colnum_name colnum_name = dwo.name IF dw_edit_mode THEN IF Left( THIS.Describe( dwo.Name+ ".coltype"),4) = 'date' THEN IF row <= 0 THEN RETURN s_calender_arg s_calender s_calender.PointerX = THIS.PointerX() s_calender.PointerY = THIS.PointerY() s_calender.X = THIS.X + PARENT.X s_calender.Y = THIS.Y + PARENT.Y OpenWithParm(w_calendar,s_calender) THIS.SetItem(row,colnum_name,id_date_selected) else if Left(dwo.TYPE,4) = 'text' then return arg_ins_xpos = xpos arg_ins_ypos = This.Y + This.PointerY() + 50 arg_ins_dwname = colnum_name arg_ins_dwrow = row arg_ins_dwtype = dwo.Type IF row > 0 And arg_ins_dwtype <> 'datawindow' THEN arg_ins_dwdata = String(dwo.primary[row]) END IF m_dwchild_rbotton_filter m_print m_print = CREATE m_dwchild_rbotton_filter m_print.m_0.PopMenu(THIS.X + THIS.PointerX() + 50,THIS.Y + THIS.PointerY() + 50) END IF ELSE CALL SUPER:: rbuttondown END IF end event event retrieveend;call super::retrieveend;wf_mxsort() end event type cb_viewprint from uo_imflatbutton within w_publ_1ton_share_detail integer x = 1874 integer width = 192 integer height = 164 integer taborder = 30 boolean bringtotop = true string text = "预览&P" string normalpicname = "preview.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_dft_old_dwname, ls_dft_new_dwname,ls_dwtype Long ls_dwprintid String ls_windowname Int ls_i Long ll_billid Int li_ifuse Long ll_row String Name,ll_rpname Long ll_RpID,ll_flag,ll_ifuse w_curwin = PARENT ls_windowname = PARENT.ClassName ( ) SELECT billid,ifuse INTO :ll_billid, :li_ifuse FROM u_report_bill Where winName = :ls_windowname; IF sqlca.SQLCode <> 0 THEN li_ifuse = 0 END IF li_ifuse = 0 IF li_ifuse = 0 THEN DECLARE dft_dwprint CURSOR FOR SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype FROM sys_dft_dwprint_dynamic WHERE dwtype = :ls_windowname AND ptype = 0 and ifuse = 1; OPEN dft_dwprint; FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_viewprint',0,0) ELSE m_dft_dwprint_item m_1 m_1 = CREATE m_dft_dwprint_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 f_add_menuItem_dft(m_1,ls_i,ls_chnname,String(ls_dwprintid)) FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; ls_i++ LOOP CLOSE dft_dwprint; m_1.PopMenu(THIS.X+50,THIS.Y+50) END IF ELSE DECLARE rpt_dwprint CURSOR FOR SELECT RpID,RpName,Flag,Ifuse FROM U_report_list WHERE billid = :ll_billid Order By RpName; OPEN rpt_dwprint; FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_rpt_viewprint',0,0) ELSE m_rpt_dwprint_item m_2 m_2 = CREATE m_rpt_dwprint_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 IF f_pow_rpt(ll_RpID) AND ll_ifuse = 1 AND ll_flag = 1 THEN //权限检查f_pow_rpt( ) f_add_menuItem_rpt(m_2,ls_i,ll_rpname,String(ll_RpID)) END IF FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; ls_i++ LOOP CLOSE rpt_dwprint; m_2.Item[1].Visible = FALSE m_2.PopMenu(THIS.X+50,THIS.Y+50) END IF END IF end event type cb_print from uo_imflatbutton within w_publ_1ton_share_detail integer x = 1682 integer width = 192 integer height = 164 integer taborder = 30 boolean bringtotop = true string text = "打印&O" string normalpicname = "print.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;String ls_dft_old_dwname, ls_dft_new_dwname,ls_dwtype Long ls_dwprintid String ls_windowname Int ls_i Long ll_billid Int li_ifuse Long ll_row String Name,ll_rpname Long ll_RpID,ll_flag,ll_ifuse w_curwin = PARENT ls_windowname = PARENT.ClassName ( ) SELECT billid,ifuse INTO :ll_billid, :li_ifuse FROM u_report_bill Where winName = :ls_windowname; IF sqlca.SQLCode <> 0 THEN li_ifuse = 0 END IF li_ifuse = 0 IF li_ifuse = 0 THEN DECLARE dft_dwprint CURSOR FOR SELECT dwprintid,dft_old_dwname, dft_new_dwname, chnname, dwtype FROM sys_dft_dwprint_dynamic WHERE dwtype = :ls_windowname AND ptype = 0 and ifuse = 1; OPEN dft_dwprint; FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_print',0,0) ELSE m_dft_dwprint_print_item m_1 m_1 = CREATE m_dft_dwprint_print_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 f_add_menuitem_print_dft(m_1,ls_i,ls_chnname,String(ls_dwprintid)) FETCH dft_dwprint INTO :ls_dwprintid,:ls_dft_old_dwname, :ls_dft_new_dwname,:ls_chnname, :ls_dwtype; ls_i++ LOOP CLOSE dft_dwprint; m_1.PopMenu(THIS.X+50,THIS.Y+50) END IF ELSE DECLARE rpt_dwprint CURSOR FOR SELECT RpID,RpName,Flag,Ifuse FROM U_report_list WHERE billid = :ll_billid Order By RpName; OPEN rpt_dwprint; FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; IF sqlca.SQLCode <> 0 THEN PARENT.TriggerEvent('ue_print',0,0) ELSE m_rpt_dwprint_print_item m_2 m_2 = CREATE m_rpt_dwprint_print_item ls_i = 1 DO WHILE sqlca.SQLCode = 0 IF ll_ifuse = 1 AND ll_flag = 1 AND f_pow_rpt(ll_RpID) THEN //需添加权限 f_add_menuItem_print_rpt(m_2,ls_i,ll_rpname,String(ll_RpID)) END IF FETCH rpt_dwprint INTO :ll_RpID,:ll_rpname,:ll_flag,:ll_ifuse; ls_i++ LOOP CLOSE rpt_dwprint; m_2.Item[1].Visible = FALSE m_2.PopMenu(THIS.X+50,THIS.Y+50) END IF END IF end event type cb_add from uo_imflatbutton within w_publ_1ton_share_detail integer x = 302 integer width = 192 integer height = 164 integer taborder = 280 boolean bringtotop = true string text = "新建&S" string normalpicname = "new.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;IF Not dw_edit_mode THEN Int li_row li_row = dw_pageretr.InsertRow (1) dw_pageretr.ScrollToRow(li_row) dw_child.Reset() dw_uc.Reset() dw_uc.SetFocus() dw_pageretr.RowsCopy(li_row,li_row, Primary!, dw_uc, 1, Primary!) ELSE Parent.TriggerEvent('ue_billcache_delete') END IF dw_edit_mode = Not dw_edit_mode wf_refresh_interface() // //string arg_msg='' ////long uc_row,pagerert_row ////long relid_pageretr,reld_uc //// ////if dw_edit_mode then //// dw_uc.accepttext() //// dw_child.accepttext() //// uc_row=dw_uc.getrow() //// if uc_row<=0 then //// messagebox('系统提示','请选定当前目标单据!') //// return //// end if //// if not dw_uc.object.indate[uc_row]> datetime(2000-01-01,now()) then //// messagebox('系统提示','不合理发生时间!') //// return //// end if //// if not len(string(dw_uc.object.inrep[uc_row]))>0 then //// messagebox('系统提示','请填写经手人!') //// return //// end if //// //// uo_ware.operator=publ_operator //建立操作员 //// uo_ware.indate =dw_uc.object.indate[uc_row] // 发生时间 //// uo_ware.inrep =dw_uc.object.inrep[uc_row] // 经手人 //// uo_ware.part =dw_uc.object.part[uc_row] //相关部门 //// uo_ware.dscrp =dw_uc.object.dscrp[uc_row] //备注 //// uo_ware.storageid =dw_uc.object.storageid[uc_row] //// uo_ware.sptid =dw_uc.object.sptid[uc_row] //// long obj_mtrlid,i //// dec obj_qty,obj_price,obj_planprice //// string obj_mtrlcode //// ////for i=1 to dw_child.rowcount() //// if dw_child.object.u_inwaremx_mtrlid[i]>0 then //// if uo_ware.acceptmx(dw_child.object.u_inwaremx_mtrlid[i],& //// dw_child.object.u_inwaremx_qty[i],& //// dw_child.object.u_inwaremx_price[i],& //// dw_child.object.u_inwaremx_planprice[i],& //// '',& //// dw_child.object.u_mtrldef_mtrlcode[i],& //// arg_msg) = 0 then //// messagebox('Error!',arg_msg) //// return //// end if //// end if ////next //// //// if uo_ware.submit(arg_msg)=0 then //// messagebox('Error!',arg_msg) //// return //// end if //// messagebox(publ_operator,'保存操作成功!') //// dw_pageretr.selectrow(0,false) //// dw_pageretr.selectrow(uc_row,true) //// wf_refresh_curuc(uo_ware.inwareid) //刷新uc //// dw_pageretr.deleterow(1) //// dw_uc.RowsCopy(dw_uc.GetRow(), dw_uc.GetRow(), Primary!, dw_pageretr, 1, Primary!) //// ////else //// if uo_ware.newbegin(1,0,arg_msg)=0 then //生产令领料 //// messagebox('Error!',arg_msg) //// return //// end if ////end if //// ////call super::clicked //// end event type cb_edit from uo_imflatbutton within w_publ_1ton_share_detail integer x = 494 integer width = 192 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "修改&E" 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 MessageBox ("IF","当前单据,是否放弃保存?",Question!,YesNo! ,1) = 2 THEN RETURN END IF dw_edit_mode = NOT dw_edit_mode wf_refresh_interface() IF dw_edit_mode THEN dw_pageretr.SetFocus() ELSE PARENT.TriggerEvent('retrieve_pageretr') END IF //String arg_msg = '' //Long uc_row // //uc_row = dw_pageretr.GetRow() //IF uc_row <= 0 THEN // MessageBox('系统提示','请选定当前目标单据!') // RETURN //END IF // //IF NOT dw_edit_mode THEN // IF uo_ware.updatebegin(dw_pageretr.Object.inwareid[uc_row],1,0,arg_msg) = 0 THEN // MessageBox('Error!',arg_msg) // RETURN // END IF //END IF // //CALL SUPER::Clicked // // // // end event type cb_delet from uo_imflatbutton within w_publ_1ton_share_detail integer x = 686 integer width = 151 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "删除" string normalpicname = "delete.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;//IF dw_edit_mode THEN RETURN // // // //String arg_msg = '' //Long uc_row // //uc_row = dw_pageretr.GetRow() //IF uc_row <= 0 THEN // MessageBox('系统提示','请选定当前目标单据!') // RETURN //END IF // //IF MessageBox ("IF","是否确定要删除当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN // //IF uo_ware.Cancel(dw_pageretr.Object.inwareid[uc_row],arg_msg) = 0 THEN // MessageBox('Error!',arg_msg) //ELSE // MessageBox(publ_operator,'删除单据'+String(dw_pageretr.Object.inwarecode[uc_row])+'成功!') // dw_pageretr.DeleteRow(uc_row) // dw_pageretr.TriggerEvent(RowFocusChanged!) //END IF // // end event type cb_addzy from uo_imflatbutton within w_publ_1ton_share_detail integer x = 1179 integer width = 251 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "单据功能" string normalpicname = "other.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;//m_Dfc_Control_PopupMenu dmPopupMenu //String menustr // //IF Not dw_edit_mode THEN // menustr += "|" + "Text=复制单据~tEvent=ue_bill_copy" // menustr += "|" + "Text=-" // menustr += "|" + "Text=增加备注~tEvent=ue_addzy" //ELSE // menustr += "|" + "Text=粘贴单据~tEvent=ue_bill_paste" // menustr += "|" + "Text=-" // menustr += "|" + "Text=缓存单据~tEvent=ue_billcache_export" // menustr += "|" + "Text=导入缓存单据~tEvent=ue_billcache_import" //END IF // //IF Len(Trim(menustr)) <> 0 THEN // dmPopupMenu = Create m_Dfc_Control_PopupMenu // dmPopupMenu.mf_BuildMenu(This, menustr) // dmPopupMenu.mf_PopMenu() // Destroy dmPopupMenu //END IF // // end event type cb_auditing from uo_imflatbutton within w_publ_1ton_share_detail integer x = 837 integer width = 192 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "审核&F" string normalpicname = "audit.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;//IF dw_edit_mode THEN RETURN // //String arg_msg = '' //Long pagerert_row // //pagerert_row = dw_pageretr.GetRow() //IF pagerert_row <= 0 THEN // MessageBox('系统提示','请选定当前目标单据!') // RETURN //END IF //IF uo_ware.getinfo(dw_pageretr.Object.inwareid[pagerert_row],arg_msg) = 0 THEN // MessageBox('Error!',arg_msg) // RETURN //END IF // //IF uo_ware.auditing(publ_operator,arg_msg) = 0 THEN // MessageBox('Error!',arg_msg) //ELSE // MessageBox(publ_operator,'审核成功!') // wf_refresh_curuc(dw_pageretr.Object.inwareid[pagerert_row]) //END IF // end event type cb_xm from uo_imflatbutton within w_publ_1ton_share_detail integer x = 1431 integer width = 251 integer height = 164 integer taborder = 40 boolean bringtotop = true string text = "明细功能" string normalpicname = "mx.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;// // //is_mx_menustr = '' //is_mx_menustr += "|" + "Text=用户自定义~tEvent=ue_" //call super::clicked //is_mx_menustr += "|" + "Text=明细物料图片查看~tEvent=ue_fj_view" // m_Dfc_Control_PopupMenu dmPopupMenu String menustr IF dw_edit_mode THEN menustr = "Text=增明细~tEvent=ue_addmx" menustr += "|" + "Text=删明细~tEvent=ue_deletemx" ELSE IF if_ChkMtrlInfo THEN menustr = "Text=查看产品相关信息~tEvent=ue_mtrl_info" END IF END IF IF Trim(is_mx_menustr) <> '' THEN IF menustr <> '' THEN menustr += "|" + "Text=-" END IF menustr += is_mx_menustr END IF IF if_MtrlPicView THEN IF Trim(menustr) <> "" THEN menustr += "|" + "Text=-" menustr += "|" + "Text=明细物料图片查看~tEvent=ue_MtrlPicView" ELSE menustr = "Text=明细物料图片查看~tEvent=ue_MtrlPicView" END IF END IF IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu END IF end event type cb_retrieve from uo_imflatbutton within w_publ_1ton_share_detail integer width = 151 integer height = 164 integer taborder = 30 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_pageretr') end event type cb_xls from uo_imflatbutton within w_publ_1ton_share_detail integer x = 2066 integer height = 164 integer taborder = 230 boolean bringtotop = true string text = "Excel打印" string normalpicname = "excel.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;// 约定 用 parent.Classname ( ) 即状况名称 作为打印模板的分类 uo_sendtoexcel obj_st obj_st = create uo_sendtoexcel obj_st.commit_transaction = sqlca obj_st.TriggerEventObject = this.getparent() obj_st.TriggerEventname = 'ue_xls' string arg_msg menu m1 m1 = obj_st.of_createmenu( parent.Classname ( ),sys_user_xls_print_str,sys_user_xls_send_str) if upperbound( m1.item)=2 then messagebox('错误','当前单据还没有设置Excel打印模板.') else m1.PopMenu(this.x ,this.y+THIS.height) end if end event type cb_help from uo_imflatbutton within w_publ_1ton_share_detail integer x = 2368 integer width = 151 integer height = 164 integer taborder = 50 boolean bringtotop = true boolean enabled = false string text = "相关" string normalpicname = "link.ico" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;//m_Dfc_Control_PopupMenu dmPopupMenu //string menustr // // //menustr="Text=增加备注~tEvent=ue_addzy" //menustr=menustr + "|" + "Text=-" //menustr = menustr + "|" + "Text=复制单据~tEvent=ue_bill_copy" //menustr = menustr + "|" + "Text=粘贴单据~tEvent=ue_bill_paste" // //if len(trim(menustr))<>0 then // dmPopupMenu = Create m_Dfc_Control_PopupMenu // dmPopupMenu.mf_BuildMenu(This, menustr) // dmPopupMenu.mf_PopMenu() // Destroy dmPopupMenu //end if end event type cb_auditing_cancel from uo_imflatbutton within w_publ_1ton_share_detail integer x = 1029 integer width = 151 integer height = 164 integer taborder = 60 boolean bringtotop = true string text = "撤审" string normalpicname = "caudit.bmp" integer picsize = 16 toolbaralignment pic_align = alignattop! boolean border = false end type event clicked;call super::clicked;//IF dw_edit_mode THEN RETURN // //String arg_msg = '' //Long pagerert_row // //pagerert_row = dw_pageretr.GetRow() //IF pagerert_row <= 0 THEN // MessageBox('系统提示','请选定当前目标单据!') // RETURN //END IF //IF uo_ware.getinfo(dw_pageretr.Object.inwareid[pagerert_row],arg_msg) = 0 THEN // MessageBox('Error!',arg_msg) // RETURN //END IF // //IF uo_ware.cauditing(publ_operator,arg_msg) = 0 THEN // MessageBox('Error!',arg_msg) //ELSE // MessageBox(publ_operator,'审核成功!') // wf_refresh_curuc(dw_pageretr.Object.inwareid[pagerert_row]) //END IF // end event type p_msg from picture within w_publ_1ton_share_detail integer x = 3191 integer y = 196 integer width = 73 integer height = 64 boolean bringtotop = true string pointer = "HyperLink!" boolean originalsize = true string picturename = "graphics\p_msg.GIF" boolean focusrectangle = false end type event clicked;m_Dfc_Control_PopupMenu dmPopupMenu string menustr menustr="Text=发送消息~tEvent=ue_news_add" menustr=menustr + "|" + "Text=-" menustr = menustr + "|" + "Text=相看相关消息~tEvent=ue_news_rel" if len(trim(menustr))<>0 then dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu end if end event type p_help from picture within w_publ_1ton_share_detail integer x = 3383 integer y = 196 integer width = 73 integer height = 64 boolean bringtotop = true string pointer = "HyperLink!" boolean originalsize = true string picturename = "graphics\p_help.GIF" boolean focusrectangle = false end type event clicked;PARENT.TriggerEvent('ue_help') end event type p_encl from picture within w_publ_1ton_share_detail integer x = 3287 integer y = 196 integer width = 73 integer height = 64 boolean bringtotop = true string pointer = "HyperLink!" boolean originalsize = true string picturename = "p_encl_2.GIF" boolean focusrectangle = false end type event clicked;m_Dfc_Control_PopupMenu dmPopupMenu string menustr menustr="Text=添加附件~tEvent=ue_fj_edit" menustr=menustr + "|" + "Text=-" menustr = menustr + "|" + "Text=查看附件~tEvent=ue_fj_view" menustr = menustr + "|" + "Text=-" menustr = menustr + "|" + "Text=打开副本~tEvent=ue_copyself" if len(trim(menustr))<>0 then dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu end if end event type p_other from picture within w_publ_1ton_share_detail integer x = 3479 integer y = 196 integer width = 73 integer height = 64 boolean bringtotop = true string pointer = "HyperLink!" boolean originalsize = true string picturename = "graphics\p_other.GIF" boolean focusrectangle = false end type event clicked;m_Dfc_Control_PopupMenu dmPopupMenu String menustr IF sys_option_if_ljfieb = 0 THEN //menustr="Text=发送消息~tEvent=ue_news_add" //menustr=menustr + "|" + "Text=-" //menustr = menustr + "|" + "Text=相看相关消息~tEvent=ue_news_rel" ELSE menustr = "Text=发送单据~tEvent=ue_send_ljfieb" menustr = menustr + "|" + "Text=-" menustr = menustr + "|" + "Text=查看电子商务记录~tEvent=ue_jdview_ljfieb" END IF IF Len(Trim(menustr)) <> 0 THEN dmPopupMenu = Create m_Dfc_Control_PopupMenu dmPopupMenu.mf_BuildMenu(This, menustr) dmPopupMenu.mf_PopMenu() Destroy dmPopupMenu END IF end event type gb_3 from groupbox within w_publ_1ton_share_detail boolean visible = false integer x = 434 integer y = 408 integer width = 1125 integer height = 148 integer taborder = 90 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 15793151 end type type ln_bar from line within w_publ_1ton_share_detail long linecolor = 268435456 integer linethickness = 4 integer beginy = 172 integer endx = 3200 integer endy = 172 end type type ln_bar2 from line within w_publ_1ton_share_detail long linecolor = 16777215 integer linethickness = 4 integer beginx = 9 integer beginy = 176 integer endx = 3273 integer endy = 176 end type type r_bar from rectangle within w_publ_1ton_share_detail long linecolor = 16777215 integer linethickness = 4 long fillcolor = 1073741824 integer x = 3351 integer width = 87 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_publ_1ton_share_detail long linecolor = 268435456 integer linethickness = 4 integer beginy = 284 integer endx = 3250 integer endy = 284 end type type ln_2 from line within w_publ_1ton_share_detail long linecolor = 16777215 integer linethickness = 4 integer beginy = 288 integer endx = 3282 integer endy = 288 end type