We have this error ORA-01747 for the first time on production environment, and my first way was to check the structure tables, between production and tests environments :
ORA-01747: invalid user.table.column, table.column, or column specification Cause: A column name was specified improperly in the current SQL statement. Action: Check the statement's syntax, especially references to column names, and retry the statement.
But there is no difference ! Of course, the same job on tests environment is ok.
We’re working on Solaris 8, Oracle 9.2, DI 6.5.1 (Designer 6.5.1.4 JobServer 6.5.1.10 Job Engine 6.5.1.10 Repository 6.5.1.0000).
Who is the owner of the tables in test and in prod? I assume you are using different table owners and during the export to prod the owner was not adjusted…
Try import the table again in Prod environment and make sure table used in Dataflow(s)/scripts (You have to manually change table owner/datastore name in script even after correct export from Test in case datastore name is different too) is the new imported table.
Still not convinced. Go to any of the failed DFs, click into the target table and check the first tab, where it tells datastore name, OWNER!!!, tablename, database type.
What is the OWNER show there? Is it the correct one?
So, the Owner showed into the tab ‘TARGET’ is ‘DSOWNER’.
This is the same variable for all DF’s, who’s adjusted after export .atl files into production environment.
DSOWNER means basically “no owner, use the one of the datastore”. In prod, edit the datastore. There is the field username, but also the field owner. Check if that’s correct…
yes we use the same version of Oracle : 9.2 (said my dba)
before running jobs, we edit the datastore and adjust right parameters; using of option ‘Multiple Profile’ on datastore make that DI temporarily replaces the specific owner name with a default “dummy” name (DSOWNER).
Okay, I give up. Please export the prod repo via Designer into an ATL file, and email it to me. Given my first and lastname and knowing businessobjects.com you can guess my email address (dot between names)
my problem is resolved, it was just a bad value for the parameter AL_Engine in DSConfig.txt
We work on a french environment, with value fr_FR.ISO8859-1, and the value was eng_us.iso88591 …
no there was no problem on the table owner.
The guilty was an eng_us value of AL_Engine in DSConfig.txt ; we work on a french environment, so we must use a french value of this parameter : fr_FR.ISO8859-1 vs. eng_us.iso88591