Вставьте напечатанное значение htp.p в таблицу - PullRequest
0 голосов
/ 22 июня 2019

У меня есть две области на странице Apex . Один содержит блок PL / SQL , который печатает значение, такое как отметка времени, используя htp.p Я хочу использовать это значение для другого региона, который является формой для вставки в таблицу.

tsEndTime := CURRENT_TIMESTAMP;

Htp.p('<h4>' || 'Timp inceput interogare' || tsStartTime|| '</h4>');

Ответы [ 2 ]

0 голосов
/ 24 июня 2019

Вы можете использовать следующий код в соответствии с вашими потребностями:

CREATE TABLE WEB_OUTPUT(MY_OUTPUT VARCHAR2(4000));


DECLARE
    LV_A_THEPAGE     SYS.HTP.HTBUF_ARR;
    LV_I_IROWS       INTEGER;
    LV_I_VERSION     INTEGER;
    LV_A_NAME_ARR    OWA.VC_ARR;
    LV_A_VALUE_ARR   OWA.VC_ARR;
    LV_I_NUM         PLS_INTEGER := 0;
BEGIN
    LV_I_VERSION := OWA.INITIALIZE;
    OWA.INIT_CGI_ENV(LV_I_NUM, LV_A_NAME_ARR, LV_A_VALUE_ARR);
    HTP.P('<h4>' || 'Timp inceput interogare' || SYSDATE /*tsStartTime*/|| '</h4>'); -- or call to a procedure that will generated HTP like calls
    LV_I_IROWS := 99999999999;
    OWA.GET_PAGE(THEPAGE => LV_A_THEPAGE, IROWS => LV_I_IROWS);
    FOR I IN 1..LV_I_IROWS LOOP
        INSERT INTO WEB_OUTPUT VALUES (LV_A_THEPAGE(I));
        --DBMS_OUTPUT.PUT_LINE(LV_A_THEPAGE(I));
    END LOOP;

END;
/

SELECT * FROM WEB_OUTPUT;

Выход:

enter image description here

ДБ Fiddle demo

Ура !!

0 голосов
/ 23 июня 2019

Итак, вставьте CURRENT_TIMESTAMP напрямую ... какой смысл отображать его на экране, а затем вставлять отображаемое значение?

...