$PBExportHeader$w_xls_publ_pageretr.srw $PBExportComments$翻页窗口 forward global type w_xls_publ_pageretr from w_xls_publ_base end type type dw_pageretr from u_xls_dw_rbtnfilter within w_xls_publ_pageretr end type end forward global type w_xls_publ_pageretr from w_xls_publ_base integer width = 2501 integer height = 1720 string title = "no" event user_key ( ) event retrieve_pageretr ( ) dw_pageretr dw_pageretr end type global w_xls_publ_pageretr w_xls_publ_pageretr type variables String ori_oldselect //保存原始SELECT String ls_newselect //保存加入查询条件后的SELECT String pkcolumndbtname //PK列数据库中列名 Long onepage_rowlmno = 100 //页行最大行数 Boolean retrieve_all = true //是否全部RETRIEVE(不分页) Int mode = 0 //工作模式:0-编辑 1-带字符串参数预选择的选择/编辑 Long arg_pkid //目标定位id //备用 String arg_string_code //默认常用查询内容 String OLD_TITLE = '' //s_xls_edit_index_tran s_tran //传递参数使用 Int retrmode = 0 // 0 retrieve all;1 first page ;2 prior page;3 next page;4 last page end variables event retrieve_pageretr(); Boolean cb_firstpage_enabled,cb_nextpage_enabled,cb_retrieveall_enabled Boolean cb_priorpage_enabled,cb_func_enabled,cb_retrieve_enabled SetPointer(HourGlass!) dw_pageretr.Retrieve() IF dw_pageretr.RowCount() > 0 AND dw_pageretr.GetRow() = 0 THEN dw_pageretr.SetRow(1) SetPointer(Arrow!) end event on w_xls_publ_pageretr.create int iCurrent call super::create this.dw_pageretr=create dw_pageretr iCurrent=UpperBound(this.Control) this.Control[iCurrent+1]=this.dw_pageretr end on on w_xls_publ_pageretr.destroy call super::destroy destroy(this.dw_pageretr) end on event open; CALL SUPER::OPEN; OLD_TITLE = THIS.Title dw_pageretr.RBUTTON_FILTER_USE = TRUE //右键查询功能开关 dw_pageretr.titleclick_sort_use = TRUE //单击标题排序功能开关 dw_pageretr.SetTransObject (sqlca) end event type cb_func from w_xls_publ_base`cb_func within w_xls_publ_pageretr integer x = 1838 integer y = 76 integer height = 92 integer taborder = 30 end type type cb_exit from w_xls_publ_base`cb_exit within w_xls_publ_pageretr integer x = 1851 integer y = 208 integer height = 92 integer taborder = 20 end type type dw_pageretr from u_xls_dw_rbtnfilter within w_xls_publ_pageretr integer y = 168 integer width = 1184 integer height = 1336 integer taborder = 40 boolean titlebar = true boolean maxbox = true boolean hscrollbar = true boolean vscrollbar = true boolean resizable = true boolean border = false boolean hsplitscroll = true borderstyle borderstyle = styleraised! end type EVENT Clicked; CALL SUPER::Clicked; IF Not( dw_edit_mode OR row <= 0 ) THEN THIS.SetRow(row) END EVENT EVENT RowFocusChanged; CALL SUPER::RowFocusChanged; IF dw_edit_mode THEN RETURN IF currentrow <= 0 THEN RETURN THIS.SelectRow(0,FALSE) THIS.SelectRow(currentrow,TRUE) END EVENT EVENT dwnkey; CALL SUPER::dwnkey; PARENT.PostEvent('user_key') END EVENT