找回密码
 注册账号

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

初学者课程:T3自学|T6自学|U8自学软件下载课件下载工具下载资料:通资料|U8资料|NC|培训|年结积分规则 | 使用常见问题Q&A
知识库:U8 | | NC | U9 | OA | 政务U8|U9|NCC|NC65|NC65客开|NCC客开新手必读 | 任务 | 快速增金币用友QQ群[微信群]
查看: 6186|回复: 4

参照控件使用说明一

[复制链接]
发表于 2008-8-19 22:21:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册账号

×
参照控件设计说明
参照组件的设计采用多层结构,显示逻辑与业务逻辑、数据库操作逻辑分开,具体分成两个组件,数据显示组件UFReferClient(客户端),以dll形式提供,数据处理组件UFReferServer,以dll形式提供。UFReferClient处理与用户的交互,用来显示数据、选择数据、定位等功能,其文件名称为:UFReferC.dll; UFReferServer(服务端)处理业务逻辑,包含栏目设置,权限的区分,分页的管理,结果集的回送等,其文件名称为:UFReferS.dll

参照客户端
属性
recmx
        返回选择的记录集(对象):它为ADO.Recordset数据类型
        语法
object.recmx
        object 所在处代表一个对象表达式,其值是参照客户端对象。
        说明
        使用该属性,可以获得参照客户端选中的记录。
        注意
        按ESC键、退出键、窗口关闭按钮,参照没有数据,这四种情况将返回nothing,其它返回选中的数据集

RstSelClass
        返回项目大类的项目分类
        语法
object. RstSelClass
        object 所在处代表一个对象表达式,其值是参照客户端对象。
        说明
        使用该属性,可以获得枚举类型参照的选中的项目大类数据集。该数据集含有字段有:cItem_Class,cItem_Name,cItem_Text,cRule,cTable,cClassTable

m_bColSet
        强制设置参照不显示栏目设置按钮。
        语法
object. m_bColSet [= boolean]
        Enabled 属性的语法包含下面部分:
部分        描述
object        代表一个对象表达式,其值是参照客户端对象
boolean        用来强制设置栏目不显示

        说明
        根据调用参照的接口和参数,参照客户端可以自动判定是否具有栏目设置按钮,但可以强制不显示栏目设置按钮。该属性的设置常用于Web调用。目的对显示数据不再根据栏目的设置刷新数据

方法和函数
SetRWAuth 方法
设置权限,仅用于数据库表:Customer、Vendor、Inventory、Department、Person、Warehouse、Position、Fitem
注意:该方法调用只针对调用枚举函数(EnumRefInit)接口和项目函数(ItemRefInit)初始化参照才起作用,其它一律无效,即字符串参照和数据集参照初始化无效。
语法
object.SetRWAuth(TableName As String, [cFunId As String], [bControl As Boolean = True])
SetRWAuth方法的语法包含下列部分:
部分        描述
object        必需的。代表一个对象表达式,其值是参照客户端对象
TableName        需要控制权限的数据库表
cFunId        可选项。默认为读权限
bControl        可选项。默认为控制权限
设置值
TableName的设置值有:
值        描述
“Customer”        客户档案表名
“Vendor”        供应商档案表名t
“Inventory”        存货档案表名
“Department”        部门档案表名
“Person”        职员档案表名
“Warehouse”        仓库档案表名
“Position”        货位档案表名
“Fitem”        项目大类表名

cFunId的设置值有:
值        描述
“”        默认读权限
“R”        读权限
“W”        写权限

bControl 的设置值有:
值        描述
True        默认值:控制权限
False        不控制权限,能看到符合条件的所有数据

EnumRefInit 函数
枚举参照
描述
        在调用参照窗体之前,必须先通过给定的枚举值或数值或表名等参数来初始化数据,如果初始化成功,则调用参照Show方法,弹出窗体,否则若初始化失败,参照自动给予初始化失败的原因信息,无需再调用Show方法。
语法
Function EnumRefInit(oLogin As Object, ReferDisplayMode As DisplayMode, bMulti As Boolean, EnumId_Table, [sFilter As String], [bPage As Boolean = False], [lPageSize As Long = 1], [lPageCount As Long = 1], [lCurPage As Long = 1]) As Boolean
EnumRefInit函数的语法具有下面的参数:
部分        说明
oLogin        Login对象
ReferDisplayMode        枚举类型:显示模式,树型加列表为2;仅有Grid列表为1
bMulti        是否多选
EnumId_Table        变体类型,建议直接用表名(支持枚举类型值)
sFilter        过滤串
bPage        是否分页
lPageSize        页大小
lPageCount        总页数
lCurPage        当前页

