Where can Parameters be Used in a Graph Definition?

Hi, I’m a Clover ETL newbie, but after reading the documentation and searching the forums, it’s not clear to me how and when parameters can be used in the graph definition.

I’d like to parameterize the JDBC connections such that if I have a property …
crm.jdbc.url = jdbc:sqlserver://172.17.100.30:1433;databaseName=CRM

… I could use it in the DBConnection object …

This doesn’t work. Am I doing it correctly or am I trying something impossible?

You got it right. Any ${xxx} reference in any attribute is resolved at runtime. These references can also be nested - eg: dbURL=“${URL}” where URL may be defined as URL=${IP}/${DBNAME}.

You may define parameters (or also called properties within graph, include them from external file or define on command line when executing graph.

See http://wiki.cloveretl.org/doku.php?id=g … properties for more details.

Hello,
problem is in parameter name. CloverEtl doesn’t recognize ${crm.jdbc.url} as parameter, because dots can’t be in parameter’s name. In parameter name are only allowed word characters (a-zA-Z_0-9).

Hello,
problem is in parameter name. CloverEtl doesn’t recognize ${crm.jdbc.url} as parameter, because dots can’t be in parameter’s name. In parameter name are only allowed word characters (a-zA-Z_0-9).

“avackova”

OK, it works … *except* for the “password” parameter to the DBConnection object. Is that true?

Password is parameter as each other, so it should work with password too (but not with extern connection - any parameter doesn’t work with extern connection at time being).

Can the value of the parameter change?

I am trying to run the CloverETL graph from a scheduler, where I also have to capture the JobId from the graph into database. Sois there a way by which I can pass some parameter (in my case jobId) to the graph as input.

When you run graph from command line you can use -P option for setting parameter value (see Sort universal example