Pocket PC自带了很多应用程序,就内嵌在它的ROM(只读存储器)里。而且,甚至还有更多来自第三方开发人员的应用程序、工具和游戏。但是,如果你像我一样有很多任务,为了用Pocket PC真正获得生产效率,似乎需要自定义的软件工具。并且,这些任务有很多是那种需要你输入并/或检索大量信息的。但是如果你不是个程序员,而且也不想花上一小笔巨资让人给你编写一个定制的程序,你又能如何建立一个定制的Pocket PC解决方案呢?如果这正是你的处境,DDH Software的HanDBase就是那个也许能帮助你的工具。HanDBase让你建立数据库。但是它的创建者常常把这些数据库称为小程序。我认为,其中的原因是那套丰富的数据录入和检索工具让你感觉你创建的每一个数据库都是一个独特的应用程序。因为这个原因,本文将交替使用数据库和小程序这个两个术语。
开始
图1向你显示出让你选择已有数据库或创建一个新数据库的屏幕。

图1.让你创建新数据库的起始屏幕。
不过,在点击“创建一个新数据库”按钮之前,我建议您先退回一步。如果你从未在台式机或大型机上编过计算机程序或设计过数据库,我强烈建议你用输入笔和Pocket PC记事本(或者甚至是铅笔和纸)写一个概要:你的小程序要做什么以及它执行任务需要什么样的数据。
图2显示出按了“创建一个新数据库”按钮之后你会看到什么。图3显示如果你按了该页面上“安全设置”按钮将会出现的屏幕。关于这一组设置的讨论超越了本文的范围。因此,我们将其忽略,并把注意力集中在创建小程序的基本问题上。图4是按下“编写”按钮之后你所看到的画面。它的两个文本框不需要解释就让人很清楚。

图2. 定义数据库。

图3. 安全设置。

