I'm trying to adapt my tables to the new naming convention. So i have to know for each table the job where it is used in built-in mode.
Please if you have an idea help me!
Using the Built-In method for schemas is not great and finding particular tables using this might be tough.....but I have a way. It is not a "supported way", but should work if you can get to grips with processing the backend source files. The source files are essentially XML files. Although they are named .item and .properties. You can use a Talend job to analyse these files to find anything about jobs in your project. There is one key thing to do first though.....take a copy of your project and only scan that!
I have discussed this method in a bit more detail here: https://community.talend.com/t5/Design-and-Development/Finding-all-references-to-job-in-tRunJob/m-p/...
Please keep in mind that this is not for the faint hearted and you MUST ONLY do this against a copy of your project.
There are many ways it depend, you want to do 1 time or re-occurring.. also how big will be your repo..
1) Export your job & open .item file & search for below keyword, you will not its using built_in then look for your table (you can use notepad++ features), its manual but as I said depend on how frequently you want to use and how big will be your repo.
2) Create job to digest these .item file & apply filter on built_in
3) Load or dump these .item files (into 1 table with 1 column) into any databases & then run SQL query, it will be very fast... not clean way but good for 1 time activity.
@sjain you have overlooked the fact that simply searching for BUILT_IN in the files will not solve this. This will be found for many components and different attributes including "query" for a database. You've actually highlighted the query in your example.
The thing that needs to be searched for first is the component type. This can be found in the "componentName" attribute of the "node" element in the XML. For example....
<node componentName="tMSSqlInput" componentVersion="0.102" offsetLabelX="0" offsetLabelY="0" posX="64" posY="576">
Once this has been found, then you need to search for an "elementParameter" with a "name" attribute of "SCHEMACHEMA_TYPE". For example.....
<elementParameter field="TECHNICAL" name="SCHEMA:SCHEMA_TYPE" value="BUILT_IN" show="false"/>
If, as the above example does, the "value" is "BUILT_IN" then your job uses a bult-in schema for its query. BUT be sure to ensure the componentName in the first example is what you are looking.
This can be done quite easily across ALL jobs using a tFileList, a tFileInputXML and a few suitable XPaths. But as I said yesterday, do it using a copy of your project!
Talend named a Leader.
Kickstart your first data integration and ETL projects.
Watch the recorded webinar!
Part 2 of a series on Context Variables
Learn how to do cool things with Context Variables
Find out how to migrate from one database to another using the Dynamic schema