Oracle APEX автоматический столбец добавить / удалить в регионе - PullRequest
0 голосов
/ 01 марта 2019

Я сделал вид, что часто изменяет свои столбцы с помощью динамического SQL.Я использую сводку, чтобы сделать строки в столбцы.Я отображаю вид в интерактивной сетке.SQL-запрос, который выполняется:

select * from <DB>.<VIEWNAME>. 

При обновлении обновляет ROWS в сетке, , но не COLUMNS .Команда select * не учитывает изменения столбцов, НО , если я изменяю запрос SQL, добавляя пробел (или любую другую вещь в запросе), а затем сохраняя страницу в конструкторе страниц, синхронизация столбцовдо представления.Кто-нибудь знает хорошее решение моей проблемы?Где я могу найти процедуру, которая выполняет это обновление?Если я знаю, где это, я могу использовать его после вставки столбца (или удаления / обновления).Какие-нибудь советы?Внимание, я новичок в разработке oracle apex и sql.

Заранее спасибо!

1 Ответ

0 голосов
/ 02 марта 2019

Это неправильный путь.В Apex и в Oracle в целом столбцы определяются при разборе запроса.Если вы измените основную структуру, ваш запрос должен быть обработан повторно, и только после этого изменятся столбцы.

Подумайте об этом.Если первый столбец в вашем наборе результатов был DATE, и у вас были настроены атрибуты столбца Apex для форматирования и отображения этих данных, тогда ваш запрос изменился на NUMBER, неясно, что произойдет.

Что вы, вероятно, хотите сделать, это создать свой регион на основе функции, которая возвращает SQL-запрос как VARCHAR2.(Я думаю, что вы можете сделать это в 18.x; я все еще в основном использую 5.2.) Ваша функция анализируется при отображении региона.Вы даже можете использовать другую функцию для возврата списка заголовков столбцов, разделенных двоеточиями, если имена являются динамическими.

...