设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12345下一页
返回列表 发新帖
查看: 24400|回复: 47
打印 上一主题 下一主题

NorthwindCS启动解读及高级应用示例

[复制链接]
跳转到指定楼层
#
发表于 2005-1-28 23:37:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
阿罗 2005年1月27日



初次接触 ADP,往往被建议从解读 NorthwindCS 入手。确实,这是个很好的范例。然而,由于很多同学是从自学 Access-mdb 开始入门的,刚刚开始 ADP 之旅,看到 NorthwindSC 这么复杂的一个启动局面,根本就搞不懂这是怎么回事;另外,不排除一些老鸟,虽然可以做一些 ADP 的东西,但是往往局限于手工部署,虽然解读 NorthwindCS 可以有所提高,由于注释都是英文,而且定义的常量变量一大堆,看着都觉得累,这样就失去了进一步提高的机会,很是可惜。本文希望通过对 NorthwindCS 启动模块的分析,让读者深入体会 ADP 向 SQL Server 连接的设置和数据库自动化安装的机理,并且想通过一个作者自己编制的程序来进一步说明如何灵活运用这些刚刚学到的概念。希望同学们通过这篇短文,能举一反三地写出自己的、更好的 ADP 应用程序。





以 Office 2003 为例(下同),NorthwindCS.adp 一般在 C:/program files/Microsoft office/office11/samples/ 目录中,还应该看到一个 northwindCS.sql 数据库脚本文件。对于如何设置启动窗体和切换到另一个启动窗体,就不说了,如果连这个都没办法搞明白,那么就不要把时间浪费在这篇文章上了。



现在直接进入正题,“启动”窗体启动时,调用的是“启动”模块里的 OpenStartup() 函数,所以,只要把“启动”模块弄明白就行了。同启动模块配合的,是 Constants 模块,这个模块的用意是为了程序维护设置以及本地化的方便,同时也能使其他模块看起来变得清晰一些。当然,对中文用户来说,想快速地理解“启动”模块,一个比较好的办法竟然是把这些常量手工代到“启动”模块里,如此,理解程序反而会更快些,比如,“启动”模块中的
  1. Dim Response, Msg, Title, Style

  2. Msg = SelectPrompt1 + Chr$(10) + Chr$(13) + Chr$(10) + Chr$(13) + SelectPrompt2

  3. Style = vbOKCancel + vbInformation

  4. Title = SelectTitle

  5. Response = MsgBox(Msg, Style, Title)

  6. If Response <> vbCancel Then……….
复制代码
这种方式写的,如果改成
  1. If MsgBox("你要……吗?", vbOKCancel+vbInformation, "请选择")=vbOK then ………
复制代码
这样的形式,只要一行就够,也许对初次看程序略有帮助。



现在来看“启动”模块,一共有




  • Function OpenStartup() As Boolean
  • Function CreateDB() As Boolean
  • Function RunScript(DBName As String, InFile As String) As Boolean
  • Function HideStartupForm()
  • Function CloseForm()
  • Function CheckConnectedServer()
  • Function DBInstallPrompt(Server As String) As Boolean
  • Public Function GetDevInfo(cm AS ADODB…………….) As Boolean
  • Public Function CheckForNorthwind(cn As ADODB.Connection) As Boolean
  • Public Function StartSQLServer() As Boolean
  • Public Sub ChangeDB(NewDBName As String)
  • Public Function IsNorthwindNew()





12 个函数或过程。现在,把一些同本文主题无关的或实际用处不大的先去掉,例如 HideStartupForm,CloseForm,GetDevInfo(这是为了获得同 sql server 早先版本的兼容性),IsNorthwindNew(这是为了获得同早先版本的 NorthwindCS 数据库的兼容性,主要是雇员图片的存储方式变化),现在下面 8 个过程或函数是我们需要理解掌握的:



Function OpenStartup() As Boolean – 本文将要详细解释

Function

本帖被以下淘专辑推荐:

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖1 订阅订阅
47#
发表于 2013-6-28 09:52:29 | 只看该作者
学习!!!
回复

使用道具 举报

点击这里给我发消息

46#
发表于 2012-12-1 13:30:33 | 只看该作者
此文为不可多得的 ADP 方面专题文章,设为本版置顶、加精、高亮。
45#
发表于 2010-11-26 11:41:33 | 只看该作者
学习一下
44#
发表于 2010-11-1 16:58:13 | 只看该作者
很好的帖子。谢谢了。
43#
发表于 2009-12-12 19:41:39 | 只看该作者
学习有益 ,感谢
42#
发表于 2009-12-3 11:13:36 | 只看该作者
学些
41#
发表于 2008-10-6 19:25:45 | 只看该作者
对你的无私奉献致以崇高敬意!
40#
发表于 2008-8-19 20:04:43 | 只看该作者
非常不错,学习了
39#
发表于 2008-5-19 10:50:16 | 只看该作者
学习
38#
发表于 2008-4-24 17:40:31 | 只看该作者
好!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-7 02:52 , Processed in 0.084569 second(s), 38 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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