“同步两个表部分记录”函数(同步SysLocalParameters与Sys_ServerParameters以简便使用GetParamete)
时 间:2021-12-11 13:49:51
作 者:ligy118 ID:81743 城市:洛阳
摘 要:自定义个同步两个表部分记录的函数:如同步SysLocalParameters与Sys_ServerParameters一致,使得在控件来源中使用盟威平台的GetParamete()函数取得date数据库中Sys_ServerParameters表中的记录。
正 文:
在用盟威Access快速开发平台的GetParamete()函数时遇到了个问题
GetParameter 函数
简介
从客户端或服务端的参数表中取得参数。
语法
GetParameter (ParameterName[, DataType][, DefaultValue][, LowerLimit][, UpperLimit][, OnServer])
输入参数
参数名称 必需/可选 数据类型 说明 ParameterName 必需 String 参数名称。 DataType 可选 DataTypeEnum 数据类型。缺省时默认为 dbText。只能是 dbBoolean、dbByte、dbInteger、dbLong、dbSingle、dbDouble、dbDecimal、dbCurrency、dbDate、dbText、dbMemo中的一个,其它值无效。 DefaultValue 可选 Variant 取不到参数时返回的默认值。缺省时默认为空字符串("")。 LowerLimit 可选 Variant 如果参数的数据类型是数字,限制其最小下限。缺省时默认不予限制。 UpperLimit 可选 Variant 如果参数的数据类型是数字,限制其最大上限。缺省时默认不予限制。 OnServer 可选 Boolean 为 True 表示从服务端参数表中取,为 False 表示从客户端参数表取,缺省时默认为 False。
返回值
如果取不到或发生错误时返回 DefaultValue 指定的默认值,否则返回取到的根据不同 DataType 返回的不同的 Variant 子类型的参数值。
OnServer缺省时默认为FALSE,相从date取数需要GetParameter (ParameterName, , , , , TRUE]) 这样用,但在控件来源中连续参数缺省会报错,如下图:
为了能在控件来源中使用GetParameter得到date中的数据,取了个巧,main中的SysLocalParameters 表我也创建了一样的记录,当需要从main中取数时,先同步到main中,在用GetParameter (ParameterName)。
为了减轻同步到main时的工作量,写了两个函数。
示 例:
同步一条记录:
Function updateOneUMParameter(tempParameterName As String) As Boolean On Error GoTo ErrorHandler Dim tempValue As String tempValue = DLookup("Value", "Sys_ServerParameters", "ParameterName = '" & tempParameterName & "'") DoCmd.SetWarnings False DoCmd.RunSQL "Update SysLocalParameters SET SysLocalParameters.[Value] = '" & tempValue & "' Where [SysLocalParameters].[ParameterName] = '" & tempParameterName & "'" 'Debug.Print ("Update SysLocalParameters SET SysLocalParameters.[Value] = '" & tempValue & "' Where [SysLocalParameters].[ParameterName] = '" & tempParameterName & "'") DoCmd.SetWarnings True updateOneUMParameter = True Exit Function ErrorHandler: updateOneUMParameter = False Exit Function End Function

同步多条记录:
Function updateAllUMParameter() As Boolean On Error GoTo ErrorHandler Dim ParameterNamen() As String ParameterNamen() = Split("aFouceDate,aLastDate,aLastInprocessDate,aLastReserveDate", ",") Dim n As Long Dim ParameterNamenCount As Long ParameterNamenCount = UBound(ParameterNamen) - LBound(ParameterNamen) For n = 0 To ParameterNamenCount Dim tempParameterName As String tempParameterName = ParameterNamen(n) Dim tempValue As String tempValue = DLookup("Value", "Sys_ServerParameters", "ParameterName = '" & tempParameterName & "'") DoCmd.SetWarnings False DoCmd.RunSQL "Update SysLocalParameters SET SysLocalParameters.[Value] = '" & tempValue & "' Where [SysLocalParameters].[ParameterName] = '" & tempParameterName & "'" 'Debug.Print ("Update SysLocalParameters SET SysLocalParameters.[Value] = '" & tempValue & "' Where [SysLocalParameters].[ParameterName] = '" & tempParameterName & "'") DoCmd.SetWarnings True Next n updateAllUMParameter = True Exit Function ErrorHandler: updateAllUMParameter = False Exit Function End Function
同步单条记录用法:
call updateAllUMParameter(要同步的记录)
同步多条记录用法:
ParameterNamen() = Split("aFouceDate,aLastDate,aLastInprocessDate,aLastReserveDate", ",")
在以上语句中定义要同步的记录:
call updateAllUMParameter()
使用举例:
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)
- 仓库管理实战课程(4)-建表操作(03.22)
- 仓库管理实战课程(3)-需求设计说...(03.19)
- 仓库管理实战课程(2)-软件背景和...(03.18)
- 仓库管理实战课程(1)-讲师介绍(03.16)
- 统计当月之前(不含当月)的记录数怎...(03.11)