Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 从报表中的多行收集插入的文本值_Database_Oracle Apex - Fatal编程技术网

Database 从报表中的多行收集插入的文本值

Database 从报表中的多行收集插入的文本值,database,oracle-apex,Database,Oracle Apex,我目前正在与Oracle Apex进行斗争。 我正在尝试创建一个应用程序,使客户能够下订单。因此,我创建了一个报告,其中列出了可用的产品。此外,该报告还包含一列(该列的SQL查询仅为'0'作为“数量”),其中显示一个文本框。在此文本中,客户应能够插入所需的数量 我创建了一个屏幕截图,以便更容易地跟踪我: 客户填写表格后,“下订单”按钮将购买所需物品 我现在的问题是,如何才能读出用户在哪个文本框中填写的数字以及该数字属于哪个产品 一个更简单的解决方案是重新创建区域,但选择表单区域,然后选择表格表

我目前正在与Oracle Apex进行斗争。 我正在尝试创建一个应用程序,使客户能够下订单。因此,我创建了一个报告,其中列出了可用的产品。此外,该报告还包含一列(该列的SQL查询仅为
'0'作为“数量”
),其中显示一个文本框。在此文本中,客户应能够插入所需的数量

我创建了一个屏幕截图,以便更容易地跟踪我:

客户填写表格后,“下订单”按钮将购买所需物品


我现在的问题是,如何才能读出用户在哪个文本框中填写的数字以及该数字属于哪个产品

一个更简单的解决方案是重新创建区域,但选择表单区域,然后选择表格表单区域,然后向导将帮助您处理DML。但您需要使用特定的表列才能使其工作

为了更直接地回答您的问题,可以在PL/SQL中作为一组“全局数组”访问发布到服务器的报表中定义的输入项。这些表在apex_应用程序包中定义为PL/SQL表,名称为g_f01到g_f50

为了确保这些数组中的哪一个用于数量文本框,您可以查看页面的html以获取输入标记的name属性。如果是f01,则可以通过访问apex_application.g_f01中的每个位置或元素来处理结果


要将输入与表链接,需要某种键。如果您使用向导构建表格,那么所有这些麻烦都会为您解决

谢谢你的回答!问题基本上是数据分布在不同的表中。我可以使用表格形式吗?可以,但主要限制是输入元素本身必须来自同一个表或视图。如果将表单基于插入目标,则可以在向导完成后通过编辑查询使其工作。我尝试使用apex_application.g_f01(1)从第一行获取值。但是我放置全局变量的文本字段不会显示任何内容。我做错什么了吗?在这一点上,我很难说什么。如果您确定文本字段为name=“f01”,并且您在其中输入的数字位于报告的第一行,则您应该能够在发布时访问该值。如果您在第一行以外的行中输入了某些内容,则需要获取该行号(例如,报告/表单第3行的apex_application.g_f01(3))。虽然有点旧,但此发布包含一个包,您可以使用该包显示从报告中发布的所有值以及输入。