在Oracle APEX 4.0中,我有一个客户数据库,我希望页面标题更改为我选择编辑的客户名称。我输入了这样的标题: http://i.stack.imgur.com/Bo0cy.png
然而,标签出现如下: http://i.stack.imgur.com/Z41H4.jpg
我做错了什么?
答案 0 :(得分:1)
此解决方案是在apex.oracle.com上由 Oracle Corp。托管的系统上开发的。 APEX(Oracle Application Express)版本目前为4.2.5;尽管OP要求发布4.0版本的建议,但是从Apex的3.x版本到目前为止,所请求的功能已经可以实现。
这个使用有时称为“替换文字”的符号。任何全局或页面级项都适合此定义。如果您在项目开头放置一个&符号(&),在项目末尾放置一个点(。),那么在该会话/上下文中分配给该项目的任何值都将显示为实际值,无论它在何处分配。 / p>
它之所以有用,是因为引用的ITEM可以通过代码,SQL查询和用户输入进行操作......开发人员不再需要直接更改值。
替换值表示法:
Where the ITEM is a page-level bucket, named: PX_SAMPLE_ITEM
&PX_SAMPLE_ITEM.
这是非常微妙的,但最后的点是必要的。
这是可以设置变量应用程序ITEM的地方(页面标题属性):
以下是一些屏幕截图,其中我使用了一个页面级项目,定义为变量SELECT LIST表单元素。选择列表项还设置了REDIRECT
属性,以便每次选择或更改新值时页面都会自动刷新并更新页面标题属性。
如果您在创建页面及其内容时从第一遍开始工作有任何困难,请查看要验证的设置摘要:
PAGE 11
是包含我的变量页标题值示例的页面。
P11_PAGE_TITLE
是包含您想要的页面标题的存储桶。这可以是静态定义,用户选择的结果等。确保在页面标题定义部分中引用它时创建此项目并使用相同的名称(在下面的步骤/步骤3中突出显示)
打开Display Attributes > Title
属性的项帮助文本,内联文档说明插入TITLE
字段的内容放在呈现页面HTML代码的<TITLE></TITLE>
块内:
我无法确切地说明这种方法仍然如上所述的确切版本。我在下面做了一些笔记,回应了@MNT的评论,OP作者关于保持他们的实例及其Apex的版本是最新的。
没问题@MNT,我提到了在4.25(我的解决方案)和4.00(你的版本)中尝试的方法之间可能的兼容性,但请记住,这些版本之间的时间差可能是两年多的升级和后端数据库版本之间的跳跃(Oracle 10g到Oracle 11g R1 ......甚至11g R2)已经发生了很多事情。我想这不是很适合你的情况,但考虑升级。所有APEX补丁和发布升级都是免费的,跟上是很重要的。
为什么保持升级和补丁集(示例)非常重要 单从4.20到4.25的跳跃(根据我的经验)是一个艰难的,因为实际的内部列被删除而索引键消失了......渲染我的导出脚本的存储库是无用的。确保您为此类事件留下后门或声音升级计划(如果您有现有应用程序)。升级后,确实没有回头:(
答案 1 :(得分:0)
声明 l_order_id 编号; 开始 -- 创建集合 —— apex_collection.CREATE_OR_TRUNCATE_COLLECTION ('CUST_ORDER_ITEMS');
-- Loop through the ORDER collection and insert rows into the Order Line Item table
for i in 1..apex_application.g_f01.count loop
apex_collection.add_member(
p_collection_name => 'CUST_ORDER_ITEMS',
p_c001 => to_number(apex_application.g_f01(i)), -- product_id
p_c002 => to_number(apex_application.g_f02(i)), -- unit_price
p_c003 => to_number(apex_application.g_f03(i)), -- quantity
p_c004 => apex_application.g_f04(i), -- desc
p_c005 => apex_application.g_f05(i) -- unit
);
end loop;
结束;