123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146 |
- $PBExportHeader$uo_ddlb_scid.sru
- forward
- global type uo_ddlb_scid from dropdownlistbox
- end type
- end forward
- global type uo_ddlb_scid from dropdownlistbox
- integer width = 521
- integer height = 524
- integer taborder = 10
- integer textsize = -9
- integer weight = 400
- fontcharset fontcharset = gb2312charset!
- fontpitch fontpitch = variable!
- string facename = "宋体"
- long textcolor = 33554432
- boolean sorted = false
- boolean vscrollbar = true
- borderstyle borderstyle = stylelowered!
- end type
- global uo_ddlb_scid uo_ddlb_scid
- type variables
- long uo_scid
- long uo_scid_arr[]
- end variables
- forward prototypes
- public subroutine uf_selectsc (long arg_scid)
- end prototypes
- public subroutine uf_selectsc (long arg_scid);Long ll_count, ll_i
- ll_count = THIS.TotalItems()
- IF arg_scid = -1 THEN
- FOR ll_i = 1 TO ll_count
- IF THIS.Text(ll_i) = '[全部]' THEN
- THIS.SelectItem(ll_i)
- THIS.TRIGGER EVENT SelectionChanged(ll_i)
- RETURN
- END IF
- NEXT
- END IF
- string ls_txt
- FOR ll_i = 1 TO ll_count
- ls_txt = Mid ( THIS.Text(ll_i),Pos(THIS.Text(ll_i),'[') + 1,Len(THIS.Text(ll_i)) - Pos(THIS.Text(ll_i),'[') - 1 )
- IF string(arg_scid) = ls_txt THEN
- THIS.SelectItem(ll_i)
- THIS.TRIGGER EVENT SelectionChanged(ll_i)
- RETURN
- END IF
- NEXT
- end subroutine
- event constructor;Long ls_scid,ls_scid_save, ls_scid_get
- Long cnt = 0
- String ls_scname, ls_scname_get
- Long ll_i
- String ls_space
- Int li_spacenum
- String ls_scname_dft
- Boolean lb_getdft = FALSE
- ls_scid_save = Long(f_ProfileString(sys_empid, String(PARENT.ClassName()), "scid",'0'))
- SELECT count(*) INTO :cnt FROM u_scdef ;
- IF cnt > 1 THEN
- THIS.AddItem ('[全部]')
- END IF
- FOR ll_i = 1 TO UpperBound(sys_user_scid)
- ls_scid = sys_user_scid[ll_i]
- SELECT scname
- INTO :ls_scname
- FROM u_scdef
- Where scid = :ls_scid;
- IF sqlca.SQLCode <> 0 OR IsNull(ls_scname) THEN ls_scname = ''
-
- li_spacenum = 50 - Len(Trim(ls_scname)) - 2 - Len(String(ls_scid))
- ls_space = Fill(' ',li_spacenum)
-
- THIS.AddItem (ls_scname+ls_space+'['+String(ls_scid)+']')
-
- IF NOT lb_getdft THEN
- ls_scid_get = ls_scid
- ls_scname_get = ls_scname
- END IF
-
- IF ls_scid_save = ls_scid THEN
- lb_getdft = TRUE
- ls_scid_get = ls_scid
- ls_scname_get = ls_scname
- END IF
-
- NEXT
- //THIS.uo_scid = ls_scid
- //uo_scid_arr[1] = ls_scid
- //THIS.Text = ls_scname+ls_space+'['+String(ls_scid)+']'
- IF ls_scid_save = -1 THEN
- THIS.uo_scid = ls_scid_save
- THIS.uo_scid_arr = sys_user_scid
- THIS.Text = '[全部]'
- ELSE
- li_spacenum = 50 - Len(Trim(ls_scname_get)) - 2 - Len(String(ls_scid_get))
- ls_space = Fill(' ',li_spacenum)
- THIS.uo_scid = ls_scid_get
- THIS.uo_scid_arr[1] = ls_scid_get
- THIS.Text = ls_scname_get+ls_space+'['+String(ls_scid_get)+']'
- END IF
- end event
- event selectionchanged;long ll_scid_arr[]
- IF THIS.Text = '[全部]' THEN
- uo_scid = -1
- ll_scid_arr = sys_user_scid
- uo_scid_arr = ll_scid_arr
- ELSE
- uo_scid = Long(Mid ( THIS.Text,Pos(THIS.Text,'[') + 1,Len(THIS.Text) - Pos(THIS.Text,'[') - 1 ))
- ll_scid_arr[1] = uo_scid
- uo_scid_arr = ll_scid_arr
- END IF
- end event
- on uo_ddlb_scid.create
- end on
- on uo_ddlb_scid.destroy
- end on
- event destructor;f_SetProfileString(sys_empid, String(parent.ClassName()), "scid", string(this.uo_scid))
- //f_SetProfileString(SYS_INIFILENAME, String(parent.ClassName()), "scname", trim(mid(this.text,1,pos(this.text,' ') - 1)))
- end event
|