第四十一章 构建数据库应用程序 - 带有CSP Search标签的CSP搜索页面

简介: 第四十一章 构建数据库应用程序 - 带有CSP Search标签的CSP搜索页面

第四十一章 构建数据库应用程序 - 带有<CSP: Search>标签的CSP搜索页面

search标记创建一个通用搜索页面,可以将其与绑定表单一起使用以执行查找操作。

应用程序用户可以从包含绑定表单的页面访问CSP Search页面,并使用它在数据库中查找匹配一组标准的对象。 然后,用户可以选择其中一个对象并编辑它。

Search标记生成一个显示搜索页面的客户端JavaScript函数。搜索页面由%CSP.PageLookup在类中显示。

Search标记包括使能够控制搜索页面操作的属性。这些措施包括:

csp:search Tag Attributes

Attribute Description
CAPTION 可选的。标准搜索页面中显示的标题字符串。
CLASSNAME 必需的。要对其执行搜索的类的名称。
FEATURES 可选的。当使用弹出搜索窗口时,字符串包含传递给JavaScript window.open方法的Feature参数。这使您可以更好地控制弹出窗口的显示方式。
MAXROWS 可选。指定要在搜索结果表中显示的最大行数。默认值为100
NAME 必需的。调用搜索页面的生成的客户端JavaScript函数的名称。
OBJID 调用搜索页面时显示的对象的对象ID值。这用于在用户取消搜索时重新显示旧页面。
ONSELECT 可选。在弹出搜索页面中,当用户选择特定搜索结果时要调用的JavaScript函数的名称。使用所选对象的对象ID值调用此函数。
OPTIONS 可选。搜索页面选项的逗号分隔列表。这些选项包括创建弹出搜索窗口的“popup”和显示搜索谓词下拉列表的“predicate”
ORDER 可选。作为搜索结果排序依据的字段名称。
SELECT 可选。要在搜索结果表中显示的以逗号分隔的字段列表。如果未指定,则将WHERE列表用作选择列表。
STARTVALUES 可选。调用搜索页的表单中控件名称的逗号分隔列表,其内容用作搜索页中的种子值。列表中名称的顺序与搜索页面中的条件字段(由WHERE属性指定)相对应。
TARGET 可选。在非弹出搜索页面中,指定搜索结果窗口中的链接指向的页面的名称。这是用户做出选择时显示的页面。默认值是调用搜索的页面。
WHERE 必需的。用作搜索页面标准的以逗号分隔的字段列表。除非指定了SELECT属性,否则这些字段也会显示在搜索结果表中。

例如,以下代码定义了一个名为MySearchJavaScript函数;该函数将显示一个弹出搜索窗口,用于搜索Sample.Person在按名称对象:

<csp:search NAME="MySearch" WHERE="Name" CLASSNAME="Sample.Person"
 OPTIONS="popup" STARTVALUES="Name" ONSELECT="MySearchSelect">
复制代码

此搜索页面的ONSELECT回调函数如下所示。

<script language="JavaScript">
function MySearchSelect(id)
{
    #server(..MyFormLoad(id))#;
    return true;
}
</script>
复制代码

该函数使用CSP #server()#指令调用服务器端方法MyFormLoadMyFormLoad方法是使用cspindHTML表单MyForm绑定到对象后自动生成的。此方法使用对象IDid的对象的属性值填充表单的内容。

有关其他示例,请参阅CSP示例页Form.csp在新选项卡中打开并在新选项卡中打开popform.csp.

相关文章
|
11天前
|
人工智能 容灾 关系型数据库
【AI应用启航workshop】构建高可用数据库、拥抱AI智能问数
12月25日(周三)14:00-16:30参与线上闭门会,阿里云诚邀您一同开启AI应用实践之旅!
|
2月前
|
架构师 数据库
大厂面试高频:数据库乐观锁的实现原理、以及应用场景
数据库乐观锁是必知必会的技术栈,也是大厂面试高频,十分重要,本文解析数据库乐观锁。关注【mikechen的互联网架构】,10年+BAT架构经验分享。
大厂面试高频:数据库乐观锁的实现原理、以及应用场景
|
2月前
|
SQL 安全 Java
MyBatis-Plus条件构造器:构建安全、高效的数据库查询
MyBatis-Plus 提供了一套强大的条件构造器(Wrapper),用于构建复杂的数据库查询条件。Wrapper 类允许开发者以链式调用的方式构造查询条件,无需编写繁琐的 SQL 语句,从而提高开发效率并减少 SQL 注入的风险。
41 1
MyBatis-Plus条件构造器:构建安全、高效的数据库查询
|
2月前
|
存储 SQL API
探索后端开发:构建高效API与数据库交互
【10月更文挑战第36天】在数字化时代,后端开发是连接用户界面和数据存储的桥梁。本文深入探讨如何设计高效的API以及如何实现API与数据库之间的无缝交互,确保数据的一致性和高性能。我们将从基础概念出发,逐步深入到实战技巧,为读者提供一个清晰的后端开发路线图。
|
2月前
|
缓存 NoSQL 数据库
运用云数据库 Tair 构建缓存为应用提速,完成任务得苹果音响、充电套装等好礼!
本活动将带大家了解云数据库 Tair(兼容 Redis),通过体验构建缓存以提速应用,完成任务,即可领取罗马仕安卓充电套装,限量1000个,先到先得。邀请好友共同参与活动,还可赢取苹果 HomePod mini、小米蓝牙耳机等精美好礼!
|
2月前
|
SQL Java 数据库连接
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率。本文介绍了连接池的工作原理、优势及实现方法,并提供了HikariCP的示例代码。
61 3
|
2月前
|
存储 Java 关系型数据库
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践
在Java开发中,数据库连接是应用与数据交互的关键环节。本文通过案例分析,深入探讨Java连接池的原理与最佳实践,包括连接创建、分配、复用和释放等操作,并通过电商应用实例展示了如何选择合适的连接池库(如HikariCP)和配置参数,实现高效、稳定的数据库连接管理。
72 2
|
2月前
|
Java 数据库连接 数据库
如何构建高效稳定的Java数据库连接池,涵盖连接池配置、并发控制和异常处理等方面
本文介绍了如何构建高效稳定的Java数据库连接池,涵盖连接池配置、并发控制和异常处理等方面。通过合理配置初始连接数、最大连接数和空闲连接超时时间,确保系统性能和稳定性。文章还探讨了同步阻塞、异步回调和信号量等并发控制策略,并提供了异常处理的最佳实践。最后,给出了一个简单的连接池示例代码,并推荐使用成熟的连接池框架(如HikariCP、C3P0)以简化开发。
59 2
|
11天前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
39 3
|
11天前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
41 3