12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241 |
- $PBExportHeader$w_spt_edit.srw
- forward
- global type w_spt_edit from w_publ_edit_index
- end type
- type cbx_inuse from checkbox within w_spt_edit
- end type
- type tab_1 from tab within w_spt_edit
- end type
- type tabpage_1 from userobject within tab_1
- end type
- type dw_base from u_dw_rbtnfilter within tabpage_1
- end type
- type tabpage_1 from userobject within tab_1
- dw_base dw_base
- end type
- type tabpage_2 from userobject within tab_1
- end type
- type cb_add_xm from uo_imflatbutton within tabpage_2
- end type
- type dw_rep from u_dw_rbtnfilter within tabpage_2
- end type
- type cb_dele_xm from uo_imflatbutton within tabpage_2
- end type
- type tabpage_2 from userobject within tab_1
- cb_add_xm cb_add_xm
- dw_rep dw_rep
- cb_dele_xm cb_dele_xm
- end type
- type tab_1 from tab within w_spt_edit
- tabpage_1 tabpage_1
- tabpage_2 tabpage_2
- end type
- type cb_other from uo_imflatbutton within w_spt_edit
- end type
- type dw_spttype from u_dw_rbtnfilter within w_spt_edit
- end type
- type cbx_autocode from checkbox within w_spt_edit
- end type
- end forward
- global type w_spt_edit from w_publ_edit_index
- integer width = 3611
- integer height = 2068
- string title = "供应商"
- event ue_fj_edit ( )
- event ue_fj_view ( )
- event ue_mod_address ( )
- event ue_ch_banktype ( )
- event ue_ch_money ( )
- cbx_inuse cbx_inuse
- tab_1 tab_1
- cb_other cb_other
- dw_spttype dw_spttype
- cbx_autocode cbx_autocode
- end type
- global w_spt_edit w_spt_edit
- type variables
- s_spt INS_RT_STRU
- string oldcode,oldname,newcode,newname
- int inuse=1
- string cur_spttype = ''
- long ins_spttypeid
- datawindow dw_base,dw_rep
- uo_sptdef uo_spt
- end variables
- forward prototypes
- public subroutine wf_retrieve_rep ()
- public function integer wf_lock_uc ()
- public function string wf_sys_option_auto_code ()
- public function string wf_autocode (long arg_spttypeid)
- end prototypes
- event ue_fj_edit();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用', Information!, OK! )
- RETURN
- END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row
- ls_row = dw_uc.GetRow()
- IF ls_row <= 0 THEN
- MessageBox('提示','请选择资料', Information!, OK! )
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
- RETURN
- END IF
- s_pic.f_long = 404 //物料资料 mainID
- s_pic.f_string = dw_uc.Object.sptcode[ls_row]
- s_pic.g_long = dw_uc.Object.sptid[ls_row]
- 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_mng,s_pic)
- end event
- event ue_fj_view();IF dw_edit_mode THEN
- MessageBox('提示','编辑状态下不可用', Information!, OK! )
- RETURN
- END IF
- s_edit_index_tran s_pic
- Long ll_ConnectionID
- String arg_msg
- Long ls_row
- ls_row = dw_uc.GetRow()
- IF ls_row <= 0 THEN
- MessageBox('提示','请选择资料', Information!, OK! )
- RETURN
- END IF
- IF f_get_outerconnection(ll_ConnectionID,arg_msg) = 0 THEN
- MessageBox('提示','没有指定附件数据库连接'+arg_msg, Information!, OK! )
- RETURN
- END IF
- s_pic.f_long = 404 //物料资料 mainID
- s_pic.f_string = dw_uc.Object.sptcode[ls_row]
- s_pic.g_long = dw_uc.Object.sptid[ls_row]
- 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_mod_address();s_view_dscrp s_view,s_return
- String ls_dscrp
- dw_base.AcceptText()
- ls_dscrp = dw_base.Object.address[dw_base.GetRow()]
- s_view.Title = '地址'
- s_view.dscrp = ls_dscrp
- s_view.editmode = dw_edit_mode
- OpenWithParm(w_view_dscrp2,s_view)
- IF dw_edit_mode THEN
- s_return = Message.PowerObjectParm
- dw_base.Object.address[dw_base.GetRow()] = s_return.dscrp
- END IF
- end event
- event ue_ch_banktype();IF NOT IsValid(w_banktype_edit_ch) THEN
- s_edit_index_tran s_open //传递参数使用
- s_open.work_mode = 1
- s_open.c_long = 1
- Openwithparm(w_banktype_edit_ch, s_open)
- s_banktype s_ch
- s_ch = Message.PowerObjectParm
- IF s_ch.banktypeid > 0 THEN
- dw_base.Object.dftbanktypeid[dw_base.GetRow()] = s_ch.banktypeid
- END IF
-
- datawindowchild childdw
- dw_base.GetChild("dftbanktypeid",childdw)
- childdw.SetTransObject (sqlca)
- childdw.Retrieve()
- END IF
- end event
- event ue_ch_money();IF NOT IsValid(w_currency_edit_ch) THEN
- Open(w_currency_edit_ch)
- s_currency s_ch
- s_ch = Message.PowerObjectParm
- IF s_ch.moneyid > 0 THEN
- dw_base.Object.dftmoneyid[dw_base.GetRow()] = s_ch.moneyid
- //dw_base.Object.u_outware_mrate[dw_base.GetRow()] = s_ch.rate
- END IF
-
- datawindowchild childdw
- dw_base.GetChild("dftmoneyid",childdw)
- childdw.SetTransObject (sqlca)
- childdw.Retrieve()
- END IF
- end event
- public subroutine wf_retrieve_rep ();IF dw_index.GetRow() < 1 THEN RETURN
- Long ls_sptid
- ls_sptid = dw_index.Object.sptid[dw_index.GetRow() ]
- dw_rep.Retrieve(ls_sptid )
- end subroutine
- public function integer wf_lock_uc ();//wf_lock_uc
- INT LS_INT
- long ls_row
- long uc_column_int
- ls_row=dw_base.getrow()
- IF dw_edit_mode THEN
- // uc_column_int=long(dw_base.Describe("DataWindow.Column.Count"))
- // FOR LS_INT=1 TO uc_column_int
- // dw_base.SetTabOrder (LS_INT,LS_INT*10 )
- // NEXT
-
- uc_column_int=long(dw_rep.Describe("DataWindow.Column.Count"))
- FOR LS_INT=1 TO uc_column_int
- dw_rep.SetTabOrder (LS_INT,LS_INT*10 )
- NEXT
-
- ELSE
- // uc_column_int=long(dw_base.Describe("DataWindow.Column.Count"))
- // FOR LS_INT=1 TO uc_column_int
- // dw_base.SetTabOrder (LS_INT,0 )
- // NEXT
-
- uc_column_int=long(dw_rep.Describe("DataWindow.Column.Count"))
- FOR LS_INT=1 TO uc_column_int
- dw_rep.SetTabOrder (LS_INT,0 )
- NEXT
- END IF
- if ls_row>0 then dw_base.setrow(ls_row)
- RETURN 1
- end function
- public function string wf_sys_option_auto_code ();//
- long ll_cnt
- select max(sptid) into :ll_cnt from u_spt ;
- if isnull(ll_cnt) then ll_cnt=0
- return 'spt_' + string(ll_cnt + 1,'0000')
- end function
- public function string wf_autocode (long arg_spttypeid);string rslt = ''
- string ls_spttypecode
- long ll_runnum
- select spttypecode, runnum
- INTO :ls_spttypecode, :ll_runnum
- from u_spttype
- where spttypeid = :arg_spttypeid;
- if sqlca.sqlcode <> 0 then
- return rslt
- end if
- string ls_likestr
- string ls_initstr
- string ls_maxstr
- long ll_i
- ls_likestr = ls_spttypecode
- ls_initstr = ls_spttypecode
- for ll_i = 1 to ll_runnum
- ls_likestr = ls_likestr + '[0-9]'
- ls_initstr = ls_initstr + '0'
- next
- select isnull(max(sptcode), :ls_initstr)
- INTO :ls_maxstr
- from u_spt
- where sptcode like :ls_likestr;
- if sqlca.sqlcode <> 0 then
- return rslt
- end if
- long ll_max
- ll_max = long (mid(ls_maxstr, len(ls_spttypecode) + 1))
- ll_max = ll_max + 1
- rslt = ls_spttypecode + string(ll_max, mid(ls_initstr, len(ls_spttypecode) + 1))
- return rslt
- end function
- on w_spt_edit.create
- int iCurrent
- call super::create
- this.cbx_inuse=create cbx_inuse
- this.tab_1=create tab_1
- this.cb_other=create cb_other
- this.dw_spttype=create dw_spttype
- this.cbx_autocode=create cbx_autocode
- iCurrent=UpperBound(this.Control)
- this.Control[iCurrent+1]=this.cbx_inuse
- this.Control[iCurrent+2]=this.tab_1
- this.Control[iCurrent+3]=this.cb_other
- this.Control[iCurrent+4]=this.dw_spttype
- this.Control[iCurrent+5]=this.cbx_autocode
- end on
- on w_spt_edit.destroy
- call super::destroy
- destroy(this.cbx_inuse)
- destroy(this.tab_1)
- destroy(this.cb_other)
- destroy(this.dw_spttype)
- destroy(this.cbx_autocode)
- end on
- event close;call super::close;destroy uo_spt
- CLOSEWITHRETURN(THIS,INS_RT_STRU)
- //<INS_RT_STRU> 窗体级子定义结构变量,用于返回
- end event
- event open;INS_RT_STRU.sptid=0
- dw_base=tab_1.tabpage_1.dw_base
- dw_rep=tab_1.tabpage_2.dw_rep
- dw_spttype.SetTransObject (sqlca)
- dw_base.SetTransObject (sqlca)
- dw_rep.SetTransObject (sqlca)
- dw_spttype.Retrieve()
- CALL SUPER::open
- uo_spt = create uo_sptdef
- uo_spt.commit_transaction = sqlca
- end event
- event retrieve_uc;Boolean cb_firstpage_enabled,cb_nextpage_enabled,cb_retrieveall_enabled
- Boolean cb_priorpage_enabled,cb_func_enabled,cb_retrieve_enabled
- cb_firstpage_enabled = cb_firstpage.Enabled
- cb_nextpage_enabled = cb_nextpage.Enabled
- cb_retrieveall_enabled = cb_retrieveall.Enabled
- cb_priorpage_enabled = cb_priorpage.Enabled
- cb_func_enabled = cb_func.Enabled
- cb_retrieve_enabled = cb_retrieve.Enabled
- cb_firstpage.Enabled = FALSE
- cb_nextpage.Enabled = FALSE
- cb_retrieveall.Enabled = FALSE
- cb_priorpage.Enabled = FALSE
- cb_func.Enabled = FALSE
- cb_retrieve.Enabled = FALSE
- dw_UC.SetRedraw(FALSE)
- dw_index.ShareDataOff()
- SetPointer(HourGlass!)
- dw_base.InsertRow(0)
- dw_UC.Retrieve(inuse,sys_user_spttype,ins_spttypeid)
- SetPointer(Arrow!)
- dw_UC.ShareData(dw_index)
- dw_UC.SetRedraw(TRUE)
- IF dw_index.RowCount() >= 1 THEN
- dw_index.SelectRow(0,FALSE)
- dw_index.SelectRow(1,TRUE)
- else
- dw_base.reset( )
- dw_rep.reset( )
- END IF
- cb_firstpage.Enabled = cb_firstpage_enabled
- cb_nextpage.Enabled = cb_nextpage_enabled
- cb_retrieveall.Enabled = cb_retrieveall_enabled
- cb_priorpage.Enabled = cb_priorpage_enabled
- cb_func.Enabled = cb_func_enabled
- cb_retrieve.Enabled = cb_retrieve_enabled
- end event
- event ue_usual_query_filt;call super::ue_usual_query_filt;if dw_edit_mode or keydown(keyf4!) or keydown(keyf5!) then return
- string obj_expr=''
- if trim(sle_usual_query.text)<>'' then
- IF POS(trim(sle_usual_query.text),'%')=0 THEN
- obj_expr=obj_expr+'( sptcode LIKE "%'+trim(sle_usual_query.text)+'%" )'
- obj_expr=obj_expr+' or (name LIKE "%'+trim(sle_usual_query.text)+'%" )'
- ELSE
- obj_expr=obj_expr+'( sptcode LIKE "'+trim(sle_usual_query.text)+'") '
- obj_expr=obj_expr+' or (name LIKE "'+trim(sle_usual_query.text)+'" )'
- END IF
- end if
- dw_UC.setfilter(obj_expr)
- dw_UC.SetRedraw(False)
- dw_INDEX.SetRedraw(False)
- dw_UC.filter()
- if dw_index.rowcount()>=1 then
- dw_index.selectrow(0,false)
- dw_index.selectrow(1,true)
- end if
- dw_UC.SetRedraw(TRUE)
- dw_INDEX.SetRedraw(TRUE)
- end event
- event ue_usual_query_retr;call super::ue_usual_query_retr;IF dw_edit_mode OR KeyDown(keyf4!) OR KeyDown(keyf5!) THEN RETURN
- String ls_querystrpart = ''
- ls_newselect = Lower(ori_oldselect)
- IF Trim(sle_usual_query.Text) <> '' THEN
- IF Pos(Trim(sle_usual_query.Text),'%') = 0 THEN
- ls_querystrpart = ls_querystrpart + "(sptcode like '%"+Trim(sle_usual_query.Text)+"%'"
- ls_querystrpart = ls_querystrpart + " or name like '%"+Trim(sle_usual_query.Text)+"%')"
- ELSE
- ls_querystrpart = ls_querystrpart + "(sptcode like '"+Trim(sle_usual_query.Text)+"'"
- ls_querystrpart = ls_querystrpart + " or name 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_uc,ls_newselect,1)
- THIS.TriggerEvent('retrieve_uc') //注意必须有此句
- end event
- event refresh_interface;call super::refresh_interface;cbx_inuse.enabled=not dw_edit_mode
- wf_lock_uc()
- dw_base.Enabled = dw_edit_mode
- dw_index.Enabled = Not dw_edit_mode
- end event
- event ue_before_open;call super::ue_before_open;if_ue_retr = TRUE
- if_ue_filter = TRUE
- if_ue_sort = TRUE
- if_ue_sentdataout = TRUE
- end event
- type cb_func from w_publ_edit_index`cb_func within w_spt_edit
- end type
- type cb_exit from w_publ_edit_index`cb_exit within w_spt_edit
- integer x = 1682
- end type
- type sle_usual_query from w_publ_edit_index`sle_usual_query within w_spt_edit
- integer x = 343
- end type
- type cb_nextpage from w_publ_edit_index`cb_nextpage within w_spt_edit
- integer x = 2560
- end type
- type cb_priorpage from w_publ_edit_index`cb_priorpage within w_spt_edit
- integer x = 2409
- end type
- type cb_firstpage from w_publ_edit_index`cb_firstpage within w_spt_edit
- integer x = 2258
- end type
- type cb_retrieveall from w_publ_edit_index`cb_retrieveall within w_spt_edit
- integer x = 2107
- end type
- type em_pagerowno from w_publ_edit_index`em_pagerowno within w_spt_edit
- integer x = 1797
- integer width = 315
- string text = "9999999"
- end type
- type st_pagerowno from w_publ_edit_index`st_pagerowno within w_spt_edit
- integer x = 1797
- end type
- type st_1 from w_publ_edit_index`st_1 within w_spt_edit
- integer width = 329
- string text = "编码/名称含"
- alignment alignment = center!
- end type
- type cb_add from w_publ_edit_index`cb_add within w_spt_edit
- end type
- event cb_add::clicked;IF Not f_power_ind(92) THEN
- MessageBox('提示','你没有使用权限!', Information!, OK! )
- RETURN
- END IF
- Long ll_sptid = 0,i,ll_repid
- String errmsg = ''
- IF dw_edit_mode THEN
- dw_uc.AcceptText()
- dw_base.AcceptText()
- dw_rep.AcceptText()
-
- IF dw_base.GetNextModified(0, Primary!) = 0 And dw_rep.GetNextModified(0, Primary!) = 0 THEN
- MessageBox('提示','没有任何修改,不可以保存!', Information!, OK! )
- RETURN
- END IF
-
- dw_uc.Object.Name[dw_uc.GetRow()] = Trim(dw_base.Object.Name[dw_base.GetRow()])
- dw_uc.Object.spttype[dw_uc.GetRow()] = Trim(dw_base.Object.spttype[dw_base.GetRow()])
- dw_uc.Object.rep[dw_uc.GetRow()] = Trim(dw_base.Object.rep[dw_base.GetRow()])
- dw_uc.Object.tele[dw_uc.GetRow()] = Trim(dw_base.Object.tele[dw_base.GetRow()])
- dw_uc.Object.tele1[dw_uc.GetRow()] = Trim(dw_base.Object.tele1[dw_base.GetRow()])
- dw_uc.Object.bank[dw_uc.GetRow()] = Trim(dw_base.Object.bank[dw_base.GetRow()])
- dw_uc.Object.cunt[dw_uc.GetRow()] = Trim(dw_base.Object.cunt[dw_base.GetRow()])
- dw_uc.Object.code[dw_uc.GetRow()] = Trim(dw_base.Object.code[dw_base.GetRow()])
- dw_uc.Object.Address[dw_uc.GetRow()] = Trim(dw_base.Object.Address[dw_base.GetRow()])
- dw_uc.Object.dscrp[dw_uc.GetRow()] = Trim(dw_base.Object.dscrp[dw_base.GetRow()])
- dw_uc.Object.sptcode[dw_uc.GetRow()] = Upper(Trim(dw_base.Object.sptcode[dw_base.GetRow()]))
- dw_uc.Object.faxno[dw_uc.GetRow()] = Trim(dw_base.Object.faxno[dw_base.GetRow()])
- dw_uc.Object.email[dw_uc.GetRow()] = Trim(dw_base.Object.email[dw_base.GetRow()])
- dw_uc.Object.inuse[dw_uc.GetRow()] = dw_base.Object.inuse[dw_base.GetRow()]
- dw_uc.Object.spttypeid[dw_uc.GetRow()] = dw_base.Object.spttypeid[dw_base.GetRow()]
-
- dw_uc.Object.dftmoneyid[dw_uc.GetRow()] = dw_base.Object.dftmoneyid[dw_base.GetRow()]
- dw_uc.Object.dftbanktypeid[dw_uc.GetRow()] = dw_base.Object.dftbanktypeid[dw_base.GetRow()]
-
- dw_uc.Object.industry[dw_uc.GetRow()] = dw_base.Object.industry[dw_base.GetRow()]
-
- dw_uc.Object.tax[dw_uc.GetRow()] = dw_base.Object.tax[dw_base.GetRow()]
-
-
- dw_uc.Object.opdate[dw_uc.GetRow()] = Today()
- dw_uc.Object.opemp[dw_uc.GetRow()] = publ_operator
- dw_base.Object.opdate[dw_base.GetRow()] = Today()
- dw_base.Object.opemp[dw_base.GetRow()] = publ_operator
- dw_uc.AcceptText( )
-
-
- IF dw_base.Object.sptcode[dw_base.GetRow()] = '' THEN
- MessageBox('提示','请输入供应商编号!', Information!, OK! )
- dw_base.SetFocus()
- dw_base.SetColumn("sptcode")
- RETURN
- END IF
-
- IF dw_base.Object.Name[dw_base.GetRow()] = '' THEN
- MessageBox('提示','请输入供应商名称!', Information!, OK! )
- dw_base.SetFocus()
- dw_base.SetColumn("name")
- RETURN
- END IF
-
- IF dw_base.Object.spttypeid[dw_base.GetRow()] = 0 THEN
- MessageBox('提示','请输入供应商类别!', Information!, OK! )
- dw_base.SetFocus()
- dw_base.SetColumn("spttypeid")
- RETURN
- END IF
-
- IF dw_base.Object.dftmoneyid[dw_base.GetRow()] = 0 THEN
- MessageBox('提示','请选择币种!', Information!, OK! )
- dw_base.SetFocus()
- dw_base.SetColumn("dftmoneyid")
- RETURN
- END IF
-
- IF dw_base.Object.dftbanktypeid[dw_base.GetRow()] = 0 THEN
- MessageBox('提示','请选择结算方式!', Information!, OK! )
- dw_base.SetFocus()
- dw_base.SetColumn("dftbanktypeid")
- RETURN
- END IF
-
- //////////////////////////////////////////////// //
- IF dw_uc.Object.sptID[dw_uc.GetRow()] = 0 THEN
- uo_spt.newbegin(0)
- ELSE
- newcode = dw_uc.Object.sptcode[dw_uc.GetRow()]
- newname = dw_uc.Object.Name[dw_uc.GetRow()]
- String arg_msg
- f_setsysoplog('定义资料','供应商修改,原:'+oldcode+','+oldname+'->新:'+newcode+','+newname,arg_msg,False)
- END IF
- Long ll_cnt
- ll_cnt = dw_rep.RowCount( )
-
- FOR i = 1 To ll_cnt
- dw_rep.Object.sptID[i] = dw_uc.Object.sptID[dw_uc.GetRow()]
-
- IF dw_rep.Object.repid[i] = 0 And Trim(dw_rep.Object.repname[i]) = '' THEN
- dw_rep.DeleteRow( i)
- CONTINUE
- END IF
-
- IF dw_rep.Object.repid[i] = 0 THEN
- ll_repid = f_sys_scidentity(0,"u_spt_rep","repid",errmsg,False,sqlca)
- IF ll_repid <= 0 THEN
- MessageBox("提示",errmsg, Information!, OK! )
- RETURN
- ELSE
- dw_rep.Object.repid[i] = ll_repid
- END IF
- END IF
-
- NEXT
-
- uo_spt.s_sptdef.sptcode = dw_uc.Object.sptcode[dw_uc.GetRow()]
- uo_spt.s_sptdef.Name = dw_uc.Object.Name[dw_uc.GetRow()]
- uo_spt.s_sptdef.spttype = dw_uc.Object.spttype[dw_uc.GetRow()]
- uo_spt.s_sptdef.rep = dw_uc.Object.rep[dw_uc.GetRow()]
- uo_spt.s_sptdef.tele = dw_uc.Object.tele[dw_uc.GetRow()]
- uo_spt.s_sptdef.tele1 = dw_uc.Object.tele1[dw_uc.GetRow()]
- uo_spt.s_sptdef.bank = dw_uc.Object.bank[dw_uc.GetRow()]
- uo_spt.s_sptdef.cunt = dw_uc.Object.cunt[dw_uc.GetRow()]
- uo_spt.s_sptdef.Address = dw_uc.Object.Address[dw_uc.GetRow()]
- uo_spt.s_sptdef.code = dw_uc.Object.code[dw_uc.GetRow()]
- uo_spt.s_sptdef.dscrp = dw_uc.Object.dscrp[dw_uc.GetRow()]
- uo_spt.s_sptdef.faxno = dw_uc.Object.faxno[dw_uc.GetRow()]
- uo_spt.s_sptdef.inuse = dw_uc.Object.inuse[dw_uc.GetRow()]
- uo_spt.s_sptdef.email = dw_uc.Object.email[dw_uc.GetRow()]
- uo_spt.s_sptdef.spttypeid = dw_uc.Object.spttypeid[dw_uc.GetRow()]
- uo_spt.s_sptdef.dftmoneyid = dw_uc.Object.dftmoneyid[dw_uc.GetRow()]
- uo_spt.s_sptdef.dftbanktypeid = dw_uc.Object.dftbanktypeid[dw_uc.GetRow()]
- uo_spt.s_sptdef.industry = dw_uc.Object.industry[dw_uc.GetRow()]
-
- uo_spt.s_sptdef.tax = dw_uc.Object.tax[dw_uc.GetRow()]
-
-
- dw_rep.AcceptText()
-
- ll_cnt = dw_rep.RowCount( )
- FOR i = 1 To ll_cnt
- IF dw_rep.Object.repid[i] > 0 THEN
- IF uo_spt.acceptmx(dw_rep.Object.repid[i],&
- dw_rep.Object.sptID[i],&
- dw_rep.Object.repname[i],&
- dw_rep.Object.duty[i],&
- dw_rep.Object.sex[i],&
- dw_rep.Object.officetel[i],&
- dw_rep.Object.handtel[i],&
- dw_rep.Object.faxno[i],&
- dw_rep.Object.email[i],&
- dw_rep.Object.dscrp[i],&
- arg_msg) = 0 THEN
- MessageBox('Error!',arg_msg)
- RETURN
- END IF
- END IF
- NEXT
- /////////////////////////// //
-
- END IF
- IF dw_edit_mode THEN
- String ls_errmsg
- IF uo_spt.Save( True, ls_errmsg) = 0 THEN
- MessageBox ("提示",ls_errmsg+",保存操作失败!", Information!, OK! )
- ls_update_flag = False
- RETURN
- ELSE
- dw_uc.Object.sptID[dw_uc.GetRow()] = uo_spt.sptID
- ls_update_flag = True
- END IF
- ins_sqlerrtext = ""
- dw_uc.Enabled = False
- ELSE
- Long li_row, li_cur_row
- li_cur_row = dw_uc.GetRow()
- li_row = dw_uc.InsertRow (li_cur_row)
- dw_uc.SetRow (li_row)
- dw_uc.ScrollToRow (li_row)
- dw_index.SetRow (li_row)
- dw_index.ScrollToRow (li_row)
- dw_rep.reset( )
- modifyrow_no = li_row
-
- dw_rep.InsertRow(0)
- //系统选项266 直接自动流水号
- IF sys_option_auto_code = 1 THEN
- dw_base.Object.sptcode[dw_base.GetRow()] = wf_sys_option_auto_code()
- ELSE
- IF ins_spttypeid > 0 THEN
- dw_base.Object.spttypeid[dw_base.GetRow()] = ins_spttypeid
- IF cbx_autocode.Checked THEN
- dw_base.Object.sptcode[dw_base.GetRow()] = wf_autocode(ins_spttypeid)
- END IF
- END IF
- END IF
-
-
- END IF
- dw_edit_mode = Not dw_edit_mode
- wf_face_change()
- IF dw_edit_mode THEN
- IF cb_mode_itfchg.Text = '<<' THEN
- cb_mode_itfchg.TriggerEvent(Clicked!)
- END IF
- ELSE
- wf_index_uc()
- END IF
- dw_index.rbutton_filter_use = Not dw_edit_mode
- wf_editindex_lockf()
- IF dw_edit_mode THEN
-
- dw_base.SetFocus( )
- dw_base.SetColumn('sptcode')
- IF ins_spttypeid > 0 THEN
- dw_base.Object.spttypeid[dw_base.GetRow()] = ins_spttypeid
- END IF
- END IF
- end event
- type cb_edit from w_publ_edit_index`cb_edit within w_spt_edit
- end type
- event cb_edit::clicked;if not f_power_ind(92) then
- messagebox('提示','你没有使用权限!', Information!, OK! )
- return
- end if
- if dw_uc.getrow()<1 then return
- CALL SUPER::CLICKED
- if dw_edit_mode then
- dw_base.setfocus( )
- dw_base.SetColumn('sptcode')
- oldcode=DW_UC.OBJECT.sptcode[DW_UC.GETROW()]
- oldname=DW_UC.OBJECT.name[DW_UC.GETROW()]
- string arg_msg = ''
- if uo_spt.updatebegin(dw_uc.Object.sptid[dw_uc.GetRow()],arg_msg) = 0 then
- messagebox('错误',arg_msg, StopSign!, OK! )
- return
- end if
- else
- oldcode=''
- oldname=''
- end if
- end event
- type cb_delet from w_publ_edit_index`cb_delet within w_spt_edit
- end type
- event cb_delet::clicked;IF Not f_power_ind(92) THEN
- MessageBox('提示','你没有使用权限!', Information!, OK! )
- RETURN
- END IF
- Long ll_row
- Long LS_id
- Long LS_LONG = 0
- String ls_code,arg_msg
- ll_row = dw_uc.GetRow()
- IF dw_uc.GetRow() <= 0 THEN
- MessageBox('提示','没有操作目标记录!', Information!, OK! )
- RETURN
- END IF
- LS_id = dw_uc.Object.sptid[dw_uc.GetRow()]
- ls_code = dw_uc.Object.sptcode[dw_uc.GetRow()]
- IF MessageBox ("询问","是否确定要删除当前记录?(选择确定后记录将不可恢复)",Question!,YesNo! ) = 2 THEN
- RETURN
- END IF
- //DW_UC.SetRedraw (False)
- IF uo_spt.del( LS_id, ls_code,arg_msg, True) = 0 THEN
- MessageBox ("错误","删除记录操作失败!"+arg_msg,StopSign!,OK!)
- RETURN
- END IF
- //DW_UC.SetRedraw (True)
- dw_uc.DeleteRow(ll_row)
- dw_uc.ShareData(dw_index)
- dw_index.TriggerEvent(RowFocusChanged!)
- //Parent.TriggerEvent('retrieve_uc')
- //WF_INDEX_UC()
- end event
- type cb_choice from w_publ_edit_index`cb_choice within w_spt_edit
- integer x = 1381
- end type
- event cb_choice::clicked;call super::clicked;LONG LS_ROW
- LS_ROW=dw_uc.getrow()
- if LS_ROW<=0 then
- messagebox('提示','请先选择目标行!',StopSign!)
- return
- end if
- INS_RT_STRU.sptid=dw_uc.OBJECT.sptid[LS_ROW]
- INS_RT_STRU.name=dw_uc.OBJECT.name[LS_ROW]
- INS_RT_STRU.spttype=dw_uc.OBJECT.spttype[LS_ROW]
- INS_RT_STRU.rep=dw_uc.OBJECT.rep[LS_ROW]
- INS_RT_STRU.tele=dw_uc.OBJECT.tele[LS_ROW]
- INS_RT_STRU.tele1=dw_uc.OBJECT.tele1[LS_ROW]
- INS_RT_STRU.bank=dw_uc.OBJECT.bank[LS_ROW]
- INS_RT_STRU.cunt=dw_uc.OBJECT.cunt[LS_ROW]
- INS_RT_STRU.code=dw_uc.OBJECT.code[LS_ROW]
- INS_RT_STRU.dscrp=dw_uc.OBJECT.dscrp[LS_ROW]
- INS_RT_STRU.address=dw_uc.OBJECT.address[LS_ROW]
- INS_RT_STRU.sptcode=dw_uc.OBJECT.sptcode[LS_ROW]
- INS_RT_STRU.dftmoneyid=dw_uc.OBJECT.dftmoneyid[LS_ROW]
- INS_RT_STRU.dftbanktypeid=dw_uc.OBJECT.dftbanktypeid[LS_ROW]
- CLOSE(PARENT)
- end event
- type cb_cancel from w_publ_edit_index`cb_cancel within w_spt_edit
- end type
- type cbx_mlselect from w_publ_edit_index`cbx_mlselect within w_spt_edit
- integer x = 2103
- end type
- type cbx_allselect from w_publ_edit_index`cbx_allselect within w_spt_edit
- integer x = 2345
- end type
- type cb_mode_itfchg_b from w_publ_edit_index`cb_mode_itfchg_b within w_spt_edit
- end type
- type cb_mode_itfchg from w_publ_edit_index`cb_mode_itfchg within w_spt_edit
- integer x = 1303
- integer width = 78
- end type
- type gb_1 from w_publ_edit_index`gb_1 within w_spt_edit
- end type
- type dw_uc from w_publ_edit_index`dw_uc within w_spt_edit
- boolean visible = false
- integer x = 1970
- integer width = 1623
- integer height = 1564
- string dataobject = "dw_spt_edit"
- end type
- type cb_retrieve from w_publ_edit_index`cb_retrieve within w_spt_edit
- end type
- type cb_print from w_publ_edit_index`cb_print within w_spt_edit
- integer x = 1111
- end type
- event cb_print::clicked;call super::clicked;S_print_MSG LS_PRMSG
- LS_PRMSG.obj_dwNAME = 'dw_rp_spt'
- LS_PRMSG.SHARE_DW = DW_UC
- LS_PRMSG.TAG_TEXT = PARENT.Title
- LS_PRMSG.SETUP_FLAG = 0
- LS_PRMSG.PAGECH_FLAG = 1
- OpenWithParm(w_publ_preview,LS_PRMSG)
- end event
- type ln_bar from w_publ_edit_index`ln_bar within w_spt_edit
- end type
- type ln_bar2 from w_publ_edit_index`ln_bar2 within w_spt_edit
- end type
- type r_bar from w_publ_edit_index`r_bar within w_spt_edit
- integer x = 2775
- end type
- type ln_1 from w_publ_edit_index`ln_1 within w_spt_edit
- end type
- type ln_2 from w_publ_edit_index`ln_2 within w_spt_edit
- end type
- type dw_index from w_publ_edit_index`dw_index within w_spt_edit
- integer x = 795
- integer width = 1170
- integer height = 1660
- string dataobject = "dw_spt_index"
- end type
- event dw_index::rowfocuschanged;currentrow = This.GetRow( )
- IF if_mlselect = 1 THEN
- IF currentrow <= 0 THEN RETURN
- IF KeyDown(keycontrol!) THEN
- IF This.IsSelected(currentrow) THEN
- This.SelectRow(currentrow,False)
- if_changeselect = False
- ELSE
- if_changeselect = True
- END IF
- ELSE
- IF Not This.IsSelected(currentrow) THEN
- This.SelectRow(currentrow,True)
- if_changeselect = False
- ELSE
- if_changeselect = True
- END IF
- END IF
- ELSE
- //if dw_edit_mode then return
- IF currentrow <= 0 THEN RETURN
- This.SelectRow(0,False)
- This.SelectRow(currentrow,True)
- END IF
- dw_uc.SetRow(currentrow)
- // dw_uc.ScrollToRow (currentrow)
- dw_uc.RowsCopy(currentrow, currentrow, Primary!, dw_base , 1, Primary!)
- wf_retrieve_rep()
- end event
- type cb_help from w_publ_edit_index`cb_help within w_spt_edit
- integer x = 1531
- end type
- type cbx_inuse from checkbox within w_spt_edit
- integer x = 864
- integer y = 204
- integer width = 389
- integer height = 60
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long backcolor = 134217739
- string text = "只显示有效"
- boolean checked = true
- end type
- event clicked;if dw_edit_mode then return
- if this.checked then
- inuse=1
- else
- inuse=-1
- end if
- parent.triggerevent("retrieve_uc")
- end event
- event constructor;IF not sys_power_issuper and f_power_ind(1463) THEN
- This.Checked = True
- This.Visible = False
- END IF
- end event
- type tab_1 from tab within w_spt_edit
- integer x = 1970
- integer y = 292
- integer width = 1623
- integer height = 1668
- integer taborder = 70
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long backcolor = 134217739
- boolean raggedright = true
- boolean focusonbuttondown = true
- boolean boldselectedtext = true
- integer selectedtab = 1
- tabpage_1 tabpage_1
- tabpage_2 tabpage_2
- end type
- on tab_1.create
- this.tabpage_1=create tabpage_1
- this.tabpage_2=create tabpage_2
- this.Control[]={this.tabpage_1,&
- this.tabpage_2}
- end on
- on tab_1.destroy
- destroy(this.tabpage_1)
- destroy(this.tabpage_2)
- end on
- event selectionchanged;choose case newindex
- case 1
- dw_base.setfocus( )
- case 2
- dw_rep.setfocus( )
- end choose
- end event
- type tabpage_1 from userobject within tab_1
- integer x = 18
- integer y = 96
- integer width = 1586
- integer height = 1556
- long backcolor = 134217739
- string text = "供应商资料"
- long tabtextcolor = 33554432
- long tabbackcolor = 134217739
- long picturemaskcolor = 536870912
- dw_base dw_base
- end type
- on tabpage_1.create
- this.dw_base=create dw_base
- this.Control[]={this.dw_base}
- end on
- on tabpage_1.destroy
- destroy(this.dw_base)
- end on
- type dw_base from u_dw_rbtnfilter within tabpage_1
- integer width = 1577
- integer height = 1532
- integer taborder = 20
- boolean enabled = false
- string dataobject = "dw_spt_edit"
- end type
- event constructor;autosave_setlayout_USE= false
- end event
- event dwnkey;call super::dwnkey;IF Key = KeyEnter! THEN //
- keybd_event ( 9, 0, 0 , 0 ) // 按下tab
- keybd_event ( 9, 0, 2, 0 ) // 释放tab
- RETURN 1
- END IF
- end event
- event clicked;call super::clicked;IF dwo.Name = 'p_1' THEN
- Parent.GetParent().GetParent().TriggerEvent('ue_mod_address')
- END IF
- IF dw_edit_mode THEN
- IF dwo.Name = 'p_banktype' THEN
- GetParentWin().TriggerEvent('ue_ch_banktype')
- ELSEIF dwo.Name = 'p_money' THEN
- GetParentWin().TriggerEvent('ue_ch_money')
- END IF
- END IF
- end event
- type tabpage_2 from userobject within tab_1
- integer x = 18
- integer y = 96
- integer width = 1586
- integer height = 1556
- long backcolor = 134217739
- string text = "联系人"
- long tabtextcolor = 33554432
- long tabbackcolor = 134217739
- long picturemaskcolor = 536870912
- cb_add_xm cb_add_xm
- dw_rep dw_rep
- cb_dele_xm cb_dele_xm
- end type
- on tabpage_2.create
- this.cb_add_xm=create cb_add_xm
- this.dw_rep=create dw_rep
- this.cb_dele_xm=create cb_dele_xm
- this.Control[]={this.cb_add_xm,&
- this.dw_rep,&
- this.cb_dele_xm}
- end on
- on tabpage_2.destroy
- destroy(this.cb_add_xm)
- destroy(this.dw_rep)
- destroy(this.cb_dele_xm)
- end on
- type cb_add_xm from uo_imflatbutton within tabpage_2
- integer x = 901
- integer y = 1420
- integer width = 384
- integer height = 92
- integer taborder = 60
- boolean bringtotop = true
- boolean enabled = false
- string text = "增联系人[&A]"
- end type
- event clicked;call super::clicked;long li_row
- li_row=dw_rep.insertrow(0)
- dw_rep.scrolltorow (li_row)
- dw_rep.setcolumn( 'repname')
- dw_rep.SetFocus()
- end event
- type dw_rep from u_dw_rbtnfilter within tabpage_2
- integer y = 12
- integer width = 1568
- integer height = 1392
- integer taborder = 20
- string dataobject = "dw_spt_rep"
- boolean hscrollbar = true
- boolean vscrollbar = true
- boolean hsplitscroll = true
- end type
- event constructor;autosave_setlayout_USE= false
- 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
- If keydown(Keydownarrow!) Then
- if this.getrow()=this.rowcount() then
- this.insertrow(0)
- end if
- end if
- end event
- type cb_dele_xm from uo_imflatbutton within tabpage_2
- integer x = 1280
- integer y = 1420
- integer width = 274
- integer height = 92
- integer taborder = 60
- boolean bringtotop = true
- boolean enabled = false
- string text = "删联系人"
- end type
- event clicked;call super::clicked;dw_rep.DeleteRow (0)
- dw_rep.TriggerEvent (rowfocuschanged!)
- end event
- type cb_other from uo_imflatbutton within w_spt_edit
- integer x = 837
- integer width = 274
- integer height = 164
- integer taborder = 50
- 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
- menustr = "Text=图片管理~tEvent=ue_fj_edit"
- menustr = menustr + "|" + "Text=图片查看~tEvent=ue_fj_view"
- 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 dw_spttype from u_dw_rbtnfilter within w_spt_edit
- integer y = 292
- integer width = 791
- integer height = 1660
- integer taborder = 20
- boolean bringtotop = true
- string dataobject = "dw_spttype_index"
- end type
- event rowfocuschanged;call super::rowfocuschanged;IF currentrow <= 0 THEN RETURN
- This.SelectRow(0,False)
- This.SelectRow(currentrow,True)
- IF dw_spttype.GetRow() <= 0 THEN
- ins_spttypeid = 0
- ELSE
- ins_spttypeid = dw_spttype.Object.spttypeid[dw_spttype.GetRow()]
- END IF
- Parent.TriggerEvent('retrieve_uc')
- end event
- event rowfocuschanging;call super::rowfocuschanging;IF dw_edit_mode THEN return 1
- end event
- type cbx_autocode from checkbox within w_spt_edit
- integer x = 1307
- integer y = 204
- integer width = 690
- integer height = 60
- boolean bringtotop = true
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long backcolor = 134217739
- string text = "新建供应商使用自动编码"
- end type
- event constructor;long if_autocode
- if_autocode = Integer(f_ProfileString (sys_empid,dw_index.DataObject, "if_autocode", '0'))
- IF if_autocode = 0 THEN
- THIS.Checked = FALSE
- ELSE
- THIS.Checked = TRUE
- END IF
- end event
- event clicked;long if_autocode = 0
- IF THIS.Checked THEN
- if_autocode = 1
- ELSE
- if_autocode = 0
- END IF
- f_SetProfileString (sys_empid,dw_index.DataObject, "if_autocode", String(if_autocode))
- end event
|