First Consider using Configurations
Configurations are the most integrated way to manage connection properties. They can be declared at development stage, and overriden at deployment stage (through Stambia Analytics).
They allow you to define multiple connection strings, schema names and many other properties, for a single metadata.
For more information, search the Designer's documentation about Configurations.
What we want to do
In this article, we want to make a process which executes a query on a database, an make this database's user and password parametrized.
Creating the metadata
We create a simple metadata for an Oracle Database server:
Note the User property references the process parameter "jdbcUser". And the Password property references the process parameter "jdbcPassword" (as indicated in the Description).
Developing the process
Our process is simple:
- A "JdbcUser" parameter
- A "JdbcPassword" parameter
- A SqlOperation for executing the query
The JdbcPassword is encrypted. Here is how to encrypt a password.
Click the "Runtime Command" button in the "Runtime" View.
This will open the "Runtime Command" Console.
Type "connect" + Enter.
Note : you may have to specify the runtime histname and port if this is a distant Runtime: connect to <hostname> port <port>
Type "encrypt <password>" + Enter.
The Runtime will encrypt the password for you.
Copy the encrypted password (in the above example, CE466977E6A4B21AE0D09695BBB744924D1E22C238D63022BC1BB786D4A1875C).
We dragged the Oracle Metadata on the SqlToParameters action.
Here is the code for the SqlToParameters action :
<sqlToParameters>
<parameter name="~/result" type="String" failsIfNoRecord="true" defaultValue="ko">
select 'ok' from dual
</parameter>
</sqlToParameters>
Now, this process can be started in command line, passing the user and encrypted password like this :
startdelivery.bat -name metadataPasswordParametrized -var ~/jdbcUser user1 -var ~/jdbcPassword CE466977E6A4B21AE0D09695BBB744924D1E22C238D63022BC1BB786D4A1875C
... or with an ExecuteDelivery action, or as a subprocess: