For your usecase, you could utilize [COLUMN_DEPENDENCIES](https://community.denodo.com/docs/html/browse/latest/vdp/vql/stored_procedures/predefined_stored_procedures/column_dependencies) predefined stored procedure which returns the list of data sources and views from which the value of a field is obtained.
This helps you programmatically obtain the same information as the [Data Lineage](https://community.denodo.com/docs/html/browse/latest/vdp/administration/creating_derived_views/data_lineage/data_lineage) option available in Virtual DataPort Administration Tool.
Let's assume, if you want to retrieve the Data lineage for a derived view 'dv_orders' which is in the virtual database 'denodo_training', then you can execute a similar query mentioned below:
CALL COLUMN_DEPENDENCIES('denodo_training', 'dv_orders', null)
SELECT * FROM COLUMN_DEPENDENCIES() where input_view_database_name = 'denodo_training' and input_view_name = 'dv_orders'
I suggest you to refer to the aformentioned document link and also similar Community Q&A [How to get denodo data lineage through view_dependencies()](https://community.denodo.com/answers/question/details?questionId=9060g0000004FOZAA2&title=How+to+get+denodo+data+lineage+through+view_dependencies%28%29) for more information.
Hope this helps!