将JSON从Oracle APEX返回到javascript对象中

将JSON从Oracle APEX返回到javascript对象中,oracle,oracle-apex,Oracle,Oracle Apex,有没有一种方法可以在不使用ORDS REST服务的情况下,通过ORACLE APEX填充客户端javascript对象,以便在D3或Paper.JS等可视化库中使用 i、 例如,我可以使用javascript API或PL/SQL(APEX_JSON?)来运行查询,并将JSON响应返回到客户端javascript对象中吗 我知道如何将JSON返回到PL/SQL动态内容区域,例如使用PL/SQL(见下文),但是如果我只想将数据返回到客户端javascript对象中,那么过程是什么?下面的查询将格式

有没有一种方法可以在不使用ORDS REST服务的情况下,通过ORACLE APEX填充客户端javascript对象,以便在D3或Paper.JS等可视化库中使用

i、 例如,我可以使用javascript API或PL/SQL(APEX_JSON?)来运行查询,并将JSON响应返回到客户端javascript对象中吗

我知道如何将JSON返回到PL/SQL动态内容区域,例如使用PL/SQL(见下文),但是如果我只想将数据返回到客户端javascript对象中,那么过程是什么?下面的查询将格式化的JSON输出到区域输出中,但我只希望JSON作为javascript数组在内存中,随时可以传递到另一个javascript库

declare 
l_cursor sys_refcursor;
BEGIN
   OPEN l_cursor for SELECT A.UID, 
cursor(SELECT PREFERRED_NAME FROM DIM_PRODUCT WHERE PRODUCT_ID = A.PRODUCT_ID) as PRODUCTS from ARIEL.MARKETED_PRODUCT A WHERE STATE = 'C';
   APEX_JSON.write(l_cursor);   
END;
问候


Stephen

听起来您想要执行一个AJAX请求,并让它将JSON返回到客户端javascript对象中。这有两个部分——服务器端的PL/SQL和客户端的javascript

在服务器端,最简单的方法是设置一个按需返回JSON的流程。听起来你上面的积木很适合这个

在客户端,您可以使用或jQuery(APEX JS只是jQuery的一个方便包装器)

客户端AJAX调用示例:

apex.server.process ( "MY_PROCESS", {
  x01: "test",
  pageItems: "#P1_DEPTNO,#P1_EMPNO"
  }, {
 success: function( pData ) { ... do something here ... }
  } );
在本例中,
pData
是从随需应变流程返回的JSON—无论您想用它做什么,都应该在成功回调函数中执行

三个参数被发送到名为
MY\u Process
x01
,可在PL/SQL中作为
apex\u application.g\u x01
或访问,以及两个页面项,它们被添加到会话状态,并可通过常规方式访问(
:P1\u DEPTNO
,等等)


另请参见上的这篇文章。

听起来您想要执行一个AJAX请求,并让它将JSON返回到客户端javascript对象中。这有两个部分——服务器端的PL/SQL和客户端的javascript

在服务器端,最简单的方法是设置一个按需返回JSON的流程。听起来你上面的积木很适合这个

在客户端,您可以使用或jQuery(APEX JS只是jQuery的一个方便包装器)

客户端AJAX调用示例:

apex.server.process ( "MY_PROCESS", {
  x01: "test",
  pageItems: "#P1_DEPTNO,#P1_EMPNO"
  }, {
 success: function( pData ) { ... do something here ... }
  } );
在本例中,
pData
是从随需应变流程返回的JSON—无论您想用它做什么,都应该在成功回调函数中执行

三个参数被发送到名为
MY\u Process
x01
,可在PL/SQL中作为
apex\u application.g\u x01
或访问,以及两个页面项,它们被添加到会话状态,并可通过常规方式访问(
:P1\u DEPTNO
,等等)

另请参见关于的这篇文章