как 'tmpdata' и 'Get_Parameter_List' работают в OracleForm? - PullRequest
0 голосов
/ 25 мая 2018

Я новичок в OracleForms и Plsql, я нашел этот код в проекте:

PROCEDURE grabar IS
...
    Pl_id paramlist;
...
BEGIN
    pl_id := Get_Parameter_List ('tmpdata'); 
    IF NOT Id_Null(pl_id) THEN 
        Destroy_Parameter_List( pl_id ); 
    END IF; 
    pl_id := Create_Parameter_List('tmpdata'); 

Я хочу знать, что если 'tmpdata' не существует, я получу ошибку?со строкой: pl_id: = Get_Parameter_List ('tmpdata');вставляю ли я данные 'tmpdata' в 'PL_id', это 'tmpdata' переменная по умолчанию Oracleforms или что-то в этом роде?

это не OracleForms, но это инструмент, основанный на этом, так чтотак похоже

Я доказал, что изменился на: pl_id := Get_Parameter_List ('tmpdata_HELLO'); введите код, и программа, переданная этой консоли, покажет мне это:

25 мая 2018 г. 4:46:30 PM org.apache.tomcat.util.http.Parameters processParameters INFORMACIÓN: Ошибка декодирования символов.Параметр [значение] со значением [% null] был проигнорирован.Обратите внимание, что указанное здесь имя и значение могут быть повреждены из-за неудачного декодирования.Используйте ведение журнала уровня отладки для просмотра исходных, не поврежденных значений.

Примечание: дальнейшие появления ошибок параметров будут регистрироваться на уровне DEBUG.

1 Ответ

0 голосов
/ 26 мая 2018

В этом примере «tmpdata» - это имя списка параметров, которые могут существовать или не существовать.«ID_NULL» проверяет наличие списка параметров, проверяя, есть ли у возвращенного идентификатора значение или нет.Если оно имеет значение (т. Е. ID_NULL возвращает FALSE), то список параметров уничтожается, поэтому команда «Create_Parameter_List» не получит ошибку.

«Get_Parameter_List» не будет выдавать ошибку, если нетсписок параметров по заданному имени (в данном случае «tmpdata»);он просто возвращает ноль.

...