设置值
ReferDisplayMode 的设置值有:
枚举值        数值        描述
enuGrid        1        设置仅有Grid列表显示数据
enuTreeViewAndGrid        2        设置左边是树型结构,用于显示分类信息,右边是Grid列表显示数据

EnumId_Table 的设置值有:
枚举值        数值        字符串值(表名)        描述
enuDepartment        1        Department        部门档案
enuPerson        2        Person        职员档案
enuItem        4        FItem        项目大类
EnuWarehouse        5        Warehouse        仓库档案
enuSaleType        6        SaleType        销售类型
EnuPurchaseType        7        PurchaseType        采购类型
EnuExpenseItem        8        ExpenseItem        费用项目
EnuPosition        9        Position        货位档案
enuRd_Style        10        Rd_Style        收发类别
enuCustomer        11        Customer        客户档案
enuVendor        12        Vendor        供应商档案
enuOrdinaryInven        13        Inventory        存货档案
enuPurchInven        14                存货档案采购
EnuSaleInven        15                存货档案销售
enuGL_bdigest        17        GL_bdigest        常用摘要
enuforeigncurrency        18        foreigncurrency        外币币种
enuExch        19        Exch        外币汇率
Enucode        20        Code        会计科目
EnuDsign        21        Dsign        凭证类别
EnuPayCondition        22        PayCondition        付款条件
EnuSettleStyle        23        SettleStyle        结算方式
EnuBank        24        Bank        银行档案
EnuShippingChoice        25        ShippingChoice        发运方式
enuCustomerClass        26        CustomerClass        客户分类
EnuVendorClass        27        VendorClass        供应商分类
enuDistrictClass        28        DistrictClass        地区分类
enuInvenClass        29        InventoryClass        存货分类
enuComputationGroup        30        ComputationGroup        计量单位组
enuComputationUnit        31        ComputationUnit        计量单位
                fItemssXXass        项目:其中XX代表:00—99项目,例如:fItemss99Class
enuProductStructure        33        ProductStructure        产品结构父项
EnumRefInit 函数示例:
        本例先初始化客户端对象,然后用EnumRefInit函数初始化数据,另外控制客户档案的写权限,然后调用客户端对象的Show方法弹出客户端窗体,然后双击窗体,返回选中数据:
Private Sub  CallRef()
dim Ref  as Object
dim Rst as ADODB.Recordset
Set Ref = CreateObject("UFReferC.UFReferClient")
Call Ref.SetRWAuth(“Customer”, “W”,true)
if Ref.EnumRefInit(g_oLogin, 2, False, “Customer")=false then exit sub
Ref.Show
Set Rst = Ref.recmx
‘此处可以使用Rst数据集中数据
Set ref=nothing
End Sub
示例2:
Private Sub  CallRef()
dim Ref  as Object
dim Rst as ADODB.Recordset
dim RstNo as ADODB.Recordset
if Ref.EnumRefInit(g_oLogin, 2, False, “Fitem")=false then exit sub
Ref.Show
Set Rst = Ref.recmx
Set RstNo=Ref. RstSelClass
‘此处可以使用Rst和RstNo数据集中数据
Set ref=nothing
End Sub

评分

参与人数 1金币 +10 收起 理由
yifeng651 + 10 助人为乐,感谢分享!

查看全部评分

发表于 2008-8-20 09:21:31 | 显示全部楼层
好东西,谢谢楼主分享
发表于 2008-8-20 09:32:50 | 显示全部楼层
很有用的东西哦!!
发表于 2008-8-20 11:00:15 | 显示全部楼层
看不懂啊,能讲清楚一点吗?
发表于 2019-6-11 10:04:49 | 显示全部楼层
好东西,谢谢楼主分享
回复 点赞 拍砖

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|站长微信|Archiver|手机版|小黑屋|用友之家 ( 蜀ICP备07505338号|51072502110008 )

GMT+8, 2024-12-23 11:33 , Processed in 0.084479 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表