图4. 编写信息。
那么,让我们回到图2和勾勒简单数据库的设计图的任务上。一个数据库由记录的集合组成。一条记录由一组恒定的字段定义。每个字段规定一条记录的一个独特成分。例如,你应该有一个字段用来输入一个人的教名,另一个字段用于这个人的姓,第三个字段用于人的生日。如果你输入了10个人信息,那么这个数据库里就会有10条记录。
如果你想建立一个很能干的HanDBase小程序,你就需要仔细选择和定义组成数据库记录的字段。要做到这一点,你需要了解你能用HanDBase做什么以及它所提供的特性。这里有三段应该牢记在心的HanDBase专门信息:
字段名上限为19个字符。
一条记录中的字段数最多为30个
有16个独特的字段类型可供选择。
这16个独特的字段类型是:
未使用字段。这是用于你所可能使用的30字段中未使用未定义的空字段。
文本
整数
浮点(Float)
日期
时间
复选框
弹出菜单
备注
图像
计算值(Calculated)
唯一值(Unique)
报头
连接
连接的(Linked)
数据库弹出菜单(DB Pop-up)
你可以参考HanDBase Web可访问文档,获得关于每个字段类型的详细信息。
定义数据库字段
我为本文设计的这个数据库对我来说非常实用。它记下了Pocket PC给我的撰稿任务。我的文章跟踪数据库有九个字段。下面你可以看到我对每个字段的定义,格式如下:字段名——字段类型——字段描述。
文章编号——整数——为我写的每一篇文章分配的唯一的整数。
部分——弹出菜单——一个弹出菜单(或下拉菜单),定义为该站点所写文章的种类。
类型——弹出菜单——另一个下拉菜单,定义所分配的文章类型(例如,像这篇文章的指南类文章)
标题——文本——最多60字符的文章标题
注释——文本——另一个60字符的文本,用于有关撰稿任务的附加注释。
开始日期——日历——我创建记录的日期。这常常是我开始一个项目的日期。不过,不是所有的项目都被采用了。因此,有时侯有些记录只有开始日期,但没有文章编号(文章编号=0)。
草稿日期——日历——我把草稿交给编辑的日期。
终稿日期——日历——撰稿任务被接受并作为终稿在本Web站点发布的日期。
完成——复选框——只是一个复选框,表示一个撰稿任务完成与否。
你可以看到我只用了16个可用字段类型中的4个来定义我的数据库记录。
让我们定义数据库/小程序的字段!
本文的第一部分定义了一些你可以用来建立自己的数据库的HanDBase特性。还定义了让我能够识别和跟踪我为PocketPC.com撰写文章项目的 HanDBase小程序的记录。在本文的第一部分,你还可以找到字段的定义,这些字段为我计划使用的数据定义记录结构。
图1显示出我们简单的第一个字段的定义:文章编号。我在屏幕上部的文本框中输入文章编号为其命名。然后,我把字段类型定义为整数(在字段类型中选整数)。“像素显示(Pixels Shown)”值让你设定显示的字段宽度。“可见(Visible)”和“输出/打印”复选框缺省为选中。你应该让它们保持那样。“编辑”弹出菜单不是用于这个字段的。你以后总是可以再回来修改这些字段的设置。所以,虽然在设计数据库小程序时计划是很重要的,但并不意味着你以后不能改变主意和设计。
图1. 定义一个整数字段。
图2显示我如何定义记录中的第二个字段:部分。你可以看到“字段类型”菜单拉下来显示出16个可用字段类型的绝大多数。部分字段有个设定的可能值(这里指描述)。因此,我在这儿选则使用“弹出菜单”字段类型。这让我可以只输入一次一组固定的描述,然后在需要时从一个下拉菜单中选则一个。
图2. 定义一个弹出菜单字段。
图3显示出“部分”字段的完整定义。这与“文章编号”的定义类似。不过,你可以在这儿看到一个叫做“缺省值”的附加的定义特性。一等你定义好了弹出(下拉)菜单固定的一组值,就能指定其中一个值在输入数据时作为第一个值出现。此刻,没有任何数据与该字段关联,因此除了给出的“没有值”之外,没有什么可以定义为缺省值的。
图3. 完整的弹出菜单字段
我点击图3中的“编辑弹出菜单”按钮。这调出了一个新的屏幕让你定义填充“部分”字段的值。图4显示我输入的填充“部分”字段的值。我是通过点击图4中“新建”按钮,每次输入一个菜单项,做成这个样子的。你还可以选择“弹出菜单排序”复选框来让你的菜单项排序。
图4. 定义一个弹出菜单字段的值。
现在我们已经为“部分”字段输入了一组固定值,你可以在图5中看到我选择了“一般兴趣”作为任何添加到数据库的新记录那个字段的缺省值。
图5. 定义一个弹出菜单字段的缺省值。
文章跟踪数据库中余下七个字段的每个字段的定义过程都是重复的。每个字段类型有着自己独特的一组选项和特性。详细论述每一个字段超越了本文的范畴。我建议您参考HanDBase文档来了解那些信息。不过,我会提到HanDBase提供了一组强大的工具来处理每个可能的字段类型。例如,“日期”字段让你嵌入熟悉的月份视图的弹出菜单,就是你常见内嵌在Microsoft® Pocket Outlook® Calendar中的那种。这是HanDBase众多省时特性中的一个。
图6为你显示我文章跟踪HanDBase小程序完整的数据输入表单。注意“类型”和“部分”字段有我们早先定义的下拉菜单(称为弹出菜单)。“标题”和“注释”字段都是简单的文本字段,让我们每个最多输入60个字符。注意两个字段都有纵向的滚动条,如果文字超出文本输入框的固定范围,滚动条就能让我们看到全部的文本。 “开始日期”、“草稿日期”和“终稿”日期(在视图中不明显)每一个都让你调出月份视图日历,让你轻松地输入或更改日期值。如果没有在“日期”字段中输入日期,则复选框未被选中,你将会在小程序的普通视图中看到“无日期”一值。你在这个屏幕上看不到最终“完成的”字段。不过,那只是个简单的复选框,你可以通过点击选中或不选。
图6. 完整的文章跟踪小程序记录输入屏幕。
图7显示出“记录”菜单中可用的一些强大特性。注意,你甚至能够打印(如果你的Pocket PC上装了合适的驱动程序)或把一条记录无线传输到另一台Pocket PC或者甚至是基于Palm OS的设备上。
图7. 记录选项。
最后,图8显示出数据库的主屏幕。每条记录以一行显示。你可以拖动滚动条查看整条记录。你也可以在一条记录上点击调出我们在图6中看到的详细视图。你可以通过点祝并拖动字段名之间的分割线来临时调整字段大小。你也可以修改字段定义中的“显示像素”值来永久地改变它们。
“操作”菜单包括很多强大特性,包括让你通过告诉HanDBase你想根据某个特定字段中的某个值或取值范围来浏览数据中一小部分的“过滤”特性。
图8. 运行中的文章跟踪小程序。
结论
相当诚实地讲, 我没有对HanDBase给你的丰富特性做出任何评判。不过,我希望我为你展示出任何人都能使用甚至只是我给你突出展示的特性中一小部分,来快速设计、建立和使用为你的特别任务专门定制的非常有用的HanDBase小程序。更重要的是,我不必编写一行的软件程序来建立一个有下拉菜单的菜单,一个弹出式日历日期选择器、纵向滚动条、打印和无线红外文件传输。我建议您花一些时间试用其他特性和选项,看看哪个对您最有用。然后,选择一个相当简单但重要的任务来建立你第一个HanDBase小程序。随着你对HanDBase的了解越来越多,你可以不断地回过头去使用更复杂的特性对它进行重新设计。