Page 1 of 1

Different SQL result with Robotask?!

Posted: Fri Oct 24, 2014 1:40 pm
by userXXX
Hello,

the used database is Oracle 11g, Robotask is running inside a VM.

The simple SQL "select to_number('123,45') from dual" returns ...
...within SQLPlus: 123,45 as a number
...within Robotask: "Invalid number"

Any idea?

Re: Different SQL result with Robotask?!

Posted: Fri Oct 24, 2014 2:19 pm
by userXXX
This seems to work:
select TO_NUMBER('123,45', '99999999999999999999D9999999', 'NLS_NUMERIC_CHARACTERS = '', ''') from dual

I'm using Robotask 6.2 now. With one of the previous versions ...to_number('123,45')... did work fine. Was something changed for the current version?

Re: Different SQL result with Robotask?!

Posted: Fri Oct 24, 2014 2:35 pm
by Oleg
Maybe the different you have regional settings for opened session.
If I remember correctly you can set some default settings for "SQL Plus"
But RoboTask uses default settings for your system.
Try to change "Locale identifier" in the connection string of the query
Locale.png
Locale.png (34.13 KiB) Viewed 32669 times

Re: Different SQL result with Robotask?!

Posted: Fri Oct 24, 2014 2:40 pm
by Oleg
Was something changed for the current version?
No changes. Maybe you made changes in Oracle client: install new version or patches

Re: Different SQL result with Robotask?!

Posted: Mon Oct 27, 2014 8:39 am
by userXXX
Oleg wrote:Try to change "Locale identifier" in the connection string of the query
This seems to have no effect:
The connection string doesn't contain this parameter, even if I change it.

Re: Different SQL result with Robotask?!

Posted: Mon Oct 27, 2014 8:43 am
by userXXX
Oleg wrote:No changes. Maybe you made changes in Oracle client: install new version or patches
No changes were made for Oracle client. I only installed a new version of Robotask.
It's possible to solve the problem by using NLS parameters, but it's a bit complicated using them for the first time... :?

Re: Different SQL result with Robotask?!

Posted: Mon Oct 27, 2014 9:32 am
by Oleg
The connection string doesn't contain this parameter, even if I change it.
You can add this manually. For example:
Locale Identifier=1031

1031 - German locale

Re: Different SQL result with Robotask?!

Posted: Mon Oct 27, 2014 9:57 am
by Oleg
No changes were made for Oracle client. I only installed a new version of Robotask.
Apparently some changes are exist

RoboTask uses system ADO data interface. By-turn the ADO engine uses DLL of native Oracle client.

I can advise you to install (if it necessary) native Oracle interface for ADO and ODBC and use it.
See screenshot:
ADO.png
ADO.png (51.32 KiB) Viewed 32615 times

Re: Different SQL result with Robotask?!

Posted: Thu Oct 30, 2014 11:08 am
by userXXX
Oleg wrote:You can add this manually. For example:
Locale Identifier=1031
1031 - German locale
My connect string looks now like this:
Provider=OraOLEDB.Oracle.1;Password=<...>;Persist Security Info=True;User ID=<...>;Data Source=<...>;Locale Identifier=1031

Unfortunately there's still no change in behaviour.
But at the moment I'm OK with my workarounds.