Forum Stats

  • 3,827,801 Users
  • 2,260,822 Discussions


Using getColList in IKM to get column list from a table different from the target in the interface

juno_2020 Member Posts: 10 Green Ribbon

Is there a possibility to "force" the odiRef.getColList API used in a custom IKM to get the column list from a table which might not even be in the interface? I went through old similar topics, but none seemed to be of any help or much related to my issue.

I'm trying to execute the following code in the Source tab:

select <%=odiRef.getColList("(", " [CX_COL_LIST]", ", ", ")", "")%> 

from <%=odiRef.getObjectName("L", "#V_OFFL_TABLE_NAME", "SOURCE_SC", "DWH_LCL", "D") %> 

where src_date_from_dt = to_date('V_OFFL_TRANSFER_DATE','YYYY-MM-DD')  

 The odiRef.getObjectName API works perfectly and forces on the interface to use the substituted values, but odiRef.getColList apparently doesn't. Any other option to dynamically define the columns to be selected based on the object name returned from the odiRef.getObjectName API?

I checked the idea to use flexfields, but in my case the flexfield must return a whole column list and not a single default value, so I guess I can't use this tool?



  • juno_2020
    juno_2020 Member Posts: 10 Green Ribbon

    I still haven't found a solution.

    I tried to override the original source column list by using the CUSTOM_TEMPLATE extract option on the source, but it is disregarded and directly the IKM is executed. I thought that by overriding the source the odiRef.getColList API would get the columns of the forced source, and not those of the original source. Is it possible to do this at all or I am missing something?