$PBExportHeader$w_msttake_other.srw forward global type w_msttake_other from w_publ_1ton_share_detail end type type ddlb_status from dropdownlistbox within w_msttake_other end type type st_3 from statictext within w_msttake_other end type type ddlb_itemflag from dropdownlistbox within w_msttake_other end type type st_2 from statictext within w_msttake_other end type type ddlb_scid from uo_ddlb_scid within w_msttake_other end type type st_4 from statictext within w_msttake_other end type type cbx_1 from checkbox within w_msttake_other end type end forward global type w_msttake_other from w_publ_1ton_share_detail string title = "其它应收单" boolean maxbox = true windowstate windowstate = maximized! event ue_dept_ch ( ) event insert_childrow ( ) event ue_fj_edit ( ) event ue_fj_view ( ) event ue_f19 ( ) ddlb_status ddlb_status st_3 st_3 ddlb_itemflag ddlb_itemflag st_2 st_2 ddlb_scid ddlb_scid st_4 st_4 cbx_1 cbx_1 end type global w_msttake_other w_msttake_other type variables uo_msttake_other uo_ie Int cur_flag = -1 Int cur_secflag = -1 Int cur_itemflag = 1 Long cur_scid end variables forward prototypes public function integer wf_refresh_curuc (long arg_billid) public function integer wf_statusbtn_fc () public subroutine wf_autofrom_oppose_cust (long arg_billid, readonly string arg_billcode, decimal arg_amt) end prototypes event ue_dept_ch();IF Not dw_edit_mode THEN RETURN Long uc_row uc_row = dw_uc.GetRow() IF uc_row <= 0 THEN MessageBox('系统提示','请先选择单据') RETURN END IF Open(w_department_ch) s_deptype s_dep_rst s_dep_rst = Message.PowerObjectParm IF s_dep_rst.departmentid > 0 THEN dw_uc.Object.u_income_expenses_deptid[uc_row] = s_dep_rst.departmentid END IF dw_uc.AcceptText() end event event insert_childrow();Long li_row DateTime ld_nulltime SetNull(ld_nulltime) li_row = dw_child.InsertRow(0) dw_child.ScrollToRow(li_row) dw_child.SetColumn ('u_itemdef_itemcode') end event event ue_fj_edit();IF dw_edit_mode THEN MessageBox('提示','编辑状态下不可用') RETURN END IF IF NOT f_power_ind(3494,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF s_edit_index_tran s_pic Long ll_ConnectionID String arg_msg Long ls_row ls_row = dw_pageretr.GetRow() IF ls_row <= 0 THEN RETURN END IF IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN MessageBox('提示','没有指定附件数据库连接'+arg_msg) RETURN END IF s_pic.f_long = 512 //其它收入支出单的mainID s_pic.f_string = dw_pageretr.Object.u_income_expenses_billcode[ls_row] s_pic.g_long = dw_pageretr.Object.u_income_expenses_billid[ls_row] s_pic.e_long = dw_pageretr.Object.scid[ls_row] s_pic.sqltransaction = sys_filedb_sqlca OpenWithParm(w_fj_bill_mng,s_pic) //wf_check_billfj() end event event ue_fj_view();IF dw_edit_mode THEN MessageBox('提示','编辑状态下不可用') RETURN END IF s_edit_index_tran s_pic Long ll_ConnectionID String arg_msg Long ls_row ls_row = dw_pageretr.GetRow() IF ls_row <= 0 THEN RETURN END IF IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN MessageBox('提示','没有指定附件数据库连接'+arg_msg) RETURN END IF s_pic.f_long = 512 //其它收入支出单的mainID s_pic.f_string = dw_pageretr.Object.u_income_expenses_billcode[ls_row] s_pic.g_long = dw_pageretr.Object.u_income_expenses_billid[ls_row] s_pic.e_long = dw_pageretr.Object.scid[ls_row] s_pic.sqltransaction = sys_filedb_sqlca OpenWithParm(w_fj_bill_view,s_pic) end event event ue_f19(); IF Not dw_edit_mode THEN RETURN Long child_row child_row = dw_uc.GetRow() IF child_row = 0 THEN MessageBox('提示','请选定单据!',information!,OK!) RETURN END IF Long ll_scid, ll_moneyid String ls_address dw_uc.AcceptText() IF Not IsValid(W_cust_edit) THEN 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 = Upper(Trim(dw_uc.Object.u_cust_cuscode[dw_uc.GetRow()])) OpenWithParm(W_cust_edit,s_ch_tran) //调用 s_custom S_INSCUST S_INSCUST = Message.PowerObjectParm //接受返回结构 IF S_INSCUST.cusid > 0 THEN //正常返回值则可以取以下值 dw_uc.Object.spt_cus_id[child_row] = S_INSCUST.cusid dw_uc.Object.u_cust_cusname[child_row] = S_INSCUST.Name dw_uc.Object.u_cust_cuscode[child_row] = S_INSCUST.cuscode IF S_INSCUST.banktypeid > 0 THEN dw_uc.Object.u_income_expenses_banktypeid[child_row] = S_INSCUST.banktypeid END IF dw_uc.SetRedraw(True) dw_uc.SetFocus() dw_uc.SetColumn("u_income_expenses_credencecode") END IF END IF //this.enabled = true end event public function integer wf_refresh_curuc (long arg_billid);IF arg_billid <= 0 Or IsNull(arg_billid) THEN RETURN 0 Long uc_row uc_row = dw_pageretr.GetRow() IF uc_row <= 0 THEN RETURN 0 String billcode String credencecode Long banktypeid Decimal amt Long accountsid DateTime outdate String Descrp String rep String itemcode Long rapmoneyid Long itemid String itemname String itemtype String itemsectype Long itemflag String Opemp DateTime Opdate DateTime ModDate String ModEmp Long flag String auditemp DateTime auditdate Long secflag String secauditemp DateTime secauditdate Long deptid Long scid String cw_department_handtype,ls_accountsname string ls_cuscode,ls_cusname decimal dec_finish_amt SELECT U_income_expenses.outdate, U_income_expenses.banktypeid, U_income_expenses.credencecode, U_income_expenses.accountsid, U_income_expenses.rep, U_income_expenses.Descrp, U_income_expenses.rapmoneyid, U_income_expenses.billcode, U_income_expenses.itemid, U_income_expenses.Opemp, U_income_expenses.Opdate, U_income_expenses.ModDate, U_income_expenses.ModEmp, U_income_expenses.itemflag, U_income_expenses.deptid, U_income_expenses.amt, U_income_expenses.flag, U_income_expenses.auditemp, U_income_expenses.auditdate, U_income_expenses.secflag, U_income_expenses.secauditemp, U_income_expenses.secauditdate, U_income_expenses.scid, u_accounts.accountsname, u_cust.cuscode, u_cust.name, U_income_expenses.finish_amt Into :outdate, :banktypeid, :credencecode, :accountsid, :rep, :Descrp, :rapmoneyid, :billcode, :itemid, :Opemp, :Opdate, :ModDate, :ModEmp, :itemflag, :deptid, :amt, :flag, :auditemp, :auditdate, :secflag, :secauditemp, :secauditdate, :scid, :ls_accountsname, :ls_cuscode, :ls_cusname, :dec_finish_amt From U_income_expenses Left Outer join u_accounts On U_income_expenses.accountsid = u_accounts.accountsid left join u_cust on u_cust.cusid=U_income_expenses.spt_cus_id Where ( U_income_expenses.billid = :arg_billid ) ; IF sqlca.SQLCode <> 0 THEN MessageBox('系统提示',"查询收支单操作失败"+sqlca.SQLErrText) RETURN 0 END IF dw_pageretr.SetRedraw(False) dw_pageretr.Object.U_income_expenses_billid[uc_row] = arg_billid dw_pageretr.Object.U_income_expenses_billcode[uc_row] = billcode dw_pageretr.Object.U_income_expenses_credencecode[uc_row] = credencecode dw_pageretr.Object.U_income_expenses_banktypeid[uc_row] = banktypeid dw_pageretr.Object.U_income_expenses_amt[uc_row] = amt dw_pageretr.Object.U_income_expenses_accountsid[uc_row] = accountsid dw_pageretr.Object.U_income_expenses_outdate[uc_row] = outdate dw_pageretr.Object.U_income_expenses_Descrp[uc_row] = Descrp dw_pageretr.Object.U_income_expenses_rep[uc_row] = rep dw_pageretr.Object.itemflag[uc_row] = itemflag dw_pageretr.Object.U_income_expenses_rapmoneyid[uc_row] = rapmoneyid dw_pageretr.Object.U_income_expenses_itemid[uc_row] = itemid dw_pageretr.Object.U_income_expenses_Opemp[uc_row] = Opemp dw_pageretr.Object.U_income_expenses_Opdate[uc_row] = Opdate dw_pageretr.Object.U_income_expenses_ModDate[uc_row] = ModDate dw_pageretr.Object.U_income_expenses_ModEmp[uc_row] = ModEmp dw_pageretr.Object.U_income_expenses_flag[uc_row] = flag dw_pageretr.Object.U_income_expenses_auditemp[uc_row] = auditemp dw_pageretr.Object.U_income_expenses_auditdate[uc_row] = auditdate dw_pageretr.Object.U_income_expenses_secflag[uc_row] = secflag dw_pageretr.Object.U_income_expenses_secauditemp[uc_row] = secauditemp dw_pageretr.Object.U_income_expenses_secauditdate[uc_row] = secauditdate dw_pageretr.Object.U_income_expenses_deptid[uc_row] = deptid dw_pageretr.Object.scid[uc_row] = scid dw_pageretr.Object.u_accounts_accountsname[uc_row] = ls_accountsname dw_pageretr.Object.u_cust_cuscode[uc_row] = ls_cuscode dw_pageretr.Object.u_cust_cusname[uc_row] = ls_cusname dw_pageretr.Object.u_income_expenses_finish_amt[uc_row] = dec_finish_amt dw_pageretr.SetRedraw(True) dw_uc.Reset() dw_pageretr.RowsCopy(dw_pageretr.GetRow(), dw_pageretr.GetRow(), Primary!, dw_uc, 1, Primary!) wf_statusbtn_fc() RETURN 1 end function public function integer wf_statusbtn_fc ();//wf_statusbtn_fc Long pagerert_row Int li_flag Int li_secflag pagerert_row = dw_pageretr.GetRow() IF pagerert_row <= 0 THEN cb_auditing.Enabled = False cb_auditing_cancel.Enabled = False GOTO ext END IF li_flag = dw_pageretr.Object.u_income_expenses_flag[pagerert_row] li_secflag = dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] IF dw_edit_mode THEN cb_auditing.Enabled = False cb_auditing_cancel.Enabled = False cb_auditing.Text = '审核&F' cb_auditing_cancel.Text = '撤审' ELSE IF li_flag = 0 THEN cb_auditing.Enabled = True cb_auditing_cancel.Enabled = False cb_auditing.Text = '审核&F' cb_auditing_cancel.Text = '撤审' ELSEIF li_flag = 1 And li_secflag = 0 THEN cb_auditing.Enabled = false cb_auditing_cancel.Enabled = True cb_auditing.Text = '审核&F' cb_auditing_cancel.Text = '撤审' // ELSEIF li_flag = 1 And li_secflag = 1 THEN // cb_auditing.Enabled = False // cb_auditing_cancel.Enabled = True // cb_auditing.Text = '确认&F' // cb_auditing_cancel.Text = '反确认' END IF END IF cb_auditing.TriggerEvent('ue_textchange') cb_auditing_cancel.TriggerEvent('ue_textchange') ext: RETURN 0 end function public subroutine wf_autofrom_oppose_cust (long arg_billid, readonly string arg_billcode, decimal arg_amt);// TODO: 自去边带客户投诉单 IF Not dw_edit_mode THEN cb_add.TriggerEvent(Clicked!) END IF IF Not dw_edit_mode THEN RETURN Long row row = dw_child.GetRow() IF row <= 0 THEN row = dw_child.InsertRow(0) ELSE IF dw_child.Object.u_income_expenses_mx_amt[row] <> 0 Or dw_child.Object.u_income_expenses_mx_relbillid[row] <> 0 THEN row = dw_child.InsertRow(0) END IF END IF dw_child.Object.u_income_expenses_mx_buildtype[row] = 3 dw_child.Object.u_income_expenses_mx_relscid[row] = 0 dw_child.Object.u_income_expenses_mx_relbillid[row] = arg_billid dw_child.Object.u_income_expenses_mx_relbillcode[row] = arg_billcode dw_child.Object.u_income_expenses_mx_amt[row] = arg_amt end subroutine on w_msttake_other.create int iCurrent call super::create this.ddlb_status=create ddlb_status this.st_3=create st_3 this.ddlb_itemflag=create ddlb_itemflag this.st_2=create st_2 this.ddlb_scid=create ddlb_scid this.st_4=create st_4 this.cbx_1=create cbx_1 iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.ddlb_status this.Control[iCurrent+2]=this.st_3 this.Control[iCurrent+3]=this.ddlb_itemflag this.Control[iCurrent+4]=this.st_2 this.Control[iCurrent+5]=this.ddlb_scid this.Control[iCurrent+6]=this.st_4 this.Control[iCurrent+7]=this.cbx_1 end on on w_msttake_other.destroy call super::destroy destroy(this.ddlb_status) destroy(this.st_3) destroy(this.ddlb_itemflag) destroy(this.st_2) destroy(this.ddlb_scid) destroy(this.st_4) destroy(this.cbx_1) end on event ue_usual_query_retr;call super::ue_usual_query_retr;String ls_querystrpart = '' ls_newselect = Lower(ori_oldselect) IF Trim(sle_usual_query.Text) <> '' THEN IF Pos(Trim(sle_usual_query.Text),'%') = 0 THEN ls_querystrpart = "(u_income_expenses.billcode like '%"+Trim(sle_usual_query.Text)+"%')" ELSE ls_querystrpart = "(u_income_expenses.billcode like '"+Trim(sle_usual_query.Text)+"')" END IF IF Pos(ls_newselect," where ") <> 0 THEN ls_newselect = ls_newselect+" and ("+ls_querystrpart+')' ELSE ls_newselect = ls_newselect+" where ("+ls_querystrpart+')' END IF END IF wf_retrieveuc(dw_pageretr,ls_newselect,1) THIS.TriggerEvent('retrieve_pageretr') end event event ue_usual_query_filt;call super::ue_usual_query_filt;string obj_expr='' if trim(sle_usual_query.text)<>'' then if pos(trim(sle_usual_query.text),'%')=0 then obj_expr=obj_expr+'( u_income_expenses_billcode like "%'+trim(sle_usual_query.text)+'%" )' else obj_expr=obj_expr+'( u_income_expenses_billcode like "'+trim(sle_usual_query.text)+'" )' end if end if dw_pageretr.setfilter(obj_expr) dw_pageretr.setredraw(false) dw_pageretr.filter() if dw_pageretr.rowcount()>=1 then dw_pageretr.selectrow(0,false) dw_pageretr.selectrow(1,true) end if dw_pageretr.setredraw(true) end event event close;call super::close;destroy uo_ie end event event open;call super::open;uc_column_int=8 //uc dw前6列可以编辑 child_column_int = 7 uo_ie =create uo_msttake_other uo_ie.commit_transaction = sqlca end event event refresh_interface;call super::refresh_interface;wf_statusbtn_fc() ddlb_status.Enabled = Not dw_edit_mode ddlb_itemflag.Enabled = Not dw_edit_mode ddlb_scid.Enabled = NOT dw_edit_mode 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_pageretr.Retrieve(cur_scid,cur_flag,cur_secflag) 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 wf_statusbtn_fc() end event event ue_f9;call super::ue_f9;IF Not dw_edit_mode THEN RETURN IF dw_child.GetRow() <= 0 THEN MessageBox(publ_operator,'请先选择明细') RETURN END IF IF Not IsValid(w_oppose_cust_ch) THEN This.Enabled = False Open(w_oppose_cust_ch) This.Enabled = True s_oppose_cust_ch s_ch s_ch = Message.PowerObjectParm dw_child.SetRedraw(False) IF s_ch.billid > 0 THEN dw_child.Object.u_income_expenses_mx_relscid[dw_child.GetRow()] = 0 dw_child.Object.u_income_expenses_mx_relbillid[dw_child.GetRow()] = s_ch.billid dw_child.Object.u_income_expenses_mx_relbillcode[dw_child.GetRow()] = s_ch.billcode END IF dw_child.AcceptText() dw_child.SetRedraw(True) END IF end event event ue_viewprint;call super::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_powerid = 0 then ls_powerid = 1859 IF ls_newname <> '' THEN IF Not f_power_ind(ls_powerid,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF li_auditprint = 1 THEN IF dw_pageretr.Object.u_income_expenses_flag[dw_pageretr.GetRow()] = 0 THEN MessageBox('NO','目标单据还未审核,不能打印!') RETURN END IF END IF LS_PRMSG.obj_dwNAME = ls_newname ELSE IF Not f_power_ind(1859,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF LS_PRMSG.obj_dwNAME = 'dw_rp_msttake_other' END IF if LS_PRMSG.obj_dwNAME = '' then return LS_PRMSG.TAG_TEXT = this.title LS_PRMSG.FILTER_STRING = '' LS_PRMSG.retr_pram_falg = 2 LS_PRMSG.PAGECH_FLAG = 0 LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_income_expenses_billid[LS_ROW] OpenWithParm(w_publ_preview,LS_PRMSG) //**更新打印次料 String arg_msg printnum = Message.DoubleParm Long ll_scid String ls_code ll_scid = 0 ls_code = dw_pageretr.Object.u_income_expenses_billcode[dw_pageretr.GetRow()] f_update_printnum2(ll_scid,ls_code,FALSE,printnum,arg_msg,TRUE) end event event ue_print;call super::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_powerid = 0 then ls_powerid = 1859 IF ls_newname <> '' THEN IF NOT f_power_ind(ls_powerid,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF li_auditprint = 1 THEN IF dw_pageretr.Object.u_income_expenses_flag[dw_pageretr.GetRow()] = 0 THEN MessageBox('NO','目标单据还未审核,不能打印!') RETURN END IF END IF LS_PRMSG.obj_dwNAME = ls_newname ELSE IF NOT f_power_ind(1859,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF LS_PRMSG.obj_dwNAME = 'dw_rp_msttake_other' END IF IF LS_PRMSG.obj_dwNAME = '' THEN RETURN LS_PRMSG.retr_pram_falg = 2 LS_PRMSG.TAG_TEXT = '费用支出单' LS_PRMSG.FILTER_STRING = '' LS_PRMSG.PAGECH_FLAG = 0 LS_PRMSG.retr_pramnmb = dw_pageretr.Object.u_income_expenses_billid[LS_ROW] 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 = 1 Long ll_scid String ls_code ll_scid = 0 ls_code = dw_pageretr.Object.u_income_expenses_billcode[dw_pageretr.GetRow()] f_update_printnum2(ll_scid,ls_code,FALSE,printnum,arg_msg,TRUE) end event event ue_addzy;call super::ue_addzy;IF Not f_power_ind(994,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF dw_edit_mode THEN RETURN String arg_msg = '' String 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_ie.add_dscrp(dw_pageretr.Object.U_income_expenses_billid[uc_row],ls_str,arg_msg,True) = 0 THEN MessageBox('error!',arg_msg) RETURN ELSE MessageBox(publ_operator,'添加备注操作成功!') wf_refresh_curuc(dw_pageretr.Object.U_income_expenses_billid[uc_row]) END IF end event event ue_rpt_viewprint;call super::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.u_income_expenses_flag[row] = 0 THEN MessageBox('NO','目标单据还未审核,不能打印!') RETURN END IF END IF s_rpt_print_msg s_print s_print.retr_pram_falg = 2 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_pramnmb = dw_pageretr.Object.u_income_expenses_billid[row] s_print.rowcnt = dw_child.RowCount() OpenWithParm(w_rpt_preview,s_print) //**更新打印次料 String arg_msg printnum = Message.DoubleParm String ls_code ll_scid = 0 ls_code = dw_pageretr.Object.u_income_expenses_billcode[row] f_update_printnum2(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE) end event event ue_rpt_print;call super::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.u_income_expenses_flag[row] = 0 THEN MessageBox('NO','目标单据还未审核,不能打印!') RETURN END IF END IF IF MessageBox ("IF","是否确定要打印当前单据吗?",Question!,YesNo! ) = 2 THEN RETURN LS_PRMSG.retr_pram_falg = 2 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_pramnmb = dw_pageretr.Object.u_income_expenses_billid[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 = 0 ls_code = dw_pageretr.Object.u_income_expenses_billcode[row] f_update_printnum2(ll_scid,ls_code,TRUE,printnum,arg_msg,TRUE) end event event retrieve_childdw;call super::retrieve_childdw;Long row,uc_relid row = dw_pageretr.GetRow() IF row > 0 THEN uc_relid = dw_pageretr.Object.u_income_expenses_billid[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 ue_f8;call super::ue_f8;//用于选择明细内容,被f8[默认]\dw_child.doubleclicked调用 IF Not dw_edit_mode THEN RETURN IF dw_uc.GetRow() <= 0 THEN MessageBox('系统提示','请先选择单据') RETURN END IF Long child_row Long ls_cusid,ll_moneyid Decimal ld_mrate Long ls_j child_row = dw_child.GetRow() IF Not IsValid(w_itemdef_ch_with_itemflag) THEN This.Enabled = False Openwithparm(w_itemdef_ch_with_itemflag,cur_itemflag) //调用 This.Enabled = True s_itemdef_arr s_inscust s_inscust = Message.PowerObjectParm //接受返回结构 dw_child.setredraw(false) FOR ls_j = 1 To UpperBound(s_inscust.itemid) IF s_inscust.itemid[ls_j] > 0 THEN //正常返回值则可以取以下值 IF dw_child.Find('u_income_expenses_mx_itemid = '+String(s_inscust.itemid[ls_j]),1,dw_child.RowCount()) > 0 THEN CONTINUE IF dw_child.GetRow() > 0 THEN IF dw_child.Object.u_income_expenses_mx_itemid[child_row] <> 0 THEN child_row = dw_child.InsertRow (0) ELSE child_row = dw_child.GetRow() END IF ELSE child_row = dw_child.InsertRow (0) END IF dw_child.Object.u_income_expenses_mx_itemid[child_row] = s_inscust.itemid[ls_j] dw_child.Object.u_itemdef_itemcode[child_row] = s_inscust.itemcode[ls_j] dw_child.Object.u_itemdef_itemname[child_row] = s_inscust.itemname[ls_j] dw_child.Object.u_itemdef_itemtype[child_row] = s_inscust.itemtype[ls_j] dw_child.Object.u_itemdef_itemsectype[child_row] = s_inscust.itemsectype[ls_j] dw_child.SetColumn('u_income_expenses_mx_amt') END IF NEXT dw_child.setredraw(true) dw_child.SetFocus() END IF end event event ue_f7;call super::ue_f7;IF Not dw_edit_mode THEN RETURN Long ls_storageid,ll_cusid Long ls_taskid,ls_j,ll_i String ls_taskcode Long ll_scid,ll_moneyid Long ll_mtrlid String ls_status,ls_woodcode,ls_pcode DateTime ld_outdate IF dw_child.GetRow() <= 0 THEN MessageBox(publ_operator,'请先选择明细') RETURN END IF IF Not IsValid(w_saletask_ch) THEN // s_edit_index_tran s_tranf //传递参数使用 // // // s_tranf.b_long = -1 // s_tranf.c_long = -1 // s_tranf.d_long = 1 //选销售订单 // s_tranf.e_long = 1 // s_tranf.h_long = 1 s_saletask_find s_find s_find.scid = -1 s_find.areaid = sys_areaid This.Enabled = False OpenWithParm(w_saletask_ch,s_find) This.Enabled = True s_saletask_ch s_saletask s_saletask = Message.PowerObjectParm dw_child.SetRedraw(False) IF s_saletask.taskid > 0 THEN dw_child.Object.u_income_expenses_mx_relscid[dw_child.GetRow()] = s_saletask.scid dw_child.Object.u_income_expenses_mx_relbillid[dw_child.GetRow()] = s_saletask.taskid dw_child.Object.u_income_expenses_mx_relbillcode[dw_child.GetRow()] = s_saletask.taskcode END IF dw_child.AcceptText() dw_child.SetRedraw(True) END IF end event event ue_f10;call super::ue_f10;IF Not dw_edit_mode THEN RETURN Long uc_row,ls_j uc_row = dw_child.GetRow() IF uc_row = 0 THEN MessageBox('系统提示','请选定明细!') RETURN END IF dw_child.AcceptText() IF Not IsValid(w_order_ml_mx_mtrl_ch) THEN s_edit_index_tran s_open //传递参数使用 s_open.if_select_any = False s_open.d_long = -1 s_open.f_long = 0 s_open.g_long = 1 //使用终止计件条件 s_open.h_long = 0 //进仓 s_open.c_long = 1 //领料 OpenWithParm(w_order_ml_mx_mtrl_ch,s_open) s_saletask_mtrl s_inscust s_inscust = Message.PowerObjectParm //接受返回结构 dw_child.SetRedraw(False) IF UpperBound(s_inscust.taskid) > 0 THEN IF s_inscust.taskid[1] > 0 THEN //正常返回值则可以取以下值 dw_child.Object.u_income_expenses_mx_relscid[uc_row] = s_inscust.scid[1] dw_child.Object.u_income_expenses_mx_relbillid[uc_row] = s_inscust.taskid[1] dw_child.Object.u_income_expenses_mx_relbillcode[uc_row] = s_inscust.taskcode[1] END IF END IF dw_child.SetRedraw(True) END IF end event event 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) IF uc_width > 0 THEN dw_uc.Width = uc_width END IF IF uc_height > 0 THEN dw_uc.Height = uc_height END IF //IF ins_p_y < ins_c_y THEN // IF ins_p_y + ins_p_h > ins_c_y THEN // dw_child.x = dw_uc.x // dw_child.Y = dw_uc.Y + dw_uc.Height + 4 // dw_child.Width = dw_uc.Width // dw_child.Height = This.Height - dw_child.Y - 150 // // dw_pageretr.y = dw_uc.y // dw_pageretr.X = dw_uc.X + dw_uc.Width // dw_pageretr.Width = This.Width - dw_pageretr.X - 40 // dw_pageretr.Height = dw_uc.Height + dw_child.Height + (dw_child.Y - dw_uc.Y - dw_uc.Height) // ELSE // dw_pageretr.y = dw_uc.y // dw_pageretr.X = dw_uc.X + dw_uc.Width // dw_pageretr.Width = This.Width - dw_pageretr.X - 40 // dw_pageretr.Height = dw_uc.Height // // dw_child.x = dw_uc.x // dw_child.Y = dw_uc.Y + dw_uc.Height + 4 // dw_child.Width = This.Width - dw_child.X - 40 // dw_child.Height = This.Height - dw_child.Y - 150 // END IF //ELSE // IF ins_c_y + ins_c_h > ins_p_y THEN // dw_pageretr.x = dw_uc.x // dw_pageretr.Y = dw_uc.Y + dw_uc.Height + 4 // dw_pageretr.Width = dw_uc.Width // dw_pageretr.Height = This.Height - dw_pageretr.Y - 150 // // // dw_child.y = dw_uc.y // dw_child.X = dw_uc.X + dw_uc.Width // dw_child.Width = This.Width - dw_child.X - 40 // dw_child.Height = dw_uc.Height + dw_pageretr.Height + (dw_pageretr.Y - dw_uc.Y - dw_uc.Height) // ELSE // dw_child.y = dw_uc.y // dw_child.X = dw_uc.X + dw_uc.Width // dw_child.Width = This.Width - dw_child.X - 40 // dw_child.Height = dw_uc.Height // // // dw_pageretr.x = dw_uc.x // dw_pageretr.Y = dw_uc.Y + dw_uc.height + 4 // dw_pageretr.Width = This.Width - dw_pageretr.X - 40 // dw_pageretr.Height = This.Height - dw_pageretr.Y - 150 // // END IF // //END IF dw_pageretr.X = dw_uc.X + dw_uc.Width dw_pageretr.Width = This.Width - dw_pageretr.X - 40 dw_pageretr.Height = dw_uc.Height dw_child.Y = dw_uc.Y + dw_uc.Height + 4 dw_child.Width = This.Width - dw_child.X - 40 dw_child.Height = This.Height - dw_child.Y - 150 This.TriggerEvent('resize_p') end event event ue_f11;call super::ue_f11;//用于选择明细内容,被F9[默认] IF Not dw_edit_mode THEN RETURN Long uc_row Long ll_rst_accountsid uc_row = dw_uc.GetRow() IF uc_row = 0 THEN MessageBox('系统提示','请选定单据!') RETURN END IF dw_uc.AcceptText() IF Not IsValid(w_accounts_ch) THEN s_edit_index_tran s_ch_tran //传递参数使用 s_ch_tran.if_retrieve_all = True //是否一次retrieve所有行 s_ch_tran.work_mode = 1 //0-单纯编辑模式 1-选择\编辑模式 s_ch_tran.arg_pkid = 0 //目标定位pkid (备用) s_ch_tran.arg_string_code = '' //查询列(物料编码)部分内容,用于初步筛选 OpenWithParm(w_accounts_ch,s_ch_tran) //调用 ll_rst_accountsid = Message.DoubleParm //接受返回结构 IF ll_rst_accountsid > 0 THEN //正常返回值则可以取以下值 dw_uc.SetRedraw(False) dw_uc.Object.u_income_expenses_accountsid[uc_row] = ll_rst_accountsid dw_uc.SetColumn("u_income_expenses_rep") dw_uc.SetRedraw(True) END IF END IF end event type cb_func from w_publ_1ton_share_detail`cb_func within w_msttake_other integer x = 142 end type type cb_exit from w_publ_1ton_share_detail`cb_exit within w_msttake_other integer x = 2318 integer width = 142 end type type sle_usual_query from w_publ_1ton_share_detail`sle_usual_query within w_msttake_other integer x = 197 integer width = 549 end type type cb_retrieveall from w_publ_1ton_share_detail`cb_retrieveall within w_msttake_other integer x = 2761 integer width = 142 end type type em_pagerowno from w_publ_1ton_share_detail`em_pagerowno within w_msttake_other integer x = 2459 end type type dw_pageretr from w_publ_1ton_share_detail`dw_pageretr within w_msttake_other event dwnkey pbm_dwnkey integer x = 1934 integer width = 1614 integer height = 1052 string dataobject = "dw_msttake_other_index" end type event dw_pageretr::dwnkey;call super::dwnkey;//int h = 0 end event event dw_pageretr::constructor;call super::constructor; titleclick_sort_use=true //单击标题排序功能开关 RBUTTON_FILTER_USE=true //右键查询功能开关 end event event dw_pageretr::rowfocuschanged;call super::rowfocuschanged;wf_statusbtn_fc() end event type st_1 from w_publ_1ton_share_detail`st_1 within w_msttake_other integer x = 14 end type type cb_nextpage from w_publ_1ton_share_detail`cb_nextpage within w_msttake_other integer x = 2903 end type type dw_uc from w_publ_1ton_share_detail`dw_uc within w_msttake_other integer width = 1929 integer height = 1052 string dataobject = "dw_msttake_other_edit" end type event dw_uc::dwnkey;PARENT.TriggerEvent('user_key') IF Key = KeyDownArrow! THEN RETURN 1 String ls_itemcode,ls_itemname,ls_itemtype,ls_itemsectype,ls_find_code Int ls_itemflag Long ls_itemid Long cnt = 0 Boolean if_find = FALSE IF dw_edit_mode THEN IF dw_uc.GetColumnName ( ) = 'u_income_expenses_descrp' And Key = KeyEnter! THEN dw_child.ScrollToRow(1) dw_child.SetFocus() dw_child.SetColumn ('u_itemdef_itemcode') RETURN 1 ELSEIF dw_uc.GetColumnName ( ) = 'u_cust_cuscode' And Key = KeyEnter! THEN String ls_code,ls_name,ls_custype String ls_freight,ls_freight_tele String ls_cus_address,ls_cus_tele,ls_cus_tele1,ls_cus_fax Long ls_cusid Long ll_scid, ll_moneyid Int li_banktypeid String ls_rel_rep dw_uc.AcceptText() ls_code = Trim(dw_uc.Object.u_cust_cuscode[dw_uc.GetRow()]) // long li_option_outrep IF sys_power_issuper THEN li_option_outrep = 0 ELSE li_option_outrep = sys_option_outrep END IF SELECT u_cust.cusid, u_cust.name, u_cust.custype, u_cust.cuscode, u_cust.freight, u_cust.freight_tele, u_cust.address, u_cust.tele, u_cust.tele1, u_cust.faxno, u_cust.banktypeid, u_cust.rep INTO :ls_cusid,:ls_name,:ls_custype,:ls_code, :ls_freight,:ls_freight_tele, :ls_cus_address,:ls_cus_tele,:ls_cus_tele1,:ls_cus_fax,:li_banktypeid,:ls_rel_rep FROM u_cust Where (cuscode = :ls_code Or Name = :ls_code) and ( :li_option_outrep = 0 OR (u_cust.custype IN (:sys_user_outrepstr) or :sys_user_outrepstr='0')) and ( :sys_option_cusarea = 0 or ( :sys_areastr like '%,' + rtrim(cast(u_cust.cusareaid as varchar(10))) + ',%' OR u_cust.cusareaid = 0 OR :sys_areastr='0' )) ; // IF sqlca.SQLCode <> 0 THEN IF Pos(Trim(ls_code),'%') = 0 THEN ls_find_code = '%'+ Trim(ls_code) + '%' ELSE ls_find_code = Trim(ls_code) END IF SELECT count(*) INTO :cnt FROM u_cust Where ( cuscode Like :ls_find_code Or Name Like :ls_find_code ) and ( :li_option_outrep = 0 OR (u_cust.custype IN (:sys_user_outrepstr) or :sys_user_outrepstr='0')) and ( :sys_option_cusarea = 0 or (:sys_areastr like '%,' + rtrim(cast(u_cust.cusareaid as varchar(10))) + ',%' OR u_cust.cusareaid = 0 OR :sys_areastr='0' )) ; IF sqlca.SQLCode <> 0 THEN Parent.TriggerEvent('ue_f19') RETURN 1 END IF IF cnt <> 1 THEN Parent.TriggerEvent('ue_f19') RETURN 1 ELSE SELECT u_cust.cusid, u_cust.cuscode, u_cust.name, u_cust.custype, u_cust.freight, u_cust.freight_tele, u_cust.address, u_cust.tele, u_cust.tele1, u_cust.faxno, u_cust.rep INTO :ls_cusid,:ls_code,:ls_name,:ls_custype, :ls_freight,:ls_freight_tele, :ls_cus_address,:ls_cus_tele,:ls_cus_tele1,:ls_cus_fax,:ls_rel_rep FROM u_cust Where ( cuscode Like :ls_find_code Or Name Like :ls_find_code ); IF sqlca.SQLCode <> 0 THEN Parent.TriggerEvent('ue_f19') RETURN 1 ELSE if_find = True END IF END IF ELSE if_find = True END IF IF if_find THEN dw_uc.SetRedraw(False) dw_uc.Object.spt_cus_id[dw_uc.GetRow()] = ls_cusid dw_uc.Object.u_cust_cuscode[dw_uc.GetRow()] = ls_code dw_uc.Object.u_cust_cusname[dw_uc.GetRow()] = ls_name IF li_banktypeid > 0 THEN dw_uc.Object.u_income_expenses_banktypeid[dw_uc.GetRow()] = li_banktypeid END IF dw_uc.SetRedraw(True) dw_uc.SetColumn("u_income_expenses_credencecode") RETURN 1 END IF ELSE IF Key = KeyEnter! THEN // keybd_event ( 9, 0, 0 , 0 ) // 按下tab keybd_event ( 9, 0, 2, 0 ) // 释放tab RETURN 1 END IF END IF END IF end event event dw_uc::clicked;call super::clicked;IF row > 0 THEN IF dwo.Name = 'b_dept' THEN Parent.TriggerEvent('ue_dept_ch') ELSEIF dwo.Name = 'p_p' THEN Parent.TriggerEvent('ue_f19') END IF END IF end event event dw_uc::buttonclicked;call super::buttonclicked;IF dw_edit_mode And row > 0 THEN IF dwo.Name = 'b_f11' THEN Parent.TriggerEvent('ue_f11') END IF END IF end event event dw_uc::doubleclicked;IF dw_edit_mode And row > 0 THEN IF dwo.Name = 'u_income_expenses_accountsid' THEN Parent.TriggerEvent('ue_f11') ELSEIF dwo.Name = 'u_cust_cuscode' Or dwo.Name = 'u_cust_cusname' THEN Parent.TriggerEvent('ue_f19') END IF END IF end event event dw_uc::itemchanged;call super::itemchanged;IF NOT dw_edit_mode THEN RETURN THIS.AcceptText() Long ll_moneyid_account,ll_moneyid Long ll_accountid If (dwo.Name = 'u_income_expenses_rapmoneyid' OR dwo.Name = 'u_income_expenses_accountsid') AND THIS.Object.u_income_expenses_accountsid[row] > 0 THEN THIS.SetRedraw(FALSE) ll_accountid = THIS.Object.u_income_expenses_accountsid[row] ll_moneyid = THIS.Object.u_income_expenses_rapmoneyid[row] SELECT moneyid INTO :ll_moneyid_account FROM u_accounts Where accountsid = :ll_accountid; IF sqlca.SQLCode <> 0 THEN ll_moneyid_account = 0 RETURN END IF THIS.Object.u_income_expenses_rapmoneyid[row] = ll_moneyid_account // IF ll_moneyid = ll_moneyid_account THEN // THIS.Object.u_cusamt_mrate[row] = 1 // ELSE // THIS.Object.u_cusamt_mrate[dw_uc.GetRow()] = f_get_mrate(ll_moneyid) // END IF THIS.SetRedraw(TRUE) END IF end event type gb_2 from w_publ_1ton_share_detail`gb_2 within w_msttake_other integer x = 338 integer y = 864 integer width = 215 integer height = 348 end type type dw_child from w_publ_1ton_share_detail`dw_child within w_msttake_other integer y = 1344 integer height = 924 string dataobject = "dw_msttake_other_mx_edit" end type event dw_child::dwnkey;call super::dwnkey;Parent.TriggerEvent('user_key') String ls_itemcode Long ls_itemid String ls_itemname,ls_itemtype,ls_itemsectype,ls_find_code Long cnt Boolean if_find Long ll_row IF dw_edit_mode THEN IF KeyDown(keydownarrow!) THEN Long li_row IF dw_child.GetRow() = dw_child.RowCount() THEN Parent.TriggerEvent("insert_childrow") END IF ELSE IF KeyDown(keyenter!) And Not KeyDown(keycontrol!) And Not KeyDown(keyshift!) THEN IF dw_child.GetColumnName() = 'u_itemdef_itemcode' THEN dw_child.AcceptText() ls_itemcode = Trim(dw_child.Object.u_itemdef_itemcode[dw_child.GetRow()]) SELECT u_itemdef.itemid, u_itemdef.itemcode, u_itemdef.itemname, u_itemdef.itemtype, u_itemdef.itemsectype Into :ls_itemid, :ls_itemcode, :ls_itemname, :ls_itemtype, :ls_itemsectype From u_itemdef Where ( u_itemdef.itemcode = :ls_itemcode ) And (u_itemdef.itemflag = :cur_itemflag); IF sqlca.SQLCode <> 0 THEN IF Pos(Trim(ls_itemcode),'%') = 0 THEN ls_find_code = '%'+ Trim(ls_itemcode) + '%' ELSE ls_find_code = Trim(ls_itemcode) END IF SELECT count(*) INTO :cnt FROM u_itemdef WHERE ( u_itemdef.itemcode LIKE :ls_find_code) And (u_itemdef.itemflag = :cur_itemflag); IF sqlca.SQLCode <> 0 THEN Parent.TriggerEvent('ue_f8') RETURN 1 END IF IF cnt <> 1 THEN Parent.TriggerEvent('ue_f8') RETURN 1 ELSE SELECT u_itemdef.itemid, u_itemdef.itemcode, u_itemdef.itemname, u_itemdef.itemtype, u_itemdef.itemsectype Into :ls_itemid,:ls_itemcode,:ls_itemname,:ls_itemtype,:ls_itemsectype From u_itemdef Where (u_itemdef.itemcode Like :ls_find_code) And (u_itemdef.itemflag = :cur_itemflag); IF sqlca.SQLCode <> 0 THEN Parent.TriggerEvent('ue_f9') RETURN 1 ELSE if_find = True END IF END IF ELSE if_find = True END IF IF if_find THEN ll_row = dw_child.Find('u_income_expenses_mx_itemid = '+String(ls_itemid),1,dw_child.RowCount()) IF ll_row > 0 THEN If dw_child.GetRow() <> ll_row Then dw_child.Object.u_itemdef_itemcode[dw_child.GetRow()] = '' dw_child.SetRow(ll_row) dw_child.ScrollToRow(ll_row) dw_child.SelectRow(0,False) dw_child.SelectRow(ll_row,True) Else dw_child.SetColumn("u_income_expenses_mx_amt") End If RETURN 1 END IF dw_child.SetRedraw(False) dw_child.Object.u_income_expenses_mx_itemid[dw_child.GetRow()] = ls_itemid dw_child.Object.u_itemdef_itemcode[dw_child.GetRow()] = ls_itemcode dw_child.Object.u_itemdef_itemname[dw_child.GetRow()] = ls_itemname dw_child.Object.u_itemdef_itemtype[dw_child.GetRow()] = ls_itemtype dw_child.Object.u_itemdef_itemsectype[dw_child.GetRow()] = ls_itemsectype dw_child.SetRedraw(True) dw_child.SetColumn("u_income_expenses_mx_amt") END IF IF Key = keyenter! THEN keybd_event ( 9, 0, 0 , 0 ) // 按下tab keybd_event ( 9, 0, 2, 0 ) // 释放tab RETURN 1 END IF else If Key = keyenter! Then keybd_event ( 9, 0, 0 , 0 ) // 按下tab keybd_event ( 9, 0, 2, 0 ) // 释放tab Return 1 End If END IF END IF END IF END IF end event event dw_child::itemchanged;call super::itemchanged;IF dwo.Name = 'u_income_expenses_mx_buildtype' THEN dw_child.Object.u_income_expenses_mx_relbillcode[row] = '' dw_child.Object.u_income_expenses_mx_relscid[row] = 0 dw_child.Object.u_income_expenses_mx_relbillid[row] = 0 END IF end event event dw_child::doubleclicked;IF Not dw_edit_mode THEN RETURN dw_child.AcceptText() IF row > 0 THEN IF dwo.Name = 'u_income_expenses_mx_relbillcode' THEN IF dw_child.Object.u_income_expenses_mx_buildtype[row] = 1 THEN Parent.TriggerEvent('ue_f10') ELSEIF dw_child.Object.u_income_expenses_mx_buildtype[row] = 2 THEN Parent.TriggerEvent('ue_f7') ELSEIF dw_child.Object.u_income_expenses_mx_buildtype[row] = 3 THEN Parent.TriggerEvent('ue_f9') END IF ELSE Parent.TriggerEvent('ue_f8') END IF END IF end event type cb_viewprint from w_publ_1ton_share_detail`cb_viewprint within w_msttake_other integer x = 1673 end type type cb_print from w_publ_1ton_share_detail`cb_print within w_msttake_other integer x = 1481 end type type cb_add from w_publ_1ton_share_detail`cb_add within w_msttake_other integer x = 293 end type event cb_add::clicked;IF Not f_power_ind(1854,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF String arg_msg = '' Long uc_row Long ll_i Decimal ld_amt_uc,ld_amt_mx 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.u_income_expenses_outdate[uc_row] > DateTime(2000-01-01,Now()) THEN MessageBox('系统提示','不合理日期') dw_uc.SetFocus() dw_uc.SetColumn('u_income_expenses_outdate') RETURN END IF IF Trim(dw_uc.Object.u_income_expenses_rep[uc_row]) = '' THEN MessageBox('系统提示','请输入经手人') dw_uc.SetFocus() dw_uc.SetColumn('u_income_expenses_rep') RETURN END IF IF dw_uc.Object.u_income_expenses_banktypeid[uc_row] = 0 THEN MessageBox('系统提示','请选择结算方式') dw_uc.SetFocus() dw_uc.SetColumn('u_income_expenses_banktypeid') RETURN END IF IF dw_uc.Object.spt_cus_id[uc_row] = 0 or isnull(dw_uc.Object.spt_cus_id[uc_row]) THEN MessageBox('系统提示','请选择客户') dw_uc.SetFocus() dw_uc.SetColumn('u_cust_cuscode') RETURN END IF //检查金额 // IF sys_option_income_secaudit = 1 And dw_uc.Object.u_income_expenses_flag[uc_row] = 1 THEN // ld_amt_uc = dw_uc.Object.u_income_expenses_amt[uc_row] // // ld_amt_mx = 0 // FOR ll_i = 1 To dw_child.RowCount() // ld_amt_mx = ld_amt_mx + dw_child.Object.u_income_expenses_mx_amt[ll_i] // NEXT // // IF ld_amt_uc <> ld_amt_mx THEN // MessageBox('系统提示','明细总金额与主表金额不一致,请检查') // RETURN // END IF // END IF uo_ie.credencecode = dw_uc.Object.u_income_expenses_credencecode[uc_row] uo_ie.banktypeid = dw_uc.Object.u_income_expenses_banktypeid[uc_row] uo_ie.rapmoneyid = dw_uc.Object.u_income_expenses_rapmoneyid[uc_row] uo_ie.accountsid = dw_uc.Object.u_income_expenses_accountsid[uc_row] uo_ie.outdate = dw_uc.Object.u_income_expenses_outdate[uc_row] uo_ie.Descrp = dw_uc.Object.u_income_expenses_Descrp[uc_row] uo_ie.rep = dw_uc.Object.u_income_expenses_rep[uc_row] uo_ie.scid = dw_uc.Object.scid[uc_row] uo_ie.spt_cus_id = dw_uc.Object.spt_cus_id[uc_row] // uo_ie.itemid = dw_uc.Object.u_income_expenses_itemid[uc_row] uo_ie.billtype = 3 uo_ie.scid = dw_uc.Object.scid[uc_row] uo_ie.itemflag = 1 FOR ll_i = 1 To dw_child.RowCount() IF dw_child.Object.u_income_expenses_mx_itemid[ll_i] > 0 And dw_child.Object.u_income_expenses_mx_amt[ll_i] <> 0 THEN IF uo_ie.acceptmx(dw_child.Object.u_income_expenses_mx_itemid[ll_i] ,& dw_child.Object.u_income_expenses_mx_amt[ll_i],& dw_child.Object.u_income_expenses_mx_deptid[ll_i],& dw_child.Object.u_income_expenses_mx_buildtype[ll_i],& dw_child.Object.u_income_expenses_mx_relscid[ll_i],& dw_child.Object.u_income_expenses_mx_relbillid[ll_i],& dw_child.Object.u_income_expenses_mx_relbillcode[ll_i],& dw_child.Object.u_income_expenses_mx_useemp[ll_i],& dw_child.Object.u_income_expenses_mx_mxdscrp[ll_i],& arg_msg) = 0 THEN MessageBox('Error',arg_msg) RETURN END IF END IF NEXT IF uo_ie.Save(publ_operator,arg_msg,True) = 0 THEN MessageBox('error!',arg_msg) RETURN END IF MessageBox(publ_operator,'保存操作成功!') f_SetProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "moneyid",String(dw_uc.Object.u_income_expenses_rapmoneyid[dw_uc.GetRow()])) f_SetProfileString (sys_empid,dw_uc.DataObject, "dft_banktype",String(dw_uc.Object.u_income_expenses_banktypeid[dw_uc.GetRow()])) Long ll_row ll_row = dw_pageretr.GetRow() dw_pageretr.SelectRow(0,False) dw_pageretr.SelectRow(ll_row,True) wf_refresh_curuc(uo_ie.billid) ELSE if cur_itemflag = 0 then MessageBox('error!','请选择收支方向') RETURN end if if cur_scid < 0 then MessageBox('error!','请选择分部') RETURN end if IF uo_ie.newbegin(arg_msg) = 0 THEN MessageBox('error!',arg_msg) RETURN END IF END IF CALL Super::Clicked IF dw_edit_mode THEN Parent.TriggerEvent("insert_childrow") dw_uc.Object.itemflag[dw_uc.GetRow()] = 1 dw_uc.Object.u_income_expenses_rep[dw_uc.GetRow()] =publ_operator String ls_moneyid,ls_banktype ls_moneyid = f_ProfileString (sys_empid,publ_userid+'_'+dw_uc.DataObject, "moneyid",'0') ls_banktype = f_ProfileString (sys_empid,dw_uc.DataObject, "dft_banktype",'0') dw_uc.Object.u_income_expenses_rapmoneyid[dw_uc.GetRow()]=long(ls_moneyid) dw_uc.Object.u_income_expenses_banktypeid[dw_uc.GetRow()]=long(ls_banktype) dw_uc.Object.scid[dw_uc.GetRow()] = cur_scid ELSE Parent.TriggerEvent("retrieve_childdw") IF cbx_1.Checked THEN This.TriggerEvent(Clicked!) RETURN 1 END IF END IF end event type cb_edit from w_publ_1ton_share_detail`cb_edit within w_msttake_other integer x = 485 end type event cb_edit::clicked;IF Not f_power_ind(1855,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN 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_ie.updatebegin(dw_pageretr.object.U_income_expenses_billid[uc_row],arg_msg)=0 then messagebox('Error!',arg_msg) return end if wf_refresh_curuc(dw_pageretr.Object.U_income_expenses_billid[uc_row]) end if call super::clicked end event type cb_delet from w_publ_1ton_share_detail`cb_delet within w_msttake_other integer x = 677 end type event cb_delet::clicked;call super::clicked;IF Not f_power_ind(1856,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF 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_ie.Cancel(dw_pageretr.Object.U_income_expenses_billid[uc_row],arg_msg,True) = 0 THEN MessageBox('Error!',arg_msg) ELSE //日志 Long ls_id String ls_code ls_id = dw_pageretr.Object.U_income_expenses_billid[uc_row] ls_code = dw_pageretr.Object.U_income_expenses_billcode[uc_row] f_setsysoplog('收支单','收支单删除,id:'+String(ls_id)+',code:'+ls_code,arg_msg,True) //-- MessageBox(publ_operator,'删除单据'+String(dw_pageretr.Object.U_income_expenses_billcode[uc_row])+'成功!') dw_pageretr.DeleteRow(uc_row) dw_pageretr.TriggerEvent(RowFocusChanged!) END IF end event type cb_addzy from w_publ_1ton_share_detail`cb_addzy within w_msttake_other integer x = 1211 integer width = 270 end type event cb_addzy::clicked;call super::clicked;m_Dfc_Control_PopupMenu dmPopupMenu String menustr IF Not dw_edit_mode THEN menustr = "Text=补充备注~tEvent=ue_addzy" 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 w_publ_1ton_share_detail`cb_auditing within w_msttake_other integer x = 827 end type event cb_auditing::clicked;call super::clicked;IF dw_edit_mode THEN RETURN String arg_msg = '' Long pagerert_row Long ll_i,ll_billid,ll_scid Int li_flag Long ll_suc,ll_fail IF Not KeyDown(KeyControl!) THEN pagerert_row = dw_pageretr.GetRow() IF pagerert_row <= 0 THEN MessageBox('系统提示','请选定当前目标单据!') RETURN END IF IF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 0 THEN IF Not f_power_ind(1857,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF MessageBox ("询问","是否确定要审核当前单据?",question!,yesno! ) = 2 THEN RETURN IF uo_ie.permit(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],publ_operator,arg_msg,True) = 0 THEN MessageBox('error!',arg_msg) ELSE MessageBox(publ_operator,'审核成功!') wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row]) END IF // ELSEIF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 1 And dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] = 0 THEN // IF Not f_power_ind(995,sys_msg_pow) THEN // MessageBox(publ_operator,sys_msg_pow) // RETURN // END IF // // IF MessageBox ("询问","是否确定要财务确认当前单据?",question!,yesno! ) = 2 THEN RETURN // // IF uo_ie.permit2(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],publ_operator,arg_msg,True) = 0 THEN // MessageBox('error!',arg_msg) // ELSE // MessageBox(publ_operator,'财务确认成功!') // wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row]) // END IF END IF ELSE IF Not f_power_ind(991,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF MessageBox ("询问","是否确定要批审核列表中未审核的单据?",question!,yesno! ) = 2 THEN RETURN dw_pageretr.AcceptText() Open(w_sys_wait_jdt) //初始化进度条 w_sys_wait_jdt.Show() w_sys_wait_jdt.wf_accepttol(dw_pageretr.RowCount()) FOR ll_i = 1 To dw_pageretr.RowCount() w_sys_wait_jdt.st_msg.Text = dw_pageretr.Object.u_income_expenses_billcode[ll_i] + " 正在审核..." //进度信息 li_flag = dw_pageretr.Object.u_income_expenses_flag[ll_i] IF li_flag = 1 THEN CONTINUE ll_billid = dw_pageretr.Object.u_income_expenses_billid[ll_i] IF uo_ie.permit(ll_billid,publ_operator,arg_msg,True) = 0 THEN ll_fail++ CONTINUE END IF ll_suc++ w_sys_wait_jdt.wf_inc(ll_i) //进度 NEXT Close(w_sys_wait_jdt) MessageBox(publ_operator,'批审核成功!成功:'+String(ll_suc)+',失败:'+String(ll_fail)) Parent.TriggerEvent('retrieve_pageretr') END IF end event type cb_xm from w_publ_1ton_share_detail`cb_xm within w_msttake_other boolean visible = false integer x = 3026 boolean enabled = false end type type cb_retrieve from w_publ_1ton_share_detail`cb_retrieve within w_msttake_other integer width = 142 end type type cb_xls from w_publ_1ton_share_detail`cb_xls within w_msttake_other integer x = 1865 end type type cb_help from w_publ_1ton_share_detail`cb_help within w_msttake_other integer x = 2167 end type type cb_auditing_cancel from w_publ_1ton_share_detail`cb_auditing_cancel within w_msttake_other integer x = 1019 integer width = 192 end type event cb_auditing_cancel::clicked;call super::clicked; IF dw_edit_mode THEN RETURN String arg_msg = '' String ls_code Long pagerert_row pagerert_row = dw_pageretr.GetRow() IF pagerert_row <= 0 THEN MessageBox('系统提示','请选定当前目标单据!') RETURN END IF IF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 1 And dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] = 0 THEN IF Not f_power_ind(1858,sys_msg_pow) THEN MessageBox(publ_operator,sys_msg_pow) RETURN END IF IF MessageBox ("询问","是否确定要撤消审核当前单据?",question!,yesno! ) = 2 THEN RETURN IF uo_ie.cancelpermit(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],arg_msg,True) = 0 THEN MessageBox('error!',arg_msg) ELSE MessageBox(publ_operator,'撤消审核成功!') wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row]) //日志 ls_code = dw_pageretr.Object.u_income_expenses_billcode[pagerert_row] f_setsysoplog('其它应收单','其它应收单撤审'+',code:'+ls_code,arg_msg,True) //-- END IF //ELSEIF dw_pageretr.Object.u_income_expenses_flag[pagerert_row] = 1 And dw_pageretr.Object.u_income_expenses_secflag[pagerert_row] = 1 THEN // // IF MessageBox ("询问","是否确定要财务反确认当前单据?",question!,yesno! ) = 2 THEN RETURN // // IF Not f_power_ind(996,sys_msg_pow) THEN // MessageBox(publ_operator,sys_msg_pow) // RETURN // END IF // // IF uo_ie.cancelpermit2(dw_pageretr.Object.u_income_expenses_billid[pagerert_row],arg_msg,True) = 0 THEN // MessageBox('error!',arg_msg) // ELSE // MessageBox(publ_operator,'财务反确认成功!') // wf_refresh_curuc(dw_pageretr.Object.u_income_expenses_billid[pagerert_row]) // // //日志 // ls_code = dw_pageretr.Object.u_income_expenses_billcode[pagerert_row] // f_setsysoplog('其它收入支出单','其它收入支出单财务反确认'+',code:'+ls_code,arg_msg,True) // //-- // END IF END IF end event type p_msg from w_publ_1ton_share_detail`p_msg within w_msttake_other end type type p_help from w_publ_1ton_share_detail`p_help within w_msttake_other end type type p_encl from w_publ_1ton_share_detail`p_encl within w_msttake_other end type type p_other from w_publ_1ton_share_detail`p_other within w_msttake_other end type type gb_3 from w_publ_1ton_share_detail`gb_3 within w_msttake_other end type type ln_bar from w_publ_1ton_share_detail`ln_bar within w_msttake_other integer endx = 2894 end type type ln_bar2 from w_publ_1ton_share_detail`ln_bar2 within w_msttake_other end type type r_bar from w_publ_1ton_share_detail`r_bar within w_msttake_other integer x = 3008 end type type ln_1 from w_publ_1ton_share_detail`ln_1 within w_msttake_other end type type ln_2 from w_publ_1ton_share_detail`ln_2 within w_msttake_other end type type ddlb_status from dropdownlistbox within w_msttake_other integer x = 1618 integer y = 188 integer width = 453 integer height = 412 integer taborder = 10 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 string text = "[全部]" boolean sorted = false string item[] = {"[全部]","待审核","审核完毕"} borderstyle borderstyle = stylelowered! end type event selectionchanged;IF Index = 1 THEN cur_flag = -1 cur_secflag = -1 ELSEIF Index = 2 THEN cur_flag = 0 cur_secflag = 0 ELSEIF Index = 3 THEN cur_flag = 1 cur_secflag = -1 //ELSEIF Index = 4 THEN // cur_flag = 1 // cur_secflag = 1 END IF Parent.TriggerEvent('retrieve_pageretr') end event type st_3 from statictext within w_msttake_other integer x = 1486 integer y = 204 integer width = 114 integer height = 48 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217739 string text = "状态" alignment alignment = center! boolean focusrectangle = false end type type ddlb_itemflag from dropdownlistbox within w_msttake_other boolean visible = false integer x = 2226 integer y = 188 integer width = 439 integer height = 300 integer taborder = 20 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 string text = "支出" boolean sorted = false string item[] = {"[全部]","支出","收入"} borderstyle borderstyle = stylelowered! end type event selectionchanged;IF This.Text = '[全部]' THEN cur_itemflag = 0 ELSEIF This.Text = '收入' THEN cur_itemflag = 1 ELSE cur_itemflag = -1 END IF Parent.TriggerEvent('retrieve_pageretr') end event type st_2 from statictext within w_msttake_other boolean visible = false integer x = 2085 integer y = 204 integer width = 119 integer height = 48 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217739 string text = "方向" boolean focusrectangle = false end type type ddlb_scid from uo_ddlb_scid within w_msttake_other integer x = 896 integer y = 188 integer width = 549 integer height = 1120 integer taborder = 20 boolean bringtotop = true end type event constructor;call super::constructor;cur_scid = This.uo_scid end event event selectionchanged;call super::selectionchanged;cur_scid = This.uo_scid Parent.TriggerEvent("retrieve_pageretr") end event type st_4 from statictext within w_msttake_other integer x = 713 integer y = 204 integer width = 165 integer height = 48 integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217739 string text = "分部" alignment alignment = right! boolean focusrectangle = false end type type cbx_1 from checkbox within w_msttake_other integer x = 2688 integer y = 196 integer width = 411 integer height = 60 boolean bringtotop = true integer textsize = -9 integer weight = 400 fontcharset fontcharset = gb2312charset! fontpitch fontpitch = variable! string facename = "宋体" long textcolor = 33554432 long backcolor = 134217739 string text = "保存自动新建" end type event constructor;int li_auto li_auto =long(f_profilestring(sys_empid, this.classname(), "auto_add", string(0))) if li_auto = 1 then this.checked = true else this.checked = false end if end event