Есть ли какая-либо таблица/представление/процедура, в которой мы получаем доступ к стеку вызовов в процедуре?
Например, я вызываю процедуру B в процедуре A и хочу узнать, какая процедура вызывает процедуру B.
Спасибо.
Есть ли какая-либо таблица/представление/процедура, в которой мы получаем доступ к стеку вызовов в процедуре?
Например, я вызываю процедуру B в процедуре A и хочу узнать, какая процедура вызывает процедуру B.
Спасибо.
Нет, нет ничего, что напрямую предоставило бы вам такую иерархию вызовов. Основная причина этого заключается в том, что даже если вы вызываете процедуру/функцию из другой процедуры и т. д., SAP HANA попытается развернуть эти процедуры, чтобы составить оптимальные минимальные графы потоков данных. Это означает, что (в зависимости от кода вашей процедуры) части процедур могут быть объединены в один оператор SQL или скомпилированы во внутренний язык HANA.
Самое близкое для понимания фактической иерархии вызовов — использовать визуализацию PlanViz для самого верхнего вызова процедуры/функции.
Если вы хотите активно использовать информацию о вызывающем абоненте в своем коде, вы можете подумать об использовании переменных сеанса для хранения этой информации.