столбец связи значка табличной формы вершины

Я работаю с созданным мастером столбцом табличной формы, который должен отображать значок, который запускает функцию Javascript и передает значение строки в функцию при нажатии. Функция запускает окно popUp2, в котором устанавливаются значения других полей в этой строке. Таким образом, номер строки имеет решающее значение, но для вновь созданных строк он всегда равен 0 (в APEX 4.0.0.00.46). Мне удалось решить эту проблему, сохранив rowNum новых строк в моем столбце «Обновлено по» во время AddRow.

Теперь у меня есть столбец "Обновлено по" (заголовок "Поиск"), в котором хранится номер новой строки, есть onClick = "javascript: usePopup (this);" в атрибутах элемента, который запускает функцию всплывающего окна, а затем получает любые значения меньше двух цифр, стертые перед отправкой. Это заполняет правильные поля и отправляет в таблицу без проблем.

Однако я не могу продолжать использовать столбец «Обновлено кем» для этой функции. В настоящее время по этой таблице работают отчеты, поэтому я не могу добавить в таблицу новый столбец. Мне нужен фиктивный столбец для отображения значка, временного хранения номера строки вновь созданных строк и не испортить MRU. Это f08, поэтому значение f08_0005 должно быть 0005. Я попытался создать нулевой столбец с

select
"FUEL_USAGE_DETAIL_ID", ...   
"EXPENSE_TO_PROJECT",   
"EXPENSE_TO_TASK",   
NULL Lookup,   
"UPDATED_BY",   
"PROVIDER"  
from "#OWNER#"."FUEL_USAGE_DETAIL"  

но это не может подчиняться. Я получаю ошибку во внутренней процедуре mru: ORA-20001: Ошибка в MRU: row = 1, ORA-20001: ORA-20001: Текущая версия данных в базе данных изменилась с момента инициированного пользователем процесса обновления. текущая контрольная сумма = "01A949FAF0B3A91914ECACCDC9BBA9E6", контрольная сумма элемента = "B6ADF86455B14EF691B2AFB314926A0D".

Пожалуйста, помогите мне создать нулевой столбец для отображения этого значка, сохранить номера всех строк (включая новые строки) и не испортить MRU. Если вам нужны фотографии того, что у меня есть и что мне нужно, посмотрите мою другую ветку: https://community.oracle.com/thread/3649771 Спасибо!


person Fractal65    schedule 26.01.2015    source источник


Ответы (2)


Fractal65,
Не добавляйте нулевой столбец в табличной форме. просто перейдите в >> Изменить атрибут табличной формы и внесите следующие изменения введите описание изображения здесь

вы получите его позицию как f02_000X (x-rownum), теперь вы можете использовать это значение rownum в javascript или чем-нибудь еще. Надеюсь это поможет.

person Pars    schedule 28.01.2015

У меня была аналогичная ошибка с моим последним проектом. У вас есть не отображаемый селектор строк? Пожалуйста, попробуйте удалить его, чтобы посмотреть, будет ли он работать.

person Kiem Nguyen    schedule 26.01.2015
comment
Спасибо, но мой селектор строк виден, и он необходим, потому что пользователи должны иметь возможность удалять из табличной формы. Если я удалю его, я должен снова создать функцию удаления с помощью флажка. - person Fractal65; 26.01.2015
comment
Я прочитал ваше сообщение на форуме Oracle и понял, что вы хотите делать сейчас. Вам нужно будет написать собственный процесс MRU вместо использования встроенного процесса MRU APEX. - person Kiem Nguyen; 26.01.2015
comment
Спасибо, Кием. Как мне сделать этот кастомный MRU и чем он будет отличаться? - person Fractal65; 27.01.2015