更换 ADP 窗体记录源:[em07]
可以用 SQL语句,视图,存储过程,函数。作为窗体“记录源”。
用 VBA 代码改变“记录源”和“输入参数”的注意事项:
清空“输入参数”不能用 NULL,应该用“”空字符串,效果:如果“存储过程”或“函数”有参数默认值,
窗体按“存储过程”或“函数”默认值显示,不会弹出对话框。
Me.出货单分析子窗体1.Form.InputParameters = ""
用有参数的“存储过程”或“函数”赋值到“记录源”,效果:如果“输入参数”为空,窗体按默认值显示,不会弹出对话框。
Me.子窗体.Form.RecordSource = "dbo.存储过程"
赋值“输入参数”一定要指明数据类型,不能用“Me.控件”方式,应该直接用“控件名”或绝对位置名称“Forms!窗体!控件”,
效果:如果参数没有错,立即按参数显示数据记录。如果参数不匹配,会弹出错误提示。
Me.子窗体.Form.InputParameters = "@是否 bit = Forms!窗体!Check, @ID int = Forms!窗体!Text"
换“记录源”的完整方法:
1,“存储过程”或“函数”的参数一定要有默认值,就不会弹出对话框。最好按默认值显示没有记录,减少窗体闪动次数,减少SQL服务器负担。
2,清空“输入参数”。 显示没有记录
3,赋值“记录源”。 显示没有记录
4,赋值“输入参数”。 立即按参数的要求显示记录。
在参数引用的控件的值改变后,用事件过程擦新子窗体或数据表记录:
Me.子窗体.Requery
[此贴子已经被作者于2004-10-27 0:52:11编辑过]
|