Page 1 of 1

can you use odbc driver for bci?

Posted: Mon Jul 05, 2004 12:28 am
by elvishada
I used informix odbc driver with datastage 5.
now I install datastage release 6.0 onto a unix system with a previous version of datastage.
I found the odbc driver was ok. but the routine was wrong.
they say the odbc driver doesn't support bci.
i want to know how you deal with the problem?

$INCLUDE UNIVERSE.INCLUDE ODBC.H
hdbc = "datastage"
status = SQLAllocEnv(henv)
status = SQLAllocConnect(henv,hdbc)
status = SQLConnect(hdbc, "testdb","test","test")
status = SQLAllocStmt(hdbc,hstmt)
SQLStatement = "Select trim(target_pwd) from connect_info where system_flag=1"
status = SQLExecDirect(hstmt,SQLStatement)
status = SQLBindCol(hstmt,1,SQL.B.CHAR,pwd)
status = SQLFetch(hstmt)
status = SQLFreeStmt(hstmt,SQL.DROP)
status = SQLDisconnect(hdbc)
status = SQLFreeConnect(hdbc)
status = SQLFreeEnv(henv)
Ans=pwd

Posted: Mon Jul 05, 2004 1:08 am
by ray.wurlod
The "problem" is that the ODBC driver is licensed for use with the ODBC stage, but is not licensed for use with BCI functions.

Your only solution, if you want to use BCI functions, is to obtain a full licence for the DataDirect Technologies ODBC driver.

It's not a problem with DataStage, it's the way that the ODBC driver is licensed. :cry:

Posted: Mon Jul 05, 2004 1:10 am
by ray.wurlod
The obvious alternative, looking at your code, is to run a job that extracts the row using an ODBC stage and moves it into the user status area or into a text file from which it can then be obtained.

Since it's apparently a password you're getting, I'd recommend using the user status area, so that the password doesn't become visible in the file system.

Posted: Mon Jul 05, 2004 1:51 am
by elvishada
have i still buy the bci except the datastage?
if i use the procedure , i have to write it in the input or output.

Posted: Mon Jul 05, 2004 5:51 am
by elvishada
can i use the odbc driver of 5 ?

Posted: Mon Jul 05, 2004 7:32 am
by chulett
elvishada wrote:have i still buy the bci except the datastage?
Yes. As Ray said, if you want to use ODBC outside of DataStage (like for BCI) then you must buy a full license.
can i use the odbc driver of 5 ?
No. :cry: At least, I don't believe so.

Why not take Ray's advice and do this in a DataStage job?

Posted: Mon Jul 05, 2004 3:55 pm
by ray.wurlod
You can use the ODBC driver from version 5, but it has exactly the same issues. It works for 30 days, after which SQLConnect() fails with a message saying that you need to purchase a licence.

The BCI functions themselves are part of DataStage, and incur no extra cost. It is a licence to use the ODBC driver that must be purchased. You could use any licensed ODBC driver for BCI functions; it does not have to be the one from Data-Direct Technologies (the one that ships with DataStage).

Posted: Tue Jul 06, 2004 12:38 am
by roy
Hi,
having all said and done, 1 thing eludes me:
you said you used informix odbc driver was that driver an informix driver or the data direct one?
if it was data direct they are all right.
if it was not simply use it after you recheck the new installation was configured to use it.

Good Luck,

Posted: Wed Jul 07, 2004 1:27 am
by elvishada
I have used datastage 5 for bci for one year. Now it's ok,
but it 's wrong when i update to datastage 6. so i want to continue using the driver of datastage 5. I don't know whether the way is ok?
And how can i do?

i don't understand what's the mean of any licensed ODBC driver for BCI functions.